-
Notifications
You must be signed in to change notification settings - Fork 4
/
Copy pathkitty.nix
84 lines (75 loc) · 2.81 KB
/
kitty.nix
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
79
80
81
82
83
84
{
config,
lib,
pkgs,
...
}:
{
home.sessionVariables = {
TERMINFO_DIRS = "${pkgs.kitty.terminfo.outPath}/share/terminfo";
};
stylix.targets.kitty.enable = true;
programs.kitty = {
enable = true;
settings = {
bold_font = "${config.programs.kitty.font.name} Bold";
italic_font = "${config.programs.kitty.font.name} Italic";
bold_italic_font = "${config.programs.kitty.font.name} Bold Italic";
# Add nerd font symbol map. Not sure why it is suddenly needed since 0.32.0 (https://github.com/kovidgoyal/kitty/issues/7081)
symbol_map = "U+23FB-U+23FE,U+2665,U+26A1,U+2B58,U+E000-U+E00A,U+E0A0-U+E0A2,U+E0A3,U+E0B0-U+E0B3,U+E0B4-U+E0C8,U+E0CA,U+E0CC-U+E0D4,U+E200-U+E2A9,U+E300-U+E3E3,U+E5FA-U+E6B1,U+E700-U+E7C5,U+EA60-U+EBEB,U+F000-U+F2E0,U+F300-U+F372,U+F400-U+F532,U+F500-U+FD46,U+F0001-U+F1AF0 Symbols Nerd Font Mono";
# Do not wait for inherited child processes.
close_on_child_death = "yes";
# Only disable ligatures when the cursor is on them.
disable_ligatures = "cursor";
# Modified onehalfdark color scheme
foreground = "#c9d3e5";
background = "#090a0c";
cursor = "#cccccc";
color0 = "#090a0c";
color8 = "#393e48";
color1 = "#b2555d";
color9 = "#e06c75";
color2 = "#81a566";
color10 = "#98c379";
color3 = "#ccab6e";
color11 = "#e6c17c";
color4 = "#5395cc";
color12 = "#61afef";
color5 = "#9378de";
color13 = "#c678dd";
color6 = "#56b6c2";
color14 = "#56b6c2";
color7 = "#979eab";
color15 = "#abb2bf";
selection_foreground = "#282c34";
selection_background = "#979eab";
# Disable cursor blinking
cursor_blink_interval = "0";
# Big fat scrollback buffer
scrollback_lines = "100000";
# Set scrollback buffer for pager in MB
scrollback_pager_history_size = "256";
# Don't copy on select
copy_on_select = "no";
# Set program to open urls with
open_url_with = "xdg-open";
# Fuck the bell
enable_audio_bell = "no";
};
keybindings = {
# Keyboard mappings
"shift+page_up" = "scroll_page_up";
"shift+page_down" = "scroll_page_down";
"ctrl+shift+." = "change_font_size all -2.0";
"ctrl+shift+," = "change_font_size all +2.0";
"ctrl+shift+w" = "no_op";
};
# XXX: mkForce to prevent stylix from appending theme.
# Fix this by making a correct theme that can be used.
# TODO aaaaaaaaaa
extraConfig = lib.mkForce ''
# Use nvim as scrollback pager
scrollback_pager nvim -u NONE -c "set nonumber nolist showtabline=0 foldcolumn=0 laststatus=0" -c "autocmd TermOpen * normal G" -c "silent write! /tmp/kitty_scrollback_buffer | te head -c-1 /tmp/kitty_scrollback_buffer; rm /tmp/kitty_scrollback_buffer; cat"
'';
};
}