93 lines
2.3 KiB
Nix
93 lines
2.3 KiB
Nix
{
|
|
programs.wezterm = {
|
|
enable = true;
|
|
extraConfig = ''
|
|
local wezterm = require'wezterm'
|
|
local c = {}
|
|
if wezterm.config_builder then
|
|
c = wezterm.config_builder()
|
|
end
|
|
c.hide_tab_bar_if_only_one_tab = true
|
|
c.color_scheme = "deep"
|
|
c.window_padding = { left = 10, right = 10, top = 5, bottom = 5 }
|
|
c.window_decorations = 'RESIZE'
|
|
c.window_close_confirmation = "NeverPrompt"
|
|
c.use_fancy_tab_bar = false
|
|
|
|
c.font_size = 9
|
|
c.adjust_window_size_when_changing_font_size = true
|
|
|
|
|
|
-- Keys
|
|
c.leader = { key = 'j', mods = 'CTRL', timeout_milliseconds = 1000 }
|
|
c.keys = {
|
|
{
|
|
key = 'q',
|
|
mods = 'LEADER',
|
|
action = wezterm.action.CloseCurrentPane { confirm = false },
|
|
},
|
|
{
|
|
key = 'f',
|
|
mods = 'LEADER',
|
|
action = wezterm.action.TogglePaneZoomState,
|
|
},
|
|
{
|
|
key = 'h',
|
|
mods = 'LEADER',
|
|
action = wezterm.action.ActivatePaneDirection('Left'),
|
|
},
|
|
{
|
|
key = 'j',
|
|
mods = 'LEADER',
|
|
action = wezterm.action.ActivatePaneDirection('Down'),
|
|
},
|
|
{
|
|
key = 'k',
|
|
mods = 'LEADER',
|
|
action = wezterm.action.ActivatePaneDirection('Up'),
|
|
},
|
|
{
|
|
key = 'l',
|
|
mods = 'LEADER',
|
|
action = wezterm.action.ActivatePaneDirection('Right'),
|
|
},
|
|
{
|
|
key = 'H',
|
|
mods = 'LEADER',
|
|
action = wezterm.action.SplitPane { direction = 'Left' },
|
|
},
|
|
{
|
|
key = 'J',
|
|
mods = 'LEADER',
|
|
action = wezterm.action.SplitPane { direction = 'Down' },
|
|
},
|
|
{
|
|
key = 'K',
|
|
mods = 'LEADER',
|
|
action = wezterm.action.SplitPane { direction = 'Up' },
|
|
},
|
|
{
|
|
key = 'L',
|
|
mods = 'LEADER',
|
|
action = wezterm.action.SplitPane { direction = 'Right' },
|
|
},
|
|
{
|
|
key = 's',
|
|
mods = 'LEADER',
|
|
action = wezterm.action.PaneSelect {
|
|
mode = "Activate"
|
|
},
|
|
},
|
|
{
|
|
key = ';',
|
|
mods = 'LEADER',
|
|
action = wezterm.action.PaneSelect {
|
|
mode = "SwapWithActive"
|
|
},
|
|
},
|
|
}
|
|
|
|
return c
|
|
'';
|
|
};
|
|
}
|