Mitchell Hashimoto
38060978e2
termio/exec: don't pass pointer to stack var
2023-02-28 11:07:03 -08:00
Mitchell Hashimoto
a8025f6ec2
termio: env should not freed because arena gets it
2023-02-27 11:55:04 -08:00
Mitchell Hashimoto
83a1d783b1
termio: implement kill command for flatpak
2023-02-27 11:44:18 -08:00
Mitchell Hashimoto
52d22a140c
termio: exec uses new flatpak command, no more host-spawn
2023-02-27 11:26:31 -08:00
Mitchell Hashimoto
fc3802e632
termio: use host-spawn for pty
2023-02-25 22:36:20 -08:00
Mitchell Hashimoto
ec956debb7
Command/Pty work better with Flatpak but not 100% yet
2023-02-25 21:19:57 -08:00
Mitchell Hashimoto
913131c8f1
rename more stuff
2023-02-24 07:58:29 -08:00
Mitchell Hashimoto
fbe35c226b
Integrating new surface
2023-02-24 07:58:29 -08:00
Mitchell Hashimoto
7fc9d1bf52
termio: remove xcode-injected env vars
2023-02-19 10:44:56 -08:00
Mitchell Hashimoto
573b163636
start input, its broken but we're getting there
2023-02-19 10:44:56 -08:00
Mitchell Hashimoto
695a9f3cb9
termio: fix pty close error so close doesn't hang on macOS
2023-02-06 16:05:41 -08:00
Mitchell Hashimoto
469d395997
termio: fix TODO around cursor reset
2023-02-06 15:51:55 -08:00
Mitchell Hashimoto
7c360eb29a
termio: better commenting on what is going on
2023-02-06 15:45:32 -08:00
Mitchell Hashimoto
91ace8af64
termio: IO reader thread cleanup works
2023-02-06 15:41:28 -08:00
Mitchell Hashimoto
11d6e91228
termio: reader thread is thread-safe for writing to writer
2023-02-06 14:52:24 -08:00
Mitchell Hashimoto
a5d03d1318
termio: use a dedicated io reader thread?
2023-02-05 21:33:15 -08:00
Mitchell Hashimoto
f07e21c22e
remove libuv from build
2023-02-04 17:37:51 -08:00
Mitchell Hashimoto
7e6a86f065
termio: use libxev (with TODOs)
2023-02-04 11:47:51 -08:00
Mitchell Hashimoto
1273527048
renderer uses libxev
...
Still some bugs and TODOs, but it is workable.
2023-02-01 15:52:22 -08:00
Mitchell Hashimoto
b8832833cb
respect application cursor keys for arrow (DECCKM)
...
This fixes the arrow keys in htop.
2022-11-27 20:57:58 -08:00
Mitchell Hashimoto
acdbdfbe3f
macOS should launch shell as a login shell
2022-11-21 15:57:51 -08:00
Mitchell Hashimoto
56de5846f4
OSC 52: Clipboard Control ( #52 )
...
This adds support for OSC 52 -- applications can read/write the clipboard. Due to the security risk of this, the default configuration allows for writing but _not reading_. This is configurable using two new settings: `clipboard-read` and `clipboard-write` (both booleans).
2022-11-21 15:12:00 -08:00
Mitchell Hashimoto
a15afa8211
do not block channel send while draining channel
2022-11-20 20:16:40 -08:00
Mitchell Hashimoto
01573819ea
Configurable 256 Color Palette ( #50 )
...
The 256 color palette can now be configured with the `palette=N=HEX` format in the config. Example, Dracula:
```
foreground=#f8f8f2
background=#282a36
palette=0=#21222c
palette=8=#6272a4
palette=1=#ff5555
palette=9=#ff6e6e
palette=2=#50fa7b
palette=10=#69ff94
palette=3=#f1fa8c
palette=11=#ffffa5
palette=4=#bd93f9
palette=12=#d6acff
palette=5=#ff79c6
palette=13=#ff92df
palette=6=#8be9fd
palette=14=#a4ffff
palette=7=#f8f8f2
palette=15=#ffffff
```
2022-11-20 15:25:51 -08:00
Mitchell Hashimoto
4521efb83d
move screen resize to a renderer mailbox message
2022-11-17 13:55:04 -08:00
Mitchell Hashimoto
465b4df6ea
fix tests for WNOHANG commit
2022-11-16 21:04:31 -08:00
Mitchell Hashimoto
e24dabd67a
extract out message data from termio
...
This will be used for other mailboxes, for example this is required for
sending the window title to the app thread. Right now we hardcode an
array size but we can do better than that.
2022-11-15 13:41:11 -08:00
Mitchell Hashimoto
78fbf9cb06
remove stage1 workarounds
2022-11-15 13:19:01 -08:00
Mitchell Hashimoto
860fbc3aee
padding needs to be sent to termio
2022-11-14 17:25:35 -08:00
Mitchell Hashimoto
4ced2290b3
OSC handling, handle OSC change window title command
2022-11-14 10:46:40 -08:00
Mitchell Hashimoto
ad203db6e4
set COLORTERM -- macOS uses this for emoji
2022-11-14 10:00:38 -08:00
Mitchell Hashimoto
99224ae2c0
implement CSI ESC [ <n> b for repeating previously printed char
2022-11-13 22:07:40 -08:00
Mitchell Hashimoto
d1718e6cbf
use libc memcpy/memmove instead of std.mem if available
2022-11-08 19:01:45 -08:00
Mitchell Hashimoto
73c4395fc2
add more traces
2022-11-07 07:59:47 -08:00
Mitchell Hashimoto
5b52333e51
name threads and add more tracing
2022-11-07 07:45:46 -08:00
Mitchell Hashimoto
9ee5a5c715
implement ESC c
-- full reset
2022-11-06 18:59:17 -08:00
Mitchell Hashimoto
e7c5cbf758
throttle cursor reset, under heavy IO this would slow things down
2022-11-06 18:44:35 -08:00
Mitchell Hashimoto
e0db46ac97
clean up some resources better on error
2022-11-06 16:23:36 -08:00
Mitchell Hashimoto
705772ed28
termio: clean up error handling for kill
2022-11-06 15:26:18 -08:00
Mitchell Hashimoto
ac6f960b92
termio: on deinit, send SIGHUP to child process to exit it
2022-11-06 14:08:42 -08:00
Mitchell Hashimoto
8f1fcc64e8
rename termio thread message struct
2022-11-05 19:34:41 -07:00
Mitchell Hashimoto
746858cea6
implement cursor reset when data comes in pty
2022-11-05 19:31:28 -07:00
Mitchell Hashimoto
aa98e3ca3a
Move cursor timer to renderer
2022-11-05 19:31:28 -07:00
Mitchell Hashimoto
95d054b185
allocate data for paste data if its too large
2022-11-05 19:31:28 -07:00
Mitchell Hashimoto
a05b08fdc7
move bracketed paste to terminal state
2022-11-05 19:31:28 -07:00
Mitchell Hashimoto
f2d9475d5d
Switch over to the IO thread. A messy commit!
2022-11-05 19:31:26 -07:00
Mitchell Hashimoto
5cb6ebe34d
Actually, we'll manage selection and viewports on the windowing thread
2022-11-05 19:31:02 -07:00
Mitchell Hashimoto
989046a06c
More IO events
2022-11-05 19:31:02 -07:00
Mitchell Hashimoto
1a7b9f7465
termio: clear selection
2022-11-05 19:31:02 -07:00
Mitchell Hashimoto
f1d2df1a54
fully hook up resize
2022-11-05 19:31:02 -07:00