local wezterm = require("wezterm") local function font_with_fallback(name, params) local names = { name, "Apple Color Emoji", "azuki_font" } return wezterm.font_with_fallback(names, params) end local font_name = "JetBrainsMonoNL NF" return { -- OpenGL for GPU acceleration, Software for CPU front_end = "OpenGL", color_scheme = 'Catppuccin Mocha', -- Font config font = font_with_fallback(font_name), font_rules = { { italic = true, font = font_with_fallback(font_name, { italic = true }), }, { italic = false, font = font_with_fallback(font_name, { bold = true }), }, { intensity = "Bold", font = font_with_fallback(font_name, { bold = true }), }, }, warn_about_missing_glyphs = false, font_size = 10, line_height = 1.0, dpi = 96.0, -- Cursor style default_cursor_style = "BlinkingUnderline", -- X11 enable_wayland = true, -- Keybinds disable_default_key_bindings = true, keys = { { key = [[\]], mods = "CTRL|ALT", action = wezterm.action({ SplitHorizontal = { domain = "CurrentPaneDomain" }, }), }, { key = [[\]], mods = "CTRL", action = wezterm.action({ SplitVertical = { domain = "CurrentPaneDomain" }, }), }, { key = "q", mods = "CTRL", action = wezterm.action({ CloseCurrentPane = { confirm = false } }), }, { key = "h", mods = "CTRL|SHIFT", action = wezterm.action({ ActivatePaneDirection = "Left" }), }, { key = "l", mods = "CTRL|SHIFT", action = wezterm.action({ ActivatePaneDirection = "Right" }), }, { key = "k", mods = "CTRL|SHIFT", action = wezterm.action({ ActivatePaneDirection = "Up" }), }, { key = "j", mods = "CTRL|SHIFT", action = wezterm.action({ ActivatePaneDirection = "Down" }), }, { key = "h", mods = "CTRL|SHIFT|ALT", action = wezterm.action({ AdjustPaneSize = { "Left", 1 } }), }, { key = "l", mods = "CTRL|SHIFT|ALT", action = wezterm.action({ AdjustPaneSize = { "Right", 1 } }), }, { key = "k", mods = "CTRL|SHIFT|ALT", action = wezterm.action({ AdjustPaneSize = { "Up", 1 } }), }, { key = "j", mods = "CTRL|SHIFT|ALT", action = wezterm.action({ AdjustPaneSize = { "Down", 1 } }), }, { -- browser-like bindings for tabbing key = "t", mods = "CTRL", action = wezterm.action({ SpawnTab = "CurrentPaneDomain" }), }, { key = "w", mods = "CTRL", action = wezterm.action({ CloseCurrentTab = { confirm = false } }), }, { key = "Tab", mods = "CTRL", action = wezterm.action({ ActivateTabRelative = 1 }), }, { key = "Tab", mods = "CTRL|SHIFT", action = wezterm.action({ ActivateTabRelative = -1 }), }, -- standard copy/paste bindings { key = "x", mods = "CTRL", action = "ActivateCopyMode", }, { key = "v", mods = "CTRL|SHIFT", action = wezterm.action({ PasteFrom = "Clipboard" }), }, { key = "c", mods = "CTRL|SHIFT", action = wezterm.action({ CopyTo = "ClipboardAndPrimarySelection" }), }, }, -- Aesthetic Night Colorscheme bold_brightens_ansi_colors = true, -- Padding window_padding = { left = 25, right = 25, top = 25, bottom = 25, }, -- Tab Bar enable_tab_bar = true, hide_tab_bar_if_only_one_tab = true, show_tab_index_in_tab_bar = false, tab_bar_at_bottom = true, -- General automatically_reload_config = true, inactive_pane_hsb = { saturation = 1.0, brightness = 1.0 }, window_background_opacity = 0.5, window_close_confirmation = "NeverPrompt", window_frame = { active_titlebar_bg = "#45475a", font = font_with_fallback(font_name, { bold = true }) }, }