On Thu, Sep 6, 2018 at 5:56 PM Andy Kosela <akosela(a)andykosela.com> wrote:
[snip] Well, you can't tell me
this system was designed with the idea of running it using text terminal
and no mouse.
I won't, because it wouldn't be true. You are correct that it was always
intended to be used with a graphical console. But you keep talking about
"text terminals" and therein lies the confusion: our text terminals
haven't
been purely "text" since the teletype days. Even green-screen serial
terminals have graphics adapters to draw characters on the screen.
There is also no cursor addressing, no curses.
Actually, there *is* a graphical program to emulate a vt-series terminal,
but pretty much no one uses it. So while strictly speaking this is
incorrect, it is essentially correct for all intents and purposes.
But it begs the question: why would you *want* to use that sort of
interface? That was appropriate for an HP or DEC terminal connected via a
low-bandwidth link (e.g., serial) or a shared host computer. Once we moved
onto personal workstation-class machines with graphics adapters, why
continue with that paradigm? Your framebuffer doesn't care that,
'\033[H\033[J' means "move the cursor to the upper-left corner and clear
the current line to the end of the screen", so why should your terminal
emulator? For that matter, if logged into the text-only console on a Linux
or FreeBSD machine, why does running `stty` say your graphics adapter has a
BAUD rate? The plan9 authors decided to leave such historical debris behind.
Like I
written before it was born in the different era -- they tried to not
build it on the idea of character based TTY, but rather incorporate
graphical element into it.
Correct. I wasn't there, but the observation surely must have been in part
that the user was *already* using a graphical environment, just not to very
good effect.
If it is possible to be fully productive in Plan 9 using just VGA text
mode (720x400) and not any of the bitmap modes, with
Unix like cursor
addressing and with no rio(1) and no mouse then it's something I never
really explored.
You could skip `rio` and just run `vt` on the console. I doubt the
emulation is very good and it wouldn't be an acceptable substitute for
serious use. `vt` was really intended as a stop-gap for accessing older
systems; the plan9 model was different, and instead of accessing remote
resources, the idea was that those resources would be shared with the
(plan9) network and imported locally for manipulation. That is, I wouldn't
`ssh` into some machine to make use of something on it; instead I'd use
`import` to bring those resources into my namespace locally and I'd
manipulate them there.
I did a writeup of this a while back:
http://pub.gajendra.net/2016/05/plan9part1
I should probably do parts 2 and 3....
- Dan C.