dotfiles/config/nyxt/config.lisp
2026-08-02 12:40:41 -04:00

50 lines
2.2 KiB
Common Lisp

;; Nyxt Configuration
;; Theme - OceanicNext
;; background- = inactive tab bg (auto-derived darker, we override explicitly)
;; background+ = selected tab bg (auto-derived lighter)
(define-configuration browser
((theme (make-instance 'theme:theme
:dark-p t
:background-color "#1B2B34"
:background-color- "#0F1B22" ;; inactive tab bg - visibly darker
:background-color+ "#2B3B44" ;; selected tab bg - slightly lighter
:on-background-color "#CDD3DE"
:primary-color "#343D46"
:on-primary-color "#CDD3DE"
:secondary-color "#4F5B66"
:on-secondary-color "#CDD3DE"
:action-color "#99C794"
:on-action-color "#1B2B34"
:highlight-color "#99C794"
:on-highlight-color "#1B2B34"))
(zoom-ratio-default 1.25)
(restore-session-p nil)))
;; Enable vi keybindings, force HTTPS, and CSS-based dark mode globally
(define-configuration web-buffer
((default-modes (append '(nyxt/mode/vi:vi-normal-mode
nyxt/mode/force-https:force-https-mode)
%slot-value%))
;; Override link colors - secondary-color (#4F5B66) is too dark as a foreground
(style (str:concat %slot-value%
"a:link { color: #6699CC !important; }"
"a:visited { color: #C594C5 !important; }"
"h1, h2, h3, h4, h5, h6 { color: #CDD3DE !important; }"))))
;; Default search engine
(define-configuration context-buffer
((search-engines (list (make-instance 'search-engine
:shortcut "ddg"
:search-url "https://duckduckgo.com/?q=~a"
:fallback-url (quri:uri "https://duckduckgo.com"))))))
;; Fix #selection text color - td specificity overrides it, so we target directly
(define-configuration prompt-buffer
((style (str:concat %slot-value%
"#selection td { color: #1B2B34 !important; }"))))
;; Send current page URL to mpv
(define-command-global mpv-current-url ()
"Open the current page URL in mpv."
(uiop:launch-program (list "flatpak-spawn" "--host" "mpv" (render-url (url (current-buffer))))))