Terminals or at least "ttys" are not modern. They are a chimera merging disparate properties of VGA, HDLC, and good old teletypes. I know I'm in the minority and always have been, but to me they are an anchor holding us back in our tech lives.
Your phone does not have a terminal.
Your phone does not have a terminal.
Reposted from
Julia Evans
what's involved in getting a "modern" terminal setup? jvns.ca/blog/2025/01...
Comments
Termux. I use it a fair amount, mostly when I want to run terminal commands on a second machine on a separate network.
(And of course, there are a bunch of more modern features like hyperlinks and mouse support that postdate that.)
Chrome DevTools meets a File Explorer. :)
I know Andy Chu (https://oils.pub) is interested in a special kind of "headless shell protocol" for communicating with GUIs, that would be more robust.
And it would unlock so many niceties. Copying the output from commands, navigating long outputs, rich text, modern line editor, etc.
It's a mode of working with a parsing engine that runs on the CLI...
Giving it a gui means you slapped a border around the window pane.
CLI, are a form of API, and as such they generally get built before the GUI tools that use them.
Mathematica, Jupyter and Chrome DevTools all have such fancy GUI features as autocomplete and a text box. It would be nice to have that for OS shells too, not just JavaScript and Python.
There are actually shells that behave that way.
Fish shell has fantastic OOTB auto complete.
Nushell is based around tabular data workflows
Not saying GUIs don't provide value, it's just that the main value they provide is discoverability.
Somebody told me that the Genera/CLIM Listener comes pretty close.
wondered what could it look like for a bit.
it could be possible to implement mouse buttons with by pressing with multiple fingers and maybe even chords, but I'm not sure it would be optimal.
far from holding us back, any competent programmer should be comfortable with a CLI.
https://git.sr.ht/~akkartik/pensieve.love (instead of left-lines of text that scroll down, each command from a palette appends a column of notes to the right)
https://git.sr.ht/~akkartik/driver.love (unconstrained infinite 2D surface)
https://www.youtube.com/watch?v=dP1xVpMPn8M
Rob's talking about the grid of characters.