eterm/doc/README.Escreen

191 lines
7.1 KiB
Plaintext

ESCREEN
1 - What is it?
Eterm now offers you to compile in experimental support for the
"screen" program. "screen" is a terminal multiplexer (one window,
several shells). Yes, it's like konsole or multi-gnome-terminal,
only that your shells won't die just because X or the Window Manager
do. Oh, and you can pick up your home session from work, and vice
versa. And several people can connect to the same session at once,
and...
You get this picture -- if you're a power-user, this is for you.
Also, if you're not a power-user, this is *not* for you. It's alpha.
It's experimental. Reported bugs will get fixed where possible, but
there can be no newbie support at this time.
2 - How do I get it?
You already have it. ./configure --enable-escreen && make && make install
Oh, and you also need the screen program. In our tests, we used
Screen version 3.09.11 (FAU) 14-Feb-02.
3 - How do I start it?
If you call it an Eterm, it will behave like one. Same for an Escreen.
(you'd have to symlink from Escreen to Eterm first, of course).
Additionally, when called with a command-line (-e "/some/program"), the
suite will *always* behave like an Eterm, even if invoked as Escreen.
Likewise, when called with an URL (-U "screen://user@some.host.gov/"),
it will behave like an Escreen, even if invoked under another name.
4 - What should I expect from it? (subject to change)
An Eterm should open with a screen (without a status-line) running
inside of it. There should be a button-bar in the Eterm enumerating
the multiplexed terminal (you usually start with one), and button with
a menu of screen-related actions. If you normally don't use a button-bar,
Escreen will create one for you. Otherwise, it will add buttons to your
existing bar.
* .screenrc, $SCREENRC, [/usr/local]/etc/screenrc and $SYSSCREENRC are
supported.
* Eterm-buttons are supported (left click on display-name to activate
the display, middle to close it, right to rename it).
* Sending statements to screen (^A: in the default setup) with
tab-completion
* support for screen command-line options:
Eterm -U screen://localhost/-xRR+-c~/.screenrc.testing
* menu for "screen"-functions (if you add your own, use ^A as the
escape-character in the ECHO action; Escreen will remap it to
whatever is actually used in the session)
* alert boxes for messages from screen
* support for SSH-tunneling through firewalls
5 - What's new?
* Entering and exiting copy mode no longer produces a dialog box.
Just too bloody annoying, that.
* SCREENRC, SYSSCREENRC, .../etc/screenrc support (thanks mej)
* Easy-to-remember key-layout (optional, see below)
* Comes up much faster
* You can pass arbitrary paramters to screen/scream now
6 - What should I expect in the future? (TODO)
* Limited support for scrolling. screen doesn't give us all the info
we'd need to make this really sexy. There will likely be limited
support for screen (we need to keep this, it will be what we'll find
on remote machine), and possibly support for enhanced screen-clones
(like the perchance forthcoming "scream").
9 - FAQ
Q ^A does funny things!
A Well, yes. ^A talks to the screen program. Put a line
like "escape ^Aa" in "~/.screenrc". The example declares
Control-A (^A) to be the magic key (and ^A-a what you need
to press to send the escape (^A in the example) to the application
instead); you'll want to put something else to move it around.
See "man screen" for details.
2002/05/13 note that ^A: opens a buffer where you can directly enter
statements like "escape ^Uu"; trying things out will be
easier that way. yes, it will be ^U: afterwards. ; )
Q I typed ^A and it *doesn't do* funny things!
A You probably already have changed the magic escape key to something
other than ^A (on the command-line, within Escreen, or in .screenrc).
Er, you *did* hold Control, then press A, rather then typing a ^ and
an A, right?
Q But I don't like all this control-whatever stuff, can I have easier
to remember bindings?
A Sure. Eterm is The Configurable Terminal, after all. A pret-a-porter
example that you can simply add to your theme.cfg file (or %include
from it) lives in escreen.cfg -- enjoy.
Q Escreen changes the escape on the remote box to the same thing as on
the local box, does it have to?
A You can always override the escapes like so:
Eterm -U user@host.com/-e^Xy
Where ^X is the escape and y the literal (man screen).
Q I don't see any buttons when I connect to a remote screen!
A Some Debian-users reported this before, and it is presumed to be a
problem with the terminfo-data. Call up Eterm (or xterm, or whatnot).
*Then* call up "screen" from inside that terminal. Is the last line
inverted? If it isn't, something is seriously weird with your setup,
and it's not a problem in Escreen. Sorry. : (
2002/05/13 rewritten code should handle most of these cases
2002/05/18 rewritten code should handle even more of these cases : )
Q Escreen opens, then closes again.
A Escreen cannot run "screen". If you do have "screen", and it is in
the search path, screen apparently terminates right away. Normally
this means that your screen-sessions are messed up; "screen -ls" will
give you a list of them; "screen -wipe" will do the cleaning up.
If this happens with a remote session, the remote end might just find
your terminal type confusing. The "--term-name" option with something
vanilla (--term-name vt100) should remedy this.
Q Escreen works, except when I use -Z to tunnel through a firewall?
A Try to manually ssh to the firewall, see how long that takes. Then,
tune the -Z option accordingly (cf man Eterm).
Q I'd like for the button labels to be in a different colour.
A At this time, the labels follow the general (text) colours.
You will be able to define colours for (foreground|background|active|bell)
windows' labels in later releases.
Q "screen" support rocks! Can we have it in konsole/multi-gnome-terminal?
A I will not attempt anything like that before I am happy with Escreen.
The code, however, is LGPL'd, and its use is documented by example of
Eterm (grep for ESCREEN). If you can work with that, do.
Q What's with the licence changing?
A I wrongly assumed that Eterm was GPL'd rather than BSD'd, so I stuck
a GPL on the first alpha. To correct this mistake, the licence was
changed. In an attempt to honour both the convictions of the authors
of Eterm (BSD licence) and those of screen (GPL) which Escreen tries
to bring together, it appears that the licensing of Escreen should
land somewhere in the middle; therefore, I nominally chose LGPL.
This may be softened to BSD at a later date.
Q Who's responsible for this?
A Escreen is an Eterm extension conceived and written by Azundris.
Do not complain to KainX (who courteously added the patch for the
enjoyment of the hardy) if you break your Eterm by compiling this
in (or by trying to use the alpha-functionality). By using this,
you agree that anything happening while or because of using it is
your fault, and your fault only.
-- Azundris 2002/05/13 <scream@azundris.com> http://www.azundris.com/