Commit graph

174 commits

Author SHA1 Message Date
Daniel Eklöf
16a525f8e2
readme/doc: add shift+insert to list of default key bindings 2020-10-11 19:27:15 +02:00
Daniel Eklöf
282af44784
config: bind shift+insert to primary-paste by default 2020-10-11 19:26:57 +02:00
Daniel Eklöf
ab618dd192
doc: foot.1: remove ‘--’ from example command line 2020-10-11 19:25:07 +02:00
Daniel Eklöf
9de744ae39
doc: foot.ini: mention that ‘lines’ is rounded up to nearest power of 2 2020-10-11 19:25:06 +02:00
Daniel Eklöf
8257954bfa
doc: foot.ini: “top at” -> “top of” 2020-10-11 19:25:01 +02:00
Daniel Eklöf
6714c3343f
doc: foot.ini: it’s foot.ini, not foot.init 2020-10-11 19:24:56 +02:00
Daniel Eklöf
5aa170b9f6
doc: foot.ini: the tweak section is called ‘tweak’, not ‘tweaks’ 2020-10-11 19:24:13 +02:00
Daniel Eklöf
bf17026ed7
config: change default multiplier from 1.0 -> 3.0 2020-10-11 19:23:29 +02:00
Daniel Eklöf
f30d7cce27
doc: foot.ini: alternate-scroll-mode: fix highlighting of CSI escape 2020-09-16 08:05:38 +02:00
Daniel Eklöf
f2497320c6
config: add mouse.alternate-scroll-mode option
This option controls the initial state of the Alternate Scroll Mode,
and defaults to ‘enabled’.
2020-09-15 19:12:29 +02:00
Daniel Eklöf
fdfdbba9a0
render: best-effort attempt to set initial window size in chars when scale != 1
The initial window size is set *before* we’re initially mapped. This
means we don’t (yet) know on which output we’ll be mapped. _That_
means we don’t know which scaling factor to use.

This implements a best effort attempt, where we use the “guessed”
scaling factor. This will always be correct in single-monitor
configurations, but may be wrong in multi-monitor setups with
different scaling factors.
2020-09-14 17:36:56 +02:00
Daniel Eklöf
51a7e44fa2
config: add tweak.scaling-filter
Use the new fcft_set_scaling_filter() API to use a non-default scaling
filter.

By default, we use lanczo3, the ‘best’ filter. This overrides the
default in fcft, which is ‘cubic’ filtering.
2020-09-13 17:59:56 +02:00
Daniel Eklöf
4d13429235
key-binding: deprecate scrollback-up/down, add scrollback-up/down-line
This deprecates/renames scrollback-up/down to scrollback-up/down-page.

It also renames scrollback-up/down-half to
scrollback-up/down-half-page, and adds the new bindings
scrollback-up/down-line.
2020-09-10 18:17:47 +02:00
Daniel Eklöf
2e3bd5e23c
config: add scrollback-{up,down}-half key bindings
These new bindings scroll up/down half a page in the
scrollback (instead of the full page scrolled by
‘scrollback-{up,down}’).

Closes #128.
2020-09-09 19:40:48 +02:00
Daniel Eklöf
eb6737ca25
Add -W,--window-size-chars, and foot.ini:initial-window-size-chars
* Add -W,--window-size-chars command line option
* Add initial-window-size-chars foot.ini option
* Add -w,--window-size-pixels command line option
* Add initial-window-size-pixels foot.ini option
* Deprecate -g,--geometry command line option in favor of
  -w,--window-size-pixels
* Deprecate geometry option in foot.ini in favor of
  initial-window-size-pixels
2020-09-08 19:41:00 +02:00
Daniel Eklöf
d040284cc7
config: add tweak.damage-whole-window
When enabled, foot will ‘damage’ the entire window, instead of just
the modified/updated rows.

This will force the compositor to redraw/blend the whole window.

This can be used to workaround an issue with fractional scaling in
Gnome, where random thin lines may appear.
2020-09-06 17:52:07 +02:00
Daniel Eklöf
c40ada903d
doc: foot.ini: max-shm-pool-size-mb: a value of 0 disables the feature 2020-09-06 09:34:58 +02:00
Daniel Eklöf
123c94379b
doc: foot.ini: remove empty lines after option name 2020-09-05 09:38:48 +02:00
Daniel Eklöf
b71016c25d
render: optionally enable heuristics that deal with private usage area chars
Try to detect double-width *glyphs* for single-width *characters*, and
allow them to overflow into the next cell.

This is only done for single-width chars with a glyph width that is at
least 1.5 cells wide, but at most 3 cells.

The feature is gated by the new
‘tweak.allow-overflowing-double-width-glyphs’, and is disabled by
default.

