fixed zellij again?

don't trust ai to convert kdl to nix for you
This commit is contained in:
2025-06-28 17:59:39 -04:00
parent 4113b3ea57
commit 109684d09c
2 changed files with 264 additions and 289 deletions

View File

@ -1,293 +1,14 @@
{ ... }: {
{
lib,
...
}: let
dirs = {
defaults = ../defaults;
};
in {
programs.zellij = {
enable = true;
settings = {
keybinds = {
clear-defaults = true;
locked = [
{ key = "Ctrl g"; action = "SwitchToMode \"normal\""; }
];
pane = [
{ key = "left"; action = "MoveFocus \"left\""; }
{ key = "down"; action = "MoveFocus \"down\""; }
{ key = "up"; action = "MoveFocus \"up\""; }
{ key = "right"; action = "MoveFocus \"right\""; }
{ key = "c"; action = "SwitchToMode \"renamepane\"; PaneNameInput 0"; }
{ key = "d"; action = "NewPane \"down\"; SwitchToMode \"normal\""; }
{ key = "e"; action = "TogglePaneEmbedOrFloating; SwitchToMode \"normal\""; }
{ key = "f"; action = "ToggleFocusFullscreen; SwitchToMode \"normal\""; }
{ key = "h"; action = "MoveFocus \"left\""; }
{ key = "j"; action = "MoveFocus \"down\""; }
{ key = "k"; action = "MoveFocus \"up\""; }
{ key = "l"; action = "MoveFocus \"right\""; }
{ key = "n"; action = "NewPane; SwitchToMode \"normal\""; }
{ key = "p"; action = "SwitchFocus"; }
{ key = "Ctrl p"; action = "SwitchToMode \"normal\""; }
{ key = "r"; action = "NewPane \"right\"; SwitchToMode \"normal\""; }
{ key = "w"; action = "ToggleFloatingPanes; SwitchToMode \"normal\""; }
{ key = "z"; action = "TogglePaneFrames; SwitchToMode \"normal\""; }
];
tab = [
{ key = "left"; action = "GoToPreviousTab"; }
{ key = "down"; action = "GoToNextTab"; }
{ key = "up"; action = "GoToPreviousTab"; }
{ key = "right"; action = "GoToNextTab"; }
{ key = "1"; action = "GoToTab 1; SwitchToMode \"normal\""; }
{ key = "2"; action = "GoToTab 2; SwitchToMode \"normal\""; }
{ key = "3"; action = "GoToTab 3; SwitchToMode \"normal\""; }
{ key = "4"; action = "GoToTab 4; SwitchToMode \"normal\""; }
{ key = "5"; action = "GoToTab 5; SwitchToMode \"normal\""; }
{ key = "6"; action = "GoToTab 6; SwitchToMode \"normal\""; }
{ key = "7"; action = "GoToTab 7; SwitchToMode \"normal\""; }
{ key = "8"; action = "GoToTab 8; SwitchToMode \"normal\""; }
{ key = "9"; action = "GoToTab 9; SwitchToMode \"normal\""; }
{ key = "["; action = "BreakPaneLeft; SwitchToMode \"normal\""; }
{ key = "]"; action = "BreakPaneRight; SwitchToMode \"normal\""; }
{ key = "b"; action = "BreakPane; SwitchToMode \"normal\""; }
{ key = "h"; action = "GoToPreviousTab"; }
{ key = "j"; action = "GoToNextTab"; }
{ key = "k"; action = "GoToPreviousTab"; }
{ key = "l"; action = "GoToNextTab"; }
{ key = "n"; action = "NewTab; SwitchToMode \"normal\""; }
{ key = "r"; action = "SwitchToMode \"renametab\"; TabNameInput 0"; }
{ key = "s"; action = "ToggleActiveSyncTab; SwitchToMode \"normal\""; }
{ key = "Ctrl t"; action = "SwitchToMode \"normal\""; }
{ key = "x"; action = "CloseTab; SwitchToMode \"normal\""; }
{ key = "tab"; action = "ToggleTab"; }
];
resize = [
{ key = "left"; action = "Resize \"Increase left\""; }
{ key = "down"; action = "Resize \"Increase down\""; }
{ key = "up"; action = "Resize \"Increase up\""; }
{ key = "right"; action = "Resize \"Increase right\""; }
{ key = "+"; action = "Resize \"Increase\""; }
{ key = "-"; action = "Resize \"Decrease\""; }
{ key = "="; action = "Resize \"Increase\""; }
{ key = "H"; action = "Resize \"Decrease left\""; }
{ key = "J"; action = "Resize \"Decrease down\""; }
{ key = "K"; action = "Resize \"Decrease up\""; }
{ key = "L"; action = "Resize \"Decrease right\""; }
{ key = "h"; action = "Resize \"Increase left\""; }
{ key = "j"; action = "Resize \"Increase down\""; }
{ key = "k"; action = "Resize \"Increase up\""; }
{ key = "l"; action = "Resize \"Increase right\""; }
{ key = "Ctrl n"; action = "SwitchToMode \"normal\""; }
];
move = [
{ key = "left"; action = "MovePane \"left\""; }
{ key = "down"; action = "MovePane \"down\""; }
{ key = "up"; action = "MovePane \"up\""; }
{ key = "right"; action = "MovePane \"right\""; }
{ key = "h"; action = "MovePane \"left\""; }
{ key = "Ctrl h"; action = "SwitchToMode \"normal\""; }
{ key = "j"; action = "MovePane \"down\""; }
{ key = "k"; action = "MovePane \"up\""; }
{ key = "l"; action = "MovePane \"right\""; }
{ key = "n"; action = "MovePane"; }
{ key = "p"; action = "MovePaneBackwards"; }
{ key = "tab"; action = "MovePane"; }
];
scroll = [
{ key = "Alt left"; action = "MoveFocusOrTab \"left\"; SwitchToMode \"normal\""; }
{ key = "Alt down"; action = "MoveFocus \"down\"; SwitchToMode \"normal\""; }
{ key = "Alt up"; action = "MoveFocus \"up\"; SwitchToMode \"normal\""; }
{ key = "Alt right"; action = "MoveFocusOrTab \"right\"; SwitchToMode \"normal\""; }
{ key = "e"; action = "EditScrollback; SwitchToMode \"normal\""; }
{ key = "Alt h"; action = "MoveFocusOrTab \"left\"; SwitchToMode \"normal\""; }
{ key = "Alt j"; action = "MoveFocus \"down\"; SwitchToMode \"normal\""; }
{ key = "Alt k"; action = "MoveFocus \"up\"; SwitchToMode \"normal\""; }
{ key = "Alt l"; action = "MoveFocusOrTab \"right\"; SwitchToMode \"normal\""; }
{ key = "s"; action = "SwitchToMode \"entersearch\"; SearchInput 0"; }
];
search = [
{ key = "c"; action = "SearchToggleOption \"CaseSensitivity\""; }
{ key = "n"; action = "Search \"down\""; }
{ key = "o"; action = "SearchToggleOption \"WholeWord\""; }
{ key = "p"; action = "Search \"up\""; }
{ key = "w"; action = "SearchToggleOption \"Wrap\""; }
];
session = [
{
key = "c";
action = "LaunchOrFocusPlugin \"configuration\" { floating true; move_to_focused_tab true }; SwitchToMode \"normal\"";
}
{ key = "Ctrl o"; action = "SwitchToMode \"normal\""; }
{
key = "p";
action = "LaunchOrFocusPlugin \"plugin-manager\" { floating true; move_to_focused_tab true }; SwitchToMode \"normal\"";
}
{
key = "w";
action = "LaunchOrFocusPlugin \"session-manager\" { floating true; move_to_focused_tab true }; SwitchToMode \"normal\"";
}
];
"shared_except \"locked\"" = [
{ key = "Alt +"; action = "Resize \"Increase\""; }
{ key = "Alt -"; action = "Resize \"Decrease\""; }
{ key = "Alt ="; action = "Resize \"Increase\""; }
{ key = "Alt ["; action = "PreviousSwapLayout"; }
{ key = "Alt ]"; action = "NextSwapLayout"; }
{ key = "Alt f"; action = "ToggleFloatingPanes"; }
{ key = "Ctrl g"; action = "SwitchToMode \"locked\""; }
{ key = "Alt i"; action = "MoveTab \"left\""; }
{ key = "Alt n"; action = "NewPane"; }
{ key = "Alt o"; action = "MoveTab \"right\""; }
{ key = "Ctrl q"; action = "Quit"; }
];
"shared_except \"locked\" \"move\"" = [
{ key = "Ctrl h"; action = "SwitchToMode \"move\""; }
];
"shared_except \"locked\" \"session\"" = [
{ key = "Ctrl o"; action = "SwitchToMode \"session\""; }
];
"shared_except \"locked\" \"scroll\"" = [
{ key = "Alt left"; action = "MoveFocusOrTab \"left\""; }
{ key = "Alt down"; action = "MoveFocus \"down\""; }
{ key = "Alt up"; action = "MoveFocus \"up\""; }
{ key = "Alt right"; action = "MoveFocusOrTab \"right\""; }
{ key = "Alt h"; action = "MoveFocusOrTab \"left\""; }
{ key = "Alt j"; action = "MoveFocus \"down\""; }
{ key = "Alt k"; action = "MoveFocus \"up\""; }
{ key = "Alt l"; action = "MoveFocusOrTab \"right\""; }
];
"shared_except \"locked\" \"scroll\" \"search\" \"tmux\"" = [
{ key = "Ctrl b"; action = "SwitchToMode \"tmux\""; }
];
"shared_except \"locked\" \"tab\"" = [
{ key = "Ctrl t"; action = "SwitchToMode \"tab\""; }
];
"shared_except \"locked\" \"pane\"" = [
{ key = "Ctrl p"; action = "SwitchToMode \"pane\""; }
];
"shared_except \"locked\" \"resize\"" = [
{ key = "Ctrl n"; action = "SwitchToMode \"resize\""; }
];
"shared_except \"normal\" \"locked\" \"entersearch\"" = [
{ key = "enter"; action = "SwitchToMode \"normal\""; }
];
"shared_except \"normal\" \"locked\" \"entersearch\" \"renametab\" \"renamepane\"" = [
{ key = "esc"; action = "SwitchToMode \"normal\""; }
];
"shared_among \"pane\" \"tmux\"" = [
{ key = "x"; action = "CloseFocus; SwitchToMode \"normal\""; }
];
"shared_among \"scroll\" \"search\"" = [
{ key = "PageDown"; action = "PageScrollDown"; }
{ key = "PageUp"; action = "PageScrollUp"; }
{ key = "left"; action = "PageScrollUp"; }
{ key = "down"; action = "ScrollDown"; }
{ key = "up"; action = "ScrollUp"; }
{ key = "right"; action = "PageScrollDown"; }
{ key = "Ctrl b"; action = "PageScrollUp"; }
{ key = "Ctrl c"; action = "ScrollToBottom; SwitchToMode \"normal\""; }
{ key = "d"; action = "HalfPageScrollDown"; }
{ key = "Ctrl f"; action = "PageScrollDown"; }
{ key = "h"; action = "PageScrollUp"; }
{ key = "j"; action = "ScrollDown"; }
{ key = "k"; action = "ScrollUp"; }
{ key = "l"; action = "PageScrollDown"; }
{ key = "u"; action = "HalfPageScrollUp"; }
];
entersearch = [
{ key = "Ctrl c"; action = "SwitchToMode \"scroll\""; }
{ key = "esc"; action = "SwitchToMode \"scroll\""; }
{ key = "enter"; action = "SwitchToMode \"search\""; }
];
renametab = [
{ key = "esc"; action = "UndoRenameTab; SwitchToMode \"tab\""; }
];
"shared_among \"renametab\" \"renamepane\"" = [
{ key = "Ctrl c"; action = "SwitchToMode \"normal\""; }
];
renamepane = [
{ key = "esc"; action = "UndoRenamePane; SwitchToMode \"pane\""; }
];
"shared_among \"session\" \"tmux\"" = [
{ key = "d"; action = "Detach"; }
];
tmux = [
{ key = "left"; action = "MoveFocus \"left\"; SwitchToMode \"normal\""; }
{ key = "down"; action = "MoveFocus \"down\"; SwitchToMode \"normal\""; }
{ key = "up"; action = "MoveFocus \"up\"; SwitchToMode \"normal\""; }
{ key = "right"; action = "MoveFocus \"right\"; SwitchToMode \"normal\""; }
{ key = "space"; action = "NextSwapLayout"; }
{ key = "\""; action = "NewPane \"down\"; SwitchToMode \"normal\""; }
{ key = "%"; action = "NewPane \"right\"; SwitchToMode \"normal\""; }
{ key = ","; action = "SwitchToMode \"renametab\""; }
{ key = "["; action = "SwitchToMode \"scroll\""; }
{ key = "Ctrl b"; action = "Write 2; SwitchToMode \"normal\""; }
{ key = "c"; action = "NewTab; SwitchToMode \"normal\""; }
{ key = "h"; action = "MoveFocus \"left\"; SwitchToMode \"normal\""; }
{ key = "j"; action = "MoveFocus \"down\"; SwitchToMode \"normal\""; }
{ key = "k"; action = "MoveFocus \"up\"; SwitchToMode \"normal\""; }
{ key = "l"; action = "MoveFocus \"right\"; SwitchToMode \"normal\""; }
{ key = "n"; action = "GoToNextTab; SwitchToMode \"normal\""; }
{ key = "o"; action = "FocusNextPane"; }
{ key = "p"; action = "GoToPreviousTab; SwitchToMode \"normal\""; }
{ key = "z"; action = "ToggleFocusFullscreen; SwitchToMode \"normal\""; }
];
};
plugins = {
compact-bar = {
location = "zellij:compact-bar";
};
configuration = {
location = "zellij:configuration";
};
filepicker = {
location = "zellij:strider";
cwd = "/";
};
plugin-manager = {
location = "zellij:plugin-manager";
};
session-manager = {
location = "zellij:session-manager";
};
status-bar = {
location = "zellij:status-bar";
};
strider = {
location = "zellij:strider";
};
tab-bar = {
location = "zellij:tab-bar";
};
};
load_plugins = {};
theme = "catppuccin-mocha";
show_startup_tips = false;
show_release_notes = false;
default_mode = "normal";
};
};
xdg.configFile."zellij/config.kdl".source = lib.mkForce (dirs.defaults + zellij/config.kdl);
}