refactor(kitty): nixify configuration
This commit is contained in:
@@ -2,7 +2,6 @@
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
dotsPath,
|
||||
...
|
||||
}:
|
||||
|
||||
@@ -20,10 +19,145 @@ in
|
||||
programs.kitty = {
|
||||
enable = true;
|
||||
package = config.nixgl.wrap pkgs.kitty;
|
||||
extraConfig = builtins.readFile (dotsPath + "/.config/kitty/kitty.conf");
|
||||
settings = {
|
||||
#: Fonts {{{
|
||||
font_family = "Iosevka Term SS08";
|
||||
bold_font = "auto";
|
||||
italic_font = "auto";
|
||||
bold_italic_font = "auto";
|
||||
font_size = 12.0;
|
||||
disable_ligatures = "never";
|
||||
# }}}
|
||||
|
||||
#: Cursor {{{
|
||||
cursor_shape = "block";
|
||||
cursor_blink_interval = 0;
|
||||
#: }}}
|
||||
|
||||
#: Scrollback {{{
|
||||
scrollback_lines = 8192;
|
||||
scrollbar = "scrolled";
|
||||
scrollback_pager_history_size = 1024;
|
||||
#: }}}
|
||||
|
||||
#: Mouse {{{
|
||||
mouse_hide_wait = 0.0;
|
||||
paste_actions = "quote-urls-at-prompt";
|
||||
#: }}}
|
||||
|
||||
#: Performance tuning {{{
|
||||
repaint_delay = 8;
|
||||
input_delay = 2;
|
||||
#: }}}
|
||||
|
||||
#: Terminal bell {{{
|
||||
enable_audio_bell = true;
|
||||
window_alert_on_bell = true;
|
||||
#: }}}
|
||||
|
||||
#: Window layout {{{
|
||||
remember_window_size = false;
|
||||
remember_window_position = false;
|
||||
enabled_layouts = "*";
|
||||
hide_window_decorations = true;
|
||||
#: }}}
|
||||
|
||||
#: Advanced {{{
|
||||
notify_on_cmd_finish = "unfocused";
|
||||
#: }}}
|
||||
|
||||
#: OS specific tweaks {{{
|
||||
linux_display_server = "auto";
|
||||
wayland_enable_ime = false;
|
||||
#: }}}
|
||||
|
||||
kitty_mod = "ctrl+shift";
|
||||
allow_remote_control = "socket-only";
|
||||
listen_on = "unix:/tmp/kitty";
|
||||
shell_integration = "enabled";
|
||||
};
|
||||
|
||||
#: Keyboard shortcuts {{{
|
||||
keybindings = {
|
||||
"kitty_mod+c" = "copy_to_clipboard";
|
||||
"kitty_mod+v" = "paste_from_clipboard";
|
||||
"cmd+v" = "";
|
||||
# map kitty_mod+o pass_selection_to_program
|
||||
# map kitty_mod+o pass_selection_to_program firefox
|
||||
# map kitty_mod+y new_window less @selection
|
||||
"kitty_mod+z" = "scroll_to_prompt -1";
|
||||
"kitty_mod+x" = "scroll_to_prompt 1";
|
||||
"kitty_mod+h" = "kitty_scrollback_nvim";
|
||||
# map f1 launch --stdin-source=@screen_scrollback --stdin-add-formatting --type=overlay less +G -R
|
||||
#:: For more details on piping screen and buffer contents to external
|
||||
#:: programs, see launch <https://sw.kovidgoyal.net/kitty/launch/>.
|
||||
# map kitty_mod+g show_last_command_output
|
||||
# map kitty_mod+enter launch --cwd=current
|
||||
# map cmd+enter
|
||||
# map ctrl+n launch --location=neighbor
|
||||
# map ctrl+f launch --location=first
|
||||
"kitty_mod+n" = "";
|
||||
"cmd+n" = "";
|
||||
"kitty_mod+w" = "";
|
||||
"shift+cmd+d" = "";
|
||||
"kitty_mod+]" = "";
|
||||
"kitty_mod+[" = "";
|
||||
"kitty_mod+f" = "";
|
||||
"kitty_mod+b" = "";
|
||||
"kitty_mod+`" = "";
|
||||
"cmd+r" = "";
|
||||
"kitty_mod+1" = "";
|
||||
"cmd+1" = "";
|
||||
"kitty_mod+2" = "";
|
||||
"cmd+2" = "";
|
||||
"kitty_mod+3" = "";
|
||||
"cmd+3" = "";
|
||||
"kitty_mod+4" = "";
|
||||
"cmd+4" = "";
|
||||
"kitty_mod+5" = "";
|
||||
"cmd+5" = "";
|
||||
"kitty_mod+6" = "";
|
||||
"cmd+6" = "";
|
||||
"kitty_mod+7" = "";
|
||||
"cmd+7" = "";
|
||||
"kitty_mod+8" = "";
|
||||
"cmd+8" = "";
|
||||
"kitty_mod+9" = "";
|
||||
"cmd+9" = "";
|
||||
"kitty_mod+0" = "";
|
||||
# map kitty_mod+c new_tab # FIXME: conflict with 'copy'
|
||||
"cmd+t" = "";
|
||||
"kitty_mod+q" = "";
|
||||
"cmd+w" = "";
|
||||
"kitty_mod+." = "";
|
||||
"kitty_mod+," = "";
|
||||
"kitty_mod+alt+t" = "";
|
||||
"shift+cmd+i" = "";
|
||||
"kitty_mod+f1" = "";
|
||||
"kitty_mod+f11" = "";
|
||||
"ctrl+cmd+f" = "";
|
||||
"kitty_mod+f10" = "";
|
||||
"opt+cmd+s" = "";
|
||||
"kitty_mod+u" = "kitten unicode_input";
|
||||
"ctrl+cmd+space" = "";
|
||||
"kitty_mod+/" = "kitty_shell window";
|
||||
"kitty_mod+f5" = "";
|
||||
"kitty_mod+r" = "load_config_file";
|
||||
|
||||
"shift+cmd+/" = "";
|
||||
"cmd+h" = "";
|
||||
"opt+cmd+" = "";
|
||||
"cmd+m" = "";
|
||||
"cmd+q" = "";
|
||||
|
||||
"kitty_mod+g" = "kitty_scrollback_nvim --config ksb_builtin_last_cmd_output";
|
||||
};
|
||||
#: }}}
|
||||
actionAliases.kitty_scrollback_nvim = "kitten ~/.local/share/kitty-scrollback.nvim/python/kitty_scrollback_nvim.py";
|
||||
mouseBindings."ctrl+shift+right press" =
|
||||
"ungrabbed combine : mouse_select_command_output : kitty_scrollback_nvim --config ksb_builtin_last_visited_cmd_output";
|
||||
};
|
||||
|
||||
home.file.".config/kitty/nvim.conf".source = dotsPath + "/.config/kitty/nvim.conf";
|
||||
home.file.".local/share/kitty-scrollback.nvim".source = pkgs.vimPlugins.kitty-scrollback-nvim;
|
||||
};
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user