2022-07-12, updated: 2022-07-14
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!
- 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
--headlessCLI switch. Initfile becomes the script to run in the headless instance on Nyxt.
set-input-data-from-saved-domaincommands 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.
define-internal-schemehelper to define custom schemes.
jump-to-headingcommand now sort and indent the headings in a natural fashion based on their order on the page.
previous-headingcommands to jump between neighboring headings.
match-portURL designator predicate for auto-mode rules.
repeat-keycommand repeating the provided key as many times as you like.
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-slynkcommand. (Thanks to @jgart!)
- Nyxt-native debugger available via
- Better Lisp values inspection in
lisp-repl, extensible through
describe-*commands describing things in any Nyxt-accessible package. Available via
C-h ukey prefix.
*after-startup-hook*to attach headless mode actions or configuration to.
*features*when built from source on an untagged commit. A feature with the commit is also added.
- Input processing is now easier to customize with
- The core nyxt packages are now locked to prevent against accidental clobbering from the user side.
- General purpose helpers can be found in the
nxrefSpinneret tag for cross-referencing.
For the complete change list, please consult the built-in
We hope you enjoy these new features, and that they help make you more productive. Thanks for reading :-)
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
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