You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
98 lines
2.0 KiB
Lua
98 lines
2.0 KiB
Lua
-- Pull in the wezterm API
|
|
local wezterm = require 'wezterm'
|
|
|
|
-- This will hold the configuration.
|
|
local config = wezterm.config_builder()
|
|
|
|
-- This is where you actually apply your config choices
|
|
|
|
-- For example, changing the color scheme:
|
|
config.color_scheme = 'Argonaut (Gogh)'
|
|
|
|
-- keybinds
|
|
config.leader = { key = 'a', mods = 'CTRL', timeout_milliseconds = 1000 }
|
|
config.keys = {
|
|
-- splitting
|
|
{
|
|
mods = "LEADER|SHIFT",
|
|
key = '"',
|
|
action = wezterm.action.SplitVertical { domain = 'CurrentPaneDomain' }
|
|
},
|
|
{
|
|
mods = "LEADER|SHIFT",
|
|
key = "%",
|
|
action = wezterm.action.SplitHorizontal { domain = 'CurrentPaneDomain' }
|
|
},
|
|
{
|
|
mods = 'LEADER',
|
|
key = 'z',
|
|
action = wezterm.action.TogglePaneZoomState
|
|
},
|
|
{
|
|
mods = "LEADER",
|
|
key = "Space",
|
|
action = wezterm.action.RotatePanes "Clockwise"
|
|
},
|
|
{
|
|
mods = 'LEADER',
|
|
key = '0',
|
|
action = wezterm.action.PaneSelect {
|
|
mode = 'SwapWithActive',
|
|
},
|
|
},
|
|
{
|
|
key = 'v',
|
|
mods = 'LEADER',
|
|
action = wezterm.action.ActivateCopyMode
|
|
},
|
|
{
|
|
key = 'a',
|
|
mods = 'LEADER|CTRL',
|
|
action = wezterm.action.SendKey { key = 'a', mods = 'CTRL' },
|
|
},
|
|
{
|
|
key = 'k',
|
|
mods = 'ALT',
|
|
action = wezterm.action.ScrollToPrompt(-1)
|
|
},
|
|
{
|
|
key = 'j',
|
|
mods = 'ALT',
|
|
action = wezterm.action.ScrollToPrompt(1)
|
|
},
|
|
}
|
|
|
|
config.mouse_bindings = {
|
|
{
|
|
event = { Down = { streak = 2, button='Left' } },
|
|
action = wezterm.action.SelectTextAtMouseCursor 'SemanticZone',
|
|
mods = 'SHIFT'
|
|
}
|
|
}
|
|
|
|
config.font = wezterm.font 'JetBrains Mono'
|
|
-- terminal padding
|
|
config.window_padding = {
|
|
left = 0,
|
|
right = 0,
|
|
top = 0,
|
|
bottom = 0,
|
|
}
|
|
config.use_fancy_tab_bar = false
|
|
config.hide_tab_bar_if_only_one_tab = true
|
|
|
|
config.inactive_pane_hsb = {
|
|
saturation = 0.6,
|
|
brightness = 0.8,
|
|
}
|
|
|
|
config.quick_select_alphabet = "asdfqweryxcvjkluiopmghtzbn"
|
|
|
|
-- WSL
|
|
if wezterm.target_triple == 'x86_64-pc-windows-msvc' then
|
|
config.default_domain = 'WSL:Debian'
|
|
end
|
|
|
|
-- and finally, return the configuration to wezterm
|
|
return config
|