294 Commits

Author SHA1 Message Date
Mitchell Hashimoto
b3ec7028fb detect and attach grapheme to grapheme data 2022-09-04 21:57:07 -07:00
Mitchell Hashimoto
f3f60e47d1 clearHistory 2022-09-03 21:40:03 -07:00
Mitchell Hashimoto
30a14d230e process ASCII events manually to avoid function call overhead 2022-09-01 17:53:40 -07:00
Mitchell Hashimoto
77c8ec0a20 the big screen switchover 2022-09-01 00:58:47 -07:00
Mitchell Hashimoto
4a247e3bb8 single shift 2/3 2022-08-27 10:16:21 -07:00
Mitchell Hashimoto
bee82d58dc Shift Out/Shift In (invoke charset into GL) 2022-08-27 10:08:01 -07:00
Mitchell Hashimoto
7626f194e9 basic charset mapping, support configuration, print tests 2022-08-27 09:42:05 -07:00
Mitchell Hashimoto
fe6ba02709 sgr pixels mouse report format 2022-08-26 14:59:44 -07:00
Mitchell Hashimoto
1039ad76bf urxvt reporting format 2022-08-26 14:57:35 -07:00
Mitchell Hashimoto
f551c0ef66 SGR reporting 2022-08-26 14:55:18 -07:00
Mitchell Hashimoto
b46fe522d5 UTF-8 mouse reporting 2022-08-26 14:42:20 -07:00
Mitchell Hashimoto
ab305add6c any event mouse tracking 2022-08-26 14:26:42 -07:00
Mitchell Hashimoto
9aa5378ffa Track/cache button state and mods state 2022-08-26 13:55:24 -07:00
Mitchell Hashimoto
a4bab6592d normal events can now track scroll 2022-08-26 12:25:33 -07:00
Mitchell Hashimoto
43b7727cf8 change u1 in mode to bool 2022-08-26 11:27:44 -07:00
Mitchell Hashimoto
f9274bdafc define mouse events, all TODO 2022-08-26 11:14:34 -07:00
Mitchell Hashimoto
dc6fc5c1c3 implement faint colors (SGR 2) 2022-08-26 11:13:34 -07:00
Mitchell Hashimoto
65df657b4e make cell attrs bools instead of u1s 2022-08-26 11:09:48 -07:00
Mitchell Hashimoto
4ffd5cd994 SGR 39/49 (reset fg/bg, respectively) 2022-08-26 09:56:17 -07:00
Mitchell Hashimoto
46bbab5d10 ignore zero-width characters for now 2022-08-24 13:48:22 -07:00
Mitchell Hashimoto
ec288d9111 get rid of assertions because its possible they're false 2022-08-20 17:21:14 -07:00
Mitchell Hashimoto
da79aae0ab terminal: print wide characters 2022-08-20 16:11:48 -07:00
Mitchell Hashimoto
2457454b07 test wasm of the term package 2022-08-17 13:57:21 -07:00
Mitchell Hashimoto
ad1cdbcd59 implement erase display scrollback ("clear" command) 2022-08-09 09:22:34 -07:00
Mitchell Hashimoto
38af14ff3a resize alt screen without reflow 2022-08-08 21:14:27 -07:00
Mitchell Hashimoto
be3a539152 start working on new resize with reflow, can grow rows 2022-08-07 15:52:53 -07:00
Mitchell Hashimoto
2d6d027097 Screen.region to get a region of contiguous memory for a tag 2022-08-07 10:46:35 -07:00
Mitchell Hashimoto
05e0adaa01 screen operations operate on the active area
This fixes tons of bugs around escape sequences while scrolling that
used to work on the offset from the viewport (which is wrong). This now
calculates the actual active area and does that. This also fixes the
TODO in the diff.
2022-08-07 09:49:54 -07:00
Mitchell Hashimoto
8ea20f9e41 start changing getRow and rowIndex to use tagged indexes
Lots of bugs here, but it MATCHES the bugs!
2022-08-07 09:41:30 -07:00
Mitchell Hashimoto
c99a79055c HPA does nothing when status display is active 2022-08-05 19:56:40 -07:00
Mitchell Hashimoto
974138378b introducing dedicated point types 2022-08-04 13:04:42 -07:00
Mitchell Hashimoto
1680aee880 some logging improvements 2022-08-03 21:13:05 -07:00
Mitchell Hashimoto
befeb08b3d add a lot more tracing as I hunt down some performance things 2022-08-03 09:56:32 -07:00
Mitchell Hashimoto
40cec18943 implement DECSASD by just blackholing the output for now
We don't want to support status lines, and if anything sends us status
line information we don't want it to mess up the main display, so just
drop it.
2022-08-02 11:03:01 -07:00
Mitchell Hashimoto
2b80699179 cursor position absolute needs to ignore all the offset stuff 2022-08-02 10:30:20 -07:00
Mitchell Hashimoto
28acd99d7d reset inverse attribute 2022-07-26 09:37:52 -07:00
Mitchell Hashimoto
85a9e6fdf0 fix an off by one in set cursor pos 2022-07-25 17:03:20 -07:00
Mitchell Hashimoto
a239098883 index should return after handling bottom-most line in scroll region 2022-07-25 08:08:23 -07:00
Mitchell Hashimoto
d81bb19af6 fix crash we can get with horizontal tabs off the end of the screen 2022-07-24 16:33:57 -07:00
Mitchell Hashimoto
5c8c9d8e3c support DECCOLM
This gets vttest page 1 and page 2 now FULL passing.

We now crash on page 3. This is a lingering bug in our grid code
though and we need to find it anyways so we'll keep the crash in.
2022-07-24 16:06:04 -07:00
Mitchell Hashimoto
a3409ac70d erase line left should include cursor position 2022-07-24 09:53:21 -07:00
Mitchell Hashimoto
a43c63111f count = 0 implies 1 for all cursor movement, fixes one line of vttest 2022-07-24 09:38:38 -07:00
Mitchell Hashimoto
dfde2acf10 on resize, make sure we resize the alt screen too 2022-07-22 14:22:53 -07:00
Mitchell Hashimoto
855a71d55c quiet noisy log 2022-07-22 13:45:51 -07:00
Mitchell Hashimoto
d672bedec7 alternate screen buffer (mode 1049) now supported 2022-07-22 13:36:16 -07:00
Mitchell Hashimoto
5564bd7213 cursor belongs to screen (prep for alternate screen) 2022-07-22 13:08:40 -07:00
Mitchell Hashimoto
f445de7568 CSI: Insert Blanks (ESC [ n @) 2022-07-22 09:58:39 -07:00
Mitchell Hashimoto
fbd79ee585 comment to be clear 2022-07-17 10:06:17 -07:00
Mitchell Hashimoto
baf2f9c1de index (IND) handles scroll up properly with a scrolling region set
This makes vttest slightly closer.
2022-07-15 17:01:03 -07:00
Mitchell Hashimoto
8dbb6343f4 KIND OF handle mode 3 (132 col mode)
This gets vttest looking slightly better on test 1, page 4. It still
isn't correct but we're looking better.
2022-07-15 09:34:17 -07:00