Terminal and VTE news

Dear distributors/packagers and everyone interested,

Here’s a little heads-up about the GNOME Terminal and VTE releases arriving with GNOME 46.

VTE 0.76:

  • The compression algorithm (for the scrollback buffer) was changed from zlib to lz4. Make sure to adjust the build and runtime dependencies.

  • Major performance improvements:

    • The display is now updated from the GTK frame clock (i.e. typically at 60 Hz), rather than maybe 20-30-ish FPS as previously, resulting in a smoother experience.
    • The GTK4 version now delegates much of the drawing work to the GPU.
    • Processing large amounts of incoming data is now about twice as fast as before.
  • The GTK4 build requires brand new GTK 4.14. (Strictly speaking 4.12 is sufficient to compile and run it, but the old GL renderer of 4.12 is known to cause rendering failures and crashes in some cases (vte#2758) which are believed to be gone with 4.14’s new NGL renderer.)

  • Basic shell integration: Press Shift + Ctrl + Left/Right to jump to the previous/next prompt. Need to source vte.sh from bash or zsh to set up this feature (you should be doing this already, in order to open new tabs in the same directory).

  • Support for escape sequences that set up horizontal margins, perform horizontal scrolling and related operations: These are advertised in terminfo but weren’t previously supported. Some apps (e.g. neovim) really wish to use them. Even if they don’t currently, they might start to rely on them in future versions.

  • Many bugfixes and smaller improvements (including two new underline styles).

All in all, I highly recommend updating to this release.

GNOME Terminal 3.52:

Minor improvements and minor fixes over 3.50.

GNOME Terminal 3.97:

This is a preview of the forthcoming GTK4 version.

The user interface, especially the Preferences dialog has been reworked.

Unfortunately the port still has some notable problems:

  • The terminal window keeps shrinking on non-GNOME desktops.
  • No accessibility support.
  • Some random bugs that aren’t there in the GTK3 version.

At this moment I strongly recommend to stick with the GTK3-based 3.52. We’re hoping to have a stable GTK4-based GNOME Terminal 4.0 along with GNOME 47 or 48.