config.nix/modules/terminal/kitty.nix

79 lines
1.8 KiB
Nix

{
config,
lib,
pkgs,
...
}:
{
options = {
terminal = {
kitty.enable = lib.mkEnableOption "enable kitty";
};
};
config = lib.mkIf config.terminal.kitty.enable {
programs = {
kitty = {
enable = true;
enableGitIntegration = true;
shellIntegration = {
enableFishIntegration = true;
enableBashIntegration = true;
};
font = {
name = "FiraCode Nerd Font";
size = 16;
package = pkgs.nerd-fonts.fira-code;
};
settings = {
wayland_titlebar_color = "system";
macos_titlebar_color = "system";
# The most important setting of the whole confiG
confirm_os_window_close = 0;
# Cursor
cursor_shape = "underline";
# Scrollback
scrollback_lines = 10000;
# Link Behaviour
url_style = "straight";
open_url_with = "default";
# Layouts
remember_window_size = "no";
enabled_layouts = "splits, tall";
window_resize_step_cells = 3;
window_resize_step_lines = 3;
window_border_width = "3 pt";
draw_minimal_borders = "yes";
window_margin_width = 10;
window_padding_width = 10;
# Borders/Appearance
inactive_text_alpha = 0.5;
hide_window_decorations = "no";
# tab bar
tab_bar_min_tabs = 1;
tab_bar_edge = "bottom";
tab_bar_style = "powerline";
tab_powerline_style = "slanted";
tab_title_template = "{title}{' :{}:'.format(num_windows) if num_windows > 1 else ''}";
};
};
};
home.sessionVariables = {
TERM = lib.mkDefault "xterm-kitty";
};
};
}