Closes #116
2020-09-03 17:37:44 +02:00
Daniel Eklöf
b957f2faa7
doc: meson: @01@ -> @1@ 2020-08-27 21:22:27 +02:00
Daniel Eklöf
a24109a5e3
doc: foot.ini: highlight configuration file paths with bold, not italic/underline 2020-08-27 21:09:54 +02:00
Daniel Eklöf
5c4af880fc
doc: rename footrc.5 to foot.ini.5, and update references 2020-08-27 20:02:30 +02:00
Lennard Hofmann
df576d9a8e Fix typos 2020-08-15 23:29:38 +02:00
Daniel Eklöf
2ab2f5e99d
Merge branch 'spelling-fixes' into master 2020-08-15 21:28:13 +02:00
Craig Barnes
104fe2fa55 Fix some spelling mistakes 2020-08-15 19:39:00 +01:00
Birger Schacht
5d761a03cc Fix typo 2020-08-15 17:44:11 +02:00
Daniel Eklöf
517d13fbce
config: don't allow Shift in mouse bindings
Shift is a special modifier that is used to enable selection when the
client application is grabbing the mouse.
2020-08-14 07:38:56 +02:00
Daniel Eklöf
24ee6d836b
doc: footrc: mouse-bindings: clean up description 2020-08-14 07:38:56 +02:00
Daniel Eklöf
4d2bc54fa2
config: mouse bindings: add select-begin-block and select-row 2020-08-14 07:38:56 +02:00
Daniel Eklöf
9352befd13
doc: footrc: document the new mouse actions 2020-08-14 07:38:55 +02:00
Daniel Eklöf
c6ad765f91
doc: footrc: document click count in mouse bindings 2020-08-14 07:36:53 +02:00
Daniel Eklöf
b783e4c6ea
doc: footrc: document modifiers in mouse bindings 2020-08-13 18:47:20 +02:00
Daniel Eklöf
17070a0d54
config: add tweak.render-timer option
This can be set to 'none' (the default), 'osd', 'log' or 'both'.

When 'osd' is enabled, we'll render the frame rendering time to a
sub-surface after each frame.

When 'log' is enabled, the frame rendering time is logged on stderr.
2020-08-13 18:35:17 +02:00
Daniel Eklöf
c7126c4076
doc: footclient.1: move DESCRIPTION up before OPTIONS 2020-08-13 18:34:44 +02:00
Daniel Eklöf
6c78919d4b
doc: foot.1: move DESCRIPTION up before OPTIONS 2020-08-13 18:34:24 +02:00
Daniel Eklöf
5e36ebdef8
config: make selection foreground/background colors configurable
The default is still to inverse the regular foreground/background
colors.

If the user sets *both* of the new options, selection-foreground and
selection-background, those colors will *always* be used for selected
cells, instead of inverting the regular foreground/background colors.
2020-08-12 19:41:50 +02:00
Daniel Eklöf
156cce6ef6
doc: foot.1: don't talk about using '--' on the command line
This used to be necessary, but isn't anymore.
2020-08-12 19:40:50 +02:00
Daniel Eklöf
d929862245
config: move cursor.hide-when-typing to mouse.hide-when-typing 2020-08-04 07:33:15 +02:00
Daniel Eklöf
36468b0406
config: add scrollback.multiplier option
This option is used to multiply the mouse scroll amount for mouse and
trackpad based scrollback scrolling.

Closes #54.
2020-08-03 20:08:39 +02:00
Craig Barnes
657c98d520 doc: fix "SYNOPSIS" section in footclient(1) man page 2020-08-03 02:53:25 +01:00
Daniel Eklöf
5e26d3ef47
server/client: use $WAYLAND_DISPLAY instead of $XDG_SESSION_ID in default socket path
Foot is a Wayland client and cannot be run outside of a Wayland
session. As such, it makes more sense to use $WAYLAND_SESSION instead
of $XDG_SESSION_ID in the default socket path since this makes it
clearer which Wayland session we belong to.

Closes #55.
2020-08-02 13:10:31 +02:00
Daniel Eklöf
f3c301ee8b
doc: foot.1: fix default path in -s,--server
The documentation incorrectly stated that the default path is
$XDG_RUNTIME_DIR/foot.sock.

The correct default path is

* $XDG_RUNTIME_DIR/foot-$XDG_SESSION_ID.sock
* $XDG_RUNTIME_DIR/foot-no-session.sock
* /tmp/foot.sock

Depending on whether XDG_RUNTIME_DIR and XDG_SESSION_ID has been set
or not.

This also removes the '<>' from the default when XDG_SESSION_ID is not
set.

Closes #53.
2020-08-02 12:32:10 +02:00
Daniel Eklöf
d4ee9be4d7
config: add 'hide-when-typing'
When enabled, the mouse cursor is hidden when the user types in the
terminal. It is un-hidden when the user moves the mouse, or when the
window loses keyboard focus.
2020-07-31 17:09:06 +02:00
Daniel Eklöf
639a61abd8
config: add 'pipe-selected' key binding
This works just like pipe-visible and pipe-scrollback, but pipes the
user-selected text, if any, to the external tool.

Closes #51
2020-07-31 17:04:30 +02:00
Daniel Eklöf
4f9da982f0
doc+readme: make it clear(er) that RMB can be hold-and-dragged 2020-07-31 06:07:42 +02:00
Daniel Eklöf
86e7cb04c4
main: add --check-config command line option 2020-07-29 17:48:22 +02:00
Daniel Eklöf
d11d374252
config: add scrollback section
* Move 'scrollback' to 'scrollback.lines'
* Move (the new) 'scrollback-indicator-*' options to
  'scrollback.indicator-*'

Log a deprecation warning when the old 'scrollback' option is used,
but don't remove it, yet.
2020-07-29 17:41:24 +02:00
Daniel Eklöf
25e745cd8a
doc: footrc.5: add 'uniq | tac' to the pipe-visible example 2020-07-29 17:32:55 +02:00
Daniel Eklöf
919f31ffcb
search/config: configurable key bindings for (scrollback) search mode 2020-07-29 17:27:01 +02:00
Daniel Eklöf
2882fbb537
config: add free-form text variant to 'scrollback-indicator-format'
And make the empty string the new default.
2020-07-28 19:56:53 +02:00