diff --git a/home/ghostty.nix b/home/ghostty.nix index fe3449f..c2a9e50 100644 --- a/home/ghostty.nix +++ b/home/ghostty.nix @@ -1,55 +1,74 @@ -{pkgs, ...}: { +{ pkgs, ... }: +let + ghosttyConfig = '' + theme = "Gruvbox Material Dark" + background = #181818 + cursor-color = #ddc7a1 + selection-background = #504945 + selection-foreground = #ebdbb2 + font-family = Berkeley Mono + font-codepoint-map = U+f101-U+f25c=nonicons + background-opacity = 1 + font-size = 17 + window-padding-y = 0 + window-padding-x = 0 + window-padding-color = extend + mouse-scroll-multiplier = 1 + keybind = global:alt+space=toggle_visibility + keybind = shift+enter=text:\n + keybind = alt+v=activate_key_table:vim + keybind = vim/ + keybind = vim/j=scroll_page_lines:1 + keybind = vim/k=scroll_page_lines:-1 + keybind = vim/ctrl+d=scroll_page_down + keybind = vim/ctrl+u=scroll_page_up + keybind = vim/ctrl+f=scroll_page_down + keybind = vim/ctrl+b=scroll_page_up + keybind = vim/shift+j=scroll_page_down + keybind = vim/shift+k=scroll_page_up + keybind = vim/g>g=scroll_to_top + keybind = vim/shift+g=scroll_to_bottom + keybind = vim/slash=start_search + keybind = vim/n=navigate_search:next + keybind = vim/v=copy_to_clipboard + keybind = vim/y=copy_to_clipboard + keybind = vim/shift+semicolon=toggle_command_palette + keybind = vim/escape=deactivate_key_table + keybind = vim/q=deactivate_key_table + keybind = vim/i=deactivate_key_table + keybind = vim/catch_all=ignore + mouse-hide-while-typing = true + palette = 2=#8ec97c + palette = 10=#8ec97c + palette = 4=#4672d4 + palette = 12=#4672d4 + palette = 6=#8ec07c + palette = 14=#8ec07c + macos-titlebar-style = hidden + macos-option-as-alt = true + confirm-close-surface = true + window-title-font-family = VictorMono NFM Italic + window-padding-balance = true + window-save-state = always + shell-integration-features = true + copy-on-select = clipboard + focus-follows-mouse = true + link-url = true + ''; +in { programs.ghostty = { enable = true; package = pkgs.ghostty-bin; installBatSyntax = true; + }; - settings = { - theme = "Gruvbox Material Dark"; - "font-family" = "Berkeley Mono"; - "font-codepoint-map" = "U+f101-U+f25c=nonicons"; - "background-opacity" = 1; - "font-size" = 17; - "window-padding-y" = 0; - "window-padding-x" = 0; - "window-padding-color" = "extend"; - "mouse-scroll-multiplier" = 1; - keybind = [ - "global:alt+space=toggle_visibility" - "shift+enter=text:\\n" - "alt+v=activate_key_table:vim" - "vim/" - "vim/j=scroll_page_lines:1" - "vim/k=scroll_page_lines:-1" - "vim/ctrl+d=scroll_page_down" - "vim/ctrl+u=scroll_page_up" - "vim/ctrl+f=scroll_page_down" - "vim/ctrl+b=scroll_page_up" - "vim/shift+j=scroll_page_down" - "vim/shift+k=scroll_page_up" - "vim/g>g=scroll_to_top" - "vim/shift+g=scroll_to_bottom" - "vim/slash=start_search" - "vim/n=navigate_search:next" - "vim/v=copy_to_clipboard" - "vim/y=copy_to_clipboard" - "vim/shift+semicolon=toggle_command_palette" - "vim/escape=deactivate_key_table" - "vim/q=deactivate_key_table" - "vim/i=deactivate_key_table" - "vim/catch_all=ignore" - ]; - "mouse-hide-while-typing" = true; - "macos-titlebar-style" = "hidden"; - "macos-option-as-alt" = true; - "confirm-close-surface" = true; - "window-title-font-family" = "VictorMono NFM Italic"; - "window-padding-balance" = true; - "window-save-state" = "always"; - "shell-integration-features" = true; - "copy-on-select" = "clipboard"; - "focus-follows-mouse" = true; - "link-url" = true; - }; + xdg.configFile."ghostty/config" = { + text = ghosttyConfig; + force = true; + }; + + home.file."Library/Application Support/com.mitchellh.ghostty/config.ghostty" = { + text = ghosttyConfig; + force = true; }; } diff --git a/home/tmux.nix b/home/tmux.nix index 6f69888..5dcccae 100644 --- a/home/tmux.nix +++ b/home/tmux.nix @@ -77,16 +77,16 @@ # Styling RED="#ea6962" - GREEN="#a9b665" + GREEN="#8ec97c" YELLOW="#d8a657" - BLUE="#7daea3" + BLUE="#4672d4" MAGENTA="#d3869b" CYAN="#89b482" BLACK="#1d2021" - DARK_GRAY="#282828" + DARK_GRAY="#181818" LIGHT_GRAY="#4F4946" - # Match Ghostty theme "Gruvbox Material Dark" (see programs.ghostty.settings.theme) - BG="#282828" + # Match Ghostty theme (cozybox-override palette + Gruvbox Material Dark base) + BG="#181818" FG="#d4be98" HALF_ROUND_OPEN="#(printf '\uE0B2')"