diff options
author | Michael Jennings <mej@kainx.org> | 2002-05-22 15:38:35 +0000 |
---|---|---|
committer | Michael Jennings <mej@kainx.org> | 2002-05-22 15:38:35 +0000 |
commit | 9ce5b286eb67b2a8a9431f1aa8a3ee4c2d543085 (patch) | |
tree | deac047a954b5da8e7270a4ed35b6dbcd01e3bf7 /doc | |
parent | d185cd525ccead491607e5616277941af404378d (diff) | |
download | eterm-9ce5b286eb67b2a8a9431f1aa8a3ee4c2d543085.tar.gz |
Wed May 22 11:37:19 2002 Michael Jennings (mej)
Latest Escreen work from Azundris <scream@azundris.com>.
SVN revision: 6270
Diffstat (limited to 'doc')
-rw-r--r-- | doc/README.Escreen | 190 | ||||
-rw-r--r-- | doc/escreen.cfg | 132 |
2 files changed, 322 insertions, 0 deletions
diff --git a/doc/README.Escreen b/doc/README.Escreen new file mode 100644 index 0000000..62a2d60 --- /dev/null +++ b/doc/README.Escreen @@ -0,0 +1,190 @@ + +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/ diff --git a/doc/escreen.cfg b/doc/escreen.cfg new file mode 100644 index 0000000..ec6b43b --- /dev/null +++ b/doc/escreen.cfg @@ -0,0 +1,132 @@ +<Eterm-0.9.1> + + # key-bindings for Escreen. + # for those who don't like the traditional ones (as used by the "screen" + # program). you may use the control variety, the alt variety, or both. + # you can copy the statements you like into the "action" context of your + # Eterm theme, or you could include this file via %include "escreen.cfg" + # See "man Eterm" for more information. + # 2002/05/19 Azundris <scream@azundris.com> + + # CONTROL VARIETY ######################################################### + + # ctrl-left -> previous display, ctrl-right -> next display + bind ctrl Left to echo ^Ap + bind ctrl Right to echo ^An + + # ctl-pg_up -> previous display, ctl-pg_dn -> next display (Galeon-like) + bind ctrl Prior to echo ^Ap + bind ctrl Next to echo ^An + + # no ctrl-up/down; we shouldn't steal that from the app. + + # ctl-space -> toggle between last two displays + bind ctrl space to echo ^A^A + + # ctrl-1..ctrl-0 -> display_0..display_9 + bind ctrl 0x31 to echo ^A0 + bind ctrl 0x32 to echo ^A1 + bind ctrl 0x33 to echo ^A2 + bind ctrl 0x34 to echo ^A3 + bind ctrl 0x35 to echo ^A4 + bind ctrl 0x36 to echo ^A5 + bind ctrl 0x37 to echo ^A6 + bind ctrl 0x38 to echo ^A7 + bind ctrl 0x39 to echo ^A8 + bind ctrl 0x30 to echo ^A9 + + # ALT VARIETY ############################################################# + + # alt-left -> previous display, alt-right -> next display + bind alt Left to echo ^Ap + bind alt Right to echo ^An + + # alt-up -> previous region, alt-down -> next region + bind alt Down to echo ^A\t + + # alt-pg_up -> previous display, alt-pg_dn -> next display + bind alt Prior to echo ^Ap + bind alt Next to echo ^An + + # alt-space -> toggle between last two displays + bind alt space to echo ^A^A + + # alt-1..alt-0 -> display_0..display_9 + bind alt 0x31 to echo ^A0 + bind alt 0x32 to echo ^A1 + bind alt 0x33 to echo ^A2 + bind alt 0x34 to echo ^A3 + bind alt 0x35 to echo ^A4 + bind alt 0x36 to echo ^A5 + bind alt 0x37 to echo ^A6 + bind alt 0x38 to echo ^A7 + bind alt 0x39 to echo ^A8 + bind alt 0x30 to echo ^A9 + + # FUNCTION KEYS ########################################################### + + # F1..F10 -> display_0..display_9 + bind F1 to echo ^A0 + bind F2 to echo ^A1 + bind F3 to echo ^A2 + bind F4 to echo ^A3 + bind F5 to echo ^A4 + bind F6 to echo ^A5 + bind F7 to echo ^A6 + bind F8 to echo ^A7 + bind F9 to echo ^A8 + bind F10 to echo ^A9 + + # alt F4 -> close display + bind alt F4 to echo ^Ak + + # MISC STUFF ############################################################## + + # DISPLAY + + # alt-n -> new display + bind alt n to echo ^Ac + + # alt-r -> rename display + bind alt r to echo ^AA + + # alt-c -> close display + bind alt c to echo ^Ak + + # alt-m -> monitor display + bind alt m to echo ^AM + + # alt-b -> backlog + bind alt b to echo ^A^[ + + + # REGION + + # alt-s -> split + bind alt s to echo ^AS + + # alt-u -> unsplit + bind alt u to echo ^AQ + + # alt-o -> other region + bind alt o to echo ^A^I + + # alt-k -> kill region + bind alt k to echo ^AX + + # ^Tab -> next region + bind ctrl Tab to echo ^A^I + + + + # OTHER + + # alt-S -> statement + bind alt shift S to echo ^A: + + # alt-R -> reset + bind alt shift R to echo ^AZ + + + + # ENDS #################################################################### |