codeberg dnkl/foot 1.21.0

one day ago

Added

  • Support for the new Wayland protocol xdg-system-bell-v1 protocol (added in wayland-protocols 1.38), via the new config option bell.system=no|yes (defaults to yes).
  • Support for custom regex matching (#1386, #1872)
  • Support for kitty's text-sizing protocol (w, width, only), OSC-66.
  • cursor.style can now be set to hollow (#1965).
  • search-bindings.delete-to-start and search-bindings.delete-to-end key bindings, defaulting to Control+u and Control+k respectively (#1972).
  • Gamma-correct font rendering. Requires compositor support (wp_color_management_v1, and specifically, the ext_linear transfer function). Enabled by default when compositor support is available. Can be explicitly enabled or disabled with gamma-correct-blending=no|yes.

Changed

  • Do not try to set a zero width, or height, if the compositor sends a configure event with only one dimension being zero (#1925).
  • Auto-detection of URLs (i.e. not OSC-8 based URLs) are now regex based.
  • Rename Tokyo Night Day theme to Tokyo Night Light and update colors.
  • fcft >= 3.3.1 is now required.
    • tweak.scaling-filter now supports more scaling-filters
    • scaled bitmap fonts (when enabled in FontConfig) no longer have a scaling-filter applied
  • Linefeed:ing control characters (e.g. \n) no longer clears a row's internal linebreak flag. This fixes an issue where e.g. multi-line prompt input in fish is treated as separate lines, rather than one logical, when selecting and copying it (#1487).
  • wayland-protocols >= 1.41 is now required.

Removed

  • url.uri-characters and url.protocols. Both options have been replaced by url.regex.
  • notify option (has been deprecated since 1.18.0).
  • notify-focus-inhibit option (has been deprecated since 1.18.0).

Fixed

  • Kitty keyboard protocol: alternate key reporting failing to report the alternate codepoint in some corner cases (#1918).
  • foot and footclient hanging, or terminating with SIGABRT, when starting inside a directory whose total length is more than 1024 characters.
  • Regression: reflowing (resizing the window) a line that ends with a double-width glyph that was pushed to the next line due to there being only one cell left on current line, did not remove the virtual space inserted at the end of the current line.
  • Wrong key bindings executed when using alternative keyboard layouts (#1929).
  • Foot not closing file descriptors for unrecognized or no_keymap keymaps.
  • Combining characters (including emojis consisting of multiple codepoints) not being handled correctly when insert mode is enabled (#1947).
  • Reflow of the cursor (active + saved) when at the end of the line with a pending wrap (LCF set) (#1954).
  • Zero-width characters that also are grapheme breaks (e.g. U+200B, ZERO WIDTH SPACE) being ignored (discarded and never stored in the grid) (#1960).
  • --server=<FD> not working on FreeBSD (#1956).
  • Crash when resetting the terminal and an application had previously set a custom app ID (#1963)
  • Grapheme clustering state not reset on cursor movements.
  • Kitty keyboard protocol: no release events emitted for composed keys.
  • IME: the initial cursor position was reported as 0,0,0,0 (#1994).

Contributors

  • Adrian fxj9a
  • Alexander Orzechowski
  • Attila Fidan
  • camel-cdr
  • Craig Barnes
  • Guillaume Outters
  • Johannes Altmanninger
  • Ludovico Gerardi
  • sewn
  • Thomas Bonnefille

Don't miss a new foot release

NewReleases is sending notifications on new releases.