diff --git a/home/shell/terminal.nix b/home/shell/terminal.nix index baac37c..7c4debe 100644 --- a/home/shell/terminal.nix +++ b/home/shell/terminal.nix @@ -8,25 +8,22 @@ let ruby -rjson -ryaml -e "puts YAML.load(ARGF).to_json" < ${path} > $out ''; in { - # doesn't yet support font ligatures & undercurls - programs.alacritty = { + programs.kitty = { enable = true; - package = runCommand "alacritty" { buildInputs = [ makeWrapper ]; } '' - mkdir $out - ln -s ${alacritty}/* $out - rm $out/bin - makeWrapper ${tabbed}/bin/tabbed $out/bin/alacritty \ - --add-flags "-c -n Alacritty" \ - --add-flags "${alacritty}/bin/alacritty --embed" - ''; - settings = recursiveUpdate { - key_bindings = - # disable font size bindings - map (key: { - inherit key; - mods = "Control"; - action = "ReceiveChar"; - }) [ "Key0" "Equals" "NumpadAdd" "NumpadSubtract" "Minus" ]; - } (trivial.importJSON (yamlToJSON ./alacritty-vscode.yml)); + keybindings = { + "ctrl+j" = "kitten pass_keys.py neighboring_window bottom ctrl+j"; + "ctrl+k" = "kitten pass_keys.py neighboring_window top ctrl+k"; + "ctrl+h" = "kitten pass_keys.py neighboring_window left ctrl+h"; + "ctrl+l" = "kitten pass_keys.py neighboring_window right ctrl+l"; + }; + settings = { + 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!" -c "set clipboard+=unnamedplus" -''; + }; }; + + xdg.configFile."kitty/pass_keys.py".source = + "${vimPlugins.vim-kitty-navigator}/share/vim-plugins/vim-kitty-navigator/pass_keys.py"; + xdg.configFile."kitty/neighboring_window.py".source = + "${vimPlugins.vim-kitty-navigator}/share/vim-plugins/vim-kitty-navigator/neighboring_window.py"; }