-- ~/.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