diff options
| author | Fuwn <[email protected]> | 2024-08-29 21:31:09 -0700 |
|---|---|---|
| committer | Fuwn <[email protected]> | 2024-08-29 21:31:09 -0700 |
| commit | 653f81eec07eb3e33c380810676a7feb45e1df43 (patch) | |
| tree | 00d43c8f1b2cb2cf8ebaf1b7c1a4c026718033bb /home/ebisu/fortune/system/terminal | |
| parent | some stuff (diff) | |
| download | nixos-config-653f81eec07eb3e33c380810676a7feb45e1df43.tar.xz nixos-config-653f81eec07eb3e33c380810676a7feb45e1df43.zip | |
some stuff
Diffstat (limited to 'home/ebisu/fortune/system/terminal')
| -rw-r--r-- | home/ebisu/fortune/system/terminal/default.nix | 11 | ||||
| -rw-r--r-- | home/ebisu/fortune/system/terminal/foot/default.nix | 49 | ||||
| -rw-r--r-- | home/ebisu/fortune/system/terminal/kitty/default.nix | 113 |
3 files changed, 173 insertions, 0 deletions
diff --git a/home/ebisu/fortune/system/terminal/default.nix b/home/ebisu/fortune/system/terminal/default.nix new file mode 100644 index 0000000..6375e0a --- /dev/null +++ b/home/ebisu/fortune/system/terminal/default.nix @@ -0,0 +1,11 @@ +{ pkgs, ... }: { + imports = [ + ./kitty + ./foot + ]; + + home.packages = with pkgs; [ + cool-retro-term + # warp-terminal + ]; +} diff --git a/home/ebisu/fortune/system/terminal/foot/default.nix b/home/ebisu/fortune/system/terminal/foot/default.nix new file mode 100644 index 0000000..ed0820b --- /dev/null +++ b/home/ebisu/fortune/system/terminal/foot/default.nix @@ -0,0 +1,49 @@ +{ pkgs, ... }: { + programs.foot = { + enable = true; + + settings = { + main = { + font = "SF Mono:size=12"; + font-bold = "SF Mono:size=12:weight=medium"; + font-italic = "SF Mono:size=12:slant=italic"; + font-bold-italic = "SF Mono:size=12:slant=italic:weight=medium"; + + # Font Fine-tuning + # vertical-letter-offset = -1; + # line-height = 13; + # underline-thickness = 0.6; + # underline-offset = 2; + + # Styling + bold-text-in-bright = "palette-based"; + pad = "15x15"; # "24x24" + + # Misc. + resize-delay-ms = "0"; + term = "xterm"; + # locked-title = "yes"; + selection-target = "both"; + # workers = "0"; + # utmp-helper = "none"; + }; + + url.osc8-underline = "always"; + bell.urgent = "yes"; + # scrollback.lines = "1000"; + mouse.hide-when-typing = "yes"; + key-bindings.clipboard-paste = "Control+v Control+Shift+v"; + + tweak = { + scaling-filter = "none"; + # font-monospace-warn = "no"; + # grapheme-width-method = "wcswidth"; + # grapheme-shaping = "no"; + }; + + colors = { + alpha = "0.8"; + }; + }; + }; +} diff --git a/home/ebisu/fortune/system/terminal/kitty/default.nix b/home/ebisu/fortune/system/terminal/kitty/default.nix new file mode 100644 index 0000000..4346e8d --- /dev/null +++ b/home/ebisu/fortune/system/terminal/kitty/default.nix @@ -0,0 +1,113 @@ +{ pkgs, config, ... }: +{ + programs.kitty = { + enable = true; + + settings = { + # Font + # MesloLGS NF + font_family = "SF Mono Light"; + bold_font = "SF Mono Medium"; + italic_font = "SF Mono Light Italic"; + bold_italic_font = "SF Mono Medium Italic"; + font_size = 12; # 13.5 + + # Optimisation + resize_debounce_time = 0; + sync_to_monitor = true; + repaint_delay = 0; + input_delay = 0; + + # Style + background_opacity = "0.8"; + window_border_width = 0; + window_margin_width = 15; + hide_window_decorations = "titlebar-only"; + include = "~/.cache/wal/colors-kitty.conf"; + + # Cursor + cursor_blink_interval = 0; # 0.5 + cursor_stop_blinking_after = 0; # 15 + + # Other + scrollback_pager = "less +G -R"; + wheel_scroll_multiplier = 5; + click_interval = "0.5"; + select_by_word_characters = ":@-./_~?&=%+#"; + mouse_hide_wait = 0; + enabled_layouts = "*"; + remember_window_size = false; + macos_option_as_alt = false; + allow_remote_control = true; + confirm_os_window_close = 0; + term = "xterm-kitty"; + + # Bell + visual_bell_duration = 0; + enable_audio_bell = false; + + # URL Handling + open_url_modifiers = "ctrl+shift"; + open_url_with = "default"; + }; + + extraConfig = '' + # Clipboard + map super+v paste_from_clipboard + map ctrl+shift+s paste_from_selection + map super+c copy_to_clipboard + map shift+insert paste_from_selection + + # Scrolling + map ctrl+shift+up scroll_line_up + map ctrl+shift+down scroll_line_down + map ctrl+shift+k scroll_line_up + map ctrl+shift+j scroll_line_down + map ctrl+shift+page_up scroll_page_up + map ctrl+shift+page_down scroll_page_down + map ctrl+shift+home scroll_home + map ctrl+shift+end scroll_end + map ctrl+shift+h show_scrollback + + # Window management + map super+n new_os_window + map super+w close_window + map ctrl+shift+enter new_window + map ctrl+shift+] next_window + map ctrl+shift+[ previous_window + map ctrl+shift+f move_window_forward + map ctrl+shift+b move_window_backward + map ctrl+shift+` move_window_to_top + map ctrl+shift+1 first_window + map ctrl+shift+2 second_window + map ctrl+shift+3 third_window + map ctrl+shift+4 fourth_window + map ctrl+shift+5 fifth_window + map ctrl+shift+6 sixth_window + map ctrl+shift+7 seventh_window + map ctrl+shift+8 eighth_window + map ctrl+shift+9 ninth_window + map ctrl+shift+0 tenth_window + + # Tab management + map ctrl+shift+right next_tab + map ctrl+shift+left previous_tab + map ctrl+shift+t new_tab + map ctrl+shift+q close_tab + map ctrl+shift+l next_layout + map ctrl+shift+. move_tab_forward + map ctrl+shift+, move_tab_backward + + # Miscellaneous + map ctrl+shift+up increase_font_size + map ctrl+shift+down decrease_font_size + map ctrl+shift+backspace restore_font_size + + map ctrl+/ launch --allow-remote-control kitty +kitten kitty_search/search.py @active-kitty-window-id + ''; + }; + + # read the file, but remove the line with shell_integration + # xdg.configFile."kitty/kitty.conf".text = + # builtins.map (line: if builtins.match "shell_integration" line then "" else line) (builtins.split "\n" (builtins.readFile ~/.config/kitty/kitty.conf)); +} |