Commit graph

1121 commits

Author SHA1 Message Date
Daniel Eklöf
6c52cc35c3
doc: foot.5: mention that setting workers=0 disables multithreading 2019-12-17 19:09:19 +01:00
Daniel Eklöf
9d09a09edd
doc: foot.1: add -c,--config 2019-12-17 19:09:09 +01:00
Daniel Eklöf
caa76bcdea
config: enable user to specify path to configuration file 2019-12-17 19:08:43 +01:00
Daniel Eklöf
d15631e3de
main: remove unused macros 2019-12-17 19:08:04 +01:00
Daniel Eklöf
a0fcec3a3d
log: caller can control syslog level 2019-12-17 19:07:28 +01:00
Daniel Eklöf
7a3fb9284e
render: render block cursor as a hollow rectangle when unfocused 2019-12-16 21:34:38 +01:00
Daniel Eklöf
66b948750e
input: restart cursor blink on keyboard input
This makes the cursor stay unblinking while typing.
2019-12-16 21:33:44 +01:00
Daniel Eklöf
f4e5baa123
term: disable cursor blink on unfocus, and re-enable on focus 2019-12-16 21:33:22 +01:00
Daniel Eklöf
dac31dd9c0
term: disable cursor blink before shutting down terminal, and remove from FDM 2019-12-16 21:32:57 +01:00
Daniel Eklöf
d490cc84c0
term: cursor blink: cursor refresh now dirties the cursor cell
Normally we don't dirty the cell on cursor movement. But, since a
blinking cursor isn't a cursor that has moved, our normal cursor
rendering wont work.

Dirty the cursor cell to force a redraw of it.
2019-12-16 21:31:40 +01:00
Daniel Eklöf
7d29435d86
term: implement cursor blinking
Blinking can be enabled either by setting the cursor style with

 CSI Ps SP q

and selecting a blinking style.

Or, with 'CSI ? 12 h'

Note that both affect the same internal state. I.e. you can disable
blinking with CSI ? 12l after having selected a blinking cursor
style. This is consistent with XTerm behavior.
2019-12-15 15:07:56 +01:00
Daniel Eklöf
5106937c7b
fdm: close fd even if we didn't find it in our list
This behavior is debatable, but helps in error handling where we're
removing a bunch of descriptors where not all of them have been added
to the FDM yet.
2019-12-15 15:06:09 +01:00
Daniel Eklöf
0e2219daa9
PKGBUILD/meson: bump version to 1.0.0 2019-12-15 12:43:46 +01:00
Daniel Eklöf
2f475d7b44
selection: optimize \r\n -> \n when receiving clipboard data
Instead of first memmoving, possibly lots of data lots of times, the
received buffer, and _then_ calling the callback, simply call the
callback multiple times, and just skip the \r character(s).
2019-12-15 12:11:12 +01:00
Daniel Eklöf
2c4af8728d
vt: add commented out cases for 8-bit C1 control characters
XTerm seems to ignore these when in UTF-8 mode. Since we _only_
support UTF-8, we don't need to recognize these control characters at
all.

