- font_size 18.0 auf Linux (Retina 2x), 13.0 auf macOS - Ctrl+C: kopiert bei Selektion, sonst SIGINT (wie Kitty copy_or_interrupt) - Ctrl+V: Paste from Clipboard Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
61 lines
3.2 KiB
Lua
61 lines
3.2 KiB
Lua
-- ~/.wezterm.lua
|
|
-- Cross-platform Konfiguration fuer macOS und Linux (Xubuntu/XFCE)
|
|
-- Farben jederzeit aendern: config.color_scheme = '...'
|
|
-- Alle verfuegbaren Schemes: https://wezfurlong.org/wezterm/colorschemes/
|
|
|
|
local wezterm = require 'wezterm'
|
|
local config = wezterm.config_builder()
|
|
|
|
-- ── Plattform-Erkennung ──────────────────────────────────────────────────
|
|
local is_linux = wezterm.target_triple:find('linux') ~= nil
|
|
|
|
-- ── Farben ──────────────────────────────────────────────────────────────
|
|
config.color_scheme = 'Catppuccin Macchiato'
|
|
-- Hintergrund und Schrift ueberschreiben (ANSI-Farben bleiben vom Scheme)
|
|
config.colors = {
|
|
background = '#0e0d0b',
|
|
foreground = '#cad3f5',
|
|
}
|
|
|
|
-- ── Schrift ─────────────────────────────────────────────────────────────
|
|
config.font = wezterm.font('MesloLGS NF')
|
|
config.font_size = is_linux and 18.0 or 13.0
|
|
|
|
-- ── Fenster ─────────────────────────────────────────────────────────────
|
|
config.initial_cols = 120
|
|
config.initial_rows = 35
|
|
config.window_padding = { left = 8, right = 8, top = 6, bottom = 6 }
|
|
config.scrollback_lines = 10000
|
|
config.enable_scroll_bar = false
|
|
|
|
-- ── Tab-Leiste ──────────────────────────────────────────────────────────
|
|
config.hide_tab_bar_if_only_one_tab = true
|
|
config.use_fancy_tab_bar = false
|
|
|
|
-- ── Cursor ──────────────────────────────────────────────────────────────
|
|
config.default_cursor_style = 'SteadyBar'
|
|
|
|
-- ── macOS ────────────────────────────────────────────────────────────────
|
|
if not is_linux then
|
|
config.native_macos_fullscreen_mode = true
|
|
end
|
|
|
|
-- ── Linux / XFCE (X11) ──────────────────────────────────────────────────
|
|
if is_linux then
|
|
config.enable_wayland = false
|
|
-- ctrl:swap_lwin_lctl tauscht Cmd/Ctrl — Cmd+C/V landet als Ctrl+C/V
|
|
-- Copy bei Selektion, sonst SIGINT (wie copy_or_interrupt in Kitty)
|
|
config.keys = {
|
|
{ key = 'c', mods = 'CTRL', action = wezterm.action_callback(function(window, pane)
|
|
local sel = window:get_selection_text_for_pane(pane)
|
|
if sel and sel ~= '' then
|
|
window:perform_action(wezterm.action.CopyTo 'ClipboardAndPrimarySelection', pane)
|
|
else
|
|
window:perform_action(wezterm.action.SendKey { key = 'c', mods = 'CTRL' }, pane)
|
|
end
|
|
end) },
|
|
{ key = 'v', mods = 'CTRL', action = wezterm.action.PasteFrom 'Clipboard' },
|
|
}
|
|
end
|
|
|
|
return config
|