You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
On running, the kernel would create and initialise a default terminal, associated to stdin/stdout.
A new (set of?) kernel traps/apis would allow terminal management:
terminal-create would create and initialise a new terminal.
With no arguments, the TTY associated to stdin/stdout is assumed.
If passed an argument, probably a TTY dev file, it would identify the new terminal.
If a matching terminal exists, no creation/initialisation is done; the existing terminal object is returned.
Not sure we would need/want a terminal-destroy... But implementation should be simple.
The direct-print and direct-clear traps would become methods on the terminal object.
Windows would be associated to specific terminals (defaulting to the default terminal).
Maybe keyboard input traps like read-key could also be associated to a terminal.
Additional terminals could be passed to the ppytty entry point script such that they would be automatically created and initialised, being ready to to use by driven tasks/presentations.
More notes:
We probably won't be getting SIGWINCH signals from "secondary" terminals.
Maybe a different, cleaner approach will be needed.
The text was updated successfully, but these errors were encountered:
Non-default terminals are "remote" by nature accessed via a TCP connection (and maybe UNIX socket, but less portable).
Command line client could be called with specific arguments such that it would behave as a "remote terminal", driven by the "main" ppytty running process.
There could be two kinds of remote terminals:
Secondary ones, fully independent with optional input support, useful for things like presenter notes.
Mirror ones, which would just mirror what's being displayed in the default terminal, useful for broadcast-like scenarios.
Implementation thoughts:
Connection establishment and "terminal type" detection may need a bit of work.
Other than that, tracking multiple terminals in the kernel state seems a natural evolution.
Implementing a network-backed variation of the terminal class seems very doable.
Random thoughts:
default
terminal, associated to stdin/stdout.terminal-create
would create and initialise a new terminal.terminal-destroy
... But implementation should be simple.direct-print
anddirect-clear
traps would become methods on the terminal object.default
terminal).read-key
could also be associated to a terminal.ppytty
entry point script such that they would be automatically created and initialised, being ready to to use by driven tasks/presentations.More notes:
The text was updated successfully, but these errors were encountered: