-
-
Notifications
You must be signed in to change notification settings - Fork 26
Use ctrl b as prefix
Cason Adams edited this page May 26, 2023
·
4 revisions
return {
"numToStr/Navigator.nvim",
keys = {
{
"<C-w>h",
"<C-\\><C-n><cmd>NavigatorLeft<cr>",
desc = "NavigatorLeft",
silent = true,
mode = { "v", "n", "i", "t" },
},
{
"<C-w>l",
"<C-\\><C-n><cmd>NavigatorRight<cr>",
desc = "NavigatorRight",
silent = true,
mode = { "v", "n", "i", "t" },
},
{
"<C-w>k",
"<C-\\><C-n><cmd>NavigatorUp<cr>",
desc = "NavigatorUp",
silent = true,
mode = { "v", "n", "i", "t" },
},
{
"<C-w>j",
"<C-\\><C-n><cmd>NavigatorDown<cr>",
desc = "NavigatorDown",
silent = true,
mode = { "v", "n", "i", "t" },
},
},
config = function()
require("Navigator").setup()
end,
}-- ~/.config/wezterm/wezterm.lua
local wezterm = require("wezterm")
local keys = require("keys")
return {
keys = keys,
leader = { key = "b", mods = "CTRL" },
}-- ~/.config/wezterm/keys.lua
local wezterm = require("wezterm")
local act = wezterm.action
local function isVim(pane)
return pane:get_foreground_process_name():find("l?n?vim") ~= nil
end
local function activatePane(window, pane, direction, vim_key)
if isVim(pane) then
window:perform_action(
act.Multiple({
act.SendKey({ key = "w", mods = "CTRL" }),
act.SendKey({ key = vim_key }),
}),
pane
)
else
window:perform_action(act.ActivatePaneDirection(direction), pane)
end
end
wezterm.on("ActivatePaneRight", function(window, pane)
activatePane(window, pane, "Right", "l")
end)
wezterm.on("ActivatePaneLeft", function(window, pane)
activatePane(window, pane, "Left", "h")
end)
wezterm.on("ActivatePaneUp", function(window, pane)
activatePane(window, pane, "Up", "k")
end)
wezterm.on("ActivatePaneDown", function(window, pane)
activatePane(window, pane, "Down", "j")
end)
local keys = {
{ key = "b", mods = "LEADER|CTRL", action = wezterm.action.SendString("\x02") },
{ key = "h", mods = "LEADER", action = act.EmitEvent("ActivatePaneLeft") },
{ key = "j", mods = "LEADER", action = act.EmitEvent("ActivatePaneDown") },
{ key = "k", mods = "LEADER", action = act.EmitEvent("ActivatePaneUp") },
{ key = "l", mods = "LEADER", action = act.EmitEvent("ActivatePaneRight") },
}
return keysis_vim="ps -o state= -o comm= -t '#{pane_tty}' | grep -iqE '^[^TXZ ]+ +(\\S+\\/)?g?(view|l?n?vim?x?)(diff)?$'"
bind 'h' if-shell "$is_vim" 'send-keys C-w h' 'select-pane -L'
bind 'j' if-shell "$is_vim" 'send-keys C-w j' 'select-pane -D'
bind 'k' if-shell "$is_vim" 'send-keys C-w k' 'select-pane -U'
bind 'l' if-shell "$is_vim" 'send-keys C-w l' 'select-pane -R'