Release 1.5.0 Deprecated ---------- * `$XDG_CONFIG_HOME/footrc`/`~/.config/footrc`. Use `$XDG_CONFIG_HOME/foot/foot.ini`/`~/.config/foot/foot.ini` instead. * **scrollback** option in `foot.ini`. Use **scrollback.lines** instead. * **scrollback-up** key binding. Use **scrollback-up-page** instead. * **scrollback-down** key binding. Use **scrollback-down-page** instead. Added ----- * Scrollback position indicator. This feature is optional and controlled by the **scrollback.indicator-position** and **scrollback.indicator-format** options in `foot.ini` (https://codeberg.org/dnkl/foot/issues/42). * Key bindings in _scrollback search_ mode are now configurable. * `--check-config` command line option. * **pipe-selected** key binding. Works like **pipe-visible** and **pipe-scrollback**, but only pipes the currently selected text, if any (https://codeberg.org/dnkl/foot/issues/51). * **mouse.hide-when-typing** option to `foot.ini`. * **scrollback.multiplier** option to `foot.ini` (https://codeberg.org/dnkl/foot/issues/54). * **colors.selection-foreground** and **colors.selection-background** options to `foot.ini`. * **tweak.render-timer** option to `foot.ini`. * Modifier support in mouse bindings (https://codeberg.org/dnkl/foot/issues/77). * Click count support in mouse bindings, i.e double- and triple-click (https://codeberg.org/dnkl/foot/issues/78). * All mouse actions (begin selection, select word, select row etc) are now configurable, via the new **select-begin**, **select-begin-block**, **select-extend**, **select-word**, **select-word-whitespace** and **select-row** options in the **mouse-bindings** section in `foot.ini` (https://codeberg.org/dnkl/foot/issues/79). * Implement XTSAVE/XTRESTORE escape sequences, `CSI ? Ps s` and `CSI ? Ps r` (https://codeberg.org/dnkl/foot/issues/91). * `$COLORTERM` is now set to `truecolor` at startup, to indicate support for 24-bit RGB colors. * Experimental support for rendering double-width glyphs with a character width of 1. Must be explicitly enabled with `tweak.allow-overflowing-double-width-glyphs` (https://codeberg.org/dnkl/foot/issues/116). * **initial-window-size-pixels** options to `foot.ini` and `-w,--window-size-pixels` command line option to `foot`. This option replaces the now deprecated **geometry** and `-g,--geometry` options. * **initial-window-size-chars** option to `foot.ini` and `-W,--window-size-chars` command line option to `foot`. This option configures the initial window size in **characters**, and is an alternative to **initial-window-size-pixels**. * **scrollback-up-half-page** and **scrollback-down-half-page** key bindings. They scroll up/down half of a page in the scrollback (https://codeberg.org/dnkl/foot/issues/128). * **scrollback-up-line** and **scrollback-down-line** key bindings. They scroll up/down a single line in the scrollback. * **mouse.alternate-scroll-mode** option to `foot.ini`. This option controls the initial state of the _Alternate Scroll Mode_, and defaults to `yes`. When enabled, mouse scroll events are translated to up/down key events in the alternate screen, letting you scroll in e.g. `less` and other applications without enabling native mouse support in them (https://codeberg.org/dnkl/foot/issues/135). Changed ------- * Renamed man page for `foot.ini` from **foot**(5) to **foot.ini**(5). * Configuration errors are no longer fatal; foot will start and print an error inside the terminal (and of course still log errors on stderr). * Default `--server` socket path to use `$WAYLAND_DISPLAY` instead of `$XDG_SESSION_ID` (https://codeberg.org/dnkl/foot/issues/55). * Trailing empty cells are no longer highlighted in mouse selections. * Foot now searches for its configuration in `$XDG_DATA_DIRS/foot/foot.ini`, if no configuration is found in `$XDG_CONFIG_HOME/foot/foot.ini` or in `$XDG_CONFIG_HOME/footrc`. * Minimum window size changed from four rows and 20 columns, to 1 row and 2 columns. * **scrollback-up/down** renamed to **scrollback-up/down-page**. * fcft >= 2.3.0 is now required. Fixed ----- * Command lines for **pipe-visible** and **pipe-scrollback** are now tokenized (i.e. syntax checked) when the configuration is loaded, instead of every time the key binding is executed. * Incorrect multi-column character spacer insertion when reflowing text. * Compilation errors in 32-bit builds. * Mouse cursor style in top and left margins. * Selection is now **updated** when the cursor moves outside the grid (https://codeberg.org/dnkl/foot/issues/70). * Viewport sometimes not moving when doing a scrollback search. * Crash when canceling a scrollback search and the window had been resized while searching. * Selection start point not moving when the selection changes direction. * OSC 10/11/104/110/111 (modify colors) did not update existing screen content (https://codeberg.org/dnkl/foot/issues/94). * Extra newlines when copying empty cells (https://codeberg.org/dnkl/foot/issues/97). * Mouse events from being sent to client application when a mouse binding has consumed it. * Input events from getting mixed with paste data (https://codeberg.org/dnkl/foot/issues/101). * Missing DPI values for “some” monitors on Gnome (https://codeberg.org/dnkl/foot/issues/118). * Handling of multi-column composed characters while reflowing. * Escape sequences sent for key combinations with `Return`, that did **not** include `Alt`. * Clipboard (or primary selection) is now cleared when receiving an OSC-52 command with an invalid base64 encoded payload. * Cursor position being set outside the grid when reflowing text. * CSD buttons to be hidden when window size becomes so small that they no longer fit. Contributors ------------ * [craigbarnes](https://codeberg.org/craigbarnes) * [birger](https://codeberg.org/birger) * [Ordoviz](https://codeberg.org/Ordoviz) * [cherti](https://codeberg.org/cherti)