2022-07-12, updated: 2022-07-14
Nyxt 3 Pre-release 1
We are so happy to announce that after 6 months some 1.5K+ commits, we are ready to show you a preview of Nyxt 3! As always, there's a lot of new features (bugs), so your feedback is critical!
This is a test release for everyone to try out before the final release. It contains experimental features and some parts are still unfinished. Please feel free to share your feedback on our GitHub issue tracker!
You can Download Nyxt 3 Pre-release 1 here.
Notable highlights:
- The auto-config file is now suffixed with the major version number. This means that upgrading Nyxt to a new major version will ignore the previous auto-configuration (which probably wouldn't work anyways).
- UserScript support (such as GreaseMonkey scripts).
- New prompt-buffer fuzzy matching algorithm, hopefully offering more relevant results. (Thanks to @BlueFlo0d!)
- New support for the Gopher and Gemini protocols.
- Headless mode available through
--headless
CLI switch. Initfile becomes the script to run in the headless instance on Nyxt. - New
save-input-data
,set-input-data-from-saved
andset-input-data-from-saved-domain
commands to record and restore input fields. - Color-picker support when native-dialogs enabled.
- Internal pages are now using the Nyxt URL scheme. They support the Lisp protocol to allow evaluating arbitrary Lisp, for instance from a button click. Internal pages also have a URL now, which means they have history support.
- New
define-internal-scheme
helper to define custom schemes. jump-to-heading
command now sort and indent the headings in a natural fashion based on their order on the page.- New
next-heading
andprevious-heading
commands to jump between neighboring headings. - New
match-port
URL designator predicate for auto-mode rules. - New
toggle-message-buffer
andtoggle-status-buffer
commands. - New
bookmark-frequent-visits
mode. - New
repeat-key
command repeating the provided key as many times as you like. - Revamped
lisp-repl
. Multiple commands can be run at the same time. Results can be referred to via dynamic variables. - The history-tree buffer links are now clickable and navigate the corresponding buffer to the corresponding history entry.
- The source code is now shipped together with Nyxt. This enables to inspect the source of most Nyxt functions.
- Slynk is a new dependency and SLY users can now connect to a running Nyxt instance with the
start-slynk
command. (Thanks to @jgart!) - Nyxt-native debugger available via
toggle-debug-on-error
. - Better Lisp values inspection in
describe-*
commands andlisp-repl
, extensible throughvalue->html
method. - Universal
describe-*
commands describing things in any Nyxt-accessible package. Available viaC-h u
key prefix. *after-startup-hook*
to attach headless mode actions or configuration to.- New
nyxt-unstable
*features*
when built from source on an untagged commit. A feature with the commit is also added. - New
theme
library. - Input processing is now easier to customize with
command-dispatcher
andinput-skip-dispatcher
slots ofwindow
. - The core nyxt packages are now locked to prevent against accidental clobbering from the user side.
- New
ffi-buffer-load-html
andffi-buffer-load-alternate-html
. This is useful to set the buffer content without resorting to expensive JavaScript calls. - General purpose helpers can be found in the
nyxt/utilities
package. - New
nxref
Spinneret tag for cross-referencing.
For the complete change list, please consult the built-in changelog
command.
We hope you enjoy these new features, and that they help make you more productive. Thanks for reading :-)
Screenshots
Below are a few screenshots! Please bear in mind, this list is not exhaustive!
A new default theme
A new default theme that is more readable and meets all contrast requirements for accessibility.
Improved jump to heading
Sections are now sorted by their naturally occuring order in a document. They additionally show their depth/level in the prompt buffer.
A better Lisp REPL
The Lisp REPL now offers completion to help you test things on the fly!
Results in the Lisp REPL are intelligently rendered depending on the data structure they are. A list for example is displayed as a list!
Better symbol search
The new describe-any
command allows you to find information about anything regardless of whether it is a function, a class, a slot, or otherwise!
Access to the Gopherspace!
With support for Gemini and Gopher, Nyxt is capable of accessing and browsing the alternative (small) web!
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