Daniel Eklöf
7ad87fdf2b
font: remove assert that was only there for debugging
2019-07-18 09:29:36 +02:00
Daniel Eklöf
89450bfd44
font: sync cairo's options with the FC pattern
...
Configure cairo's 'options' with default values, then update the
FontConfig pattern. Finally, update the cairo options after having
retrieved the final FontConfig option.
2019-07-17 22:50:26 +02:00
Daniel Eklöf
8bd969262b
selection: implement double-click-to-select-word
2019-07-17 21:30:57 +02:00
Daniel Eklöf
f669cce5b9
selection: bug: apply grid's view offset when starting a selection
2019-07-17 12:59:12 +02:00
Daniel Eklöf
20684afa8c
csi: implement \E[@ (ICH - insert characters)
2019-07-17 11:19:28 +02:00
Daniel Eklöf
056700aa8f
keymap: use hex instead of octal
2019-07-17 11:18:55 +02:00
Daniel Eklöf
28eef93742
vt/csi: recognize the reset sequence sent by 'reset'
...
However, we don't (yet) actually reset the terminal
2019-07-17 10:39:38 +02:00
Daniel Eklöf
e944eb85ac
csi: document a couple of unimplemented CSIs
2019-07-17 10:33:15 +02:00
Daniel Eklöf
50153ef7e2
conf: repair debug build when LOG_ENABLE_DBG=0 in config.c
2019-07-17 10:32:22 +02:00
Daniel Eklöf
de575ac58e
conf: improve configuration file parsing
...
* Strip whitespaces from keys and values
* Detect (and ignore) comments
* Detect syntax errors (no value specified etc)
* Error out on syntax errors and invalid keys
2019-07-17 10:12:14 +02:00
Daniel Eklöf
c11cc2be57
main: allow user to override shell on the command line
2019-07-17 09:55:36 +02:00
Daniel Eklöf
2046dc0fbd
slave: break out command line tokenizer
2019-07-17 09:46:45 +02:00
Daniel Eklöf
71d0f6fa56
conf: add support for overriding shell
2019-07-17 09:40:58 +02:00
Daniel Eklöf
aa87be43ba
slave: report exec() failure back to main process
2019-07-17 09:39:12 +02:00
Daniel Eklöf
519f721577
main: jump to cleanup on failure to load cursor pointer theme
2019-07-17 09:38:54 +02:00
Daniel Eklöf
153894eb73
slave: exec shell from conf
2019-07-17 09:30:39 +02:00
Daniel Eklöf
19aaa7b774
conf: get user's shell
2019-07-17 09:29:56 +02:00
Daniel Eklöf
6bce2bed00
render: use cairo_rel_line_to()
2019-07-16 21:54:48 +02:00
Daniel Eklöf
d71c5f15a1
render: shorten foreground/background local variable names
2019-07-16 19:52:45 +02:00
Daniel Eklöf
9ded4b3de2
main: fallback for strikeout positioning seems to work
2019-07-16 16:07:55 +02:00
Daniel Eklöf
06f9495ae2
render: implement strikeout
2019-07-16 15:08:02 +02:00
Daniel Eklöf
d93ca2f654
render: implement 'underline'
2019-07-16 14:20:39 +02:00
Daniel Eklöf
441337645a
render: implement 'dim'
2019-07-16 13:25:57 +02:00
Daniel Eklöf
770c5e97dd
csi: move 'dim' attribute from 'vt' to cell attributes
2019-07-16 13:25:45 +02:00
Daniel Eklöf
6c6543cfeb
csi: add back 'blink' attribute
2019-07-16 13:19:17 +02:00
Daniel Eklöf
ccc8ef9606
terminal: foreground/background in cell attributes are now uint32_t
...
This reduces the cell size, and thus improves the cache behavour
2019-07-16 13:17:51 +02:00
Daniel Eklöf
2a1c4d29e9
csi: implement \E[21m (disable bold)
2019-07-16 12:53:58 +02:00
Daniel Eklöf
0d1b4449b9
conf: initial support for configuration file
...
* Look for configuration file in (in this order):
- XDG_CONFIG_HOME/footrc
- ~/.config/footrc
* Currently supports setting the font
2019-07-16 11:52:22 +02:00
Daniel Eklöf
22115e1cf4
main: default font is 'monospace'
2019-07-16 11:03:48 +02:00
Daniel Eklöf
7f6a4f4b6b
csi: implement FocusIn/Out events
2019-07-16 10:34:08 +02:00
Daniel Eklöf
9929e902a6
csi: recognize, but mostly ignore, cursor style configuration
2019-07-16 10:20:54 +02:00
Daniel Eklöf
4038a8a198
csi: add missing 'break'
2019-07-16 10:20:47 +02:00
Daniel Eklöf
288cee0c1f
osc: recognize, but ignore, 112 (reset text cursor color)
2019-07-16 10:20:20 +02:00
Daniel Eklöf
d91805bb28
add PKGBUILD (for arch)
2019-07-15 15:48:03 +02:00
Daniel Eklöf
433c81f54b
meson: install foot.desktop
2019-07-15 15:47:45 +02:00
Daniel Eklöf
7379198f4a
Use vt_to_slave() instead of calling write(term->ptmx, ...) everywhere
2019-07-15 15:42:21 +02:00
Daniel Eklöf
2f6b8d232f
vt: add vt_to_slave()
2019-07-15 15:42:00 +02:00
Daniel Eklöf
8bf0befe42
Add .desktop file
2019-07-15 15:29:17 +02:00
Daniel Eklöf
ae2ec19133
csi: remove debug logging
2019-07-15 14:00:02 +02:00
Daniel Eklöf
888de785b7
csi: erase alt screen before activating it
2019-07-15 13:59:05 +02:00
Daniel Eklöf
f63df93e15
csi: 'X': then 'end' parameter in term_erase() is *inclusive*
2019-07-15 13:55:47 +02:00
Daniel Eklöf
470489c3a3
vt: there are NULL entries in the alternate charset
2019-07-15 13:39:53 +02:00
Daniel Eklöf
6bf75d199b
vt: \EB and \E0 have an optional "private", not param (which are CSI only)
2019-07-15 13:39:19 +02:00
Daniel Eklöf
5597856762
main: set TERM=xterm-direct
2019-07-15 12:36:00 +02:00
Daniel Eklöf
03b9cf2a22
csi: implement ':'-separated 24-bit color values
2019-07-15 12:35:43 +02:00
Daniel Eklöf
6550285cf6
vt: handle ':'-separated sub parameters correctly
2019-07-15 12:34:51 +02:00
Daniel Eklöf
6ac115bffd
vt: implement SI/SO (shift in, shift out)
...
This enables switching between the G0 and G1 charsets.
2019-07-15 12:04:40 +02:00
Daniel Eklöf
6077b57ca5
rename project to 'foot'
2019-07-11 20:10:59 +02:00
Daniel Eklöf
6e4c31960a
scrollback: limit maximum number of lines one can scrollback at once
2019-07-11 18:34:03 +02:00
Daniel Eklöf
cbac302ba1
scrollback: fix assertions in debug builds; need to wrap row number
2019-07-11 18:25:46 +02:00