shell(3)
NAME
- Tk::Shell.pm -- Handlers for Tk::Workspace.pm shell
- clients.
DESCRIPTION
This module is incomplete.
There's no API or calling synopsis at the moment. It's
primary purpose is to provide some abstraction, and hope
fully data hiding, from the parent Workspace process.
Results may be unpredictable due to the I/O buffering
behavior of called programs. Most programs that have
line-oriented output should work okay. At this point
Workspaces do not understand terminal escape sequences.
The buffers of the child process's STDOUT and STDERR pipes
are set to an abnormally high value: 65535 bytes each.
Hopefully that will help prevent blocking from either
channel. If the programs that you run within the browser
create more output than that, then you'd probably want to
run them in an xterm, anyway. If your Perl installation
doesn't have that much memory available, you can adjust
the numbers (the third argument in the setvbuf calls)
downward, and be more careful of what programs you run.
Broken pipe errors happen occasionally. The program
prints a message to the browser's STDERR (that is, on the
terminal, unless you've redirected STDERR from the shell
prompt), and goes on, instead of killing the process
that's running the browser.
- This module is tested under several varieties of Linux,
and Solaris. It is untested, and probably unusable, under
MS Windoze.