WARNING: [[https://www.aartaka.me.eu.org/nyxt-to-surf][I no longer use Nyxt]], so this config is likely to rot and get wildly irrelevant. Proceed with caution.
And configures some basic things, like default modes for buffers.
Everything interesting is in other files.
There are some things that irritate me in default keybindings and I want to unbind/rebind these.
There are some commands that I lack keybindings for (e.g., password management, prompting history movement) and I want to add these.
A good example of how you can redefine mode keybinding there!
I don't like the default wordy version of status-buffer (especially with long mode names), so I define my own styles and layouts to make it lighter.
This can evolve into an extension someday.
I love dark themes everywhere, and I don't like any colors but red. This have made me to do black-red-and-green [[https://github.com/aartaka/laconia-theme][laconia-theme]]. I'm trying to reproduce it in style.lisp.
Right now it uses the 3.0 =theme= library (made by yours truly :P).
I lack some things in Nyxt, like the ability to evaluate arbitrary Lisp expression without a REPL (there used to be a command for that in 1.5, but it was phased out) and horisontal split, so I hack those with some possibly non-portable things and internal Nyxt APIs.
It's too useful to have hsplit to not implement a hacky one based on panel buffers :P
This one leverages Nyxt 3.* improved request processing to redirect any PDF file I load to a separate buffer, where its text is parsed with ~pdftotext~. I like ~pdftotext~ (even if it's quite chaotic at times), so why not extend this passion to Nyxt? :P
I cherish a dream of getting into reverse engineering, and ~objdump~ seems to be a good and simple utility to get one's feet wet. Thus, this simple ~objdump~ command to display section contents as a webpage.
Lots of search engines for different things (search-engines.lisp) This file has actually evolved from small configuration to an extension: [[https://github.com/aartaka/nx-search-engines][nx-search-engines]], so now it's basically an extension configuration. To use it, you need to do
(define-nyxt-user-system-and-load "nyxt-user/search-engines" :depends-on (:nx-search-engines) (:components "search-engines.lisp"))
in your init.lisp.
A KeePassXC configuration (passwd.lisp) This used to contain a =setup-keepassxc= function to setup KeePassXC to better work with built-in password interface. Now this function is merged upstream as part of this password interface, so what's left is just a simple re-configuration of defaults.
Bookmarks relocation (bookmarks.lisp)
This is a file with all my bookmarks, Git-synced across devices. The snippet (in init.lisp) that enables it is:
(defmethod files:resolve ((profile nyxt:nyxt-profile) (file nyxt/bookmark-mode:bookmarks-file)) (uiop:parse-unix-namestring "~/.config/nyxt/bookmarks.lisp"))
This configures [[https://github.com/atlas-engineer/nx-ace][nx-ace]] to work as a default =editor-mode=. To enable it, you need to use
(define-nyxt-user-system-and-load "nyxt-user/search-engines" :depends-on (:nx-ace) (:components "ace.lisp"))
in your init.lisp.
I fell in love with Kaomojis, and I need an easy way to paste these in my browser. That's why I made [[https://github.com/aartaka/nx-kaomoji][nx-kaomoji]]! Now I can paste over-emotional responses everywhere!
This file is simply a keybinding configuration. To enable nx-kaomoji, you need to use
(define-nyxt-user-system-and-load "nyxt-user/search-engines" :depends-on (:nx-kaomoji) (:components "kaomoji.lisp"))
in your init.lisp.
Redirections to free alternatives for Twitter/YouTube I rely on [[https://github.com/kssytsrk/nx-freestance-handler][kssytsrk/nx-freestance-handler]] here. It's mostly plug-n-play, so not much configuration there.
A reasonable dark theme via Dark Reader This is based on [[https://github.com/aartaka/nx-dark-reader][my extension]] using [[https://github.com/darkreader/darkreader][Dark Reader]] to offer a good dark theme for almost any website. Does nothing special -- simply configures some colors for Dark Reader to work better with my theme from [[Styling (style.lisp)][style.lisp]].