Nyxt, an Emacs-style browser made with Common Lisp

Is a fully hackable web browser - all its source code can be introspected, modified and tweaked to your exact specification.


Nyxt, an Emacs-style browser made with Common Lisp


Nyxt Browser is a fully hackable web browser - all its source code can be introspected, modified and tweaked to your exact specification.

It was written in Lisp and based on Emacs style commands .

Installation

There are several ways to install Nyxt on your system. Despite being officially available for Linux, it can also be installed on macOS and FreeBSD .

For Linux, the way of installation may depend on your distribution, however, regardless of your distribution there is a way that fits all and does not need any dependency and is the way I recommend, but at the end of this article there are links that you can see how to install in another way.

  • First create a local directory named nyxt and enter it:
mkdir nyxt && cd nyxt

  • Download the compressed file:

    This is the latest version according to this article.

wget https://github.com/atlas-engineer/nyxt/releases/download/2.2.4/nyxt-2.2.4.tar.xz

  • Unzip the file:
tar Jxvf nyxt-2.2.4.tar.xz

From now on you can test Nyxt by running the command: ./usr/local/bin/nyxt


  • After unzipping, remove the tar.xz file:
rm nyxt-2.2.4.tar.xz


  • Exit directory and move nyxt directory to /opt
cd ..
sudo mv nyxt/ /opt/

  • Now create a symbolic link to /usr/local/bin:
sudo ln -s /opt/nyxt/usr/local/bin/nyxt /usr/local/bin/nyxt

From that moment on, you can test Nyxt just by running the command: nyxt


  • Make it possible to access it via Launcher or your system’s Dashboard and copy the .desktop for Launcher:
find /opt/nyxt/ -name "nyxt.desktop" -exec sudo cp {} /usr/share/applications/ \;

  • Change the executable path of the nyxt.desktop file:
sudo sed -i 's/Exec.*/Exec=nyxt %u/g' /usr/share/applications/nyxt.desktop

  • Set the default path for the Nyxt icon to be displayed correctly:
sudo cp $(find /opt/nyxt/ -name "nyxt.png" | grep 256x256) /usr/share/pixmaps/

Now test by trying to find it and opening it from your Launcher/Dashboard.

In my case I use Rofi: Nyxt Launcher Rofi Click on the image to open in a new tab for a larger view.



Usage

As soon as you open Nyxt for the first time, the home page already offers you links to: Keyboard shortcuts, Tutorials and others, but the basic procedures for navigating are:

Remember that in Emacs almost everything is combinations with the keys Ctrl and Alt, where C is Ctrl and M is Alt .

  • C-l (Ctrl + L): Open a URL , if you do not enter the protocol, eg https://terminalroot.com/ it will search by default in DuckDuckGo the name/URL entered.
  • C-r: Refresh the page (Reload the buffer)
  • M-l(Alt + L): Open the URL in a new buffer
  • C-[, C-]: Toggle buffer
  • M-[: Returns to the previous page while browsing
  • M-]: Goes to the page accessed while browsing
  • C-j: Displays all clickable links on the page - Then type the two letters that appear from the link and press ENTER
  • C-q: Quit Nyxt Browser
  • C-space: To run a command
  • F1 b: Display all hotkeys
  • Esc: Closes the lower menu when it is open.

In the lower bar of the browser, there is the possibility to change tabs, open menu, reload the page and among others using only the mouse click:

Nyxt Bottom Bar

Click on the image to open in a new tab for a larger view.


For other forms of installation and complete documentation, access the links below:


lisp web browser


Share


YouTube channel

Subscribe


Marcos Oliveira

Marcos Oliveira

Software developer
https://github.com/terroo

Related articles