summaryrefslogtreecommitdiff
path: root/nix/programs/kitty/default.nix
blob: 994da43ce58590432c772b1f531af30c44656713 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
{ config, lib, ... }:

{
  default.terminal = lib.mkDefault "kitty";

  home-manager.users.${config.user} = {
    programs.kitty = {

      enable = true;
      environment = { };
      extraConfig = "";

      settings = {
        # Font
        font_family = config.theme.font.monospace;
        font_size = 11;
        bold_font = "auto";
        italic_font = "auto";
        bold_italic_font = "auto";

        # Scrollback
        scrollback_lines = 10000;
        scrollback_pager_history_size = 300; # MB

        # Urls
        detect_urls = true;
        show_hyperlink_targets = false;

        # Window
        window_padding_width = config.theme.outerGap;
        window_border_width = 0;
        draw_minimal_borders = true;
        background_opacity = config.theme.opacity;

        # Disable audio
        enable_audio_bell = false;

        # Disable close prompt
        confirm_os_window_close = 0;

        # colors
        background = "#${config.theme.colors.bg}";
        foreground = "#${config.theme.colors.fg}";
        selection_background = "#${config.theme.colors.surface.bg}";
        selection_foreground = "#${config.theme.colors.surface.fg}";
        url_color = "#${config.theme.colors.bright.yellow}";
        cursor = "#${config.theme.colors.fg}";
        active_border_color = "#${config.theme.colors.primary}";
        inactive_border_color = "#${config.theme.colors.bg}";
        active_tab_background = "#${config.theme.colors.bg}";
        active_tab_foreground = "#${config.theme.colors.fg}";
        inactive_tab_background = "#${config.theme.colors.bg}";
        inactive_tab_foreground = "#${config.theme.colors.fg}";
        tab_bar_background = "#${config.theme.colors.bg}";

        # normal
        color0 = "#${config.theme.colors.normal.black}";
        color1 = "#${config.theme.colors.normal.red}";
        color2 = "#${config.theme.colors.normal.green}";
        color3 = "#${config.theme.colors.normal.yellow}";
        color4 = "#${config.theme.colors.normal.blue}";
        color5 = "#${config.theme.colors.normal.magenta}";
        color6 = "#${config.theme.colors.normal.cyan}";
        color7 = "#${config.theme.colors.normal.white}";

        # bright
        color8 = "#${config.theme.colors.bright.black}";
        color9 = "#${config.theme.colors.bright.red}";
        color10 = "#${config.theme.colors.bright.green}";
        color11 = "#${config.theme.colors.bright.yellow}";
        color12 = "#${config.theme.colors.bright.blue}";
        color13 = "#${config.theme.colors.bright.magenta}";
        color14 = "#${config.theme.colors.bright.cyan}";
        color15 = "#${config.theme.colors.bright.white}";
      };
    };
  };
}