1815 Commits

Author SHA1 Message Date
Mitchell Hashimoto
3ae2a3e1fa ghostty encoding test needs more buffer 2023-06-24 11:11:08 -07:00
Mitchell Hashimoto
629fddcf5f terminfo: more capabilties, I think this is all of them 2023-06-24 11:04:02 -07:00
Mitchell Hashimoto
0f43e79bda terminfo: a bunch more capabilities 2023-06-24 10:29:19 -07:00
Mitchell Hashimoto
3a28ab1e8a nix: add ncurses so we have access to tic, infocmp, etc. 2023-06-24 09:52:32 -07:00
Mitchell Hashimoto
aad8483323 build: use tic to compile terminfo into database format 2023-06-24 09:45:26 -07:00
Mitchell Hashimoto
21d922304b build: build.zig encodes and writes the terminfo source 2023-06-24 09:12:42 -07:00
Mitchell Hashimoto
ea67b4aa48 terminfo: working on Ghostty's terminfo 2023-06-24 08:59:05 -07:00
Mitchell Hashimoto
3ec8ce8063 terminfo: basic Source structure and can encode 2023-06-23 19:22:16 -07:00
Mitchell Hashimoto
8d40fba9ce terminal: correct assertion for scrollUp 2023-06-23 14:06:40 -07:00
Mitchell Hashimoto
30fdbaebf4 font: run splitting needs to detect italics 2023-06-23 13:56:07 -07:00
Mitchell Hashimoto
6e79e84acf config file quoted strings are accepted now 2023-06-23 13:45:48 -07:00
Mitchell Hashimoto
ce47bdb874 log emoji font as info, log that fonts are using default 2023-06-23 13:18:29 -07:00
Mitchell Hashimoto
1d45df17e4 font: underline sprites should never go out of bounds for canvas 2023-06-22 20:11:57 -07:00
Mitchell Hashimoto
111c68dafe Merge pull request #151 from mitchellh/underline
Properly render curly underline and double underline with fonts with very low underline position metric
2023-06-22 16:21:30 -07:00
Mitchell Hashimoto
43554c1b64 font: remove old logging 2023-06-22 16:07:43 -07:00
Mitchell Hashimoto
e810a7bf91 font: fix double underline drawing with very low underline positions 2023-06-22 16:07:10 -07:00
Mitchell Hashimoto
cfb8108279 font: curly underline has a minimum wave height
This fixes rendering issues with some fonts where the underline position
is too close to the bottom of the cell causing a very shallow curl.
2023-06-22 16:01:00 -07:00
Mitchell Hashimoto
47ee395688 Merge pull request #150 from mitchellh/underline-color
Colored Underlines
2023-06-20 09:52:06 -07:00
Mitchell Hashimoto
86705a181a finalize comments 2023-06-20 09:40:50 -07:00
Mitchell Hashimoto
1c2451b532 renderer: render underline color if set 2023-06-20 09:39:52 -07:00
Mitchell Hashimoto
860209e968 terminal: track underline color on cell 2023-06-20 09:37:58 -07:00
Mitchell Hashimoto
b9bc61c0a4 terminal: parse underline color sequences (but do not handle yet) 2023-06-20 09:34:29 -07:00
Mitchell Hashimoto
28a22fc07f various tests to ensure we parse curly underlines correctly 2023-06-20 09:24:07 -07:00
Mitchell Hashimoto
0044776700 update cachix action for macos 12 2023-06-17 13:59:44 -07:00
Mitchell Hashimoto
8aaee518fd update zig version 2023-06-16 17:03:46 -07:00
Mitchell Hashimoto
01de38b20d font: if CoreText needs to allocate, stack allocate and log 2023-05-31 22:03:27 -07:00
Mitchell Hashimoto
d903e4a43b Merge pull request #149 from mitchellh/osc7
OSC 7 (report pwd) and new Window/Tab/Split uses current cwd
2023-05-31 21:16:37 -07:00
Mitchell Hashimoto
c58e2f7aec update README 2023-05-31 21:11:40 -07:00
Mitchell Hashimoto
f31d6fb8fe apprt: clean up how apprt initializes surfaces 2023-05-31 21:08:50 -07:00
Mitchell Hashimoto
0fca74c089 apprt/glfw: inherit working dir 2023-05-31 19:18:55 -07:00
Mitchell Hashimoto
866de88ee6 termio/exec: check cwd validity 2023-05-31 19:17:08 -07:00
Mitchell Hashimoto
553e09eff9 apprt/embedded: new surfaces inherit last focused 2023-05-31 19:12:01 -07:00
Mitchell Hashimoto
a158813a3d app keeps track of last focused surface 2023-05-31 18:59:40 -07:00
Mitchell Hashimoto
e59b2f7fca terminal: track pwd reported via OSC 7 2023-05-31 18:54:24 -07:00
Mitchell Hashimoto
b538072972 terminal: osc 7 parsing 2023-05-31 17:32:06 -07:00
Mitchell Hashimoto
df47606a8a Merge pull request #148 from mitchellh/prompt-redraw
Semantic Prompt Redraw
2023-05-31 16:34:58 -07:00
Mitchell Hashimoto
e26cb46f4a terminal: tests for semantic prompt on resize 2023-05-31 16:20:30 -07:00
Mitchell Hashimoto
414f2e52a5 terminal: semantic prompt aware resize 2023-05-31 16:16:00 -07:00
Mitchell Hashimoto
283c94f874 terminal: parse OSC 133 A redraw like kitty 2023-05-31 15:39:54 -07:00
Mitchell Hashimoto
498cd7df7c update zig 2023-05-31 15:26:01 -07:00
Mitchell Hashimoto
ecb140cc6d Merge pull request #147 from mrnugget/mrn/ctrl_left_bracket
Handle non-printable characters when ctrl is pressed
2023-05-30 21:36:36 -07:00
Thorsten Ball
1d772d1717 Handle non-printable characters when ctrl is pressed
This extends the list of characters we convert to non-printable
characters when control is pressed by adding `backslash`,
`left_bracket`, `right_bracket` to the list.

