|
|
|
|
|
by kergonath
1573 days ago
|
|
> Waveform Graphics, Sixel and ReGIS (please look those up if you are not familiar) came to DEC terminals in the 1970s and 1980s, and still do not have widespread adoption. And that’s a damn shame. Sixel might not be perfect, but it is very useful to be able to see images over ssh without having to use an X tunnel. Gnuplot with its sixel terminal in a tmux session is a decent dashboard, lightweight and which pretty much requires no setup. |
|
You must redesign the terminal experience from the ground up and include graphics from inception if this is ever going to take hold.
There's lots of things that are wrong with current-day terminal paradigms. For example, to turn on an option for a command, you start the command-line option with `-`. To subtract, or turn off, you use `+`. Things like this are just proof positive to me that things need to be rethought from the ground level - the very basic core principles of what a terminal is actually for need to be considered and modernized.
Lots of people don't understand that the purpose of a terminal is to have a back-and-forth conversation with the computer. You say something in the form of a command, and the computer says something back in the form of command output and/or errors. Find ways to augment that conversation meaningfully, and you'll be on the right track. Everyone knows it's a back and forth, but few realize that this is what makes a conversation.
Passing the output of one program to the input of another should not be done as text, either; it's too limiting; it's as far from strongly typed as you can get, and you require that every program include a text parsing library. Objects should be passed, ideally self-describing ones. PowerShell got this right, at least partially. When you run a command alone, without piping or writing to a file, text is shown (because without redirecting, output is inherently piped to the terminal itself, and the terminal knows how to serialize those as text) but if you pass to another program, objects are passed and used as-is. (This is more along the lines of what Alan Kay meant when he coined the term "object oriented", as I understand it.) Passing messages around.