flake/home-manager/kitty.nix

49 lines
1.5 KiB
Nix

{
programs.kitty = {
enable = true;
themeFile = "Catppuccin-Mocha";
shellIntegration = {
mode = "no-rc";
};
settings = {
# tab bar styling
tab_bar_min_tabs = 1;
tab_bar_edge = "bottom";
tab_bar_style = "powerline";
tab_powerline_style = "angled";
active_tab_foreground = "#1e1e2e";
active_tab_background = "#89b4fa";
active_tab_font_style = "bold-italic";
inactive_tab_foreground = "#1e1e2e";
inactive_tab_background = "#b4befe";
inactive_tab_font_style = "normal";
tab_title_template = "{title}{' ({})'.format(num_windows) if num_windows > 1 else ''}";
enabled_layouts = "fat, grid, tall, stack";
# mappings
"map ctrl+p" = "nth_window -1";
"map ctrl+up" = "neighboring_window up";
"map ctrl+down" = "neighboring_window down";
"map ctrl+left" = "neighboring_window left";
"map ctrl+right" = "neighboring_window right";
"map ctrl+shift+up" = "move_window up";
"map ctrl+shift+down" = "move_window down";
"map ctrl+shift+left" = "move_window left";
"map ctrl+shift+right" = "move_window right";
# socket
listen_on = "unix:/tmp/kitty";
allow_remote_control = "socket-only";
};
};
home.file = {
".config/kitty/open-actions.conf".text = ''
# Open any image in the full kitty window by clicking on it
protocol file
mime image/*
action launch --type=overlay kitten icat --hold -- ''${FILE_PATH}
'';
};
}