135 lines
4.9 KiB
Lua
135 lines
4.9 KiB
Lua
local wezterm = require("wezterm")
|
|
local config = wezterm.config_builder()
|
|
|
|
-- ─────────────────────────────────────────────
|
|
-- Colors — CovenantUI
|
|
-- ─────────────────────────────────────────────
|
|
config.colors = {
|
|
foreground = "#00d4e8",
|
|
background = "#000d0f",
|
|
cursor_bg = "#00c8e0",
|
|
cursor_fg = "#000d0f",
|
|
cursor_border = "#00c8e0",
|
|
selection_fg = "#000d0f",
|
|
selection_bg = "#007a8a",
|
|
|
|
ansi = {
|
|
"#001418", -- black → surface bg
|
|
"#ff2244", -- red → alert / danger
|
|
"#b8ff00", -- green → chartreuse data
|
|
"#ffaa00", -- yellow → warning amber
|
|
"#007a8a", -- blue → dim cyan
|
|
"#005f6a", -- magenta → deeper dim cyan
|
|
"#00c8e0", -- cyan → header cyan
|
|
"#00d4e8", -- white → text
|
|
},
|
|
|
|
brights = {
|
|
"#002830", -- bright black
|
|
"#ff4466", -- bright red
|
|
"#ccff00", -- bright green
|
|
"#ffcc00", -- bright yellow
|
|
"#00c8e0", -- bright blue
|
|
"#007a8a", -- bright magenta
|
|
"#00e5ff", -- bright cyan
|
|
"#e0faff", -- bright white
|
|
},
|
|
|
|
tab_bar = {
|
|
background = "#000d0f",
|
|
active_tab = {
|
|
bg_color = "#001418",
|
|
fg_color = "#00d4e8",
|
|
intensity = "Normal",
|
|
underline = "None",
|
|
italic = false,
|
|
strikethrough = false,
|
|
},
|
|
inactive_tab = {
|
|
bg_color = "#000d0f",
|
|
fg_color = "#005f6a",
|
|
},
|
|
inactive_tab_hover = {
|
|
bg_color = "#001418",
|
|
fg_color = "#007a8a",
|
|
},
|
|
new_tab = {
|
|
bg_color = "#000d0f",
|
|
fg_color = "#005f6a",
|
|
},
|
|
new_tab_hover = {
|
|
bg_color = "#001418",
|
|
fg_color = "#00c8e0",
|
|
},
|
|
},
|
|
}
|
|
|
|
-- ─────────────────────────────────────────────
|
|
-- Font
|
|
-- ─────────────────────────────────────────────
|
|
config.font = wezterm.font("JetBrainsMono Nerd Font")
|
|
config.font_size = 14
|
|
config.line_height = 1.0
|
|
|
|
-- ─────────────────────────────────────────────
|
|
-- Window
|
|
-- ─────────────────────────────────────────────
|
|
config.initial_cols = 120
|
|
config.initial_rows = 30
|
|
|
|
config.window_decorations = "RESIZE"
|
|
config.hide_tab_bar_if_only_one_tab = true
|
|
config.window_background_opacity = 0.85
|
|
|
|
-- ─────────────────────────────────────────────
|
|
-- Padding
|
|
-- ─────────────────────────────────────────────
|
|
config.window_padding = {
|
|
left = 10,
|
|
right = 10,
|
|
top = 6,
|
|
bottom = 6,
|
|
}
|
|
|
|
-- ─────────────────────────────────────────────
|
|
-- Cursor
|
|
-- ─────────────────────────────────────────────
|
|
config.cursor_blink_rate = 400
|
|
config.default_cursor_style = "BlinkingBlock"
|
|
|
|
-- ─────────────────────────────────────────────
|
|
-- Performance
|
|
-- ─────────────────────────────────────────────
|
|
config.max_fps = 144
|
|
config.prefer_egl = true
|
|
|
|
-- ─────────────────────────────────────────────
|
|
-- Scrollback & behavior
|
|
-- ─────────────────────────────────────────────
|
|
config.scrollback_lines = 2000
|
|
config.scroll_to_bottom_on_input = true
|
|
config.audible_bell = "Disabled"
|
|
config.window_close_confirmation = "NeverPrompt"
|
|
|
|
-- ─────────────────────────────────────────────
|
|
-- Key bindings
|
|
-- ─────────────────────────────────────────────
|
|
config.keys = {
|
|
{
|
|
key = "w",
|
|
mods = "ALT",
|
|
action = wezterm.action.CloseCurrentPane { confirm = false },
|
|
},
|
|
{
|
|
key = "d",
|
|
mods = "ALT",
|
|
action = wezterm.action.SplitHorizontal { domain = "CurrentPaneDomain" },
|
|
},
|
|
{
|
|
key = "d",
|
|
mods = "ALT|SHIFT",
|
|
action = wezterm.action.SplitVertical { domain = "CurrentPaneDomain" },
|
|
},
|
|
}
|
|
|
|
return config
|