Mitchell Hashimoto
4f5a05e087
renderer: render cursor over wide character if on tail part
2023-10-13 14:39:10 -07:00
Mitchell Hashimoto
7995d44cfb
font: render sprites with a configurable grid cell width
...
Fixes #666
2023-10-13 14:31:55 -07:00
Mitchell Hashimoto
1411015038
font: fallback search should search full discovery chain
...
Fixes #668
We were previously only checking the first font result in the search.
This also fixes our CoreText scoring algorithm to prioritize faces that
have the codepoint we're searching for.
2023-10-13 12:25:27 -07:00
Mitchell Hashimoto
5ce50d08a1
terminal: linefeed mode
2023-10-12 20:46:26 -07:00
Mitchell Hashimoto
853c0427e6
website: document srm mode
2023-10-12 19:38:06 -07:00
Mitchell Hashimoto
89d2827910
terminal: insert mode tests, fix insertBlanks multi-cell char split
2023-10-12 19:24:27 -07:00
Mitchell Hashimoto
6a065540dd
terminal: KAM (mode 2)
...
This has an associated config `vt-kam-allowed` which defaults to "false"
since this mode can cause the terminal to become mostly unusable. We
include this mode for completions sake however.
2023-10-12 17:07:47 -07:00
Mitchell Hashimoto
d97e5b9dab
input: legacy encoding pc style keys should ignore directional modifiers
2023-10-12 12:28:26 -07:00
Mitchell Hashimoto
17430a1250
terminal: index handles left/right regions
2023-10-12 08:31:28 -07:00
Mitchell Hashimoto
f94f32be79
website
2023-10-11 22:01:37 -07:00
Mitchell Hashimoto
392da475e1
terminal: XTSHIFTESCAPE
2023-10-11 21:49:04 -07:00
Mitchell Hashimoto
f7cc5ccdd6
config: add mouse-shift-capture configuration
2023-10-11 21:38:52 -07:00
Mitchell Hashimoto
96546af475
terminal: test REP
2023-10-11 17:23:27 -07:00
Mitchell Hashimoto
e593ffa264
terminal: default for right scroll margin was incorrect
2023-10-10 16:06:27 -07:00
Mitchell Hashimoto
0d2bfacd5b
terminfo: add left/right margin entries
2023-10-10 15:59:24 -07:00
Mitchell Hashimoto
a9fee348b6
terminal: print handles left/right margins
2023-10-10 15:41:31 -07:00
Mitchell Hashimoto
73ecb6f7ee
terminal: CUL handles left/right margins
2023-10-10 15:26:04 -07:00
Mitchell Hashimoto
0c2bf94b13
Enable left/right margin support
2023-10-10 15:21:45 -07:00
Mitchell Hashimoto
fbc305c901
terminal: reverse index xterm audit
2023-10-10 15:15:53 -07:00
Mitchell Hashimoto
d8f2a8dff0
termio: NEL is index then CR
2023-10-10 14:37:25 -07:00
Mitchell Hashimoto
28b7329fe4
terminal: scroll down test
2023-10-10 14:22:05 -07:00
Mitchell Hashimoto
3cc0cbcc9d
terminal: SU, fix DL bug
2023-10-10 13:00:00 -07:00
Mitchell Hashimoto
7a8f2bfed6
terminal: decscusr
2023-10-10 12:24:11 -07:00
Mitchell Hashimoto
5d1b54eceb
termio: unescape OSC 7 pwd since it is URL encoded
...
Fixes #621
2023-10-10 11:21:59 -07:00
Mitchell Hashimoto
a234627156
core: mouse selection to right should include first cell if past
...
boundary
2023-10-10 09:37:11 -07:00
Mitchell Hashimoto
a6d3d51945
core: mouse selection when moving left before half-way point
...
If you have a cell "M" and you click before the mid-point of M on the
left side and then drag left, we should not select "M".
2023-10-10 09:35:11 -07:00
Mitchell Hashimoto
f216609662
terminal: RIS should reset tabstops, ESC ? W should reset every 8
...
Fixes #648
Two issues here:
- RIS should've been resetting the tabstops to every 8, but was
clearing all tabstops.
- `ESC ? W` should've reset tabstops to every 8, but was clearing
all tabstops.
2023-10-10 09:02:22 -07:00
Mitchell Hashimoto
2354454907
terminal: set left and right margins, left and right margin mode 69
2023-10-09 21:20:15 -07:00
Mitchell Hashimoto
be99d8ffe1
terminal: decaln
2023-10-09 20:33:52 -07:00
Mitchell Hashimoto
7cc0bbe211
terminal: set top and bottom margin tests
2023-10-09 20:08:16 -07:00
Mitchell Hashimoto
9c45c6a3d1
terminal: handle ansi vs dec mode
...
Previously, we just ignored ansi vs dec modes (`?`-prefix) and just
responded to both requests most of the time using the number as the
unique value. This _kind of works_ because almost all DEC modes do not
overlap with ANSI modes, but some overlap (i.e. `insert`, ANSI mode 4).
This commit properly separates ANSI vs DEC modes and updates all of our
terminal sequences to handle both (where applicable -- some sequences
are explicitly DEC-only).
2023-10-09 16:01:08 -07:00
Mitchell Hashimoto
0e22e2a8dd
terminal: SD should also work if cursor outside of left/right region
2023-10-09 10:53:47 -07:00
Mitchell Hashimoto
fc08f9ab17
terminal: TBC tests
2023-10-09 10:01:23 -07:00
Mitchell Hashimoto
ed23f2f1d0
terminal: implement DECID (ESC Z)
2023-10-09 09:43:28 -07:00
Mitchell Hashimoto
773104d343
terminal: scroll down tests
2023-10-09 09:40:28 -07:00
Mitchell Hashimoto
d0b8bf7752
terminal: enable alternate scroll mode by default
...
Fixes #641
xterm does not so there is an argument to not doing this but a lot of
other terminals do. Having this on by default makes things like less
scroll with the mouse wheel by default which is nice to have.
2023-10-09 09:23:39 -07:00
Mitchell Hashimoto
60f0e9289a
terminal: dch xterm audit
2023-10-08 22:16:35 -07:00
Mitchell Hashimoto
1176b65a95
terminal: test IND preserves background sgr
2023-10-08 21:39:29 -07:00
Mitchell Hashimoto
4b9560aa31
terminal: DL
2023-10-08 21:28:41 -07:00
Mitchell Hashimoto
76bbb7c361
terminal: insert lines (IL) handles left/right scroll regions
2023-10-08 20:51:00 -07:00
Mitchell Hashimoto
38f968e368
terminal: IL preserves bg sgr, partial left/right margin support
2023-10-08 15:27:09 -07:00
Mitchell Hashimoto
eab390344a
terminal: ED xterm audit
...
Fix multi-cell handling
Test all scenarios
2023-10-08 14:48:06 -07:00
Mitchell Hashimoto
02b134f97e
terminal: EL (erase line) xterm audit
...
Fix multi-cell char handling
Fix bg SGR respecting in non-protected cases
Fix protected attribute logic
2023-10-08 09:03:04 -07:00
Mitchell Hashimoto
fa73fa0de2
terminal: ECH handles protection attributes properly
2023-10-07 22:36:29 -07:00
Mitchell Hashimoto
514071dd87
terminal: ECH tests with bg and multi-cell fix
2023-10-07 22:21:38 -07:00
Mitchell Hashimoto
f640fbc394
core: alternate scroll only sends up/down arrows, not left/right
2023-10-07 14:26:39 -07:00
Mitchell Hashimoto
d85baa4631
terminal: alternate scroll (mode 1007) should not be enabled by default
2023-10-07 14:26:11 -07:00
Mitchell Hashimoto
90dcf1b7a8
Revert "termio: clear screen always sends form feed (0x0C)"
...
This reverts commit abc383854604189378bfe61239c14f263f7a14de.
See #623
2023-10-07 13:58:07 -07:00
Mitchell Hashimoto
b927760149
terminal: HPR, VPR
2023-10-07 09:32:58 -07:00
Mitchell Hashimoto
f5a5de15cc
terminal: HPA, VPA
2023-10-07 09:22:13 -07:00