Commit graph

1119 commits

Author SHA1 Message Date
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
Daniel Eklöf
b0d555255c
render: limit size of search surface to parent window
This shouldn't be necessary, but Sway acts up when the subsurface
exceeds the parent surface (window, in this case) size, and extends
the window size (if floating), leaving it with no content
2019-12-03 20:19:50 +01:00
Daniel Eklöf
ba399fa874
Merge branch 'scrollback-search-extend-to-end-of-word' 2019-12-03 20:01:53 +01:00