This is based on the "Legacy `ctrl` mapping of ASCII keys" section in
the Kitty documentation [0]. That page also links to the VT100
documentation [1] that contains Table 3-5, which shows the same mappings
at the Kitty documentation.

I started out wanting to add only `left_bracket` because I very often
use ctrl+[ to escape insert mode in Vim (it maps to escape), but then
added `backslash`, `right_bracket` too because they're next in the list
and having `ctrl+right_bracket` mapped also makes it work in Vim as the
default go-to-def combination.

Why not complete the whole table? Some keys aren't yet handled in
`input.zig`, such as `circumflex` (not defined), and mitchellh said that
it'd require more elaborate handling of different keyboard layouts. So
instead of adding something that might be wrong, I tried to add what I
knew (and tested) to work.

[0]: https://sw.kovidgoyal.net/kitty/keyboard-protocol/#legacy-ctrl-mapping-of-ascii-keys
[1]: https://vt100.net/docs/vt100-ug/chapter3.html
2023-05-31 06:24:19 +02:00
Mitchell Hashimoto
7116ce0806 update zig version 2023-05-29 08:24:12 -07:00
Mitchell Hashimoto
5acf7eb8fd apprt/embedded: clipboard value can be null 2023-05-28 10:20:59 -07:00
Mitchell Hashimoto
d29fd9f38c Update README.md 2023-05-27 16:59:26 -07:00
Mitchell Hashimoto
56928b926a terminal: don't log semantic prompt marks 2023-05-27 16:55:19 -07:00
Mitchell Hashimoto
020e096243 Merge pull request #146 from mitchellh/semantic-prompt
Semantic Prompt (OSC 133) Integration
2023-05-27 16:53:49 -07:00
Mitchell Hashimoto
7b651627d5 core: surface confirm close logic updated to handle semantic prompts 2023-05-27 16:00:35 -07:00
Mitchell Hashimoto
de00892f8e termio/exec: handle semantic prompt events 2023-05-27 15:48:31 -07:00
Mitchell Hashimoto
4047a90555 terminal: track semantic prompt metadata per row 2023-05-27 15:45:51 -07:00