2020-08-26, updated: 2021-07-22
After another short but intense development cycle, we are happy to announce the availability of Nyxt version 1.3.3!
This version brings outstanding and unique features (again!). It is also easier to install on GNU/Linux thanks to a Debian package. Please see all installation options on the download page.
Multiple input selection
Until now, Nyxt's prompt was able to ask the user for one choice among a list (with fuzzy completion). Now, for commands that support it, the user can select multiple candidates and apply an action on all of them (for example, to delete many buffers at once). We can filter and narrow the selection with a text input, and we can select all the visible candidates or unselect the current ones.
The default bindings are:
C-SPACEto toggle the mark of an entry.
M-ato mark all visible entries.
M-uto unmark all visible entries.
Furthermore, when the input is changed and the candidates are re-filtered, the selection is not altered, even if the marked elements are not visible. We can add-up the selections.
For example, if we have several Wikipedia and Stack Overflow pages open, and we want to close them, we can do the following:
C-x k(Emacs bindings) or
d(vim bindings) or call
In the list of current buffers, type "wikip" and witness the list will shrink down. Type
M-ato mark all the Wikipedia buffers.
Erase the input and filter with
How efficient is that!?
Of course should you wish, you always have the possibility to write your own
delete-lots-of-buffers command :-)
Bookmarks, tags and compound queries
Now with Nyxt, you can tag your bookmarks and filter them with compound selectors.
When you bookmark a new page (
C-m s or
m M vi-mode or
bookmark-page), you are asked for a list of space-separated tags.
When about to open a bookmark (
M-x set-url-from-bookmark), you can fuzzy-filter the list and also filter them with tag selectors: use
- or start a compound selector with
( in which you can use
+lisp -blog +blog (or lisp emacs) +foo -bar (or (and john doe) (not (and tic tac)))
Additionally, the bookmarks are now saved in text format, more precisely, in s-expressions. You can easily read and edit them with another tool of your choice. In fact, we have a user who syncs them to a Github repository already.
See the commands
Credits go to Solomon Bloch (@noogie13).
The user session is now automatically persisted. Close Nyxt, and find all your buffers open on subsequent starts.
You can also quit without saving it with
M-x quit-after-clearing-session, or program Nyxt to adapt it to your liking. Maybe with hooks this time.
Clone Git repositories
Nyxt 1.3.3 introduces the
git-clone) command to clone Git repositories to disk. It asks for the destination and then runs asynchronously. It has a few configuration options, see the manual.
We see this new command as a simple preview of what is possible with Nyxt, as we can interface with the host system rather easily. We are excited to work more on developer helpers in the future, and to see what you'll come up with.
Another utility is the new
download-video command, which will download the video at the current URL. It is at the moment a wrapper around the youtube-dl program, which you must first install.
After the download, you can open your video with the
open-file command (
See the manual for more documentation and configuration options.
Reopen closed tabs
The new command
reopen-buffer (bound to
u with VI bindings) will ask for a buffer from the most recently closed ones. It supports multiple selection. And
reopen-last-buffer will work without a prompt.
Credits go to
Faster and improved fuzzy completion
Our minibuffer can now match against typos and has much improved performance (no more hang after some 15 input characters…).
The rules are as follows:
When any of the input strings does not match any candidate, Nyxt will try to match against possible typos.
When any of the input strings matches exactly
bufferwould filter out all commands that don't contain the string "buffer".
swt bufferwould do as above, then try its best to guess which of the remaining commands matches "swt" more.
View the buffer history (as a tree)
Early versions of Nyxt have supported tree based history. However, until now, visualizing the whole history tree has been difficult.
Nyxt 1.3.3 introduces the command
buffer-history-tree to view it in HTML:
history-forwards) are the "usual" ones.
history-forwards-query) show the buffer history and ask for an url.
There is also
C-M-b) that is self-explanatory and
history-forwards-maybe-query that will "do the right thing", that is, ask for input only if there is ambiguity.
New command line argument: –no-init
The command line argument
-Q will allow you to start Nyxt without loading your init file.
Changes in configuration settings (alias "functional configuration system")
A new style of configuration is available allowing for a "functional" style of configuration. To know more about it, check out our discussion on GitHub.
What's next ?
We have a ton of ideas, as you certainly will the second you try Nyxt. We worked on it full time on our own resources for the last few months, however, they are limited. We might need to look for a real job. We don't see ourselves doing so much again if we can only devote a fraction of our time to it. That's why we launched the Indiegogo campaign. You are warmly invited to join in to make it a success (even with a small donation, the number of participants is also meaningful to us). Thank you!
If you'd like to become a sponsor, or if you need some help to getting started hacking in Nyxt, you can contact us at
Find out more about Nyxt:
Did you enjoy this article? Register for our newsletter to receive the latest hacker news from the world of Lisp and browsers!
- Maximum one email per month
- Unsubscribe at any time