(in-package #:nyxt-user) #-quicklisp (let ((quicklisp-init (merge-pathnames "quicklisp/setup.lisp" (user-homedir-pathname)))) (when (probe-file quicklisp-init) (load quicklisp-init))) (defvar *web-buffer-modes* '(:emacs-mode ;; :blocker-mode :force-https-mode :reduce-tracking-mode :user-script-mode :bookmarklets-mode) "The modes to enable in any web-buffer by default. Extension files (like dark-reader.lisp) are to append to this list. Why the variable? Because it's too much hassle copying it everywhere.") (define-nyxt-user-system-and-load nyxt-user/basic-config :components ("keybinds" "colorscheme")) (define-configuration (:modable-buffer :prompt-buffer :editor-buffer) "Set up Emacs keybindings everywhere possible." ((default-modes `(:emacs-mode ,@%slot-value%)))) (define-configuration :prompt-buffer "Make the attribute widths adjust to the content in them. It's not exactly necessary on master, because there are more or less intuitive default widths, but these are sometimes inefficient (and note that I made this feature so I want to have it :P)." ((dynamic-attribute-width-p t))) (define-configuration :web-buffer "Basic modes setup for web-buffer." ((default-modes `(,@*web-buffer-modes* ,@%slot-value%)))) (define-configuration :hint-mode "Set up QWERTY home row as the hint keys." ((hints-alphabet "DSJKHLFAGNMXCWEIO"))) (defmethod files:resolve ((profile nyxt:nyxt-profile) (file nyxt/mode/bookmark:bookmarks-file)) "Reroute the bookmarks to the config directory." #p"~/.config/nyxt/bookmarks.lisp") (define-configuration :reduce-tracking-mode ((query-tracking-parameters (append '("utm_source" "utm_medium" "utm_campaign" "utm_term" "utm_content") %slot-value%) :doc "This is to strip UTM-parameters off all the links. Upstream Nyxt doesn't have it because it may break some websites.") (preferred-user-agent "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/112.0.0.0 Safari/537.36" :doc "Mimic Chrome on MacOS.")))