refactor(shell): split shell config

This commit is contained in:
Felix Schröter 2023-03-17 12:37:26 +01:00
parent fe0d7069c1
commit 22bf1600b1
Signed by: felschr
GPG key ID: 671E39E6744C807D
7 changed files with 102 additions and 85 deletions

30
home/shell/kitty.nix Normal file
View file

@ -0,0 +1,30 @@
{ config, pkgs, lib, ... }:
with pkgs;
with lib; {
# kitty terminal
programs.kitty = {
enable = true;
keybindings = let
vimKittyBinding = bind:
''kitten pass_keys.py neighboring_window ${bind} "^.* - nvim$"'';
in {
"ctrl+h" = vimKittyBinding "left ctrl+h";
"ctrl+j" = vimKittyBinding "bottom ctrl+j";
"ctrl+k" = vimKittyBinding "top ctrl+k";
"ctrl+l" = vimKittyBinding "right ctrl+l";
};
settings = {
allow_remote_control = "yes";
# single_instance = "yes";
listen_on = "unix:@mykitty";
scrollback_pager = ''
nvim -u NONE -c "syntax on" -c 'set ft=man nonumber nolist showtabline=0 foldcolumn=0 laststatus=0' -c "autocmd VimEnter * normal G" -c "map q :qa!<CR>" -c "set clipboard+=unnamedplus" -'';
};
};
xdg.configFile."kitty/pass_keys.py".source =
"${vimPlugins.nvim-kitty-navigator}/kitty/pass_keys.py";
xdg.configFile."kitty/neighboring_window.py".source =
"${vimPlugins.nvim-kitty-navigator}/kitty/neighboring_window.py";
}