2024-08-21 13:39:57 +02:00
|
|
|
local wezterm = require 'wezterm'
|
|
|
|
local config = wezterm.config_builder()
|
|
|
|
|
|
|
|
act = wezterm.action
|
|
|
|
|
|
|
|
config.color_scheme = 'Gruvbox dark, hard (base16)'
|
|
|
|
config.use_fancy_tab_bar = false
|
|
|
|
config.hide_tab_bar_if_only_one_tab = true
|
|
|
|
|
|
|
|
config.window_padding = {
|
|
|
|
left = 4,
|
|
|
|
right = 4,
|
|
|
|
top = 4,
|
|
|
|
bottom = 4,
|
|
|
|
}
|
|
|
|
|
|
|
|
config.inactive_pane_hsb = {
|
|
|
|
saturation = 0.9,
|
|
|
|
brightness = 0.8,
|
|
|
|
}
|
|
|
|
|
|
|
|
config.window_background_opacity = 0.95
|
|
|
|
config.colors = { tab_bar = { background = 'rgba(29, 32, 33, 95%)' } }
|
|
|
|
|
|
|
|
|
|
|
|
font = wezterm.font_with_fallback {
|
|
|
|
'SAX2 Nerd Font',
|
|
|
|
'Fira Code',
|
|
|
|
'Noto Mono',
|
|
|
|
}
|
|
|
|
|
|
|
|
config.font = font
|
|
|
|
|
|
|
|
config.font_rules = {
|
|
|
|
{
|
|
|
|
italic = true,
|
|
|
|
font = font,
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
config.adjust_window_size_when_changing_font_size = false
|
|
|
|
|
|
|
|
config.leader = { key = 'a', mods = 'CTRL', timeout_milliseconds = 700 }
|
|
|
|
|
|
|
|
config.keys = {
|
|
|
|
{
|
|
|
|
key = 'a',
|
|
|
|
mods = 'LEADER|CTRL',
|
|
|
|
action = act.SendKey { key = 'a', mods = 'CTRL' },
|
|
|
|
},
|
|
|
|
{
|
|
|
|
key = 'c',
|
|
|
|
mods = 'LEADER',
|
|
|
|
action = act.SpawnTab "CurrentPaneDomain",
|
|
|
|
},
|
|
|
|
{
|
|
|
|
key = 'n',
|
|
|
|
mods = 'LEADER',
|
|
|
|
action = act.ActivateTabRelative(1),
|
|
|
|
},
|
|
|
|
{
|
|
|
|
key = 'p',
|
|
|
|
mods = 'LEADER',
|
|
|
|
action = act.ActivateTabRelative(-1),
|
|
|
|
},
|
|
|
|
}
|
|
|
|
|
|
|
|
for i = 1, 8 do
|
|
|
|
table.insert(config.keys, {
|
|
|
|
key = tostring(i),
|
|
|
|
mods = 'ALT',
|
|
|
|
action = act.ActivateTab(i - 1),
|
|
|
|
})
|
|
|
|
end
|
|
|
|
|
|
|
|
for key, dir in pairs({ h = 'Left', j = 'Down', k = 'Up', l = 'Right' }) do
|
|
|
|
table.insert(config.keys, {
|
|
|
|
key = key,
|
|
|
|
mods = 'ALT',
|
|
|
|
action = act.AdjustPaneSize { dir, 1 },
|
|
|
|
})
|
|
|
|
table.insert(config.keys, {
|
|
|
|
key = key,
|
|
|
|
mods = 'CTRL',
|
2024-08-21 13:46:06 +02:00
|
|
|
action = act.ActivatePaneDirection(dir),
|
2024-08-21 13:39:57 +02:00
|
|
|
})
|
|
|
|
table.insert(config.keys, {
|
|
|
|
key = key,
|
|
|
|
mods = 'LEADER',
|
2024-08-21 13:46:06 +02:00
|
|
|
action = act.SplitPane { direction = dir },
|
2024-08-21 13:39:57 +02:00
|
|
|
})
|
|
|
|
end
|
|
|
|
|
|
|
|
return config
|