Commit graph

19 commits

Author SHA1 Message Date
5cba919c78
treewide: split terminal core modules
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: I9cace0b7c6995c0fca21ff2cf465ae1f6a6a6964
2026-06-26 10:21:59 +03:00
2161d7250f
render: OSC 8 hyperlinks with hover/click and a URL hint mode
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: I7b39adae426d3fc5b7dfe1437eb10e976a6a6964
2026-06-26 10:21:55 +03:00
72ec651ff1
vt: add OSC 133 prompt marks with jump and pipe-output actions
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: I0afe252fefa3eb82559a35d03ba449376a6a6964
2026-06-26 10:21:54 +03:00
1b8138fc4f
grid: store and render combining marks on the base cell
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: Ic1aedda14fa6102c4dc80f9fd6863c7f6a6a6964
2026-06-26 10:21:47 +03:00
ccc30d1bbd
config: load beer.toml and apply font, geometry, scrollback, word delimiters
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: I5008a74307d856f9df472776cb66c8b06a6a6964
2026-06-26 10:21:37 +03:00
b7ed08d44c
grid: reflow scrollback and screen on resize
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: I73b5d858eafc05026a6fff1eb67eea226a6a6964
2026-06-26 10:21:35 +03:00
6f1d4dd7f9
search: incremental scrollback search with match highlight and prompt
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: I0a0450eba48d308763db297f105565346a6a6964
2026-06-26 10:21:34 +03:00
1b4c293c99
selection: block (Ctrl-drag) selection, edge autoscroll, word delimiters
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: Icd505e07375273e3dd7b14f0b05e44e16a6a6964
2026-06-26 10:21:32 +03:00
219f0a3c94
input: report mouse and focus events to the application
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: I7136e2ae2c833ff581ea14287c876a3a6a6a6964
2026-06-26 10:21:31 +03:00
72044c21fd
vt: honour synchronized output (DECSET 2026) with a present timeout
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: I173dc842d89d96ea39154e1fde95be816a6a6964
2026-06-26 10:21:29 +03:00
f1c8271d31
render: frame-paced presentation with per-row damage and blink
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: I4e925b4d1d904d9592060e968d84ec906a6a6964
2026-06-26 10:21:28 +03:00
7887420139
render: mouse selection with clipboard and primary copy-paste
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: I808839078ae2674caa1f1bfd7e84f3bc6a6a6964
2026-06-26 10:21:27 +03:00
3dd953b75a
grid: scrollback with mouse-wheel and Shift+PageUp scrolling
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: I12b2ed33a705eb3474a7d14a295e021d6a6a6964
2026-06-26 10:21:25 +03:00
b2d656e7bd
input: encode keyboard events and send them to the shell
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: I6ee2acd5f74575f4bcc2f41417207c626a6a6964
2026-06-26 10:21:19 +03:00
88df7c2404
render: cursor shapes, visibility, and focus
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: Iad508cceb2c8417147ad71b5c1ffc4bc6a6a6964
2026-06-26 10:21:17 +03:00
2afb4875be
render: draw underline styles, strike, overline, and dim
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: I0cf6a44446240a59c2fc8c6735afaf1d6a6a6964
2026-06-24 15:36:30 +03:00
6b3c8dc059
vt: answer XTVERSION, DA3, DECRQM, and the title stack
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: Ib74e56cfd26b029064e5683ba20b70606a6a6964
2026-06-24 15:36:29 +03:00
5690e0e883
render: draw the grid with rasterized glyphs
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: I6350824abb506c2af98884a7374228116a6a6964
2026-06-24 15:36:27 +03:00
bc53393aec
vt: parse terminal output into a grid model
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: Iee271b093801326cff2489218063ab4c6a6a6964
2026-06-24 08:25:36 +03:00