Added
cursor.blink-rate
option, allowing you to configure the rate the cursor blinks with (whencursor.blink=yes
) (#1707);- Support for
wp_single_pixel_buffer_v1
; certain overlay surfaces will now utilize the new single-pixel buffer protocol. This mainly reduces the memory usage, but should also be slightly faster. - Support for high-res mouse wheel scroll events (#1738).
- Styled and colored underlines (#828).
- Support for SGR 21 (double underline).
- Support for
XTPUSHCOLORS
,XTPOPCOLORS
andXTREPORTCOLORS
, i.e. color palette stack (#856). - Log output now respects the
NO_COLOR
environment variable (#1771). - Support for in-band window resize notifications, private mode
2048
. - Support for OSC-99 "Kitty desktop notifications".
desktop-notifications.command
option, replacesnotify
.desktop-notifications.inhibit-when-focused
option, replacesnotify-focus-inhibit
.${category}
,${urgency}
,${expire-time}
,${replace-id}
,${icon}
and${action-argument}
added to thedesktop-notifications.command
template.desktop-notifications.command-action-argument
option, defining how${action-argument}
(indesktop-notifications.command
) should be expanded.desktop-notifications.close
option, defining what to execute when an application wants to close an existing notification (via an OSC-99 escape sequence).
Changed
-
All
XTGETTCAP
capabilities are now in thetigetstr()
format:- parameterized string capabilities were previously "source encoded", meaning e.g.
\E
where not "decoded" into\x1b
. - Control characters were also "source encoded", meaning they were returned as e.g. "^G" instead of
\x07
(#1701).
In other words, if, after this change,
XTGETTCAP
returns a string that is different compared totigetstr()
, then it is likely a bug in foot's implementation ofXTGETTCAP
. - parameterized string capabilities were previously "source encoded", meaning e.g.
-
If the cursor foreground and background colors are identical (for example, when cursor uses inverted colors and the cell's foreground and background are the same), the cursor will instead be rendered using the default foreground and background colors, inverted (#1761).
-
Mouse wheel events now generate
BTN_WHEEL_BACK
andBTN_WHEEL_FORWARD
"button presses", instead ofBTN_BACK
andBTN_FORWARD
. The default bindings have been updated, andscrollback-up-mouse
,scrollback-down-mouse
,font-increase
andfont-decrease
now use the new button names.This change allow users to separate physical mouse buttons that also generates
BTN_BACK
andBTN_FORWARD
, from wheel scrolling (#1763). -
Replaced the old catppuccin theme with updated flavored themes pulled from catppuccin/foot
-
Mouse selections can now be started inside the margins (#1702).
Deprecated
notify
option; replaced bydesktop-notifications.command
.notify-focus-inhibit
option; replaced bydesktop-notifications.inhibit-when-focused
.
Fixed
- Crash when zooming in or out, with
dpi-aware=yes
, and the monitor's DPI is 0 (this is true for, for example, nested Wayland sessions, or in virtualized environments). - No error response for empty
XTGETTCAP
request (#1694). - Unicode-mode in one foot client affecting other clients, in foot server mode (#1717).
- IME interfering in URL-mode (#1718).
- OSC-52 reply interleaved with other data sent to the client (#1734).
- XKB compose state being reset when foot receives a new keymap (#1744).
- Regression: alpha changes through OSC-11 sequences not taking effect until window is resized.
- VS15 being ignored (#1742).
- VS16 being ignored for a subset of the valid VS16 sequences (#1742).
- Crash in debug builds, when using OSC-12 to set the cursor color and foot config has not set any custom cursor colors (i.e. without OSC-12, inverted fg/bg would be used).
- Wrong color used when drawing the unfocused, hollow cursor. Encoding of
BTN_BACK
andBTN_FORWARD
, when sending a mouse input escape sequence to the terminal application.
Contributors
- abs3nt
- Artturin
- Craig Barnes
- Jan Beich
- Mariusz Bialonczyk
- Nicolas Kolling Ribas