macbook-setup/wezterm.lua
Rene f3941d726b WezTerm: Schrift 18pt fuer HiDPI, Cmd+C/V (copy_or_interrupt) auf Linux
- 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>
2026-03-31 12:46:08 +02:00

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