-
1.25.0 Stable
released this
2025-10-16 08:47:31 +02:00 | 3 commits to master since this releaseAdded
- Performance increased and input latency decreased on compositors that do not release SHM buffers immediately (#2188).
colors{,2}.dim-blend-towards=black|whiteoption, allowing you to select towards which color to blend when dimming text. Defaults toblackin[colors], andwhitein[colors2](#2187).
Changed
- SHM buffer sizes are now rounded up to nearest page size, and their stride is always an even multiple of 256 bytes (by default, configurable by setting
tweak.min-stride-alignment). This allows compositor to directly import foot's SHM buffers to the GPU, with e.g. integrated graphics (#2182). - Jump label colors in the modus-operandi theme, for improved readability.
Fixed
- URL labels misplaces when URL contains double-width characters (#2179).
- One space too much consumed when copying (or pipe:ing) contents with tabs (#2194)
- Ensure we render a new frame when changing fullscreen state. Before, this was automatically done if the window was also resized. But, it is possible for a compositor to change an application's fullscreen state without resizing the window.
Contributors
- Charalampos Mitrodimas
- Matthias Heyman
Downloads
-
Source code (ZIP)
1 download
-
Source code (TAR.GZ)
332 downloads
-
foot-1.25.0.tar.gz
19 downloads · 606 KiB
-
foot-1.25.0.tar.gz.sig
6 downloads · 584 B
-
1.24.0 Stable
released this
2025-09-12 10:18:53 +02:00 | 22 commits to master since this releaseAdded
- The
uppercase-regex-insertoption controls whether an uppercase hint character will insert the selected text into the prompt inregex-copyorshow-urls-copymode. It defaults totrue. (#2159).
Changed
- The label letters are no longer sorted before being assigned to URLs (#2140).
- Sending SIGUSR1/SIGUSR2 to a
foot --serverprocess now causes newly spawned client instances to use the selected theme, instead of the original one. - SIGUSR1/SIGUSR2 can now be sent to
footclientprocesses, to change the theme of that particular instance (#2156).
Fixed
- Invalid configuration values overriding valid ones in surprising ways.
- Bug where the libutempter utmp backend did not record logouts correctly.
Contributors
- Ryan Roden-Corrent
- Tobias Mock
Downloads
-
Source code (ZIP)
2 downloads
-
Source code (TAR.GZ)
7,025 downloads
-
foot-1.24.0.tar.gz
162 downloads · 602 KiB
-
foot-1.24.0.tar.gz.sig
64 downloads · 584 B
- The
-
1.23.1 Stable
released this
2025-07-23 08:29:25 +02:00 | 41 commits to master since this releaseChanged
- URL labels are now assigned in reverse order, from bottom to top. This ensures the last URL (which is often the one you are interested in) is always assigned the same key (#2140).
- Sending
SIGUSR1no longer toggles between[colors]and[colors2], but explicitly changes to[colors].SIGUSR2changes to[colors2](#2144).
Fixed
- 10-bit surfaces sometimes used instead of 16-bit.
- OSC-104/110/111/112/117/119 (reset colors) not taking the currently active theme into account.
Downloads
-
Source code (ZIP)
32 downloads
-
Source code (TAR.GZ)
6,725 downloads
-
foot-1.23.1.tar.gz
208 downloads · 599 KiB
-
foot-1.23.1.tar.gz.sig
106 downloads · 584 B
-
1.23.0 Stable
released this
2025-07-16 08:16:10 +02:00 | 53 commits to master since this releaseAdded
colors2config section. This section duplicates thecolorssection, and lets you define an alternative color theme.key-bindings.color-theme-switch-1,key-bindings.color-theme-switch-2andkey-bindings.color-theme-togglekey bindings. These can be used to switch between the primary and alternative color themes. They are not bound by default.- Sending
SIGUSR1to the foot process now triggers a theme switch (in server mode, all instances toggles their themes). - Support for private mode 2031 - Dark and Light Mode Detection (#2025)
- Added
initial-color-theme=1|2config option.1uses colors from the[colors]section,2uses[colors2]. - Combined dark/light theme files for (dark variant is the default, set
initial-color-theme=2to use the light variant by default):- gruvbox
- nvim
- paper-color
- selenized
- solarized
regex-copy/show-urls-copywill copy and paste the selected text if the hint is completed with an uppercase character (#1975).16-bittotweak.surface-bit-depth. Makes foot use 16-bit image buffers. They provide the necessary color precision required bygamma-correct-blending=yes.- New cursor shapes, from
cursor-shape-v1version 2. center-when-fullscreenandcenter-when-maximized-and-fullscreento thepadoption. This allows you to configure when the grid is centered in more detail (#2111).
Changed
cursor.colormoved tocolors.cursor.- OSC-11 without an alpha value will now restore the configured (i.e. from
foot.ini) alpha, rather than keeping whatever the current alpha value is, unchanged. gamma-correct-blending=yesnow defaults to16-bitimage buffers, instead of10-bit.- Allow setting either selection background, or selection foreground, only (#1846).
- Drop required version of libxkbcommon from 1.8.0 back to 1.0.0 (#2103).
- OSC-52: an empty payload now clears the clipboard.
- DA (Device Attributes): include
52in the reply, to indicate OSC-52 support (when at least copy has been enabled insecurity.osc52).
Deprecated
cursor.colorconfig option; usecolors.cursorinstead.
Removed
- Subsurface unmap quirk for Sway. This was a workaround added in 1.12.1, for Sway issue #6960.
Fixed
REP: wrong width of repeated multi-codepoint graphemes.- Incorrect surface commit after a configure event, under certain conditions (#2105).
Contributors
- Chen Mulong
- Kirill Primak
- Ryan Roden-Corrent
- tokyo4j
Downloads
-
Source code (ZIP)
38 downloads
-
Source code (TAR.GZ)
548 downloads
-
foot-1.23.0.tar.gz
74 downloads · 599 KiB
-
foot-1.23.0.tar.gz.sig
79 downloads · 584 B
-
1.22.3 Stable
released this
2025-05-01 10:21:38 +02:00 | 106 commits to master since this releaseAdded
autoto thetweak.surface-bit-depthoption.
Changed
gamma-correct-blendingnow defaults tonoinstead ofyes.tweak.surface-bit-depthdefault value changed toauto; uses 10-bit surfaces whengamma-correct-blending=yes, and 8-bit surfaces otherwise.
Fixed
- Inaccurate colors when
gamma-correct-blending=yes(#2082).
Downloads
-
Source code (ZIP)
18 downloads
-
Source code (TAR.GZ)
4,768 downloads
-
foot-1.22.3.tar.gz
257 downloads · 594 KiB
-
foot-1.22.3.tar.gz.sig
123 downloads · 584 B
-
1.22.2 Stable
released this
2025-04-30 10:24:10 +02:00 | 111 commits to master since this releaseChanged
gamma-correct-blending=yesnow uses a pure gamma 2.2 transfer function, instead of the piece-wise sRGB transfer function, to match what compositors do.
Fixed
- Wrong colors when
gamma-correct-blending=yes(the default when there is compositor support). Note that some colors will still be off by a very small amount, due to loss of precision when converting to a linear color space. (#2035).
Downloads
-
Source code (ZIP)
8 downloads
-
Source code (TAR.GZ)
262 downloads
-
foot-1.22.2.tar.gz
80 downloads · 594 KiB
-
foot-1.22.2.tar.gz.sig
95 downloads · 584 B
-
1.22.1 Stable
released this
2025-04-26 10:36:40 +02:00 | 116 commits to master since this releaseFixed
colors.alpha-mode=matchingnot working as intended.- Grapheme shaping was allowed to be "enabled" at runtime, even though disabled at compile time. This caused mis-rendering of certain codepoints (#2039).
- Keyboard modifiers not being reset on keyboard leave events (#2034).
- Fallback font (and possibly wrong color) being used when a character was followed by a zero-width grapheme breaking codepoint (for example, LEFT-TO-RIGHT MARK) (#2049).
- Regression: alpha applied to inversed text/selections (#2073).
Contributors
- Jan Palus
- valoq
Downloads
-
Source code (ZIP)
3 downloads
-
Source code (TAR.GZ)
282 downloads
-
foot-1.22.1.tar.gz
50 downloads · 594 KiB
-
foot-1.22.1.tar.gz.sig
81 downloads · 584 B
-
1.22.0 Stable
released this
2025-04-17 14:41:54 +02:00 | 137 commits to master since this releaseAdded
- Support for toplevel edge constraints. When the compositor indicates the toplevel has edge constraints, foot will not allow the window to be resized (via CSDs) in the constrained directions.
- Virtual modifiers (e.g.
Altinstead ofMod1,Superinstead ofMod4etc) in key bindings are now recognized as being virtual, and are automatically mapped to the corresponding real modifier. This means you can use e.g.Alt+binstead ofMod1+b. alpha-modeoption tofoot.ini. Defaults todefault. This config changes how alpha is handled on background colours not set by the terminal.(e.g. vim) (#2026)
Changed
- UTF-8 error recovery now discards fewer bytes.
- Auto-calculated dimmed and brightened colors (e.g. when custom dim colors has not configured) is now done by linear RGB interpolation, rather than converting to HSL and adjusting the luminance (#2006).
- Virtual modifiers in keyboard events from the compositor are now supported. This works around various issues seen when running foot under mutter (GNOME) (#2009):
- Some key combinations generating the wrong escape sequence in the kitty keyboard protocol.
- some of foot's default shortcuts not working (mainly those using
Mod1) out of the box.
- Default URL regex changed to a much more strict variant (#2016). You can manually set the old one, if you prefer it over the new regex.
- A tiled window can now be resized in the corners (via CSDs), unless the compositor has indicated the toplevel has edge constraints.
Fixed
- Regression: assertion in
url-mode.cwhen activating a second URL viashow-urls-persistent(#2000). - Build failure (
srgb.hnot found) when doing a parallel build. - Regression: reflowing (changing the window size) removing empty lines (#2011).
url/regex-copynot handling double-width characters correctly (#2027).
Contributors
- Alex Xu (Hello71)
- datsudo
- Dominique Martinet
- Fazzi
- llyyr
- Łukasz Wojniłowicz
- Sam McCall
Downloads
-
Source code (ZIP)
2 downloads
-
Source code (TAR.GZ)
460 downloads
-
foot-1.22.0.tar.gz
140 downloads · 593 KiB
-
foot-1.22.0.tar.gz.sig
101 downloads · 584 B
-
1.21.0 Stable
released this
2025-03-17 12:11:20 +01:00 | 169 commits to master since this releaseAdded
- Support for the new Wayland protocol
xdg-system-bell-v1protocol (added in wayland-protocols 1.38), via the new config optionbell.system=no|yes(defaults toyes). - Support for custom regex matching (#1386, #1872)
- Support for kitty's text-sizing protocol (
w, width, only), OSC-66. cursor.stylecan now be set tohollow(#1965).search-bindings.delete-to-startandsearch-bindings.delete-to-endkey bindings, defaulting toControl+uandControl+krespectively (#1972).- Gamma-correct font rendering. Requires compositor support (
wp_color_management_v1, and specifically, theext_lineartransfer function). Enabled by default when compositor support is available. Can be explicitly enabled or disabled withgamma-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-filternow 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-charactersandurl.protocols. Both options have been replaced byurl.regex.notifyoption (has been deprecated since 1.18.0).notify-focus-inhibitoption (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).
footandfootclienthanging, or terminating withSIGABRT, 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_keymapkeymaps. - 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
Downloads
-
Source code (ZIP)
3 downloads
-
Source code (TAR.GZ)
7,064 downloads
-
foot-1.21.0.tar.gz
197 downloads · 590 KiB
-
foot-1.21.0.tar.gz.sig
106 downloads · 584 B
- Support for the new Wayland protocol
-
1.20.2 Stable
released this
2025-01-18 09:31:29 +01:00 | 314 commits to master since this releaseChanged
- The
CSI 21 t(report window title) andOSC 176 ?(report app-id) escape sequences are now ignored (#1894).
Fixed
- 'flash' overlay (triggered by either
tput flash, or enablingbell.visualand then sendingBELto the terminal) stuck whencolors.flash-alpha=1.0. - Crash when compositor sends a keyboard enter event before the foot window has been mapped (#1910).
- Build failures (
utf8proc.hnot found) on at least FreeBSD, but most likely other BSDs, as well as some Linuxes (#1903).
Contributors
- Alexander Orzechowski
Downloads
-
Source code (ZIP)
8 downloads
-
Source code (TAR.GZ)
12,628 downloads
-
foot-1.20.2.tar.gz
275 downloads · 576 KiB
-
foot-1.20.2.tar.gz.sig
117 downloads · 584 B
- The