Remix.run Logo
leephillips a day ago

Aside from its well-known features, such as displaying images directly in the terminal over ssh, I use it to create TUI applications. The application is a saved Kitty session, with a defined arrangement of windows. Each window runs a specified program, and communicates with the other windows over a Unix socket. Kitty has a convenient tool to create these sessions. Once created, I can start the session-application like any other program. The sessions are defined in a text file, so I can edit it to adjust the window arrangement or other details.

I also use its shell integration features, such as putting the scrollback into a pager, constantly.

guenthert a day ago | parent [-]

Does session management really belong in the terminal emulator?

em-bee a day ago | parent | next [-]

to answer that question we need to first look at the alternatives. whee else could session management go? and then we can consider the benefits and drawbacks of each approach.

if you are thinking of tmux then the problem here is that tmux is in itself a terminal.

to get session management away from the terminal it would need to be done in such a way that when the session tool connects the session it merely acts as a proxy or less, but does not interpret and then translate the signals that come from the session like tmux does.

this is not trivial, at least with the current way terminals work.

we need to entirely rethink the terminal protocol: https://news.ycombinator.com/item?id=47941354

leephillips a day ago | parent | prev [-]

I‘m not sure I understand the question. Some people use similar kinds of sessions in terminal multiplexers such as tmux (is that what you have in mind?), but this leads to problems (interpretations of key sequences, etc.) that the Kitty solution sidesteps.