mirror of
https://codeberg.org/dnkl/foot.git
synced 2026-02-06 04:06:06 -05:00
79 lines
2.1 KiB
Markdown
79 lines
2.1 KiB
Markdown
# foot
|
|
|
|
**foot** is a fast Wayland terminal emulator.
|
|
|
|
|
|
## Requirements
|
|
|
|
### Running
|
|
|
|
* fontconfig
|
|
* freetype
|
|
* pixman
|
|
* wayland (_client_ and _cursor_ libraries)
|
|
* xkbcommon
|
|
|
|
|
|
### Building
|
|
|
|
In addition to the dev variant of the packages above, you need:
|
|
|
|
* meson
|
|
* ninja
|
|
* wayland protocols
|
|
* ncurses
|
|
* scdoc
|
|
|
|
|
|
## Fonts
|
|
|
|
**foot** supports all fonts that can be loaded by freetype, including
|
|
**bitmap** fonts and **color emoji** fonts.
|
|
|
|
Foot uses its own font fallback mechanism, rather than relying on
|
|
fontconfig's fallback. This is because fontconfig is quite bad at
|
|
selecting fallback fonts suitable for a terminal (i.e. monospaced
|
|
fonts).
|
|
|
|
Instead, foot allows you to specify a font fallback list, where _each_
|
|
font can be configured independently (for example, you can configure
|
|
the size for each font individually).
|
|
|
|
If a glyph cannot be found in _any_ of the user configured fallback
|
|
fonts, _then_ fontconfig's list is used.
|
|
|
|
|
|
## Shortcuts
|
|
|
|
At the moment, all shortcuts are hard coded and cannot be changed. It
|
|
is **not** possible to define new key bindings.
|
|
|
|
|
|
### Keyboard
|
|
|
|
* `shift+page up/down` - scroll up/down in history
|
|
* `ctrl+shift+c` - copy selected text to the _clipboard_
|
|
* `ctrl+shift+v` - paste from _clipboard_
|
|
* `ctrl+shift+r` - start a scrollback search
|
|
|
|
While doing a scrollback search, the following shortcuts are
|
|
available:
|
|
|
|
* `ctrl+r` - search for next match
|
|
* `esc` - cancel the search
|
|
* `ctrl+g` - cancel the search (same as `esc`)
|
|
* `return` - finish the search and put the current match to the primary selection
|
|
|
|
|
|
### Mouse
|
|
|
|
* `left` - single-click: drag to select; when released, the selected
|
|
text is copied to the _primary_ selection. Note that this feature is
|
|
normally disabled whenever the client has enabled mouse tracking,
|
|
but can be forced by holding `shift`.
|
|
* `left` - double-click: selects the _word_ (separated by spaces,
|
|
period, comma, parenthesis etc) under the pointer. Hold `ctrl` to
|
|
select everything under the pointer up to, and until, the next space
|
|
characters.
|
|
* `left` - triple-click: selects the entire row
|
|
* `middle` - paste from _primary_ selection
|