GNU Emacs 29 prepares support for WebP, Tree-sitter, enhancements and more

emacs-logo

Emacs is a feature-rich text editor that is popular with programmers and technical users alike.

Recently Eli Zaretskii, one of the main developers of emacsSaid that a beta version should be available very soon unless serious problems are identified in the code.

With this it is mentioned that the next version of GNU Emacs 29 should come with support for Image format WebP, Tree-sitter, parser generation tool and incremental parser library, Eglot (Emacs Polyglot), Lsp (Language Server Protocol) for Emacs, as well as various other improvements.

What news awaits us in the release of GNU Emacs 29 ?

In the publication shared by Eli Zaretskii, he highlights that a of the main novelties Preparing for the new version of Emacs 29 Tree-sitter, a parser generation tool and incremental parsing library.

It is mentioned that with it you can build a concrete syntax tree for a source file and efficiently update the syntax tree when you edit the source file. From there, it's not just syntax highlighting that can be done at high speed.

Emacs tree-sitter currently supports the main modes:

  • bash-ts-mode
  • c-ts-mode
  • c++-ts-mode
  • csharp-ts-mode
  • css-ts-mode
  • java-ts-mode
  • js-ts-mode
  • json-ts-mode
  • python-ts-mode
  • typescript-ts-mode

It is worth mentioning that Tree-sitter inclusion currently has a special status in emacs-29, since new features can still be added to it, its merge with the master branch is still recent.

Another change What to expect for Emacs 29 is Eglot (Emacs Polyglot) is an LSP (Language Server Protocol) client for Emacs. It is worth mentioning that there are several LSP integrations for Emacs, such as LSP Mode, Eglot, and lsp-bridge. Of the three, Eglot is now part of the Emacs core. and depending on the team, there's no need to install a package anymore, just register the LSP server and autocompletion, documentation, error detection, and other features are immediately available.

In addition to that, also It stands out that from Emacs 29 it will be possible to compile with pure GTK and it is that one of the main problems of Emacs in Linux was its dependency on Xorg when it was executed in GUI mode, although in reality the problem lies with Wayland that has become more and more common in the last years, and even with the existence of XWayland has become a nuisance. Given this, Emacs can now be compiled with pure GTK.

Also Emacs 29 will allow compilation with native support for SQLite and the sqlite3 library, which according to the team, this is now default behavior, since you have to pass–without-sqlite3 to the configure script when compiling Emacs to avoid it.

On the other hand, also HaikuOS support is highlighted so Emacs can now be compiled directly from the system and the setup process should automatically detect and build for Haiku.

It is worth mentioning that there is also an optional port of the window system to Haiku, which can be enabled by configuring Emacs with the --with-be-app option, which will require the Haiku Application Kit development headers and a C++ compiler to be present on your system. If Emacs is not built with the '–with-be-app' option, the resulting editor will only work on text-mode terminals.

Last but not least, it is also noted that in Emacs 29 support for displaying images in the .webp format has been added and besides that emacs has better handling of .pdmp files, because now, when creating such a file, it will include in its name a fingerprint of its current state, although it will always prioritize an emacs.pdmp file if it exists.

Finally we can also highlight that emacs now uses XInput 2, allowing Emacs to support more input events, such as touchpad events. For example, by default, a pinch gesture on a trackpad increases or decreases the size of text. This is thanks to the new pinch event, which comes with touch-end.

If you are interested in knowing more about it, you can consult the details In the following link.


The content of the article adheres to our principles of editorial ethics. To report an error click here!.

Be the first to comment

Leave a Comment

Your email address will not be published. Required fields are marked with *

*

*

  1. Responsible for the data: AB Internet Networks 2008 SL
  2. Purpose of the data: Control SPAM, comment management.
  3. Legitimation: Your consent
  4. Communication of the data: The data will not be communicated to third parties except by legal obligation.
  5. Data storage: Database hosted by Occentus Networks (EU)
  6. Rights: At any time you can limit, recover and delete your information.