However, it may be good to have them here for reference. So add them,
but commented out, along with their corresponding 7-bit
versions (which we _do_ recognize and implement).
2019-12-14 20:28:05 +01:00
Daniel Eklöf
afc8ed97a6
csi: describe format of reply to tertiary DA 2019-12-14 19:10:59 +01:00
Daniel Eklöf
7d8327369b
csi: Send Device Attributes, Tertiary DA: require Ps == 0 2019-12-14 14:38:03 +01:00
Daniel Eklöf
c186f3dc0e
client: strncpy() size limit must be less than destination size 2019-12-14 13:14:24 +01:00
Daniel Eklöf
b2f72d470a
client: add missing break after handling -t,--term 2019-12-14 13:07:33 +01:00
Daniel Eklöf
4102f9d478
client: add 's:' to the list of recognized short options 2019-12-14 13:07:19 +01:00
Daniel Eklöf
9862d2c3a9
Merge branch 'server-socket-path' 2019-12-14 13:03:22 +01:00
Daniel Eklöf
cc0903cabe
completions: zsh: footclient: add -s,--server-socket 2019-12-14 13:02:33 +01:00
Daniel Eklöf
1808c8a5fc
completions: zsh: foot: complete optional -s,--server PATH argument 2019-12-14 13:02:08 +01:00
Daniel Eklöf
a71147a64d
doc: footclient.1: add -s,--server-socket 2019-12-14 13:01:54 +01:00
Daniel Eklöf
ccb3ce5df7
doc: foot.1: update with optional PATH argument to -s,--server 2019-12-14 13:01:37 +01:00
Daniel Eklöf
c0a9cf7767
client: initialize/deinitialize the logging system 2019-12-14 13:01:21 +01:00
Daniel Eklöf
c5875bf97c
client: add -s,--server-socket command line option
This allows the user to override the default
path (XDG_RUNTIME_DIR/foot.sock) we try to connect to.
2019-12-14 13:00:48 +01:00
Daniel Eklöf
44f24b01bc
main: allow server socket path to be set on the command line
This adds an optional argument to -s,--server that allows the user to
override the default socket path (XDG_RUNTIME_DIR/foot.sock).
2019-12-14 12:59:54 +01:00
Daniel Eklöf
89ea61cf0c
server: use socket-path from config 2019-12-14 12:59:38 +01:00
Daniel Eklöf
6d31bd63be
config: add 'server_socket_path' and set a default value 2019-12-14 12:59:06 +01:00
Daniel Eklöf
6ef65058cf
server: log socket packet 2019-12-13 22:28:48 +01:00
Daniel Eklöf
5cd8af44c6
meson: we now require -lm 2019-12-05 19:35:54 +01:00
Daniel Eklöf
db1d913ba8
wayland: include more output (monitor) details in the log output 2019-12-05 19:35:34 +01:00
Daniel Eklöf
8dc9560431
term: determine cell width from the width of the space character 2019-12-05 19:34:47 +01:00
Daniel Eklöf
6da88ddf01
config: trim leading spaces from fonts
When splitting the font configuration into multiple font
specifications, we now trim leading spaces.

This makes no actual difference; fontconfig matched the fonts just
fine anyway, but this looks better in the logs.
2019-12-05 19:33:54 +01:00
Daniel Eklöf
0f8fcad26f
PKGBUILD: require fcft 0.4.x 2019-12-05 19:33:43 +01:00
Daniel Eklöf
cbef66ac07
meson: require fcft 0.4.x 2019-12-05 19:33:31 +01:00
Daniel Eklöf
434da5cc27
fcft: update to 0.4.0 2019-12-05 19:33:18 +01:00
Daniel Eklöf
ad56afe2f4
term: test: set font DPI to the highest DPI we find
In most cases (i.e. when there's only a single output/monitor), this
will be *the* DPI value.

In other cases, well...

The _right_ thing to do is track the outputs our window is actually
mapped on, and re-instantiate fonts depending on the current output's
DPI. But that's for the future...
2019-12-04 22:02:02 +01:00
Daniel Eklöf
bafe7cab28
main: stop initializing a default set of fonts 2019-12-04 22:01:39 +01:00
Daniel Eklöf
7e0e6762eb
fcft: update to 0.3.5 2019-12-04 21:49:56 +01:00
Daniel Eklöf
faaf6b7972
fcft: update to 0.3.4 2019-12-04 21:46:27 +01:00
Daniel Eklöf
bbb8f8af49
fcft: update to 0.3.3 2019-12-04 20:15:52 +01:00
Daniel Eklöf
d179287fb0
meson: we don't need -lm anymore 2019-12-03 21:40:32 +01:00
Daniel Eklöf
bb425be8ac
fcft: update to 0.3.2 2019-12-03 21:39:22 +01:00
Daniel Eklöf
6c817d309e
meson: we don't need -lm anymore 2019-12-03 21:16:41 +01:00
Daniel Eklöf
0f15f0ba43
fcft: update to 0.3.0
fcft now calculates the underline and strikeout integer positions,
making our rendering code much simpler.
2019-12-03 21:03:52 +01:00
Daniel Eklöf
a17ce10c03
search: match_to_end_of_word: reset end_col when done with a row 2019-12-03 20:26:32 +01:00
Daniel Eklöf
0f98101bbc
search: match_to_end_of_word: bug: reset end-col when bumping end-row
When we calculate the end coords, we must reset end-col when we reach
the end of the line and bump the end-row.

This fixes an issue where bumping the row once lead to the end row
being bumped for *each* remaining match character.
2019-12-03 20:25:22 +01:00
Daniel Eklöf
6cfb3216c3
search: bug: restore end-col/end-row adjustment
Turns out end_col *can* be exactly 0. In this case, we need to adjust
the end-row too.
2019-12-03 20:24:41 +01:00