diff options
Diffstat (limited to 'konsole/doc/More')
-rw-r--r-- | konsole/doc/More/Ansi_esc.txt | 77 | ||||
-rw-r--r-- | konsole/doc/More/Eterm.ref | 508 | ||||
-rw-r--r-- | konsole/doc/More/ansi.sys.txt | 355 | ||||
-rw-r--r-- | konsole/doc/More/ansix364.txt | 322 | ||||
-rw-r--r-- | konsole/doc/More/dec_vt100_codes.txt | 166 | ||||
-rw-r--r-- | konsole/doc/More/iowa_vt100_news.txt | 255 | ||||
-rw-r--r-- | konsole/doc/More/k95vtnttn.html | 184 | ||||
-rw-r--r-- | konsole/doc/More/rxvt-ref.html | 1281 | ||||
-rw-r--r-- | konsole/doc/More/swedish_vt102_codes.txt | 413 | ||||
-rw-r--r-- | konsole/doc/More/villanova-vt100-esc-codes.txt | 389 | ||||
-rw-r--r-- | konsole/doc/More/vt100_codes_news.txt | 970 | ||||
-rw-r--r-- | konsole/doc/More/vt100_colorized_termcap.txt | 438 | ||||
-rw-r--r-- | konsole/doc/More/vt100_numeric_keypad.txt | 202 | ||||
-rw-r--r-- | konsole/doc/More/vt100_reference_card.txt | 215 | ||||
-rw-r--r-- | konsole/doc/More/vt100_scroll_region.txt | 124 | ||||
-rw-r--r-- | konsole/doc/More/vt100_setup.txt | 170 | ||||
-rw-r--r-- | konsole/doc/More/vttest.html | 205 | ||||
-rw-r--r-- | konsole/doc/More/xterm.codes | 206 |
18 files changed, 6480 insertions, 0 deletions
diff --git a/konsole/doc/More/Ansi_esc.txt b/konsole/doc/More/Ansi_esc.txt new file mode 100644 index 000000000..ede1a7c24 --- /dev/null +++ b/konsole/doc/More/Ansi_esc.txt @@ -0,0 +1,77 @@ + ANSI ESCAPE SEQUENCES +=============================================================================== +Wherever you see '#', that should be replaced by the appropriate number. + + ESC code sequence Function + ------------------- --------------------------- +Cursor Controls: + ESC[#;#H or ESC[#;#f Moves cusor to line #, column # + ESC[#A Moves cursor up # lines + ESC[#B Moves cursor down # lines + ESC[#C Moves cursor forward # spaces + ESC[#D Moves cursor back # spaces + ESC[#;#R Reports current cursor line & column + ESC[s Saves cursor position for recall later + ESC[u Return to saved cursor position + +Erase Functions: + ESC[2J Clear screen and home cursor + ESC[K Clear to end of line + +Set Graphics Rendition: + ESC[#;#;....;#m Set display attributes where # is + 0 for normal display + 1 for bold on + 4 underline (mono only) + 5 blink on + 7 reverse video on + 8 nondisplayed (invisible) + 30 black foreground + 31 red foreground + 32 green foreground + 33 yellow foreground + 34 blue foreground + 35 magenta foreground + 36 cyan foreground + 37 white foreground + 40 black background + 41 red background + 42 green background + 43 yellow background + 44 blue background + 45 magenta background + 46 cyan background + 47 white background + + ESC[=#;7h or Put screen in indicated mode where # is + ESC[=h or 0 for 40 x 25 black & white + ESC[=0h or 1 for 40 x 25 color + ESC[?7h 2 for 80 x 25 b&w + 3 for 80 x 25 color + 4 for 320 x 200 color graphics + 5 for 320 x 200 b & w graphics + 6 for 640 x 200 b & w graphics + 7 to wrap at end of line + + ESC[=#;7l or ESC[=l or Resets mode # set with above command + ESC[=0l or ESC[?7l + +Keyboard Reassignments: + ESC[#;#;...p Keyboard reassignment. The first ASCII + or ESC["string"p code defines which code is to be + or ESC[#;"string";#; changed. The remaining codes define + #;"string";#p what it is to be changed to. + + E.g. Reassign the Q and q keys to the A and a keys (and vice versa). + ESC [65;81p A becomes Q + ESC [97;113p a becomes q + ESC [81;65p Q becomes A + ESC [113;97p q becomes a + + E.g. Reassign the F10 key to a DIR command. + ESC [0;68;"dir";13p The 0;68 is the extended ASCII code + for the F10 key and 13 is the ASCII + code for a carriage return. + + Other function key codes F1=59,F2=60,F3=61,F4=62,F5=63 + F6=64,F7=65,F8=66,F9=67,F10=68 diff --git a/konsole/doc/More/Eterm.ref b/konsole/doc/More/Eterm.ref new file mode 100644 index 000000000..849be1f3b --- /dev/null +++ b/konsole/doc/More/Eterm.ref @@ -0,0 +1,508 @@ +-------------------------------------------------------------------------- + Eterm Technical Reference +-------------------------------------------------------------------------- + Reworked from XTerm documentation and from other sources + +Definitions + +c The literal character c. + +C A single (required) character. + +Ps A single (usually optional) numeric parameter, composed of one or + more digits. + +Pm A multiple numeric parameter composed of any number of single + numeric parameters, separated by ; character(s). + +Pt A text parameter composed of printable characters. + +[-] marks unimplemented sequences +[*] marks Eterm-specific (non-ANSI/ISO) sequences +-------------------------------------------------------------------------- + +ENQ Enquiry (Ctrl-E), Send Device Attributes (DA) + -> request attributes from terminal + -> ESC[?1;2c + (``I am a VT100 with Advanced Video Option.'') +BEL Bell (Ctrl-G) +BS Backspace (Ctrl-H) +TAB Horizontal Tab (HT) (Ctrl-I) +LF Line Feed or New Line (NL) (Ctrl-J) +VT Vertical Tab (Ctrl-K) same as LF +FF Form Feed or New Page (NP) (Ctrl-L) same as LF +CR Carriage Return (Ctrl-M) +SO Shift Out (Ctrl-N), invokes the G1 character set + -> Switch to Alternate Character Set +SI Shift In (Ctrl-O), invokes the G0 character set (the default) + -> Switch to Standard Character Set +SPC Space Character + +ESC # 8 DEC Screen Alignment Test (DECALN) + +Character Sets +-------------------------------------------------------------------------- +ESC ( C Designate G0 Character Set (ISO 2022) +ESC ) C Designate G1 Character Set (ISO 2022) +ESC * C Designate G2 Character Set (ISO 2022) +ESC + C Designate G3 Character Set (ISO 2022) +ESC $ C Designate Kanji Character Set + where + C = 0 -> DEC Special Character and Line Drawing Set + C = A -> United Kingdom (UK) + C = B -> United States (USASCII) +[-] C = < -> Multinational character set +[-] C = 5 -> Finnish character set +[-] C = C -> Finnish character set +[-] C = K -> German character set + +ESC 7 Save Cursor (SC) +ESC 8 Restore Cursor (RC) +ESC = Application Keypad (SMKX) +ESC > Normal Keypad (RMKX) + + - If the numeric keypad is activated, e.g. Num_Lock has been + pressed, numbers or control functions are generated by the + numeric keypad (see Key Codes section) + +ESC D Index (IND) +ESC E Next Line (NEL) +ESC H Tab Set (HTS) +ESC M Reverse Index (RI) +[-] ESC N Single Shift Select of G2 Character Set (SS2): + affects next character only +[-] ESC O Single Shift Select of G3 Character Set (SS3): + affects next character only + +ESC Z Obsolete form of ESC [ c + Optional (compile-time) returns -> ESC[?1;2C + +ESC [ Ps @ Insert Ps (Blank) Character(s) [default: 1] (ICH) +ESC [ Ps A Cursor Up Ps Times [default: 1] (CUU) +ESC [ Ps B Cursor Down Ps Times [default: 1] (CUD) +ESC [ Ps C Cursor Forward Ps Times [default: 1] (CUF) +ESC [ Ps D Cursor Backward Ps Times [default: 1] (CUB) +ESC [ Ps E Cursor Down Ps Times [default: 1] and to first column +ESC [ Ps F Cursor Up Ps Times [default: 1] and to first column +ESC [ Ps G Cursor to Column Ps (HPA) + +ESC [ Ps;Ps H Cursor Position [row;column] [default: 1;1] (CUP) +ESC [ Ps I Move forward Ps [default: 1] tab stops +ESC [ Ps J Erase in Display (ED) + Ps = 0 -> Clear Below (default) + Ps = 1 -> Clear Above + Ps = 2 -> Clear All +ESC [ Ps K Erase in Line (EL) + Ps = 0 -> Clear to Right (default) + Ps = 1 -> Clear to Left (EL1) + Ps = 2 -> Clear All +ESC [ Ps L Insert Ps Line(s) [default: 1] (IL) +ESC [ Ps M Delete Ps Line(s) [default: 1] (DL) +ESC [ Ps P Delete Ps Character(s) [default: 1] (DCH) +[-] ESC [ Ps;Ps;Ps;Ps;Ps T + Initiate hilite mouse tracking. Parameters are + [func;startx;starty;firstrow;lastrow]. + See the section Mouse Tracking. +ESC [ Ps W Tabulator functions + Ps = 0 -> Tab Set (HTS) + Ps = 2 -> Tab Clear (TBC), Clear Current Column (default) + Ps = 5 -> Tab Clear (TBC), Clear All +ESC [ Ps X Erase Ps Character(s) [default: 1] (ECH) +ESC [ Ps Z Move backward Ps [default: 1] tab stops +ESC [ PS ` == ESC [ PS G +ESC [ Ps a == ESC [ Ps C + +ESC [ Ps c Send Device Attributes (DA) + Ps = 0 or omitted -> request attributes from terminal + -> ESC[?1;2c + (``I am a VT100 with Advanced Video Option.'') +ESC [ Ps d Cursor to Line Ps (VPA) +ESC [ Ps e == ESC [ Ps A +ESC [ Ps;Ps f Horizontal and Vertical Position [row;column] + [default: 1;1] (HVP) +ESC [ Ps g Tab Clear (TBC) + Ps = 0 -> Clear Current Column (default) + Ps = 3 -> Clear All (TBC) +ESC [ Ps i Printing + Ps = 4 -> disable transparent print mode (MC4) +[-] Ps = 5 -> enable transparent print mode (MC5) +ESC [ Pm h Set Mode (SM) +ESC [ Pm l Reset Mode (RM) + Ps = 4 + h -> Insert Mode (SMIR) + l -> Replace Mode (RMIR) +[-] Ps = 20 + h -> Automatic Newline (LNM) + l -> Normal Linefeed (LNM) + +ESC [ Pm m Character Attributes (SGR) + Ps = 0 -> Normal (default) + Ps = 1 / 22 -> On / Off Bold (bright fg) + Ps = 4 / 24 -> On / Off Underline + Ps = 5 / 25 -> On / Off Blink (bright bg) + Ps = 7 / 27 -> On / Off Inverse + Ps = 30 / 40 -> fg / bg Black + Ps = 31 / 41 -> fg / bg Red + Ps = 32 / 42 -> fg / bg Green + Ps = 33 / 43 -> fg / bg Yellow + Ps = 34 / 44 -> fg / bg Blue + Ps = 35 / 45 -> fg / bg Magenta + Ps = 36 / 46 -> fg / bg Cyan + Ps = 37 / 47 -> fg / bg White + Ps = 39 / 49 -> fg / bg Default + +ESC [ Ps n Device Status Report (DSR) + Ps = 5 -> Status Report ESC [ 0 n (``OK'') + Ps = 6 -> Report Cursor Position (CPR) [row;column] + as ESC [ r ; c R + Ps = 7 -> Request Display Name + Ps = 8 -> Request Version Number (place in window title) + +ESC [ Ps;Ps r Set Scrolling Region [top;bottom] + [default: full size of window] (CSR) +ESC [ Ps x Request Terminal Parameters (DECREQTPARM) + +ESC [ ? Pm h DEC Private Mode Set (DECSET) +ESC [ ? Pm l DEC Private Mode Reset (DECRST) +ESC [ ? Pm r Restore previously saved DEC Private Mode Values. +ESC [ ? Pm s Save DEC Private Mode Values. +ESC [ ? Pm t Toggle DEC Private Mode Values (Eterm extension). + Ps = 1 + h -> Application Cursor Keys (DECCKM) + l -> Normal Cursor Keys (DECCKM) +[-] Ps = 2 + h -> Designate USASCII for character sets G0-G3. + Ps = 3 + h -> 132 Column Mode (DECCOLM) + l -> 80 Column Mode (DECCOLM) +[-] Ps = 4 + h -> Smooth (Slow) Scroll (DECSCLM) + l -> Jump (Fast) Scroll (DECSCLM) + Ps = 5 + h -> Reverse Video (DECSCNM) + l -> Normal Video (DECSCNM) + Ps = 6 + h -> Origin Mode (DECOM) + l -> Normal Cursor Mode (DECOM) + Ps = 7 + h -> Wraparound Mode (DECAWM) + l -> No Wraparound Mode (DECAWM) +[-] Ps = 8 + h -> Auto-repeat Keys (DECARM) + l -> No Auto-repeat Keys (DECARM) + Ps = 9 (X10 XTerm mouse reporting) + h -> Send Mouse X & Y on button press. + l -> Don't Send Mouse X & Y on button press + See the section Mouse Tracking. +[*] Ps = 10 + h -> menuBar visisble + l -> menuBar invisisble + Ps = 25 + h -> Visible cursor {cnorm/cvvis} + l -> Invisible cursor {civis} +[*] Ps = 30 + h -> scrollBar visisble + l -> scrollBar invisisble +[*] Ps = 35 + h -> Allow XTerm Shift+key sequences + l -> Disallow XTerm Shift+key sequences +[-] Ps = 38 -> Enter Tektronix Mode (DECTEK) + Ps = 40 + h -> Allow 80 <--> 132 Mode + l -> Disallow 80 <--> 132 Mode +[-] Ps = 44 + h -> Turn On Margin Bell + l -> Turn Off Margin Bell +[-] Ps = 45 + h -> Reverse-wraparound Mode + l -> No Reverse-wraparound Mode +[-] Ps = 46 + h -> Start Logging (normally disabled at compile-time) + l -> Stop Logging (normally disabled at compile-time) + Ps = 47 + h -> Use Alternate Screen Buffer + l -> Use Normal Screen Buffer + Ps = 66 + h -> Application Keypad (DECPAM) + l -> Normal Keypad (DECPNM) + Ps = 67 + h -> Backspace key sends BS (DECBKM) + l -> Backspace key sends DEL + Ps = 1000 (X11 XTerm mouse reporting) + h -> Send Mouse X & Y on button press and release. + See the section Mouse Tracking. + l -> Don't Send Mouse X & Y on button press and release +[-] Ps = 1001 (X11 XTerm mouse tracking) + h -> Use Hilite Mouse Tracking. + See the section Mouse Tracking. + l -> Don't Use Hilite Mouse Tracking +ESC ] Ps;Pt BEL + Set Text Parameters + Ps = 0 -> Change Icon Name and Window Title to Pt + Ps = 1 -> Change Icon Name to Pt + Ps = 2 -> Change Window Title to Pt +[*] Ps = 10 -> menuBar command Pt (compile-time option) + see menuBar section below +[*] Ps = 20 -> Change default background pixmap to Pt + (compile-time option) + see XPM section below +[*] Ps = 39 -> Change default foreground color to Pt + (compile-time option) +[-] Ps = 46 -> Change Log File to Pt (normally disabled by a + compile-time option) +[*] Ps = 49 -> Change default background color to Pt + (compile-time option) + Ps = 50 -> Set Font to Pt +[*] special values of Pt (Eterm extension) + "#+n" change up <n> font(s) + "#-n" change down <n> font(s) + if <n> is missing or 0, a value of 1 is used + "" change to font0 + "#n" change to font<n> + +ESC c Full Reset (RIS) +ESC n Invoke the G2 Character Set (LS2) +ESC o Invoke the G3 Character Set (LS3) + +-------------------------------------------------------------------------- + Eterm XPM +-------------------------------------------------------------------------- + +For the XPM XTerm escape sequence, "ESC ] 20; Pt BEL", Pt can be the +name of the background pixmap followed by a sequence of +scaling/positioning commands separated by semi-colons. + +The scaling/positioning commands: + `?' = query scale/position + `WxH+X+Y' = change scale and position + `WxH+X' -> Y = X + `WxH' -> Y = X = 50 + `W+X+Y' -> H = W + `W+X' -> H = W, Y = X + `W' -> H = W, X = Y = 50 + `=+X+Y' = change position (absolute) + `+X+Y' = change position (relative) + `=+X' -> Y = X + `+X' -> Y = X + `Wx0' -> W *= W/100 + `0xH' -> H *= H/100 + +For example: +eg. + "\E]20;mona.xpm;200" + loads the pixmap `mona.xpm' and sets the scaling to 200% +or + "\E]20;;200;?\a" + + sets the scaling of the current pixmap to 200% and displays + the image geometry in the title. + +-------------------------------------------------------------------------- + Eterm menuBar +-------------------------------------------------------------------------- + +For the menubar XTerm escape sequence, "ESC ] 10; Pt BEL", the syntax +of Pt is as follows: + + = title set menuBar title + +/ access menuBar top level + -/ remove menuBar top level + NUL remove menuBar top level + + + [/menu/path/]submenu add/access menu + - [/menu/path/]submenu remove menu + + + [/menu/path/]{item}[{rtext}] [action] add/alter item + - [/menu/path/]{item} remove item + + + [/menu/path/]{-} add separator + - [/menu/path/]{-} remove separator + + + ../ access parent menu (1 level) + + ../../ access parent menu (multiple levels) + + Define menu quick arrows + <b>Begin<r>Right<l>Left<u>Up<d>Down<e>End + +NB: the square brackets indicate optional values. + +The title may contain the following format specifiers: + %% literal '%' character + %v Eterm version + +In the `action' associated with a menu item, special characters must be +backslash-escaped: + `\a', `\b', `\E `\e', `\n', `\r', `\t', '\octal' +or in control-character notation: + ^@, ^A .. ^Z .. ^_, ^? + + If `action' begins with a NUL (^@) character followed by + non-NUL characters, the leading NUL is stripped off and the + balance is sent back to Eterm. + + To send a string starting with a NUL (^@) character to the + program, start action with a pair of NUL characters (^@^@), + the first of which will be stripped off and the balance + directed to the program. + + As a concession and a convenience to the many Emacs work-alike + editors, an action string can be be starting with the following: + `M-...', eg, `M-$' == `\E$' + and for Meta-x commands, a carriage-return will be appended if + missing and leading space will be skipped + + eg, `M-x apropos' == `\Exapropos\r' + + The option {rtext} will be right-justified. In the absence of + a specified action, this text will be as the used. So, for + example, + Pt = `+{Open}{^X^F}' + is equivalent to + Pt = `+{Open){^X^F}{^X^F}' + + To only have the right-justified text, either use the same name + for both left and right labels, eg: + Pt = `+{Open}{Open} Open-File-Action' + or simply hide the left label by preceeding it with a dot, eg: + Pt = `+{.anyLabel}{Open} Open-File-Action' + + Since the left label is used for matching, it is necessary. + + The menus also provide a hook for `quick arrows' to provide + easier user access. If nothing has been explicitly set, the + default is to emulate the curror keys. The syntax permits + each arrow to be altered individually or all four at once with + re-entering their common beginning/end text. For example, to + explicitly associate cursor actions with the arrows, any of the + following forms could be used: + + Pt = `<u>\\E[A' + Pt = `<d>\\E[B' + Pt = `<r>\\E[C' + Pt = `<l>\\E[D' + or + Pt = `<u>\\E[A<d>\\E[B<r>\\E[C<l>\\E[D' + or + Pt = `<b>\\E[<u>A<d>B<r>C<l>D' + + It is probably easiest just to see the examples. + +-------------------------------------------------------------------------- + Mouse reporting +-------------------------------------------------------------------------- + +ESC [ M <b> <x> <y> report mouse position + The lower 2 bits of <b> indicate the button: + Button = <b> & 3 - SPACE + 0 = Button1 pressed + 1 = Button2 pressed + 2 = Button3 pressed + 3 = button released (X11 mouse report) + + The upper bits of <b> indicate the modifiers when + the button was pressed and are added together + (X11 mouse report only): + State = <b> & 28 - SPACE + 4 = Shift + 8 = Meta + 16 = Control + + Col = <x> - SPACE + Row = <y> - SPACE + +-------------------------------------------------------------------------- + Eterm special graphics mode: +-------------------------------------------------------------------------- +ESC G Q query if graphics are available +-> ESC G 0 no graphics available +-> ESC G 1 graphics available (color only) + +Add more documentation here, if anyone actually cares. +ESC G W <x>;<y>;<w>;<h>: create window +ESC G G <id>: query window +-> ESC G <id> <x> <y> <w> <h> <fw> <fh> <nw> <nh> +ESC G L <id> start line +ESC G P <id> start point +ESC G F <id> start fill +ESC G C <id> clear window +ESC G T <id>;<x>; <y>;<mode>;<len>:<text> place text + +-------------------------------------------------------------------------- + Key Codes +-------------------------------------------------------------------------- + Normal Shift Control Application +Up ESC [ A ESC [ a ESC O a ESC O A +Down ESC [ B ESC [ b ESC O b ESC O B +Right ESC [ C ESC [ c ESC O c ESC O C +Left ESC [ D ESC [ d ESC O d ESC O D + + Normal Shift Control +Tab ^I ESC [ Z ^I +BackSpace ^H ^? ^? + + Normal Shift Control Ctrl+Shift +Home == Find ESC [ 1 ~ ESC [ 1 $ ESC [ 1 ^ ESC [ 1 @ +Insert ESC [ 2 ~ paste-mouse ESC [ 2 ^ ESC [ 2 @ +Execute ESC [ 3 ~ ESC [ 3 $ ESC [ 3 ^ ESC [ 3 @ +End == Select ESC [ 4 ~ ESC [ 4 $ ESC [ 4 ^ ESC [ 4 @ +Prior ESC [ 5 ~ scroll-up ESC [ 5 ^ ESC [ 5 @ +Next ESC [ 6 ~ scroll-down ESC [ 6 ^ ESC [ 6 @ + +Delete ESC [ 3 ~ ESC [ 3 $ ESC [ 3 ^ ESC [ 3 @ + +Function Keys: +(Note: Shift + F1-10 generates F11-20) + Norm Shift Control Ctrl+Shift +F1 ESC [ 11 ~ ESC [ 23 ~ ESC [ 11 ^ ESC [ 23 ^ +F2 ESC [ 12 ~ ESC [ 24 ~ ESC [ 12 ^ ESC [ 24 ^ +F3 ESC [ 13 ~ ESC [ 25 ~ ESC [ 13 ^ ESC [ 25 ^ +F4 ESC [ 14 ~ ESC [ 26 ~ ESC [ 14 ^ ESC [ 26 ^ +F5 ESC [ 15 ~ ESC [ 28 ~ ESC [ 15 ^ ESC [ 28 ^ + +F6 ESC [ 17 ~ ESC [ 29 ~ ESC [ 17 ^ ESC [ 29 ^ +F7 ESC [ 18 ~ ESC [ 31 ~ ESC [ 18 ^ ESC [ 31 ^ +F8 ESC [ 19 ~ ESC [ 32 ~ ESC [ 19 ^ ESC [ 32 ^ +F9 ESC [ 20 ~ ESC [ 33 ~ ESC [ 20 ^ ESC [ 33 ^ +F10 ESC [ 21 ~ ESC [ 34 ~ ESC [ 21 ^ ESC [ 34 ^ + +F11 ESC [ 23 ~ ESC [ 23 $ ESC [ 23 ^ ESC [ 23 @ +F12 ESC [ 24 ~ ESC [ 24 $ ESC [ 24 ^ ESC [ 24 @ +F13 ESC [ 25 ~ ESC [ 25 $ ESC [ 25 ^ ESC [ 25 @ +F14 ESC [ 26 ~ ESC [ 26 $ ESC [ 26 ^ ESC [ 26 @ + +F15 (Help) ESC [ 28 ~ ESC [ 28 $ ESC [ 28 ^ ESC [ 28 @ +F16 (Menu) ESC [ 29 ~ ESC [ 29 $ ESC [ 29 ^ ESC [ 29 @ + +F17 ESC [ 31 ~ ESC [ 31 $ ESC [ 31 ^ ESC [ 31 @ +F18 ESC [ 32 ~ ESC [ 32 $ ESC [ 32 ^ ESC [ 32 @ +F19 ESC [ 33 ~ ESC [ 33 $ ESC [ 33 ^ ESC [ 33 @ +F20 ESC [ 34 ~ ESC [ 34 $ ESC [ 34 ^ ESC [ 34 @ + +Keypad: + use Shift to temporarily override Appl-Keypad setting + use Num_Lock to toggle Appl-Keypad setting + if Num_Lock is off, escape sequences toggle Appl-Keypad setting +------ + Normal Application +KP_Enter ^M ESC O M +KP_F1 ESC O P ESC O P +KP_F2 ESC O Q ESC O Q +KP_F3 ESC O R ESC O R +KP_F4 ESC O S ESC O S +XK_KP_Multiply * ESC O j +XK_KP_Add + ESC O k +XK_KP_Separator , ESC O l +XK_KP_Subtract - ESC O m +XK_KP_Decimal . ESC O n +XK_KP_Divide / ESC O o +XK_KP_0 0 ESC O p +XK_KP_1 1 ESC O q +XK_KP_2 2 ESC O r +XK_KP_3 3 ESC O s +XK_KP_4 4 ESC O t +XK_KP_5 5 ESC O u +XK_KP_6 6 ESC O v +XK_KP_7 7 ESC O w +XK_KP_8 8 ESC O x +XK_KP_9 9 ESC O y +-------------------------------------------------------------------------- diff --git a/konsole/doc/More/ansi.sys.txt b/konsole/doc/More/ansi.sys.txt new file mode 100644 index 000000000..5600175f3 --- /dev/null +++ b/konsole/doc/More/ansi.sys.txt @@ -0,0 +1,355 @@ +<TITLE>ANSI.SYS -- ansi terminal emulation escape sequences</TITLE> + + ANSI.SYS + +Defines functions that change display graphics, control cursor movement, and +reassign keys. The ANSI.SYS device driver supports ANSI terminal emulation +of escape sequences to control your system's screen and keyboard. An ANSI +escape sequence is a sequence of ASCII characters, the first two of which +are the escape character (1Bh) and the left-bracket character (5Bh). The +character or characters following the escape and left-bracket characters +specify an alphanumeric code that controls a keyboard or display function. +ANSI escape sequences distinguish between uppercase and lowercase letters; +for example,"A" and "a" have completely different meanings. + + +Parameters used in ANSI escape sequences + +Pn + Numeric parameter. Specifies a decimal number. + +Ps + Selective parameter. Specifies a decimal number that you use to select + a function. You can specify more than one function by separating the + parameters with semicolons. + +PL + Line parameter. Specifies a decimal number that represents one of the + lines on your display or on another device. + +Pc + Column parameter. Specifies a decimal number that represents one of the + columns on your screen or on another device. + +ANSI escape sequences for cursor movement, graphics, and keyboard settings + +In the following list of ANSI escape sequences, the abbreviation ESC +represents the ASCII escape character 27 (1Bh), which appears at the +beginning of each escape sequence. + +ESC[PL;PcH + Cursor Position: Moves the cursor to the specified position + (coordinates). If you do not specify a position, the cursor moves to the + home position - the upper-left corner of the screen (line 0, column + 0). This escape sequence works the same way as the following Cursor + Position escape sequence. + +ESC[PL;Pcf + Cursor Position: Works the same way as the preceding Cursor Position + escape sequence. + +ESC[PnA + Cursor Up: Moves the cursor up by the specified number of lines without + changing columns. If the cursor is already on the top line, ANSI.SYS + ignores this sequence. + +ESC[PnB + Cursor Down: Moves the cursor down by the specified number of lines + without changing columns. If the cursor is already on the bottom line, + ANSI.SYS ignores this sequence. + +ESC[PnC + Cursor Forward: Moves the cursor forward by the specified number of + columns without changing lines. If the cursor is already in the + rightmost column, ANSI.SYS ignores this sequence. + +ESC[PnD + Cursor Backward: Moves the cursor back by the specified number of + columns without changing lines. If the cursor is already in the leftmost + column, ANSI.SYS ignores this sequence. + +ESC[s + Save Cursor Position: Saves the current cursor position. You can move + the cursor to the saved cursor position by using the Restore Cursor + Position sequence. + +ESC[u + Restore Cursor Position: Returns the cursor to the position stored + by the Save Cursor Position sequence. + +ESC[2J + Erase Display: Clears the screen and moves the cursor to the home + position (line 0, column 0). + +ESC[K + Erase Line: Clears all characters from the cursor position to the + end of the line (including the character at the cursor position). + +ESC[Ps;...;Psm + Set Graphics Mode: Calls the graphics functions specified by the + following values. These specified functions remain active until the next + occurrence of this escape sequence. Graphics mode changes the colors and + attributes of text (such as bold and underline) displayed on the + screen. + + Text attributes + 0 All attributes off + 1 Bold on + 4 Underscore (on monochrome display adapter only) + 5 Blink on + 7 Reverse video on + 8 Concealed on + + Foreground colors + 30 Black + 31 Red + 32 Green + 33 Yellow + 34 Blue + 35 Magenta + 36 Cyan + 37 White + + Background colors + 40 Black + 41 Red + 42 Green + 43 Yellow + 44 Blue + 45 Magenta + 46 Cyan + 47 White + + Parameters 30 through 47 meet the ISO 6429 standard. + +ESC[=psh + Set Mode: Changes the screen width or type to the mode specified + by one of the following values: + + 0 40 x 148 x 25 monochrome (text) + 1 40 x 148 x 25 color (text) + 2 80 x 148 x 25 monochrome (text) + 3 80 x 148 x 25 color (text) + 4 320 x 148 x 200 4-color (graphics) + 5 320 x 148 x 200 monochrome (graphics) + 6 640 x 148 x 200 monochrome (graphics) + 7 Enables line wrapping + 13 320 x 148 x 200 color (graphics) + 14 640 x 148 x 200 color (16-color graphics) + 15 640 x 148 x 350 monochrome (2-color graphics) + 16 640 x 148 x 350 color (16-color graphics) + 17 640 x 148 x 480 monochrome (2-color graphics) + 18 640 x 148 x 480 color (16-color graphics) + 19 320 x 148 x 200 color (256-color graphics) + +ESC[=Psl + Reset Mode: Resets the mode by using the same values that Set Mode + uses, except for 7, which disables line wrapping. The last character + in this escape sequence is a lowercase L. + +ESC[code;string;...p + Set Keyboard Strings: Redefines a keyboard key to a specified string. + The parameters for this escape sequence are defined as follows: + + Code is one or more of the values listed in the following table. + These values represent keyboard keys and key combinations. When using + these values in a command, you must type the semicolons shown in this + table in addition to the semicolons required by the escape sequence. + The codes in parentheses are not available on some keyboards. + ANSI.SYS will not interpret the codes in parentheses for those + keyboards unless you specify the /X switch in the DEVICE command for + ANSI.SYS. + + String is either the ASCII code for a single character or a string + contained in quotation marks. For example, both 65 and "A" can be + used to represent an uppercase A. + +IMPORTANT: Some of the values in the following table are not valid for all + computers. Check your computer's documentation for values that + are different. + +Key Code SHIFT+code CTRL+code ALT+code +------------------------------------------------------------------- + +F1 0;59 0;84 0;94 0;104 + +F2 0;60 0;85 0;95 0;105 + +F3 0;61 0;86 0;96 0;106 + +F4 0;62 0;87 0;97 0;107 + +F5 0;63 0;88 0;98 0;108 + +F6 0;64 0;89 0;99 0;109 + +F7 0;65 0;90 0;100 0;110 + +F8 0;66 0;91 0;101 0;111 + +F9 0;67 0;92 0;102 0;112 + +F10 0;68 0;93 0;103 0;113 + +F11 0;133 0;135 0;137 0;139 + +F12 0;134 0;136 0;138 0;140 + +HOME (num keypad) 0;71 55 0;119 -- + +UP ARROW (num keypad) 0;72 56 (0;141) -- + +PAGE UP (num keypad) 0;73 57 0;132 -- + +LEFT ARROW (num keypad) 0;75 52 0;115 -- + +RIGHT ARROW (num 0;77 54 0;116 -- +keypad) + +END (num keypad) 0;79 49 0;117 -- + +DOWN ARROW (num keypad) 0;80 50 (0;145) -- + +PAGE DOWN (num keypad) 0;81 51 0;118 -- + +INSERT (num keypad) 0;82 48 (0;146) -- + +DELETE (num keypad) 0;83 46 (0;147) -- + +HOME (224;71) (224;71) (224;119) (224;151) + +UP ARROW (224;72) (224;72) (224;141) (224;152) + +PAGE UP (224;73) (224;73) (224;132) (224;153) + +LEFT ARROW (224;75) (224;75) (224;115) (224;155) + +RIGHT ARROW (224;77) (224;77) (224;116) (224;157) + +END (224;79) (224;79) (224;117) (224;159) + +DOWN ARROW (224;80) (224;80) (224;145) (224;154) + +PAGE DOWN (224;81) (224;81) (224;118) (224;161) + +INSERT (224;82) (224;82) (224;146) (224;162) + +DELETE (224;83) (224;83) (224;147) (224;163) + +PRINT SCREEN �� �� 0;114 �� + +PAUSE/BREAK �� �� 0;0 �� + +BACKSPACE 8 8 127 (0) + +ENTER 13 �� 10 (0 + +TAB 9 0;15 (0;148) (0;165) + +NULL 0;3 �� �� �� + +A 97 65 1 0;30 + +B 98 66 2 0;48 + +C 99 66 3 0;46 + +D 100 68 4 0;32 + +E 101 69 5 0;18 + +F 102 70 6 0;33 + +G 103 71 7 0;34 + +H 104 72 8 0;35 + +I 105 73 9 0;23 + +J 106 74 10 0;36 + +K 107 75 11 0;37 + +L 108 76 12 0;38 + +M 109 77 13 0;50 + +N 110 78 14 0;49 + +O 111 79 15 0;24 + +P 112 80 16 0;25 + +Q 113 81 17 0;16 + +R 114 82 18 0;19 + +S 115 83 19 0;31 + +T 116 84 20 0;20 + +U 117 85 21 0;22 + +V 118 86 22 0;47 + +W 119 87 23 0;17 + +X 120 88 24 0;45 + +Y 121 89 25 0;21 + +Z 122 90 26 0;44 + +1 49 33 �� 0;120 + +2 50 64 0 0;121 + +3 51 35 �� 0;122 + +4 52 36 �� 0;123 + +5 53 37 �� 0;124 + +6 54 94 30 0;125 + +7 55 38 �� 0;126 + +8 56 42 �� 0;126 + +9 57 40 �� 0;127 + +0 48 41 �� 0;129 + +- 45 95 31 0;130 + += 61 43 ��- 0;131 + +[ 91 123 27 0;26 + +] 93 125 29 0;27 + + 92 124 28 0;43 + +; 59 58 �� 0;39 + +' 39 34 �� 0;40 + +, 44 60 �� 0;51 + +. 46 62 �� 0;52 + +/ 47 63 �� 0;53 + +` 96 126 �� (0;41) + +ENTER (keypad) 13 �� 10 (0;166) + +/ (keypad) 47 47 (0;142) (0;74) + +* (keypad) 42 (0;144) (0;78) �� + +- (keypad) 45 45 (0;149) (0;164) + ++ (keypad) 43 43 (0;150) (0;55) + +5 (keypad) (0;76) 53 (0;143) �� diff --git a/konsole/doc/More/ansix364.txt b/konsole/doc/More/ansix364.txt new file mode 100644 index 000000000..da74ad156 --- /dev/null +++ b/konsole/doc/More/ansix364.txt @@ -0,0 +1,322 @@ + +The following table of the ANSI X3.64 encodings is the result of some work I +did a few years ago for BYTE magazine. BYTE made this table available for +download from several bulletin-board systems, so I see no reason why it cannot +be posted here for whatever private use you care to make. Just don't expect +to make a profit selling copies of it without paying royalties to McGraw-Hill. + +Oh, by the way, the equivalent ISO standard is DP-6429. + +.....RSS + + + ANSI Standard (X3.64) Control Sequences for Video Terminals and Peripherals + in alphabetic order by mnemonic + + (Inspired by the article "Toward Standardized Video Terminals: ANSI + X3.64 Device Control" by Mark L. Siegel, April 1984 BYTE, page 365) + + (Ps and Pn are parameters expressed in ASCII.) + (Numeric parameters are given in decimal radix.) + (Abbreviations are explained in detail at end.) + (Spaces used in this table for clarity are not + used in the actual codes.) + + Default Type +Sequence Sequence Parameter or +Mnemonic Name Sequence Value Mode +--------------------------------------------------------------------------- +APC Applicatn Program Command Esc Fe Delim +CBT Cursor Backward Tab Esc [ Pn Z 1 eF +CCH Cancel Previous Character Esc T +CHA Cursor Horzntal Absolute Esc [ Pn G 1 eF +CHT Cursor Horizontal Tab Esc [ Pn I 1 eF +CNL Cursor Next Line Esc [ Pn E 1 eF +CPL Cursor Preceding Line Esc [ Pn F 1 eF +CPR Cursor Position Report Esc [ Pn ; Pn R 1, 1 +CSI Control Sequence Intro Esc [ Intro +CTC Cursor Tab Control Esc [ Ps W 0 eF +CUB Cursor Backward Esc [ Pn D 1 eF +CUD Cursor Down Esc [ Pn B 1 eF +CUF Cursor Forward Esc [ Pn C 1 eF +CUP Cursor Position Esc [ Pn ; Pn H 1, 1 eF +CUU Cursor Up Esc [ Pn A 1 eF +CVT Cursor Vertical Tab Esc [ Pn Y eF +DA Device Attributes Esc [ Pn c 0 +DAQ Define Area Qualification Esc [ Ps o 0 +DCH Delete Character Esc [ Pn P 1 eF +DCS Device Control String Esc P Delim +DL Delete Line Esc [ Pn M 1 eF +DMI Disable Manual Input Esc \ Fs +DSR Device Status Report Esc [ Ps n 0 +EA Erase in Area Esc [ Ps O 0 eF +ECH Erase Character Esc [ Pn X 1 eF +ED Erase in Display Esc [ Ps J 0 eF +EF Erase in Field Esc [ Ps N 0 eF +EL Erase in Line Esc [ Ps K 0 eF +EMI Enable Manual Input Esc b Fs +EPA End of Protected Area Esc W +ESA End of Selected Area Esc G +FNT Font Selection Esc [ Pn ; Pn Space D 0, 0 FE +GSM Graphic Size Modify Esc [ Pn ; Pn Space B 100, 100 FE +GSS Graphic Size Selection Esc [ Pn Space C none FE +HPA Horz Position Absolute Esc [ Pn ` 1 FE +HPR Horz Position Relative Esc [ Pn a 1 FE +HTJ Horz Tab w/Justification Esc I FE +HTS Horizontal Tab Set Esc H FE +HVP Horz & Vertical Position Esc [ Pn ; Pn f 1, 1 FE +ICH Insert Character Esc [ Pn @ 1 eF +IL Insert Line Esc [ Pn L 1 eF +IND Index Esc D FE +INT Interrupt Esc a Fs +JFY Justify Esc [ Ps ; ... ; Ps Space F 0 FE +MC Media Copy Esc [ Ps i 0 +MW Message Waiting Esc U +NEL Next Line Esc E FE +NP Next Page Esc [ Pn U 1 eF +OSC Operating System Command Esc ] Delim +PLD Partial Line Down Esc K FE +PLU Partial Line Up Esc L FE +PM Privacy Message Esc ^ Delim +PP Preceding Page Esc [ Pn V 1 eF +PU1 Private Use 1 Esc Q +PU2 Private Use 2 Esc R +QUAD Typographic Quadding Esc [ Ps Space H 0 FE +REP Repeat Char or Control Esc [ Pn b 1 +RI Reverse Index Esc M FE +RIS Reset to Initial State Esc c Fs +RM Reset Mode Esc [ Ps l none +SD Scroll Down Esc [ Pn T 1 eF +SEM Select Edit Extent Mode Esc [ Ps Q 0 +SGR Select Graphic Rendition Esc [ Ps m 0 FE +SL Scroll Left Esc [ Pn Space @ 1 eF +SM Select Mode Esc [ Ps h none +SPA Start of Protected Area Esc V +SPI Spacing Increment Esc [ Pn ; Pn Space G none FE +SR Scroll Right Esc [ Pn Space A 1 eF +SS2 Single Shift 2 (G2 set) Esc N Intro +SS3 Single Shift 3 (G3 set) Esc O Intro +SSA Start of Selected Area Esc F +ST String Terminator Esc \ Delim +STS Set Transmit State Esc S +SU Scroll Up Esc [ Pn S 1 eF +TBC Tab Clear Esc [ Ps g 0 FE +TSS Thin Space Specification Esc [ Pn Space E none FE +VPA Vert Position Absolute Esc [ Pn d 1 FE +VPR Vert Position Relative Esc [ Pn e 1 FE +VTS Vertical Tabulation Set Esc J FE + +--------------------------------------------------------------------------- + +Abbreviations: + +Intro an Introducer of some kind of defined sequence; the normal 7-bit + X3.64 Control Sequence Introducer is the two characters "Escape [" + +Delim a Delimiter + +x/y identifies a character by position in the ASCII table (column/row) + +eF editor function (see explanation) + +FE format effector (see explanation) + +F is a Final character in + an Escape sequence (F from 3/0 to 7/14 in the ASCII table) + a control sequence (F from 4/0 to 7/14) + +Gs is a graphic character appearing in strings (Gs ranges from + 2/0 to 7/14) in the ASCII table + +Ce is a control represented as a single bit combination in the C1 set + of controls in an 8-bit character set + +C0 the familiar set of 7-bit ASCII control characters + +C1 roughly, the set of control characters available only in 8-bit systems. + This is too complicated to explain fully here, so read Jim Fleming's + article in the February 1983 BYTE, especially pages 214 through 224. + +Fe is a Final character of a 2-character Escape sequence that has an + equivalent representation in an 8-bit environment as a Ce-type + (Fe ranges from 4/0 to 5/15) + +Fs is a Final character of a 2-character Escape sequence that is + standardized internationally with identical representation in 7-bit + and 8-bit environments and is independent of the currently + designated C0 and C1 control sets (Fs ranges from 6/0 to 7/14) + +I is an Intermediate character from 2/0 to 2/15 (inclusive) in the + ASCII table + +P is a parameter character from 3/0 to 3/15 (inclusive) in the ASCII + table + +Pn is a numeric parameter in a control sequence, a string of zero or + more characters ranging from 3/0 to 3/9 in the ASCII table + +Ps is a variable number of selective parameters in a control sequence + with each selective parameter separated from the other by the code + 3/11 (which usually represents a semicolon); Ps ranges from + 3/0 to 3/9 and includes 3/11 + +\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\ +/ + +Format Effectors versus Editor Functions + +A format effector specifies how the final output is to be created. +An editor function allows you to modify the specification. + +For instance, a format effector that moves the "active position" (the +cursor or equvalent) one space to the left would be useful when you want to +create an overstrike, a compound character made of two standard characters +overlaid. Control-H, the Backspace character, is actually supposed to be a +format effector, so you can do this. But many systems use it in a +nonstandard fashion, as an editor function, deleting the character to the +left of the cursor and moving the cursor left. When Control-H is assumed to +be an editor function, you cannot predict whether its use will create an +overstrike unless you also know whether the output device is in an "insert +mode" or an "overwrite mode". When Control-H is used as a format effector, +its effect can always be predicted. The familiar characters carriage +return, linefeed, formfeed, etc., are defined as format effectors. + +\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\ +/ + +ANSI X3.64 Mode-Changing Parameters for use with the + Select Mode (SM) and Reset Mode (RM) functions + + Parameter Mode Mode Function + Characters Mnemonic + column/ graphic + row repres. +---------------------------------------------------------------------------- +3/0 0 an error condition +3/1 1 GATM guarded-area transfer mode +3/2 2 KAM keyboard action mode +3/3 3 CRM control representation mode +3/4 4 IRM insertion/replacement mode +3/5 5 SRTM status-reporting transfer mode +3/6 6 ERM erasure mode +3/7 7 VEM vertical editing mode +3/8 8 reserved for future standardization +3/9 9 reserved for future standardization +3/10 : reserved separator for parameters +3/11 ; Standard separator for parameters +3/12 < reserved for private (experimental) use +3/13 = reserved for private (experimental) use +3/14 > reserved for private (experimental) use +3/15 ? reserved for private (experimental) use +3/1 3/0 10 HEM horizontal editing mode +3/1 3/1 11 PUM positioning unit mode +3/1 3/2 12 SRM send/receive mode +3/1 3/3 13 FEAM format effector action mode +3/1 3/4 14 FETM format effector transfer mode +3/1 3/5 15 MATM multiple area transfer mode +3/1 3/6 16 TTM transfer termination mode +3/1 3/7 17 SATM selected area transfer mode +3/1 3/8 18 TSM tabulation stop mode +3/1 3/9 19 EBM editing boundary mode +3/1 3/10 1: reserved separator for parameters +3/1 3/11 1; Standard separator for parameters +3/1 3/12 1< error condition--unspecified recovery +3/1 3/13 1= error condition--unspecified recovery +3/1 3/14 1> error condition--unspecified recovery +3/1 3/15 1? error condition--unspecified recovery +3/2 3/0 20 LNM linefeed/newline mode (not in ISO 6429) +3/2 3/1 21 + . . + . . reserved for future standardization + . . +3/9 3/9 99 + +3/12 3/0 <0 + . . + . . reserved for private (experimental) use + . . +3/15 3/15 ?? + +\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\ +/ + +NOTES ON THE DEC VT100 IMPLEMENTATION + +In the case of the popular DEC VT100 video-terminal implementation, +the only mode that may be altered is the linefeed/newline (LNM) mode. +Other modes are considered permanently set, reset, or not applicable +as follows: + + Set: ERM + Reset: CRM, EBM, FEAM, FETM, IRM, KAM, PUM, SRTM, TSM + N/A: GATM, HEM, MATM, SATM, TTM, VEM + +Control sequences implemented in the VT100 are as follows: + + CPR, CUB, CUD, CUF, CUP, CUU, DA, DSR, ED, EL, HTS, HVP, IND, + LNM, NEL, RI, RIS, RM, SGR, SM, TBC + +plus several private DEC commands. + +Erasing parts of the display (EL and ED) in the VT100 is performed thus: + + Erase from cursor to end of line Esc [ 0 K or Esc [ K + Erase from beginning of line to cursor Esc [ 1 K + Erase line containing cursor Esc [ 2 K + Erase from cursor to end of screen Esc [ 0 J or Esc [ J + Erase from beginning of screen to cursor Esc [ 1 J + Erase entire screen Esc [ 2 J + +The VT100 responds to receiving the DA (Device Attributes) control + + Esc [ c (or Esc [ 0 c) + +by transmitting the sequence + + Esc [ ? l ; Ps c + +where Ps is a character that describes installed options. + +The VT100's cursor location can be read with the DSR (Device Status +Report) control + + Esc [ 6 n + +The VT100 reports by transmitting the CPR sequence + + Esc [ Pl ; Pc R + +where Pl is the line number and Pc is the column number (in decimal). + +\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\ +/ + +The complete document describing the standard, "ANSI X3.64-1979: +Additional Controls for Use with the American National Standard +Code for Information Interchange," can be ordered for $13.50 (plus +$4 postage) from + + Standards Sales Department + American National Standards Institute + 1430 Broadway + New York, NY 10018 + 212/354-3300 + +It's best to read the full standard before using it. It also helps +to have copies of the related standards "X3.4-1977: American +National Standard Code for Information Interchange" (the ASCII +standard) and "X3.41.1974: Code-Extension Techniques for Use with +the 7-Bit Coded Character Set of American National Standard for +Information Interchange." + +See also the chapter "Using Extended Screens and Keyboard Control" +in the IBM PC-DOS manuals, especially for the coding for character +attributes. + +The specification for the DEC VT100 is document EK-VT100-UG-003. + +(Copyright 1984 BYTE Publications, subsidiary of McGraw-Hill Inc.) +(Permission granted to reproduce for noncommercial uses.) +(This file prepared by Richard S. Shuford.) + +
\ No newline at end of file diff --git a/konsole/doc/More/dec_vt100_codes.txt b/konsole/doc/More/dec_vt100_codes.txt new file mode 100644 index 000000000..e9d4b9f82 --- /dev/null +++ b/konsole/doc/More/dec_vt100_codes.txt @@ -0,0 +1,166 @@ +Article 2317 of comp.terminals: +Path: cs.utk.edu!darwin.sura.net!opusc!usceast!riker!chan +From: [email protected] (Simon Chan) +Newsgroups: comp.terminals +Subject: INFO for VT100 !!!!!!!! +Date: 27 Apr 1994 23:30:09 -0400 +Organization: Univ of S. Carolina, ECE Dept +Lines: 153 +Message-ID: <chan.767503605@riker> +NNTP-Posting-Host: riker.ece.scarolina.edu + + So I am posting this once again..... +------------------------------<Cut Here>--------------------------------------- +Taken from VT100 Programming Reference Card (DIGITAL) + +ANSI Compatible Mode + + Cursor Movement Commands + Cursor up ESC [ Pn A + Cursor down ESC [ Pn B + Cursor forward (right) ESC [ Pn C + Cursor backward (left) ESC [ Pn D + Direct cursor addressing ESC [ Pl; Pc H or + ESC [ Pl; Pc f + Index ESC D + Next Line ESC E + Reverse index ESC M + Save cursor and attributes ESC 7 + Restore cursor and attributes ESC 8 + * Pn = decimal parameter in string of ASCII digits.(default 1) + * Pl = line number (default 0); Pc = column number (default 0) + + Line Size (Double-Height and Double-Width) Commands + Change this line to double-height top half ESC # 3 + Change this line to double-height bottom half ESC # 4 + Change this line to single-width single-height ESC # 5 + Change this line to double-width single-height ESC # 6 + + Character Attributes + ESC [ Ps;Ps;Ps;...,Ps m + Ps = 0 or None All Attributes Off + 1 Bold on + 4 Underscore on + 5 Blink on + 7 Reverse video on + Any other parameter values are ignored. + + Erasing + From cursor to end of line ESC [ K or ESC [ 0 K + From beginning of line to cursor ESC [ 1 K + Entire line containing cursor ESC [ 2 K + From cursor to end of screen ESC [ J or ESC [ 0 J + From beginning of screen to cursor ESC [ 1 J + Entire screen ESC [ 2 J + + Programmable LEDs + ESC [ Ps;Ps;...Ps q + Ps = 0 or None All LEDs Off + 1 L1 on + 2 L2 on + 3 L3 on + 4 L4 on + Any other parameter values are ignored. + + Character Set (G0 and G1 Designators) + Charactor Set G0 Designator G1 Designator + United Kingdom (UK) ESC ( A ESC ) A + United States (USASCII) ESC ( B ESC ) B + Special graphics characters ESC ( 0 ESC ) 0 + and line drawing set + Alternate character ROM ESC ( 1 ESC ) 1 + Alternate character ROM ESC ( 2 ESC ) 2 + special graphics characters + + Scrolling Region + ESC [ Pt ; Pb r + Pt is the number of the top line of the scrolling region; + Pb is the number of the bottom line of the scrolling region + and must be greater than Pt. + (The default for Pt is line 1, the default for Pb is the end + of the screen) + + TAB stops + Set tab at current column ESC H + Clear tab at curent column ESC [ g or ESC [ 0 g + Clear all tabs ESC [ 3 g + + Modes + To Set To Reset + Mode Name Mode Sequence Mode Sequence + Line feed/new line New line ESC [20h Line feed ESC [20l + Cursor key mode Application ESC [?1h Cursor ESC [?l + ANSI/VT52 mode ANSI ESC < VT52 ESC [?2l + Column mode 132 Col ESC [?3h 80 Col ESC [?3l + Scrolling mode Smooth ESC [?4h Jump ESC [?4l + Screen mode Reverse ESC [?5h Normal ESC [?5l + Origin mode Relative ESC [?6h Absolute ESC [?6l + Wraparound On ESC [?7h Off ESC [?7l + Auto repeat On ESC [?8h Off ESC [?8l + Interlace On ESC [?9h Off ESC [?9l + Graphic proc. option On ESC 1 Off ESC 2 + Keypad mode Application ESC = Numeric ESC > + + Reports + Cursor Position Report + Invoked by ESC [ 6 n + Response is ESC [ Pl; Pc R + * Pl = line number; Pc = column number + + Status Report + Invoked by ESC [ 5 n + Response is ESC [ 0 n (terminal ok) + ESC [ 3 n (terminal not ok) + + What Are You + Invoked by ESC [ c or ESC [ O c + Response is ESC [ ?1 ; Ps C + Ps = 0 Base VT100, no options + 1 Processor option (STP) + 2 Advanced Video option (AVO) + 3 AVO and STP + 4 Graphocs processor option (GO) + 5 GO and STP + 6 GO and AVO + 7 GO, STP, and AVO + Alternately invoked by ESC Z (not recommended.) Response is the same. + + Reset + ESC c + + Confidence Tests + Fill Screen with "Es" ESC # 8 + Invoke Test(s) ESC [ 2 ; Ps y + Ps = 1 Power-up self test + (ROM checksum, RAM, NVR, + keyboard and AVO if installed) + 2(loop back connector required) Data Loop Back + 4(loop back connector required) ETA Modern Control Test + 8 Repeat selected test(s) + indefinitely + (until failure or power off) + +VT52 Compatible Mode + Cursor Up ESC A + Cursor Down ESC B + Cursor Right ESC C + Cursor Left ESC D + Select Special Graphics character set ESC F + Select ASCII character set ESC G + Cursor to home ESC H + Reverse line feed ESC I + Erase to end of screen ESC J + Erase to end of line ESC K + Direct cursor address ESC Ylc (see note 1) + Identify ESC Z (see note 2) + Enter alternate keypad mode ESC = + Exit alternate keypad mode ESC > + Enter ANSI mode ESC < + + NOTE 1: Line and column numbers for direct cursor address are single + character codes whose values are the desired number plus + 37 (in Octal). Line and column numbers start at 1. + NOTE 2: Response to ESC Z is ESC / Z. + + + diff --git a/konsole/doc/More/iowa_vt100_news.txt b/konsole/doc/More/iowa_vt100_news.txt new file mode 100644 index 000000000..94a62b69a --- /dev/null +++ b/konsole/doc/More/iowa_vt100_news.txt @@ -0,0 +1,255 @@ +iowa_vt100.news + +\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/ + +Newsgroups: comp.terminals +Path: utkcs2!emory!swrinde!cs.utexas.edu!wupost!gumby!destroyer + !news.iastate.edu!emann +From: [email protected] (The Emann) +Subject: A vt100 ctrl seq list +Message-ID: <[email protected]> +Date: 13 Mar 92 07:20:04 GMT +Sender: [email protected] (USENET News System) +Lines: 205 + + + Without benefit of a vt100 programmer's reference, we've been trying +to locate as complete a list of control sequences for vt52/100/102's. +This list here was compiled from the lists we could find. Most notably +Rob Elliott's 'Selected ANSI Escape codes'; the Villanova list; and the +ANSI_X3.64-tables-from-BYTE list. We'd much rather have a reference manual, +but if anyone can tell us what's missing or incorrect in this list, it +would be greatly appreciated. + +start of list +---------------------------------------------- +Control Characters +------------------ + +Char +Name Dec Hex Action Taken +------------------------------------------------------------------ +NUL 0 0x00 ignored; Null +SOH 1 0x01 ignored; Start of heading +STX 2 0x02 ignored; Start of text +ETX 3 0x03 ignored; End of text +EOT 4 0x04 ignored; End of transmission +ENQ 5 0x05 Transmit answerback message +ACK 6 0x06 ignored; Acknowledge +BEL 7 0x07 Ring the bell +BS 8 0x08 Move cursor left +HT 9 0x09 Move cursor to next tab stop; Horizontal tab +LF 10 0x0A Line feed; causes print if in autoprint +VT 11 0x0B Same as LF; Vertical tab +FF 12 0x0C Same as LF; Form feed +CR 13 0x0D Move cursor to left margin or newline; Carriage return +SO 14 0x0E Invoke G1 character set +SI 15 0x0F Invoke G0 character set +DC1 16 0x10 ignored; Device control 1 +XON 17 0x11 Resume transmission; Device control 2 +DC3 18 0x02 ignored; Device control 3 +XOFF 19 0x13 Halt transmission; Device control 4 +NAK 20 0x14 ignored; Negative acknowledge +SYN 21 0x15 ignored; Syncronous idle +ETB 22 0x16 ignored; End of transmission block +CAN 23 0x17 ignored; Cancel +EM 24 0x18 Cancel escape sequence and display checkerboard +SUB 26 0x1A Same as CAN +ESC 27 0x1B Introduce a control sequence +FS 28 0x1C ignored; File separator +GS 29 0x1D ignored; Group separator +RS 30 0x1E ignored; Record separator +US 31 0x1F ignored; Unit separator +DEL 127 0x7F ignored; Delete + +Control Sequences +----------------- + +Action VT52 mode ANSI (VT100) +---------------------------------------------------- +Cursor up Esc A Esc [ Pn A +Cursor down Esc B Esc [ Pn B +Cursor right Esc C Esc [ Pn C +Cursor left Esc D Esc [ Pn D +Cursor home Esc H +Cursor address Esc Y Pl Pc Esc [ Pn(row);Pn(col);H or + Esc [ Pn(row);Pn(col);f +Cursor position report Esc [ 6 n + returns: Esc [ Pn(row);Pn(col) R +Index Esc D +Newline Esc E +Reverse newline Esc I Esc M +Save cursor & attr Esc 7 +Restore cursor & attr Esc 8 +Insert line Esc [ Pn L +Delete line Esc [ Pn M +Delete character Esc [ Pn P +Define scrolling region Esc [ Pn(top);Pn(bot) r +Erase cursor to EOL Esc K Esc [ K +Erase BOL to cursor Esc [ 1 K +Erase entire line Esc [ 2 K +Erase cursor to EOS Esc J Esc [ J +Erase BOS to cursor Esc [ 1 J +Erase entire screen Esc [ 2 J +Print screen or region Esc ] Esc [ i (region in ANSI only) +Print cursor line Esc V Esc [ ? 1 i +Enter print controller Esc W Esc [ 5 i +Exit print controller Esc X Esc [ 4 i +Enter auto print Esc ^ Esc [ ? 5 i +Exit auto print Esc - Esc [ ? 4 i +Set tab at current col Esc H +Clr tab at current col Esc [ g +Clear all tabs Esc [ 3 g +Enter ANSI mode Esc < +Application keypad Esc = Esc = +Numeric kyepad Esc > Esc > +Fill screen with 'E's Esc # 8 +Reset Esc c +Identify Esc Z Esc Z + returns: Esc/Z returns: Esc [ ? 6 c +Device attr report Esc [ c + returns: Esc [ ? 6 c +Device status report Esc [ 5 n + returns: Esc [ O n +Request term params Esc [ 1 x + returns: Esc[3;<par>;<nbits>;<xspeed>;<rspeed>;1;0x + +Mode name Ps Set (Esc [ Ps h) Reset (Esc [ Ps l) VT100 +------------------------------------------------------------------------- +Keyboard action 2 Locked Unlocked reset +Insertion 4 Insert Overwrite reset +Duplex 12 Full Half (echo) available +Linefeed/Newline 20 Newline Linefeed available +Cursor key ?1 Application Cursor available +ANSI/VT52 ?2 ANSI VT52 available +Column width ?3 132 80 available +Scolling method ?4 Smooth Jump available +Screen ?5 Reverse Normal available +Origin ?6 Relative Absolute available +Wraparound ?7 Wrap Truncate available +Key auto repeat ?8 Repeating No repeat available +Print formfeed ?18 Yes No available +Print extent ?19 Full screen Scolling region available + +Character set VT52 VT100 (G0) VT100 (G1) +-------------------------------------------------------- +United Kingdom (UK) Esc ( A Esc ) A +United States (US) Esc G Esc ( B Esc ) B +Graphics Esc F Esc ( 0 Esc ) 0 +Default ROM Esc ( 1 Esc ) 1 +Alternate ROM Esc ( 2 Esc ) 2 +Switch to G0/G1 Esc O Esc N + +Character attributes Ps (Esc [ Ps;Ps;Ps;...Psm) +--------------------------------------------------- +Normal (attr off) 0 Note: Ps=3 4 or 6 are unknown and +Bold on 1 probably redundant. +Underscore on 2 +Blink on 5 +Inverse on 7 + +Line Sizes: +Change current line VT100 +--------------------------------------- +To double-height top half Esc # 3 +To double-height bottom half Esc # 4 +To normal size Esc # 5 +To double-width Esc # 6 + +Cursor control keys VT52 VT100 (appl mode) VT100 (cursor mode) +--------------------------------------------------------------------- +Up arrow Esc A Esc O A Esc [ A +Down arrow Esc B Esc O B Esc [ B +Right arrow Esc C Esc O C Esc [ C +Left arrow Esc D Esc O D Esc [ D + +Auxilliary keypad VT52 (num) VT52 (appl) VT100 (num) VT100 (appl) +------------------------------------------------------------------------ +0 0 Esc ? p 0 Esc O p +1 1 Esc ? q 1 Esc O q +2 2 Esc ? r 2 Esc O r +3 3 Esc ? s 3 Esc O s +4 4 Esc ? t 4 Esc O t +5 5 Esc ? u 5 Esc O u +6 6 Esc ? v 6 Esc O v +7 7 Esc ? w 7 Esc O w +8 8 Esc ? x 8 Esc O x +9 9 Esc ? y 9 Esc O y +- - Esc ? m - Esc O m +, , Esc ? l , Esc O l +. . Esc ? n . Esc O n +Enter ^M Esc ? M ^M Esc O M +PF1 Esc P Esc P Esc O P Esc O P +PF2 Esc Q Esc Q Esc O Q Esc O Q +PF3 Esc R Esc R Esc O R Esc O R +PF4 Esc S Esc S Esc O S Esc O S + +G0 graphics char set +-------------------- + +ASCII code Symbol displayed +------------------------------------ +\ Diamond +a Chekerboard +e Degree sign +g Plus/minus sign +j Lower-right box corner +k Upper-right box corner +l Upper-left box corner +m Lower-left box corner +n Intersecting lines +o Horizontal line - scan 1 (bottom) +p Horizontal line - scan 3 +q Horizontal line - scan 5 (matches with box corners) +r Horizontal line - scan 7 +s Horizontal line - scan 9 (top) +t Left T +u Right T +v Top T +w Bottom T +x Vertical bar +y Less-than-or-equal-to sign +z Greater-than-or-equal-to sign +| Not-equal-to sign +( Pi sign +) UK pound sign +~ Centered dot + +--------------------------------------- +end of list + +\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/ + +Path: utkcs2!memstvx1!ukma!asuvax!cs.utexas.edu!usc!elroy.jpl.nasa.gov!wvus + !abode!blars!blarson +Newsgroups: comp.terminals +Subject: Re: A vt100 ctrl seq list +Message-ID: <[email protected]> +From: [email protected] +Date: 13 Mar 92 10:13:23 GMT +Reply-To: [email protected] +References: <[email protected]> +Lines: 20 + +In article <[email protected]>, + [email protected] (The Emann) writes: +> +> Without benefit of a vt100 programmer's reference, we've been trying +> to locate as complete a list of control sequences for vt52/100/102's. + +Even if you had one, it wouldn't list them all. A couple of examples: +(Genuine vt100, imitators probably get them wrong. (Dec never was good +at imitating their own terminals.)) + +Esc [ 2 ; 8 y Wait for poweroff. +Esc [ 2 ; 15 y Flashing background mode. Also puts terminal in local. + +Also, many sequences produced different results at different speeds. +The original VT100 terminal has many undocumented modes such as 24 +duplicate lines, linefeed goes up, etc. + +-- [email protected] usc!blarson blarson@zog +C news and rn for os9/68k! + +\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/ diff --git a/konsole/doc/More/k95vtnttn.html b/konsole/doc/More/k95vtnttn.html new file mode 100644 index 000000000..12ac9851d --- /dev/null +++ b/konsole/doc/More/k95vtnttn.html @@ -0,0 +1,184 @@ +<html><head> +<title>VTTEST Score Sheet - MS Telnet for Windows NT</title> +</head><body> +<h2>VTTEST Score Sheet - MS Telnet for Windows NT</h2> +<pre> +VTTEST VT100/VT102 Compatibility Test Score Sheet + + +Program and version: <b>MS Telnet 1.0 Windows NT</b> Date: ____<b>18 Dec 95</b>___ + +Score: ____<b>25</b>____ + Extra credit: ____<b>0</b>____ = Final score: ____<b>25</b>___ + +Check box if test passed. Score 1 point per check mark. +Perfect score = 100 points. Extra credit at end. + +1. Test of cursor movements + +[<b>0</b>] 1. Text inside frame of E's inside frame of *'s and +'s, 80 columns +[<b>0</b>] 2. Text inside frame of E's inside frame of *'s and +'s, 132 columns +[<b>0</b>] 3. Cursor-control chars inside ESC sequences +[<b>1</b>] 4. Leading 0's in ESC sequences + +2. Test of screen features + +[<b>1</b>] 5. Three identical lines of *'s (test of wrap mode) +[<b>0</b>] 6. Test of tab setting/resetting +[<b>0</b>] 7. 132-column mode, light background +[<b>1</b>] 8. 80-column mode, light background +[<b>0</b>] 9. 132-column mode, dark background +[<b>0</b>] 10. 80-column mode, dark background +[<b>1</b>] 11. Soft scroll down +[<b>1</b>] 12. Soft scroll up / down +[<b>1</b>] 13. Jump scroll down +[<b>1</b>] 14. Jump scroll up / down +[<b>0</b>] 15. Origin mode test (2 parts) + + Graphic Rendition test pattern, dark background + +[<b>1</b>] 16. Normal ("vanilla") +[<b>0</b>] 17. Normal underlined distinct from normal +[<b>0</b>] 18. Normal blink distinct from all above +[<b>1</b>] 19. Normal underline blink distinct from all above +[<b>0</b>] 20. Normal reverse ("negative") distinct from all above +[<b>0</b>] 21. Normal underline reverse distinct from all above +[<b>0</b>] 22. Normal blink reverse distinct from all above +[<b>0</b>] 23. Normal underline blink reverse distinct from all above +[<b>0</b>] 24. Bold distinct from all above +[<b>0</b>] 25. Bold underlined distinct from all above +[<b>0</b>] 26. Bold blink distinct from all above +[<b>0</b>] 27. Bold underline blink distinct from all above +[<b>0</b>] 28. Bold reverse ("negative") distinct from all above +[<b>0</b>] 29. Bold underline reverse distinct from all above +[<b>0</b>] 30. Bold blink reverse distinct from all above +[<b>0</b>] 31. Bold underline blink reverse distinct from all above + + Graphic Rendition test pattern, light background + +[<b>0</b>] 32. Normal ("vanilla") +[<b>0</b>] 33. Normal underlined distinct from normal +[<b>0</b>] 34. Normal blink distinct from all above +[<b>0</b>] 35. Normal underline blink distinct from all above +[<b>0</b>] 36. Normal reverse ("negative") distinct from all above +[<b>0</b>] 37. Normal underline reverse distinct from all above +[<b>0</b>] 38. Normal blink reverse distinct from all above +[<b>0</b>] 39. Normal underline blink reverse distinct from all above +[<b>0</b>] 40. Bold distinct from all above +[<b>0</b>] 41. Bold underlined distinct from all above +[<b>0</b>] 42. Bold blink distinct from all above +[<b>0</b>] 43. Bold underline blink distinct from all above +[<b>0</b>] 44. Bold reverse ("negative") distinct from all above +[<b>0</b>] 45. Bold underline reverse distinct from all above +[<b>0</b>] 46. Bold blink reverse distinct from all above +[<b>0</b>] 47. Bold underline blink reverse distinct from all above + + Save/Restore Cursor + +[<b>1</b>] 48. AAAA's correctly placed +[<b>0</b>] 49. Lines correctly rendered (middle of character cell) +[<b>0</b>] 50. Diamonds correctly rendered + +3. Test of character sets + +[<b>0</b>] 51. UK/National shows Pound Sterling sign in 3rd position +[<b>0</b>] 52. US ASCII shows number sign in 3rd position +[<b>0</b>] 53. SO/SI works (right columns identical with left columns) +[<b>0</b>] 54. True special graphics & line drawing chars, not simulated by ASCII + +4. Test of double-sized chars + + Test 1 in 80-column mode: + +[<b>0</b>] 55. Left margin correct +[<b>0</b>] 56. Width correct + + Test 2 in 80-column mode: + +[<b>0</b>] 57. Left margin correct +[<b>0</b>] 58. Width correct + + Test 1 in 132-column mode: + +[<b>0</b>] 59. Left margin correct +[<b>0</b>] 60. Width correct + + Test 2 in 132-column mode: + +[<b>0</b>] 61. Left margin correct +[<b>0</b>] 62. Width correct + +[<b>0</b>] 63. "The man programmer strikes again" test pattern +[<b>0</b>] 64. "Exactly half the box should remain" + +5. Test of keyboard + +[<b>0</b>] 65. LEDs. +[<b>0</b>] 66. Autorepeat +[<b>1</b>] 67. "Press each key" (ability to send each ASCII graphic char) +[<b>1</b>] 68. Arrow keys (ANSI/Cursor key mode reset) +[<b>1</b>] 69. Arrow keys (ANSI/Cursor key mode set) +[<b>1</b>] 70. Arrow keys VT52 mode +[<b>1</b>] 71. PF keys numeric mode +[<b>1</b>] 72. PF keys application mode +[<b>1</b>] 73. PF keys VT52 numeric mode +[<b>1</b>] 74. PF keys VT52 application mode +[<b>0</b>] 75. Send answerback message from keyboard +[<b>1</b>] 76. Ability to send every control character + +6. Test of Terminal Reports + +[<b>0</b>] 77. Respond to ENQ with answerback +[<b>0</b>] 78. Newline mode set +[<b>1</b>] 79. Newline mode reset +[<b>0</b>] 80. Device status report 5 +[<b>1</b>] 81. Device status report 6 +[<b>1</b>] 82. Device attributes report +[<b>0</b>] 83. Request terminal parameters 0 +[<b>0</b>] 84. Request terminal parameters 1 + +7. Test of VT52 submode + +[<b>1</b>] 85. Centered rectangle +[<b>1</b>] 86. Normal character set +[<b>0</b>] 87. Graphics character set +[<b>1</b>] 88. Identify query + +8. VT102 Features + +[<b>0</b>] 89. Insert/delete line, 80 columns +[<b>0</b>] 90. Insert (character) mode, 80 columns +[<b>0</b>] 91. Delete character, 80 columns +[<b>0</b>] 92. Right column staggered by 1 (normal chars), 80 columns +[<b>0</b>] 93. Right column staggered by 1 (double-wide chars), 80 columns +[<b>1</b>] 94. ANSI insert character, 80 columns +[<b>0</b>] 95. Insert/delete line, 132 columns +[<b>0</b>] 96. Insert (character) mode, 132 columns +[<b>0</b>] 97. Delete character, 132 columns +[<b>0</b>] 98. Right column staggered by 1 (normal chars), 132 columns +[<b>0</b>] 99. Right column staggered by 1 (double-wide chars), 132 columns +[<b>0</b>] 100. ANSI insert character, 132 columns + +9. Extra credit + +[<b>0</b>] 101. True soft (smooth) scroll +[<b>0</b>] 102. True underline +[<b>0</b>] 103. True blink +[<b>0</b>] 104. True double-high/wide lines, not simulated +[<b>0</b>] 105. Reset terminal (*) +[<b>0</b>] 106. Interpret controls (debug mode) (*) +[<b>0</b>] 107. Send BREAK (250 msec) (*) +[<b>0</b>] 108. Send Long BREAK (1.5 sec) (*) +[<b>0</b>] 109. Host-controlled transparent / controller print (*) +[<b>0</b>] 110. Host-controlled autoprint (*) + +(*) Features of VT100 not tested by vttest. + +NOTES: +Test 3 (character sets) puts it into graphics mode, from which it +can't recover. + +<hr><address> +VTTEST Score Sheet / Columbia University / [email protected] / 18 Dec 95 +</address> +</body> +</html> diff --git a/konsole/doc/More/rxvt-ref.html b/konsole/doc/More/rxvt-ref.html new file mode 100644 index 000000000..a27f5b4bc --- /dev/null +++ b/konsole/doc/More/rxvt-ref.html @@ -0,0 +1,1281 @@ +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN"> +<!-- +don't use Netscape to edit this file, since it has some stange ideas of +formatting that makes later global/change/replace difficult, +but it is okay for making the text version of this document +--> +<HTML> +<HEAD> +<TITLE> +Rxvt Technical Reference +</TITLE> + <META NAME="Author" CONTENT="mj olesen <[email protected]>"> + <META NAME="Description" CONTENT="Documentation of VT, XTerm, and other escape sequences used by rxvt."> +</HEAD> +<BODY TEXT="#000000" BGCOLOR="#FFFFFF" LINK="#0000FF" VLINK="#0000FF" ALINK="#FF0000"> +<HR> +<CENTER> +<H1><A NAME="Top">Rxvt Technical Reference</A></H1> +Reworked from XTerm documentation and other sources<BR> +<P> +<A TARGET="_top" HREF="refer.html">[No]</A> +<A TARGET="_top" HREF="refer-frame.html">Frames</A> +<HR> +</CENTER> +<UL> +<LI><A HREF="#Definitions">Definitions</A></LI> +<LI><A HREF="#Values">Values</A></LI> +<LI><A HREF="#Sequences">Escape Sequences</A></LI> +<LI><A HREF="#CSI">CSI (Code Sequence Introducer) Sequences</A></LI> +<LI><A HREF="#PrivateModes">DEC Private Modes</A></LI> +<LI><A HREF="#XTerm">XTerm Escape Sequences</A></LI> +<LI><A HREF="#menuBar">menuBar</A></LI> +<LI><A HREF="#XPM">XPM</A></LI> +<LI><A HREF="#Mouse">Mouse Reporting</A></LI> +<LI><A HREF="#Graphics">Special Graphics Mode</A></LI> +<LI><A HREF="#KeyCodes">Key Codes</A></LI> +</UL> + +<HR> +<H2><A HREF="#toc" NAME="Definitions">Definitions</A></H2> +<P> + +<DL><DT><B><TT>c</TT></B></DT><DD>The literal character c.</DD></DL> +<P> + +<DL><DT><B><TT>C</TT></B></DT><DD>A single (required) character.</DD></DL> +<P> + +<DL> +<DT><B><TT>Ps</TT></B></DT> +<DD>A single (usually optional) numeric parameter, +composed of one or more digits.</DD> +</DL> +<P> + +<DL> +<DT><B><TT>Pm</TT></B></DT> +<DD>A multiple numeric parameter composed of any number of single numeric +parameters, separated by ; character(s).</DD> +</DL> +<P> + +<DL> +<DT><B><TT>Pt</TT></B></DT> +<DD>A text parameter composed of printable characters.</DD> +</DL> +<P> + +<HR> +<H2><A HREF="#toc" NAME="Values">Values</A></H2> +<P> + +<DL> +<DT><B><TT>ENQ</TT></B></DT> +<DD>Enquiry (Ctrl-E) = Send Device Attributes (DA)<BR> +request attributes from terminal +== <A HREF="#ESC[Psc"><B><TT>ESC[c</TT></B></A> +</DD> +</DL> +<P> + +<DL><DT><B><TT>BEL</TT></B></DT><DD>Bell (Ctrl-G)</DD></DL> +<P> + +<DL><DT><B><TT>BS</TT></B></DT><DD>Backspace (Ctrl-H)</DD></DL> +<P> + +<DL><DT><B><TT>TAB</TT></B></DT><DD>Horizontal Tab (HT) (Ctrl-I)</DD></DL> +<P> + +<DL><DT><B><TT>LF</TT></B></DT><DD>Line Feed or New Line (NL) (Ctrl-J)</DD></DL> +<P> + +<DL> +<DT><B><TT>VT</TT></B></DT> +<DD>Vertical Tab (Ctrl-K) same as <B><TT>LF</TT></B></DD> +</DL> +<P> + +<DL> +<DT><B><TT>FF</TT></B></DT> +<DD>Form Feed or New Page (NP) (Ctrl-L) same as <B><TT>LF</TT></B></DD> +</DL> +<P> + +<DL><DT><B><TT>CR</TT></B></DT><DD>Carriage Return (Ctrl-M)</DD></DL> +<P> + +<DL> +<DT><B><TT>SO</TT></B></DT> +<DD>Shift Out (Ctrl-N), invokes the G1 character set<BR> +Switch to Alternate Character Set</DD> +</DL> +<P> + +<DL> +<DT><B><TT>SI</TT></B></DT> +<DD>Shift In (Ctrl-O), invokes the G0 character set (the default)<BR> +Switch to Standard Character Set</DD> +</DL> +<P> + +<DL><DT><B><TT>SPC</TT></B></DT><DD>Space Character</DD></DL> +<P> + +<HR> +<H2><A HREF="#toc" NAME="Sequences">Escape Sequences</A></H2> +<P> + +<DL> +<DT><B><TT>ESC # 8</TT></B></DT> +<DD>DEC Screen Alignment Test (DECALN)</DD> +</DL> +<P> + +<DL> +<DT><B><TT> +ESC 7<BR> +ESC 8 +</TT></B></DT> +<DD> +Save Cursor (SC)<BR> +Restore Cursor (RC) +</DD> +</DL> +<P> + +<DL> +<A NAME="ESC="></A> +<DT><B><TT> +ESC =<BR> +ESC > +</TT></B></DT> +<DD> +Application Keypad (SMKX) == +<A HREF="#Priv66"><B><TT>ESC[?66h</TT></B></A><BR> +Normal Keypad (RMKX) == +<A HREF="#Priv66"><B><TT>ESC[?66l</TT></B></A> +</DD> +</DL> +<P> + +<B>Note:</B> +If the numeric keypad is activated, eg, <B>Num_Lock</B> has been pressed, +numbers or control functions are generated by the numeric keypad (see +<A HREF="#KeyCodes">Key Codes</A>) +<P> + +<DL><DT><B><TT>ESC D</TT></B></DT><DD>Index (IND)</DD></DL> +<P> + +<DL><DT><B><TT>ESC E</TT></B></DT><DD>Next Line (NEL)</DD></DL> +<P> + +<DL><DT><B><TT>ESC H</TT></B></DT><DD>Tab Set (HTS)</DD></DL> +<P> + +<DL><DT><B><TT>ESC M</TT></B></DT><DD>Reverse Index (RI)</DD></DL> +<P> + +<DL> +<DT><B><TT>ESC N</TT></B></DT> +<DD>Single Shift Select of G2 Character Set (SS2): affects next character only +<B><U>unimplemented</B></U> +</DD> +</DL> +<P> + +<DL> +<DT><B><TT>ESC O</TT></B></DT> +<DD>Single Shift Select of G3 Character Set (SS3): affects next character only +<B><U>unimplemented</U></B> +</DD> +</DL> +<P> + +<DL> +<DT><B><TT>ESC Z</TT></B></DT> +<DD>Obsolete form of <A HREF="#ESC[Psc"><B><TT>ESC[c</TT></B></A><BR> +returns: <B><TT>ESC[?1;2C</TT></B> (<B><U>rxvt compile-time option</U></B>) +</DD> +</DL> +<P> + +<DL> +<DT><B><TT>ESC c</TT></B></DT> +<DD>Full Reset (RIS)</DD> +</DL> +<P> + +<DL> +<DT><B><TT>ESC n</TT></B></DT> +<DD>Invoke the G2 Character Set (LS2)</DD> +</DL> +<P> + +<DL> +<DT><B><TT>ESC o</TT></B></DT> +<DD>Invoke the G3 Character Set (LS3)</DD> +</DL> +<P> + +<DL> +<DT><B><TT> +ESC ( C<BR> +ESC ) C<BR> +ESC * C<BR> +ESC + C<BR> +ESC $ C +</TT></B></DT> +<DD> +Designate G0 Character Set (ISO 2022)<BR> +Designate G1 Character Set (ISO 2022)<BR> +Designate G2 Character Set (ISO 2022)<BR> +Designate G3 Character Set (ISO 2022)<BR> +Designate Kanji Character Set<BR> +<EM>where</EM> <B><TT>C</TT></B> is<BR> +<UL> +<B><TT>C = 0</TT></B> : DEC Special Character and Line Drawing Set<BR> +<B><TT>C = A</TT></B> : United Kingdom (UK)<BR> +<B><TT>C = B</TT></B> : United States (USASCII)<BR> +<B><TT>C = <</TT></B> : Multinational character set <B><U>unimplemented</U></B><BR> +<B><TT>C = 5</TT></B> : Finnish character set <B><U>unimplemented</U></B><BR> +<B><TT>C = C</TT></B> : Finnish character set <B><U>unimplemented</U></B><BR> +<B><TT>C = K</TT></B> : German character set <B><U>unimplemented</U></B> +</UL> +</DD> +</DL> +<P> + +<HR> +<H2><A HREF="#toc" NAME="CSI">CSI (Code Sequence Introducer) Sequences</A></H2> +<P> + +<DL> +<DT><B><TT>ESC [ Ps @</TT></B></DT> +<DD>Insert <B><TT>Ps</TT></B> (Blank) Character(s) [default: 1] (ICH)</DD> +</DL> +<P> + +<DL> +<A NAME="ESC[PsA"></A> +<DT><B><TT>ESC [ Ps A</TT></B></DT> +<DD>Cursor Up <B><TT>Ps</TT></B> Times [default: 1] (CUU)</DD> +</DL> +<P> + +<DL> +<DT><B><TT>ESC [ Ps B</TT></B></DT> +<DD>Cursor Down <B><TT>Ps</TT></B> Times [default: 1] (CUD) +</DD> +</DL> +<P> + +<DL> +<A NAME="ESC[PsC"></A> +<DT><B><TT>ESC [ Ps C</TT></B></DT> +<DD>Cursor Forward <B><TT>Ps</TT></B> Times [default: 1] (CUF)</DD> +</DL> +<P> + +<DL> +<DT><B><TT>ESC [ Ps D</TT></B></DT> +<DD>Cursor +Backward <B><TT>Ps</TT></B> Times [default: 1] (CUB)</DD> +</DL> +<P> + +<DL> +<DT><B><TT>ESC [ Ps E</TT></B></DT> +<DD>Cursor Down <B><TT>Ps</TT></B> Times [default: 1] and to first column</DD> +</DL> +<P> + +<DL> +<DT><B><TT>ESC [ Ps F</TT></B></DT> +<DD>Cursor Up <B><TT>Ps</TT></B> Times [default: 1] and to first column</DD> +</DL> +<P> + +<DL> +<A NAME="ESC[PsG"></A> +<DT><B><TT>ESC [ Ps G</TT></B></DT> +<DD>Cursor to Column <B><TT>Ps</TT></B> (HPA)</DD> +</DL> +<P> + +<DL> +<DT><B><TT>ESC [ Ps;Ps H</TT></B></DT> +<DD>Cursor Position [row;column] [default: 1;1] (CUP)</DD> +</DL> +<P> + +<DL> +<DT><B><TT>ESC [ Ps I</TT></B></DT> +<DD>Move forward <B><TT>Ps</TT></B> tab stops [default: 1]</DD> +</DL> +<P> + +<DL> +<DT><B><TT>ESC [ Ps J</TT></B></DT> +<DD>Erase in Display (ED)<BR> +<B><TT>Ps = 0</TT></B> : Clear Below (default)<BR> +<B><TT>Ps = 1</TT></B> : Clear Above<BR> +<B><TT>Ps = 2</TT></B> : Clear All</DD> +</DL> +<P> + +<DL> +<DT><B><TT>ESC [ Ps K</TT></B></DT> +<DD>Erase in Line (EL)<BR> +<B><TT>Ps = 0</TT></B> : Clear to Right (default)<BR> +<B><TT>Ps = 1</TT></B> : Clear to Left (EL1)<BR> +<B><TT>Ps = 2</TT></B> : Clear All</DD> +</DL> +<P> + +<DL> +<DT><B><TT>ESC [ Ps L</TT></B></DT> +<DD>Insert <B><TT>Ps</TT></B> Line(s) [default: 1] (IL)</DD> +</DL> +<P> + +<DL> +<DT><B><TT>ESC [ Ps M</TT></B></DT> +<DD>Delete <B><TT>Ps</TT></B> Line(s) [default: 1] (DL)</DD> +</DL> +<P> + +<DL> +<DT><B><TT>ESC [ Ps P</TT></B></DT> +<DD>Delete <B><TT>Ps</TT></B> Character(s) +[default: 1] (DCH)</DD> +</DL> +<P> + +<DL> +<DT><B><TT>ESC [ Ps;Ps;Ps;Ps;Ps T</TT></B></DT> +<DD>Initiate <A HREF="#Mouse">hilite mouse tracking</A>. +<B><U>unimplemented</U></B><BR> +Parameters are [func;startx;starty;firstrow;lastrow].</DD> +</DL> +<P> + +<DL> +<DT><B><TT>ESC [ Ps W</TT></B></DT> +<DD>Tabulator functions<BR> +<B><TT>Ps = 0</TT></B> : Tab Set (HTS)<BR> +<B><TT>Ps = 2</TT></B> : Tab Clear (TBC), Clear Current Column (default)<BR> +<B><TT>Ps = 5</TT></B> : Tab Clear (TBC), Clear All</DD> +</DL> +<P> + +<DL> +<DT><B><TT>ESC [ Ps X</TT></B></DT> +<DD>Erase <B><TT>Ps</TT></B> Character(s) [default: 1] (ECH)</DD> +</DL> +<P> + +<DL> +<DT><B><TT>ESC [ Ps Z</TT></B></DT> +<DD>Move backward <B><TT>Ps</TT></B> [default: 1] tab stops</DD> +</DL> +<P> + +<DL> +<DT><B><TT>ESC [ Ps '</TT></B></DT> +<DD>== <A HREF="#ESC[PsG"><B><TT>ESC [ Ps G</TT></B></A></DD> +</DL> +<P> + +<DL> +<DT><B><TT>ESC [ Ps a</TT></B></DT> +<DD>== <A HREF="#ESC[PsC"><B><TT>ESC [ Ps C</TT></B></A></DD> +</DL> +<P> + +<DL> +<A NAME="ESC[Psc"></A> +<DT><B><TT>ESC [ Ps c</TT></B></DT> +<DD>Send Device Attributes (DA)<BR> +<B><TT>Ps = 0</TT></B> (or omitted) : request attributes from terminal<BR> +returns: <B><TT>ESC[?1;2c</TT></B> (``I am a VT100 with Advanced Video Option'')</DD> +</DL> +<P> + +<DL> +<DT><B><TT>ESC [ Ps d</TT></B></DT> +<DD>Cursor to Line <B><TT>Ps</TT></B> (VPA)</DD> +</DL> +<P> + +<DL> +<DT><B><TT>ESC [ Ps e</TT></B></DT> +<DD>== <A HREF="#ESC[PsA"><B><TT>ESC [ Ps A</TT></B></A></DD> +</DL> +<P> + +<DL> +<DT><B><TT>ESC [ Ps;Ps f</TT></B></DT> +<DD>Horizontal and Vertical Position [row;column] (HVP)<BR> +[default: 1;1]</DD> +</DL> +<P> + +<DL> +<DT><B><TT>ESC [ Ps g</TT></B></DT> +<DD>Tab Clear (TBC)<BR> +<B><TT>Ps = 0</TT></B> : Clear Current Column (default)<BR> +<B><TT>Ps = 3</TT></B> : Clear All (TBC) +</DD> +</DL> +<P> + +<DL> +<DT><B><TT>ESC [ Ps i</TT></B></DT> +<DD>Printing<BR> +<B><TT>Ps = 4</TT></B> : disable transparent print mode (MC4)<BR> +<B><TT>Ps = 5</TT></B> : enable transparent print mode (MC5) +<B><U>unimplemented</U></B> +</DD> +</DL> +<P> + +<DL> +<DT><B><TT> +ESC [ Pm h<BR> +ESC [ Pm l +</TT></B> +<DD>Set Mode (SM)<BR> +Reset Mode (RM)</DD> +<DT><B><TT>Ps = 4</TT></B></DT> +<DD> +<B><TT>h</TT></B> : Insert Mode (SMIR)<BR> +<B><TT>l</TT></B> : Replace Mode (RMIR) +</DD> +<DT><B><TT>Ps = 20</TT></B> <B><U>unimplemented</U></B></DT> +<DD> +<B><TT>h</TT></B> : Automatic Newline (LNM)<BR> +<B><TT>l</TT></B> : Normal Linefeed (LNM) +</DD> +</DL> +<P> + +<DL> +<DT><B><TT>ESC [ Pm m</TT></B></DT> +<DD>Character Attributes (SGR) </BR> +<B><TT>Ps = 0</TT></B> : Normal (default)<BR> +<B><TT>Ps = 1 / 22</TT></B> : On / Off Bold (bright fg)<BR> +<B><TT>Ps = 4 / 24</TT></B> : On / Off Underline<BR> +<B><TT>Ps = 5 / 25</TT></B> : On / Off Blink (bright bg)<BR> +<B><TT>Ps = 7 / 27</TT></B> : On / Off Inverse<BR> +<B><TT>Ps = 30 / 40</TT></B> : fg / bg Black<BR> +<B><TT>Ps = 31 / 41</TT></B> : fg / bg Red<BR> +<B><TT>Ps = 32 / 42</TT></B> : fg / bg Green<BR> +<B><TT>Ps = 33 / 43</TT></B> : fg / bg Yellow<BR> +<B><TT>Ps = 34 / 44</TT></B> : fg / bg Blue<BR> +<B><TT>Ps = 35 / 45</TT></B> : fg / bg Magenta<BR> +<B><TT>Ps = 36 / 46</TT></B> : fg / bg Cyan<BR> +<B><TT>Ps = 37 / 47</TT></B> : fg / bg White<BR> +<B><TT>Ps = 39 / 49</TT></B> : fg / bg Default</DD> +</DL> +<P> + +<DL> +<DT><B><TT>ESC [ Ps n</TT></B></DT> +<DD>Device Status Report (DSR)<BR> +<B><TT>Ps = 5</TT></B> : Status Report <B><TT>ESC [ 0 n</TT></B> (``OK'')<BR> +<B><TT>Ps = 6</TT></B> : Report Cursor Position (CPR) [row;column] as + <B><TT>ESC [ r ; c R</TT></B><BR> +<B><TT>Ps = 7</TT></B> : Request Display Name<BR> +<B><TT>Ps = 8</TT></B> : Request Version Number (place in window title) +</DD> +</DL> +<P> + +<DL> +<DT><B><TT>ESC [ Ps;Ps r</TT></B></DT> +<DD>Set Scrolling Region [top;bottom]<BR> +[default: full size of window] (CSR)</DD> +</DL> +<P> + +<DL> +<DT><B><TT>ESC [ Ps x</TT></B></DT> +<DD>Request Terminal Parameters (DECREQTPARM) +</DD> +</DL> +<P> + +<HR> +<H2><A HREF="#toc" NAME="PrivateModes">DEC Private Modes</A></H2> + +<DL> +<DT><B><TT>ESC [ ? Pm h</TT></B></DT> +<DD>DEC Private Mode Set (DECSET)</DD> +</DL> +<P> + +<DL> +<DT><B><TT>ESC [ ? Pm l</TT></B></DT> +<DD>DEC Private Mode Reset (DECRST)</DD> +</DL> +<P> + +<DL> +<DT><B><TT>ESC [ ? Pm r</TT></B></DT> +<DD>Restore previously saved DEC Private Mode Values.</DD> +</DL> +<P> + +<DL> +<DT><B><TT>ESC [ ? Pm s</TT></B></DT> +<DD>Save DEC Private Mode Values.</DD> +</DL> + +<P> +<DL> +<DT><B><TT>ESC [ ? Pm t</TT></B></DT> +<DD>Toggle DEC Private Mode Values (rxvt extension).</DD> +</DL> +<P> + +<EM>where</EM> +<P> + +<DL> +<DD> +<DT><B><TT>Ps = 1</TT></B> (DECCKM)</DT> +<DD> +<B><TT>h</TT></B> : Application Cursor Keys<BR> +<B><TT>l</TT></B> : Normal Cursor Keys +</DD> +<DT><B><TT>Ps = 2</TT></B> <B><U>unimplemented</U></B></DT> +<DD> +<B><TT>h</TT></B> : Designate USASCII for character sets G0-G3. +</DD> +<DT><B><TT>Ps = 3</TT></B></DT> +<DD> +<B><TT>h</TT></B> : 132 Column Mode (DECCOLM)<BR> +<B><TT>l</TT></B> : 80 Column Mode (DECCOLM) +</DD> +<DT><B><TT>Ps = 4</TT></B> <B><U>unimplemented</U></B></DT> +<DD> +<B><TT>h</TT></B> : Smooth (Slow) Scroll (DECSCLM)<BR> +<B><TT>l</TT></B> : Jump (Fast) Scroll (DECSCLM) +</DD> +<DT><B><TT>Ps = 5</TT></B></DT> +<DD> +<B><TT>h</TT></B> : Reverse Video (DECSCNM)<BR> +<B><TT>l</TT></B> : Normal Video (DECSCNM) +</DD> +<DT><B><TT>Ps = 6</TT></B></DT> +<DD> +<B><TT>h</TT></B> : Origin Mode (DECOM)<BR> +<B><TT>l</TT></B> : Normal Cursor Mode (DECOM) +</DD> +<DT><B><TT>Ps = 7</TT></B></DT> +<DD> +<B><TT>h</TT></B> : Wraparound Mode (DECAWM)<BR> +<B><TT>l</TT></B> : No Wraparound Mode (DECAWM) +</DD> +<DT><B><TT>Ps = 8</TT></B> <B><U>unimplemented</U></B></DT> +<DD> +<B><TT>h</TT></B> : Auto-repeat Keys (DECARM)<BR> +<B><TT>l</TT></B> : No Auto-repeat Keys (DECARM) +</DD> +<DT><B><TT>Ps = 9</TT></B> (X10 XTerm <A HREF="#Mouse">mouse reporting</A>)</DT> +<DD> +<B><TT>h</TT></B> : Send Mouse X & Y on button press.<BR> +<B><TT>l</TT></B> : No mouse reporting. +</DD> +<A NAME="Priv10"></A> +<DT><B><TT>Ps = 10</TT></B> (<B><U>rxvt</U></B>)</DT> +<DD> +<B><TT>h</TT></B> : <A HREF="#menuBar">menuBar</A> visisble<BR> +<B><TT>l</TT></B> : <A HREF="#menuBar">menuBar</A> invisisble +</DD> +<DT><B><TT>Ps = 25</TT></B></DT> +<DD> +<B><TT>h</TT></B> : Visible cursor {cnorm/cvvis}<BR> +<B><TT>l</TT></B> : Invisible cursor {civis} +</DD> +<DT><B><TT>Ps = 30</TT></B> (<B><U>rxvt</U></B>)</DT> +<DD> +<B><TT>h</TT></B> : scrollBar visisble<BR> +<B><TT>l</TT></B> : scrollBar invisisble +</DD> +<DT><B><TT>Ps = 35</TT></B> (<B><U>rxvt</U></B>)</DT> +<DD> +<B><TT>h</TT></B> : Allow XTerm Shift+key sequences<BR> +<B><TT>l</TT></B> : Disallow XTerm Shift+key sequences +</DD> +<DT><B><TT>Ps = 38</TT></B> : Enter Tektronix Mode (DECTEK) +<B><U>unimplemented</U></B></DT> +<DD> +</DD> +<DT><B><TT>Ps = 40</TT></B></DT> +<DD> +<B><TT>h</TT></B> : Allow 80/132 Mode<BR> +<B><TT>l</TT></B> : Disallow 80/132 Mode +</DD> +<DT><B><TT>Ps = 44</TT></B> <B><U>unimplemented</U></B></DT> +<DD> +<B><TT>h</TT></B> : Turn On Margin Bell<BR> +<B><TT>l</TT></B> : Turn Off Margin Bell +</DD> +<DT><B><TT>Ps = 45</TT></B> <B><U>unimplemented</U></B></DT> +<DD> +<B><TT>h</TT></B> : Reverse-wraparound Mode<BR> +<B><TT>l</TT></B> : No Reverse-wraparound Mode +</DD> +<DT><B><TT>Ps = 46</TT></B> <B><U>unimplemented</U></B></DT> +<DT><B><TT>Ps = 47</TT></B></DT> +<DD> +<B><TT>h</TT></B> : Use Alternate Screen Buffer<BR> +<B><TT>l</TT></B> : Use Normal Screen Buffer +</DD> +<A NAME="Priv66"></A> +<DT><B><TT>Ps = 66</TT></B></DT> +<DD> +<B><TT>h</TT></B> : Application Keypad (DECPAM) + == <A HREF="#ESC="><B><TT>ESC =</TT></B></A><BR> +<B><TT>l</TT></B> : Normal Keypad (DECPNM) + == <A HREF="#ESC="><B><TT>ESC ></TT></B></A> +</DD> +<DT><B><TT>Ps = 67</TT></B></DT> +<DD> +<B><TT>h</TT></B> : Backspace key sends <B><TT>BS</TT></B> (DECBKM)<BR> +<B><TT>l</TT></B> : Backspace key sends <B><TT>DEL</TT></B> +</DD> +<DT><B><TT>Ps = 1000</TT></B> (X11 XTerm <A HREF="#Mouse">mouse reporting</A>)</DT> +<DD> +<B><TT>h</TT></B> : Send Mouse X & Y on button press and release.<BR> +<B><TT>l</TT></B> : No mouse reporting. +</DD> +<DT><B><TT>Ps = 1001</TT></B> (X11 XTerm <A HREF="#Mouse">mouse Tracking</A>) <B><U>unimplemented</U></B></DT> +<DD> +<B><TT>h</TT></B> : Use Hilite Mouse Tracking.<BR> +<B><TT>l</TT></B> : No mouse reporting. +</DD> +</DL> +<P> + +<HR> +<H2><A HREF="#toc" NAME="XTerm">XTerm Escape Sequences</A></H2> + +<DL> +<DT><B><TT>ESC ] Ps;Pt BEL</TT></B></DT> +<DD>Set XTerm Parameters</DD> +<DT><B><TT>Ps = 0</TT></B></DT> +<DD>Change Icon Name and Window Title to <B><TT>Pt</TT></B></DD> +<DT><B><TT>Ps = 1</TT></B></DT> +<DD>Change Icon Name to <B><TT>Pt</TT></B></DD> +<DT><B><TT>Ps = 2</TT></B></DT> +<DD>Change Window Title to <B><TT>Pt</TT></B></DD> +<DT><B><TT>Ps = 10</TT></B></DT> +<DD><A HREF="#menuBar">menuBar</A> command <B><TT>Pt</TT></B> +(<B><U>rxvt compile-time option</U></B>)</DD> +<DT><B><TT>Ps = 20</TT></B></DT> +<DD>Change default background <A HREF="#XPM">pixmap</A> to <B><TT>Pt</TT></B> +(<B><U>rxvt compile-time option</U></B>) +</DD> + +<DT><B><TT>Ps = 39</TT></B></DT> +<DD>Change default foreground color to <B><TT>Pt</TT></B> +(<B><U>rxvt compile-time option</U></B>)</DD> +<DT><B><TT>Ps = 46</TT></B></DT> +<DD>Change Log File to <B><TT>Pt</TT></B>(normally disabled by a compile-time option) <B><U>unimplemented</U></B></DD> +<DT><B><TT>Ps = 49</TT></B></DT> +<DD>Change default background color to <B><TT>Pt</TT></B> +(<B><U>rxvt compile-time option</U></B>)</DD> +<DT> +<B><TT>Ps = 50</TT></B></DT> +<DD>Set Font to <B><TT>Pt</TT></B>, with the following special values of <B><TT>Pt</TT></B> (<B><U>rxvt</U></B>)<BR> +<B><TT>#+n</TT></B> : change up <B><TT>n</TT></B> font(s)<BR> +<B><TT>#-n</TT></B> : change down <B><TT>n</TT></B> font(s)<BR> +<UL>if <B><TT>n</TT></B> is missing or 0, a value of 1 is used</UL> +<EM>empty</EM> : change to font0<BR> +<B><TT>#n</TT></B> : change to font<B><TT>n</TT></B></DD> +</DL> +<P> + +<HR> +<H2><A HREF="#toc" NAME="menuBar">menuBar</A></H2> +<P> + +<STRONG>The exact syntax used is <EM>almost</EM> solidified.</STRONG><BR> +In the menus, <STRONG>DON'T</STRONG> try to use menuBar commands that +add or remove a menuBar. +<P> + +Note that in all of the commands, the <B><EM>/path/</EM></B> +<EM>cannot</EM> be omitted: +use <B>./</B> to specify a menu relative to the current menu. + +<H3>Overview of menuBar operation</H3> + +For the menuBar XTerm escape sequence <B><TT>ESC ] 10; Pt BEL</TT></B>, the +syntax of <B><TT>Pt</TT></B> can be used for a variety of tasks: +<UL COMPACT> +<LI><A HREF="#menuBarCommands">Commands</A></LI> +<LI><A HREF="#menuBarAdd">Adding and accessing menus</A></LI> +<LI><A HREF="#menuBarRemove">Removing menus</A></LI> +<LI><A HREF="#menuBarArrows">Quick Arrows</A></LI> +<LI><A HREF="#menuBarSummary">Command Summary</A></LI> +</UL> + +At the top level is the current menuBar which is a member of a +circular linked-list of other such menuBars. + +The menuBar acts as a parent for the various drop-down menus, which in +turn, may have labels, separator lines, menuItems and subMenus. + +The menuItems are the useful bits: you can use them to mimic keyboard +input or even to send text or escape sequences back to rxvt. + +The menuBar syntax is intended to provide a simple yet robust method +of constructing and manipulating menus and navigating through the +menuBars. + +<P> +The first step is to use the tag <B>[menu:<EM>name</EM>]</B> which +creates the menuBar called <EM>name</EM> and allows access. +You may now +<A HREF="#menuBarAdd">add</A> or <A HREF="#menuBarRemove">remove</A> +menus, subMenus, and menuItems. Finally, use the tag +<B>[done]</B> to set the menuBar access as <B>readonly</B> +to prevent accidental corruption of the menus. +To re-access the current menuBar for alterations, use the tag +<B>[menu]</B>, make the alterations and then use +<B>[done]</B> +<P> + +<H3><A HREF="#menuBar" NAME="menuBarCommands">Commands</A></H3> + +<DL > +<DT><B>[menu:<EM>name</EM>]</B></DT> +<DD> +access the named menuBar for creation or alteration. +If a new menuBar is created, it is called <EM>name</EM> (max of 15 chars) +and the current menuBar is pushed onto the stack +</DD> + +<DT><B>[menu]</B></DT> +<DD>access the current menuBar for alteration</DD> + +<DT><B>[title:<EM>string</EM>]</B></DT> +<DD> +set the current menuBar's title to <EM>string</EM>, which may contain +the following format specifiers:<BR> +<B>%%</B> : literal <B>%</B> character<BR> +<B>%n</B> : rxvt name (as per the <B>-name</B> command-line option)<BR> +<B>%v</B> : rxvt version +</DD> + +<DT><B>[done]</B></DT> +<DD> +set menuBar access as <B>readonly</B>.<BR> +End-of-file tag for <B>[read:<EM>file</EM>]</B> operations. +</DD> + +<DT><B>[read:<EM>file</EM>]</B></DT> +<DD> +read menu commands directly from <EM>file</EM> +(extension ".menu" will be appended if required). +Start reading at a line with <B>[menu]</B> or <B>[menu:<EM>name</EM>]</B> +and continuing until <B>[done]</B> is encountered. +<BR> +Blank and comment lines (starting with <B>#</B>) are ignored. +Actually, since any invalid menu commands are also ignored, almost +anything could be construed as a comment line, but this may be +tightened up in the future ... so don't count on it!. +</DD> + +<DT><B>[read:<EM>file</EM>;<EM>name</EM>]</B></DT> +<DD> +The same as <B>[read:<EM>file</EM>]</B>, but +start reading at a line with <B>[menu:<EM>name</EM>]</B> +and continuing until <B>[done:<EM>name</EM>]</B> +or <B>[done]</B> is encountered. +</DD> + +<DT><B>[dump]</B></DT> +<DD> +dump all menuBars to the file <B>/tmp/rxvt-PID</B> in a format suitable +for later rereading. +</DD> + +<DT><B> +[rm:name]<BR> +[rm] [rm:]<BR> +[rm*] [rm:*] +</B></DT> +<DD> +remove the named menuBar<BR> +remove the current menuBar<BR> +remove all menuBars +</DD> + +<DT><B>[swap]</B></DT> +<DD>swap the top two menuBars</DD> + +<DT><B>[prev]<BR>[next]</B></DT> +<DD>access the previous or next menuBar</DD> + +<DT><B>[show]<BR>[hide]</B></DT> +<DD>control display of the menuBar ... just like +<A HREF="#Priv10"><B>ESC[?10 h/l</B></A> +</DD> + +<DT><B> +[pixmap:<EM>name</EM>]<BR> +[pixmap:<EM>name</EM>;<EM>scaling</EM>] +</B></DT> +<DD>set the background pixmap globally ... just like +<A HREF="#XPM"><B>ESC]20; Pt BEL</B></A> +<BR> +<B>A Future implementation <EM>may</EM> make this local to the menubar</B> +</DD> + +<DT><B>[:<EM>command</EM>:]</B></DT> +<DD>ignore the menu readonly status and issue a <EM>command</EM> to +<A HREF="#menuBarAdd">Add/Modify</A> or +<A HREF="#menuBarRemove">Remove</A> a menu or menuitem or +change the <A HREF="#menuBarArrows">Quick Arrows</A>; +a useful shortcut for setting the quick arrows from a menuBar. +</DD> +</DL> + +<H3><A HREF="#menuBar" NAME="menuBarAdd">Adding and accessing menus</A></H3> + +The following commands may also be <B>+</B> prefixed. +<DL> +<DT><B>/<BR>./<BR>../<BR>../../</B></DT> +<DD> +access menuBar top level<BR> +access current menu level<BR> +access parent menu (1 level up)<BR> +access parent menu (multiple levels up) +</DD> + +<DT><B><EM>/path/</EM>menu</B></DT> +<DD>add/access menu</DD> + +<DT><B><EM>/path/</EM>menu/*</B></DT> +<DD>add/access menu and clear it if it exists</DD> + +<DT><B><EM>/path/</EM>{-}</B></DT> +<DD>add separator</DD> + +<DT><B><EM>/path/</EM>{item}</B></DT> +<DD>add <B>item</B> as a label</DD> + +<DT><B><EM>/path/</EM>{item} action</B></DT> +<DD> +add/alter <EM>menuitem</EM> with an associated <EM>action</EM> +</DD> + +<DT><B><EM>/path/</EM>{item}{right-text}</B></DT> +<DD> +add/alter <EM>menuitem</EM> with <B>right-text</B> +as the right-justified text and as the associated <EM>action</EM> +</DD> + +<DT><B><EM>/path/</EM>{item}{rtext} action</B></DT> +<DD> +add/alter <EM>menuitem</EM> with an associated <EM>action</EM> +and with <B>rtext</B> as the right-justified text. +</DD> +</DL> + +<DL> +<DT>Special characters in <EM>action</EM> must be backslash-escaped:</DT> +<DD><B>\a \b \E \e \n \r \t \octal</B></DD> +<DT>or in control-character notation:</DT> +<DD><B>^@, ^A .. ^Z .. ^_, ^?</B></DD> +</DL> + +To send a string starting with a <B>NUL</B> (<B>^@</B>) +character to the program, start <EM>action</EM> with a pair of +<B>NUL</B> characters (<B>^@^@</B>), +the first of which will be stripped off and the balance directed to +the program. +Otherwise if <EM>action</EM> begins with <B>NUL</B> +followed by non-<B>NUL</B> characters, the leading +<B>NUL</B> is stripped off and the balance is sent back to rxvt. +<P> +As a convenience for the many Emacs-type editors, <EM>action</EM> +may start with <B>M-</B> (eg, <B>M-$</B> is equivalent to <B>\E$</B>) +and a <B>CR</B> will be appended if missed from <B>M-x</B> commands. + +As a convenience for issuing XTerm <B>ESC]</B> sequences from a menubar +(or quick arrow), a <B>BEL</B> (<B>^G</B>) will be appended if needed. + +<DL> +<DT>For example,</DT> +<DD><B>M-xapropos</B></DD> +<DT>is equivalent to</DT> +<DD><B>\Exapropos\r</B></DD> +<DT>and</DT> +<DD><B>\E]10;mona;100</B> +<DT>is equivalent to</DT> +<DD><B>\E]10;mona;100\a</B></DD> +</DL> + +<P> +The option <B>{<EM>right-rtext</EM>}</B> will be right-justified. +In the absence of a specified action, this text will be used as the +<EM>action</EM> as well. +<DL> +<DT>For example,</DT> +<DD><B>/File/{Open}{^X^F}</B></DD> +<DT>is equivalent to</DT> +<DD><B>/File/{Open){^X^F} ^X^F</B></DD> +</DL> + +The left label <EM>is</EM> necessary, since it's used for matching, +but implicitly hiding the left label (by using same name for both left +and right labels), or explicitly hiding the left label (by preceding +it with a dot), makes it possible to have right-justified text only. +<DL> +<DT>For example,</DT> +<DD><B>/File/{Open}{Open} Open-File-Action</B></DD> +<DT>or hiding it</DT> +<DD><B>/File/{.anylabel}{Open} Open-File-Action</B></DD> +</DL> + +<H3><A HREF="#menuBar" NAME="menuBarRemove">Removing menus</A></H3> + +<DL> +<DT><B> +-/*<BR> +-<EM>/path/</EM>menu<BR> +-<EM>/path/</EM>{item}<BR> +-<EM>/path/</EM>{-} +</B></DT> +<DD> +remove all menus from the menuBar, the same as <B>[clear]</B><BR> +remove menu<BR> +remove item<BR> +remove separator +</DD> +<DT><B>-/path/menu/*</B></DT> +<DD>remove all items, separators and submenus from menu</DD> +</DL> + +<H3><A HREF="#menuBar" NAME="menuBarArrows">Quick Arrows</A></H3> + +The menus also provide a hook for <EM>quick arrows</EM> to provide easier +user access. If nothing has been explicitly set, the default is to +emulate the curror keys. The syntax permits each arrow to be altered +individually or all four at once without re-entering their common +beginning/end text. For example, to explicitly associate cursor +actions with the arrows, any of the following forms could be used: + +<DL > +<DT><B> +<r><EM>Right</EM><BR> +<l><EM>Left</EM><BR> +<u><EM>Up</EM><BR> +<d><EM>Down</EM> +</B></DT> +<DD>Define actions for the respective arrow buttons</DD> +<DT><B> +<b><EM>Begin</EM><BR> +<e><EM>End</EM> +</B></TT></DT> +<DD> +Define common beginning/end parts for <EM>quick arrows</EM> +when used in conjunction with the above +<B><r> <l> <u> <d></B> +constructs +</DD> +</DL> + +<DL> +<DT>For example, define arrows individually,</DT> +<DD><B> +<u>\E[A<BR> +<d>\E[B<BR> +<r>\E[C<BR> +<l>\E[D +</B></DD> +<DT>or all at once</DT> +<DD><B><u>\E[A<d>\E[B<r>\E[C<l>\E[D</B></DD> +<DT>or more compactly (factoring out common parts)</DD> +<DD><B><b>\E[<u>A<d>B<r>C<l>D</B></DD> +</DL> + +<HR> +<H3><A HREF="#menuBar" NAME="menuBarSummary">Command Summary</A></H3> + +A short summary of the most <EM>common</EM> commands: +<DL > +<DT>[menu:name]</DT> +<DD>use an existing named menuBar or start a new one</DD> +<DT>[menu]</DT> +<DD>use the current menuBar</DD> +<DT>[title:string]</DT> +<DD>set menuBar title<DD> +<DT>[done]</DT> +<DD>set menu access to readonly and, if reading from a file, signal EOF</DD> +<DT>[done:name]</DT> +<DD>if reading from a file using [read:file;name] signal EOF</DD> +<DT>[rm:name]<BR>[rm] [rm:]<BR>[rm*] [rm:*]</DT> +<DD>remove named, current, or all menuBar(s)</DD> +<DT>[swap]</DT> +<DD>swap top two menuBars</DD> +<DT>[prev]<BR>[next]</DT> +<DD>access the previous/next menuBar</DD> +<DT>[show]<BR>[hide]</DT> +<DD>map/unmap menuBar</DD> +<DT>[pixmap;file]<BR>[pixmap;file;scaling]</DT> +<DD>set a background pixmap</DD> +<DT> +[read:file]<BR> +[read:file;name]</DT> +<DD>read in a menu from a file</DD> +<DT>[dump]</DT> +<DD>dump out all menuBars to /tmp/rxvt-PID</DD> +<DT>/<DT><DD>access menuBar top level</DD> +<DT>./<BR>../<BR>../../</DT><DD>access current or parent menu level</DD> +<DT>/path/menu</DT><DD>add/access menu</DD> +<DT>/path/{-}</DT><DD>add separator</DD> +<DT>/path/{item}{rtext} action</DT> +<DD>add/alter menu item<BR>({rtext} and/or action, may be omitted)</DD> +<DT>-/*</DT><DD>remove all menus from the menuBar</DD> +<DT>-/path/menu</DT><DD>remove menu items, separators and submenus from menu</DD> +<DT>-/path/menu</DT><DD>remove menu</DD> +<DT>-/path/{item}</DT><DD>remove item</DD> +<DT>-/path/{-}</DT><DD>remove separator</DD> +<DT><b>Begin<r>Right<l>Left<u>Up<d>Down<e>End</DT> +<DD>menu quick arrows</DD> +</DL> + +<HR> +<H2><A HREF="#toc" NAME="XPM">XPM</A></H2> +<P> +For the XPM XTerm escape sequence <B><TT>ESC ] 20; Pt BEL</TT></B> +then value of <B><TT>Pt</TT></B> +can be the name of the background pixmap followed by a sequence of +scaling/positioning commands separated by semi-colons. The +scaling/positioning commands are as follows: +<DL> +<DT>query scale/position</DT> +<DD><B>?</B></DD> +<DT>change scale and position</DT> +<DD><B>WxH+X+Y</B><BR> +<B>WxH+X</B> (== <B>WxH+X+X</B>)<BR> +<B>WxH</B> (same as <B>WxH+50+50</B>)<BR> +<B>W+X+Y</B> (same as <B>WxW+X+Y</B>)<BR> +<B>W+X</B> (same as <B>WxW+X+X</B>)<BR> +<B>W</B> (same as <B>WxW+50+50</B>) +</DD> +<DT>change position (absolute)</DT> +<DD><B>=+X+Y</B><BR> +<B>=+X</B> (same as <B>=+X+Y</B>) +</DD> +<DT>change position (relative)</DT> +<DD><B>+X+Y</B><BR> +<B>+X</B> (same as <B>+X+Y</B>) +</DD> +<DT>rescale (relative)</DT> +<DD> +<B>Wx0</B> -> <B>W *= (W/100)</B><BR> +<B>0xH</B> -> <B>H *= (H/100)</B></DD> +</DL> +<P> + +For example: +<DL> +<DT><B>\E]20;funky\a</B></DT> +<DD>load <B>funky.xpm</B> as a tiled image</DD> +<DT><B>\E]20;mona;100\a</B></DT> +<DD>load <B>mona.xpm</B> with a scaling of 100%</DD> +<DT><B>\E]20;;200;?\a</B></DT> +<DD>rescale the current pixmap to 200% and display the image geometry +in the title</DD> +</DL> +<P> + +<HR> +<H2><A HREF="#toc" NAME="Mouse">Mouse Reporting</A></H2> +<P> + +<DL> +<DT><B><TT>ESC [ M <b> <x> <y></TT></B></DT> +<DD>report mouse position</DD> +</DL> +<P> + <P> +The lower 2 bits of <B><TT><b></TT></B> indicate the button: +<DL> +<DT>Button = <B><TT><b> & 3 - SPACE</TT></B></DT> +<DD> +0 = Button1 pressed<BR> +1 = Button2 pressed<BR> +2 = Button3 pressed<BR> +3 = button released (X11 mouse report)</DD> +</DL> +The upper bits of <B><TT><b></TT></B> indicate the modifiers when +the button was pressed and are added together (X11 mouse report only): +<DL> +<DT>State = <B><TT><b> & 28 - SPACE</TT></B></DT> +<DD> +4 = Shift<BR> +8 = Meta<BR> +16 = Control<BR> +Col = <B><TT><x> - SPACE</TT></B><BR> +Row = <B><TT><y> - SPACE</TT></B> +</DD> +</DL> + +<HR> +<H2><A HREF="#toc" NAME="Graphics">Special Graphics Mode</A></H2> + +Add more documentation here, <EM>if anyone actually cares.</EM> <P> + +<DL> +<DT><B><TT>ESC G Q</TT></B></DT> +<DD>query if graphics are available<BR> +returns: <B><TT>ESC G 0</TT></B> no graphics available<BR> +returns: <B><TT>ESC G 1</TT></B> graphics available (color only)</DD> +</DL> +<DL> +<DT><B><TT>ESC G W <x>;<y>;<w>;<h>:</TT></B></DT> +<DD>create window</DD> +</DL> +<P> + +<DL> +<DT><B><TT>ESC G C <id></TT></B></DT> +<DD>clear window</DD> +</DL> +<P> + +<DL> +<DT><B><TT>ESC G G <id>:</TT></B></DT> +<DD>query window<BR> +returns: <B><TT>ESC G <id> <x> <y> <w> <h> <fw> <fh> <nw> <nh></TT></B> +</DD> +</DL> +<P> + +<DL> +<DT><B><TT> +ESC G L <id><BR> +ESC G P <id><BR> +ESC G F <id> +</TT></B></DT> +<DD> +start point<BR> +start line<BR> +start fill +</DD> +</DL> +<P> + +<DL> +<DT><B><TT>;<x>;<y></TT></B></DT> +<DD>extend point/line/fill</DD> +</DL> + +<P> +<DL> +<DT><B><TT>ESC G T <id>;<x>;<y>;<mode>;<len>:<text></TT></B></DT> +<DD>place text</DD> +</DL> +<P> + +<HR> +<H2><A HREF="#toc" NAME="KeyCodes">Key Codes</A></H2> +<P> + +Note: <B>Shift</B> + <B>F1</B>-<B>F10</B> generates <B>F11</B>-<B>F20</B> +<P> +For the keypad, use <B>Shift</B> to temporarily override +Application-Keypad setting use <B>Num_Lock</B> to toggle +Application-Keypad setting if <B>Num_Lock</B> is off, +<A HREF="#ESC=">escape sequences</A> toggle Application-Keypad setting. +Also note that values of <B>Home</B>, <B>End</B>, <B>Delete</B> +may have been compiled differently on your system. + +<TABLE CELLPADDING=5 WIDTH="100%" > +<TR> +<TD></TD> +<TD><B>Normal<B></TD> +<TD><B>Shift<B></TD> +<TD><B>Control<B></TD> +<TD><B>Ctrl+Shift<B></TD> +</TR> +<TR><TD>Tab </TD><TD>^I </TD><TD>ESC [ Z</TD><TD>^I </TD><TD>ESC [ Z</TD></TR> +<TR><TD>BackSpace</TD><TD>^H </TD><TD>^? </TD><TD>^?</TD><TD>^?</TD></TR> +<TR><TD>Find </TD><TD>ESC [ 1 ~</TD><TD>ESC [ 1 $ </TD><TD>ESC [ 1 ^</TD><TD>ESC [ 1 @</TD></TR> +<TR><TD>Insert </TD><TD>ESC [ 2 ~</TD><TD><I>paste</I></TD><TD>ESC [ 2 ^</TD><TD>ESC [ 2 @</TD></TR> +<TR><TD>Execute </TD><TD>ESC [ 3 ~</TD><TD>ESC [ 3 $ </TD><TD>ESC [ 3 ^</TD><TD>ESC [ 3 @</TD></TR> +<TR><TD>Select </TD><TD>ESC [ 4 ~</TD><TD>ESC [ 4 $ </TD><TD>ESC [ 4 ^</TD><TD>ESC [ 4 @</TD></TR> +<TR><TD>Prior </TD><TD>ESC [ 5 ~</TD><TD><I>scroll-up</I></TD><TD>ESC [ 5 ^</TD><TD>ESC [ 5 @</TD></TR> +<TR><TD>Next </TD><TD>ESC [ 6 ~</TD><TD><I>scroll-down</I></TD><TD>ESC [ 6 ^</TD><TD>ESC [ 6 @</TD></TR> +<TR><TD>Home </TD><TD>ESC [ 7 ~</TD><TD>ESC [ 7 $ </TD><TD>ESC [ 7 ^</TD><TD>ESC [ 7 @</TD></TR> +<TR><TD>End </TD><TD>ESC [ 8 ~</TD><TD>ESC [ 8 $ </TD><TD>ESC [ 8 ^</TD><TD>ESC [ 8 @</TD></TR> +<TR><TD>Delete </TD><TD>ESC [ 3 ~</TD><TD>ESC [ 3 $ </TD><TD>ESC [ 3 ^</TD><TD>ESC [ 3 @</TD></TR> + +<TR><TD>F1 </TD><TD>ESC [ 11 ~</TD><TD>ESC [ 23 ~</TD><TD>ESC [ 11 ^</TD><TD>ESC [ 23 ^</TD></TR> +<TR><TD>F2 </TD><TD>ESC [ 12 ~</TD><TD>ESC [ 24 ~</TD><TD>ESC [ 12 ^</TD><TD>ESC [ 24 ^</TD></TR> +<TR><TD>F3 </TD><TD>ESC [ 13 ~</TD><TD>ESC [ 25 ~</TD><TD>ESC [ 13 ^</TD><TD>ESC [ 25 ^</TD></TR> +<TR><TD>F4 </TD><TD>ESC [ 14 ~</TD><TD>ESC [ 26 ~</TD><TD>ESC [ 14 ^</TD><TD>ESC [ 26 ^</TD></TR> +<TR><TD>F5 </TD><TD>ESC [ 15 ~</TD><TD>ESC [ 28 ~</TD><TD>ESC [ 15 ^</TD><TD>ESC [ 28 ^</TD></TR> +<TR><TD>F6 </TD><TD>ESC [ 17 ~</TD><TD>ESC [ 29 ~</TD><TD>ESC [ 17 ^</TD><TD>ESC [ 29 ^</TD></TR> +<TR><TD>F7 </TD><TD>ESC [ 18 ~</TD><TD>ESC [ 31 ~</TD><TD>ESC [ 18 ^</TD><TD>ESC [ 31 ^</TD></TR> +<TR><TD>F8 </TD><TD>ESC [ 19 ~</TD><TD>ESC [ 32 ~</TD><TD>ESC [ 19 ^</TD><TD>ESC [ 32 ^</TD></TR> +<TR><TD>F9 </TD><TD>ESC [ 20 ~</TD><TD>ESC [ 33 ~</TD><TD>ESC [ 20 ^</TD><TD>ESC [ 33 ^</TD></TR> +<TR><TD>F10</TD><TD>ESC [ 21 ~</TD><TD>ESC [ 34 ~</TD><TD>ESC [ 21 ^</TD><TD>ESC [ 34 ^</TD></TR> +<TR><TD>F11</TD><TD>ESC [ 23 ~</TD><TD>ESC [ 23 $</TD><TD>ESC [ 23 ^</TD><TD>ESC [ 23 @</TD></TR> +<TR><TD>F12</TD><TD>ESC [ 24 ~</TD><TD>ESC [ 24 $</TD><TD>ESC [ 24 ^</TD><TD>ESC [ 24 @</TD></TR> +<TR><TD>F13</TD><TD>ESC [ 25 ~</TD><TD>ESC [ 25 $</TD><TD>ESC [ 25 ^</TD><TD>ESC [ 25 @</TD></TR> +<TR><TD>F14</TD><TD>ESC [ 26 ~</TD><TD>ESC [ 26 $</TD><TD>ESC [ 26 ^</TD><TD>ESC [ 26 @</TD></TR> +<TR><TD>F15 (Help)</TD><TD>ESC [ 28 ~</TD><TD>ESC [ 28 $</TD><TD>ESC [ 28 ^</TD><TD>ESC [ 28 @</TD></TR> +<TR><TD>F16 (Menu)</TD><TD>ESC [ 29 ~</TD><TD>ESC [ 29 $</TD><TD>ESC [ 29 ^</TD><TD>ESC [ 29 @</TD></TR> +<TR><TD>F17</TD><TD>ESC [ 31 ~</TD><TD>ESC [ 31 $</TD><TD>ESC [ 31 ^</TD><TD>ESC [ 31 @</TD></TR> +<TR><TD>F18</TD><TD>ESC [ 32 ~</TD><TD>ESC [ 32 $</TD><TD>ESC [ 32 ^</TD><TD>ESC [ 32 @</TD></TR> +<TR><TD>F19</TD><TD>ESC [ 33 ~</TD><TD>ESC [ 33 $</TD><TD>ESC [ 33 ^</TD><TD>ESC [ 33 @</TD></TR> +<TR><TD>F20</TD><TD>ESC [ 34 ~</TD><TD>ESC [ 34 $</TD><TD>ESC [ 34 ^</TD><TD>ESC [ 34 @</TD></TR> +<TR> +<TD></TD><TD></TD><TD></TD><TD></TD> +<TD><B>Application</B></TD> +</TR> +<TR><TD>Up </TD><TD>ESC [ A</TD><TD>ESC [ a</TD><TD>ESC O a</TD><TD>ESC O A</TD></TR> +<TR><TD>Down </TD><TD>ESC [ B</TD><TD>ESC [ b</TD><TD>ESC O b</TD><TD>ESC O B</TD></TR> +<TR><TD>Right</TD><TD>ESC [ C</TD><TD>ESC [ c</TD><TD>ESC O c</TD><TD>ESC O C</TD></TR> +<TR><TD>Left </TD><TD>ESC [ D</TD><TD>ESC [ d</TD><TD>ESC O d</TD><TD>ESC O D</TD></TR> +<TR><TD>KP_Enter</TD><TD>^M</TD><TD></TD><TD></TD><TD>ESC O M</TD></TR> +<TR><TD>KP_F1</TD><TD>ESC O P</TD><TD></TD><TD></TD><TD>ESC O P</TD></TR> +<TR><TD>KP_F2</TD><TD>ESC O Q</TD><TD></TD><TD></TD><TD>ESC O Q</TD></TR> +<TR><TD>KP_F3</TD><TD>ESC O R</TD><TD></TD><TD></TD><TD>ESC O R</TD></TR> +<TR><TD>KP_F4</TD><TD>ESC O S</TD><TD></TD><TD></TD><TD>ESC O S</TD></TR> +<TR><TD>XK_KP_Multiply </TD><TD>*</TD><TD></TD><TD></TD><TD>ESC O j</TD></TR> +<TR><TD>XK_KP_Add </TD><TD>+</TD><TD></TD><TD></TD><TD>ESC O k</TD></TR> +<TR><TD>XK_KP_Separator</TD><TD>,</TD><TD></TD><TD></TD><TD>ESC O l</TD></TR> +<TR><TD>XK_KP_Subtract </TD><TD>-</TD><TD></TD><TD></TD><TD>ESC O m</TD></TR> +<TR><TD>XK_KP_Decimal </TD><TD>.</TD><TD></TD><TD></TD><TD>ESC O n</TD></TR> +<TR><TD>XK_KP_Divide </TD><TD>/</TD><TD></TD><TD></TD><TD>ESC O o</TD></TR> +<TR><TD>XK_KP_0 </TD><TD>0</TD><TD></TD><TD></TD><TD>ESC O p</TD></TR> +<TR><TD>XK_KP_1 </TD><TD>1</TD><TD></TD><TD></TD><TD>ESC O q</TD></TR> +<TR><TD>XK_KP_2 </TD><TD>2</TD><TD></TD><TD></TD><TD>ESC O r</TD></TR> +<TR><TD>XK_KP_3 </TD><TD>3</TD><TD></TD><TD></TD><TD>ESC O s</TD></TR> +<TR><TD>XK_KP_4 </TD><TD>4</TD><TD></TD><TD></TD><TD>ESC O t</TD></TR> +<TR><TD>XK_KP_5 </TD><TD>5</TD><TD></TD><TD></TD><TD>ESC O u</TD></TR> +<TR><TD>XK_KP_6 </TD><TD>6</TD><TD></TD><TD></TD><TD>ESC O v</TD></TR> +<TR><TD>XK_KP_7 </TD><TD>7</TD><TD></TD><TD></TD><TD>ESC O w</TD></TR> +<TR><TD>XK_KP_8 </TD><TD>8</TD><TD></TD><TD></TD><TD>ESC O x</TD></TR> +<TR><TD>XK_KP_9 </TD><TD>9</TD><TD></TD><TD></TD><TD>ESC O y</TD></TR> +</TABLE> + +<P><HR><ADDRESS> +Mark Olesen<BR> +Fri Feb 14 14:16:00 1997 +</ADDRESS> +</BODY> +</HTML> diff --git a/konsole/doc/More/swedish_vt102_codes.txt b/konsole/doc/More/swedish_vt102_codes.txt new file mode 100644 index 000000000..7fca08c71 --- /dev/null +++ b/konsole/doc/More/swedish_vt102_codes.txt @@ -0,0 +1,413 @@ +Article 3073 of comp.terminals: +Path: cs.utk.edu!stc06.CTD.ORNL.GOV!fnnews.fnal.gov!uwm.edu!news.alpha.net!news.mathworks.com!europa.eng.gtefsd.com!howland.reston.ans.net!EU.net!uunet!sunic!trane.uninett.no!due.uninett.no!usenet +From: [email protected] (Lars Johanson) +Newsgroups: comp.terminals +Subject: vt102 escape codes +Date: 24 Oct 1994 16:29:21 GMT +Organization: Haukeland Sykehus +Lines: 399 +Message-ID: <[email protected]> +NNTP-Posting-Host: lpjo.onh.haukeland.no +X-Newsreader: WinVN 0.92.6+ + + +Hi. + +I have seen some people asking for escape sequencies for the +vt100-terminal. I asked the DIGITAL company in Sweden, and +received this (hopefully not copyrighted). It is a vt102 terminal, +but there seems to be little difference. I've tried to mark +functions special to vt102 with: // Not in vt100 + +Here you are: + + + +Escape codes for vt102 terminal. + +All numbers below are octal.<n> means numeric value,<c> means character string. +If <n> is missing it is 0 or in cursor movements 1. + +Reset and set modes + Set Modes + Esc [ <c> ; ... ; <c> h + 033 133 073 073 150 + Reset Modes + Esc [ <c> ; ... ; <c> l + 033 133 073 073 154 + + Where <c> is + '2'= Lock keyboard (set); Unlock keyboard (reset) + '4'= Insert mode (set); Replace mode (reset) + '12'= Echo on (set); Echo off (reset) + '20'= Return = CR+LF (set); Return = CR (reset) + '?1'= Cursorkeys application (set); Cursorkeys normal (reset) + '?2'= Ansi (set); VT52 (reset) + '?3'= 132 char/row (set); 80 char/row (reset) + '?4'= Jump scroll (set); Smooth scroll (reset) + '?5'= Reverse screen (set); Normal screen (reset) + '?6'= Sets relative coordinates (set); Sets absolute coordinates (reset) + '?7'= Auto wrap (set); Auto wrap off (reset) + '?8'= Auto repeat on (set); Auto repeat off (reset) + '?18'= Send FF to printer after print screen (set); No char after PS (reset) + '?19'= Print screen prints full screen (set); PS prints scroll region (reset) + '?25'= Cursor on (set); Cursor off (reset) + +Set scrolling region (n1=upper,n2=lower) + Esc [ <n1> ; <n2> r + 033 133 073 162 + + +Cursor movement (<n>=how many chars or lines), cursor stop at margin. + Up + Esc [ <n> A + 033 133 101 + Down + Esc [ <n> B + 033 133 102 + Right + Esc [ <n> C + 033 133 103 + Left + Esc [ n D + 033 133 104 + Cursor position (<n1>=y,<n2>=x, from top of screen or scroll region) + Esc [ <n1> ; <n2> H + 033 133 073 110 + Or Esc [ <n1> ; <n2> f + 033 133 073 146 + Index (cursor down with scroll up when at margin) + Esc D + 033 104 + Reverse index (cursor up with scroll down when at margin) + Esc M + 033 115 + Next line (CR+Index) + Esc E + 033 105 + Save cursor and attribute + Esc 7 + 033 067 + Restore cursor and attribute + Esc 8 + 033 070 + + +Keybad character selection + Application keypad mode + Esc = + 033 075 + Numeric keypad mode + Esc > + 033 076 + + Keypadkeys codes generated + Numeric Application VT52 Application + 0 0 (060) Esc O p (033 117 160) Esc ? p (033 077 160) + 1 1 (061) Esc O q (033 117 161) Esc ? q (033 077 161) + 2 2 (062) Esc O r (033 117 162) Esc ? r (033 077 162) + 3 3 (063) Esc O s (033 117 163) Esc ? s (033 077 163) + 4 4 (064) Esc O t (033 117 164) Esc ? t (033 077 164) + 5 5 (065) Esc O u (033 117 165) Esc ? u (033 077 165) + 6 6 (066) Esc O v (033 117 166) Esc ? v (033 077 166) + 7 7 (067) Esc O w (033 117 167) Esc ? w (033 077 167) + 8 8 (070) Esc O x (033 117 170) Esc ? x (033 077 170) + 9 9 (071) Esc O y (033 117 171) Esc ? y (033 077 171) + - (minus) - (055) Esc O m (033 117 155) Esc ? m (033 077 155) + , (comma) , (054) Esc O l (033 117 154) Esc ? l (033 077 154) + . (period) . (056) Esc O n (033 117 156) Esc ? n (033 077 156) + Enter CR (015)* Esc O M (033 117 115) Esc ? M (033 077 115) + PF1 Esc O P Esc O P (033 117 120) Esc P (033 120) + PF2 Esc O Q Esc O Q (033 117 121) Esc Q (033 121) + PF3 Esc O R Esc O R (033 117 122) Esc R (033 122) + PF4 Esc O S Esc O S (033 117 123) Esc S (033 123) + * Or CR+LF (015 012) + + Cursorkeys codes generated (changed by set and reset modes '?1') + normal application + Up Esc [ A Esc O A + 033 133 101 033 117 101 + Down Esc [ B Esc O B + 033 133 102 033 117 102 + Right Esc [ C Esc O C + 033 133 103 033 117 103 + Left Esc [ D Esc O D + 033 133 104 033 117 104 + + +Select character set + UK as G0 + Esc ( A + 033 050 101 + US as G0 + Esc ( B + 033 050 102 + Special characters and line drawing character set as G0 + Esc ( 0 + 033 050 060 + Alternate ROM as G0 // Not in vt100 + Esc ( 1 + 033 050 061 + Alternate ROM special characters character set as G0 // Not in vt100 + Esc ( 2 + 033 050 062 + + UK as G1 + Esc ) A + 033 051 101 + US as G1 + Esc ) B + 033 051 102 + Special characters and line drawing character set as G1 + Esc ) 0 + 033 051 060 + Alternate ROM as G1 // Not in vt100 + Esc ) 1 + 033 051 061 + Alternate ROM special characters character set as G1 // Not in vt100 + Esc ) 2 + 033 051 062 + + Selects G2 for one character // Not in vt100 + Esc N + 033 115 + Selects G3 for one character // Not in vt100 + Esc O + 033 117 + + +Set graphic rendition + Esc [ <n> ; <n> m + 033 133 073 156 + + Where <n> is + 0 = Turn off attributes + 1 = Bold (Full) + 2 = Half // Not in vt100 + 4 = Underline + 5 = Blink + 7 = Reverse + 21 = Normal intensity + 22 = Normal intensity + 24 = Cancel underlined + 25 = Cancel blinking + 27 = Cancel reverse + +Tab stops + Set horizontal tab + Esc H + 033 110 + Clear horizontal tab + Esc [ g + 033 133 147 + Or Esc [ 0 g + 033 133 060 147 + Clear all horizontal tabs + Esc [ 3 g + 033 133 063 147 + + +Line attributes + Double-height + Top half + Esc # 3 + 033 043 063 + Bottom half + Esc # 4 + 033 043 064 + Single-width, single-height + Esc # 5 + 033 043 065 + Double-width + Esc # 6 + 033 043 066 + + +Erasing + Erase in line + End of line (including cursor position) + Esc [ K + 033 133 113 + Or Esc [ 0 K + 033 133 060 113 + Beginning of line (including cursor position) + Esc [ 1 K + 033 133 061 113 + Complete line + Esc [ 2 K + 033 133 062 113 + Erase in display + End of screen (including cursor position) + Esc [ J + 033 133 112 + Or Esc [ 0 J + 033 133 060 112 + Beginning of screen (including cursor position) + Esc [ 1 J + 033 133 061 112 + Complete display + Esc [ 2 J + 033 133 062 112 + + +Computer editing + Delete characters (<n> characters right from cursor + Esc [ <n> P + 033 133 120 + Insert line (<n> lines) + Esc [ <n> L + 033 133 114 + Delete line (<n> lines) + Esc [ <n> M + 033 133 115 + + +Printing + Esc [ <c> i + 033 133 151 + + Where <c> is + ''= Same as '0' + '0'= Prints screen (full or scroll region) + '4'= Printer controller off + '5'= Printer controller on (Print all received chars to printer) + '?1'= Print cursor line + '?4'= Auto print off + '?5'= Auto print on (Prints line to printer when you exit from it) + + +Reports + Device status + Esc [ <c> n + 033 133 156 + + Where <c> is + '0'=Response Ready, no malfunctions detected + '3'=Malfunction, error in self-test. + '5'=Status report request + '6'=Request cursor position. + '?10'=Response to printer status request, All ok. + '?11'=Response to printer status request, Printer is not ready. + '?13'=Response to printer status request, No printer. + '?15'=Status report request from printer + + Cursor position raport (Response to request cursor position) + Esc [ <n1> ; <n2> R + 033 133 073 122 + Request terminal to identify itself (esc Z may not be supported in future) + Esc [ c + 033 133 143 + Esc [ 0 c + 033 133 060 143 + Esc Z + 033 132 + Response to terminal identify (VT102) + Esc [ ? 6 c + 033 133 077 066 143 + + +Reset to initial state + Esc c + 033 143 + + +Tests + Invoke confidence test + Esc [ 2 ; <n> y + 033 133 062 073 171 + + Where <n> is + '1'= Power-up test + '2'= Data loopback test + '4'= EIA loopback test + '9'= Power-up tests (continuously) + '10'= Data loopback tests (continuously) + '12'= EIA loopback tests (continuously) + '16'= Printer loopback test + '24'= Printer loopback tests (continuously) + + +Screen adjustments + Esc # 8 + 033 043 070 + + +Keyboard indicator + Led L1 off + Esc [ 0 q + 033 133 060 181 + Led L1 on + Esc [ 1 q + 033 133 061 181 + + + +VT52 sequences + Ansi mode + Esc < + 033 074 + Cursor positioning + Up Esc A + 033 101 + Down Esc B + 033 102 + Right Esc C + 033 103 + Left Esc D + 033 104 + Home Esc H + 033 110 + Direct cursor address + Esc Y <line+040> <columns+040> + 033 131 + Reverse linefeed Esc I + 033 111 + Erase to end of line Esc K + 033 113 + Erase to end of screen Esc J + 033 112 + Auto print on Esc ^ + 033 136 + Auto print off Esc + 033 137 + Printer controller on Esc W + 033 127 + Printer controller off Esc X + 033 130 + Print cursor line Esc V + 033 135 + Print screen Esc ] + 033 135 + Indentify request Esc Z + 033 132 + Response to indetify Esc / Z + request (VT52) 033 057 132 + Special charset (same Esc F + as line draw in VT102 033 106 + Normal char set Esc G + 033 107 + + +Control characters + 000 = Null (fill character) + 003 = ETX (Can be selected half-duplex turnaround char) + 004 = EOT (Can be turnaround or disconnect char, if turn, then DLE-EOT=disc.) + 005 = ENQ (Transmits answerback message) + 007 = BEL (Generates bell tone) + 010 = BS (Moves cursor left) + 011 = HT (Moves cursor to next tab) + 012 = LF (Linefeed or New line operation) + 013 = VT (Processed as LF) + 014 = FF (Processed as LF, can be selected turnaround char) + 015 = CR (Moves cursor to left margin, can be turnaround char) + 016 = SO (Selects G1 charset) + 017 = SI (Selects G0 charset) + 021 = DC1 (XON, causes terminal to continue transmit) + 023 = DC3 (XOFF, causes terminal to stop transmitting) + 030 = CAN (Cancels escape sequence) + 032 = SUB (Processed as CAN) + 033 = ESC (Processed as sequence indicator) + + + + diff --git a/konsole/doc/More/villanova-vt100-esc-codes.txt b/konsole/doc/More/villanova-vt100-esc-codes.txt new file mode 100644 index 000000000..8142978ed --- /dev/null +++ b/konsole/doc/More/villanova-vt100-esc-codes.txt @@ -0,0 +1,389 @@ +Date: Sat, 27 Oct 90 15:59:27 -0400 +From: [email protected] (Stephen Tihor) +Message-Id: <[email protected]> +To: [email protected] +Subject: Re: VT100/52/ANSI et.al. Escape codes +Newsgroups: comp.os.vms +In-Reply-To: <[email protected]> 23 Oct 90 16:00 EDT + +/* acf4:comp.os.vms */ +/* [email protected] (Jim McRee [Merlin]) / 4:00 pm Oct 23, 1990 */ + + Villanova University + Campus Computing - Terminal Emulation + Includes VT100 and VT52 Terminal and Control Codes + + This file contains control and terminal codes for the VT100 terminals, +ANSI terminals, and VT52 terminals. Many of the codes were derived from PC/ +Intercomm, from Mark of the Unicorn Software. I have researched some of them +and added some of my own. + + Thank you, + Jim McRee ([email protected]) + +(* ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** *) + + CONTROL SEQUENCE SUMMARY + + * For additional information on the DEC VT100 and VT102 terminals, please + consult the VT100 USER GUIDE and VT102 USER GUIDE, published by Digital + Equipment Corporation as part numbers EK-VT100-UG and EK-VT102-UG. + + +CONTROL CHARACTERS: +------------------ + +Character +Name Decimal Action Taken +--------------------------------------------------------------- +NUL 0 Fill character; ignored on input. +ENQ 5 Transmit answerback message. +BEL 7 Ring the bell. +BS 8 Move cursor left. +HT 9 Move cursor to next tab stop. +LF 10 Line feed; causes print if in autoprint. +VT 11 Same as LF. +FF 12 Same as LF. +CR 13 Move cursor to left margin or newline. +SO 14 Invoke G1 character set. +SI 15 Invoke G0 character set. +XON 17 Resume transmission. +XOFF 19 Halt transmission. +CAN 24 Cancel escape sequence and display checkerboard. +SUB 26 Same as CAN. +ESC 27 Introduce a control sequence. +DEL 127 Fill character; ignored on input. + + * All characters less than 32 decimal which are not listed above are ignored. + +(* ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** *) + +ANSI MODE SUMMARY: +----------------- + + *In ANSI sequences, parameters are given as a string of ASCII digits + ('0' - '9') seperated by semicolons. Pn refers to a number whose value + used directly. Ps refers to a number used as a selector. + +CURSOR MOVEMENT: +--------------- + + Cursor Up: Esc [ Pn A + Cursor Down: Esc [ Pn B + Cursor Left: Esc [ Pn C + Cursor Right: Esc [ Pn D + + Direct Addressing : Esc [ Pn(row);Pn(col);H or + Esc [ Pn(row);Pn(col);f + + ie. (Pascal) + Writeln (Esc,'[',Row:1,';',col:1,';','H'); + + Index: Esc D + New Line: Esc E + Reverse Line: Esc M + + Save cursor & Attributes: Esc 7 + Restore cursor & attributes: Esc 8 + +ERASING: +------- + + Cursor to end of line Esc [ K + Beginning of line to cursor Esc [ 1 K + Entire line Esc [ 2 K + Cursor to end of screen Esc [ J + Beginning of screen to cursor Esc [ 1 J + Entire screen Esc [ 2 J + + (Some programs expect Esc [ J to always clear the entire + screen, but this does not conform to the standard.) + +MODES: +----- + + Set with Esc [ Ps h + Reset with Esc [ Ps l + +Mode name Ps Set Reset +------------------------------------------------------------------- +Keyboard action 2 Locked Unlocked +Insertion 4 Insert Overwrite +Send - Receive 12 Full Echo +Line feed/New line 20 New line Line feed +Cursor key ?1 Application Cursor +ANSI/VT52 ?2 ANSI VT52 +Column ?3 132 80 +Scrolling ?4 Smooth Jump +Screen ?5 Reverse Normal +Origin ?6 Relative Absolute +Wraparound ?7 Wrap Truncate +Auto key repeat ?8 Repeating No repeat +Print form feed ?18 Yes No +Print extent ?19 Full screen Scrolling region + +Keypad application Esc = +Keypad numeric mode Esc > + +EDITING: +------- + + Insert line Esc [ Pn L + Delete line Esc [ Pn M + Delete character Esc [ Pn P + Scrolling region Esc [ Pn(top);Pn(bot) r + +PRINTING: +-------- + + Print screen or region Esc [ i + Print cursor line Esc [ ? 1 i + Enter auto print Esc [ ? 5 i + Exit auto print Esc [ ? 4 i + Enter print controller Esc [ 5 i + Exit print controller Esc [ 4 i + +LINE SIZE: +--------- + + The following is a list of the available styles of printing on the +screen. "Yes" in any column means that the option is supported by the escape +code on that line. "No" means that the option is not supported by the escape +code on that line; however, it may, and almost certainly is, supported by +another escape sequence. + +Double-height and double-width double the size of the characters in their +respective ways (ie. Double-height is twice as tall as usual). _Line +designates underlining. Blink is for blinking characters. Side is the +orientation of the character. Normal means that there is no orientation. + +Top and bottom refers to the position of the character in order to make a +complete character. The top and bottom sequences will be important if you use +the double height option. You will need to print the line twice to get a +complete line. The first printing will print the top part of the characters +and the second printing will print the bottom part. + +Inverse refers to the condition of the character. "No" indicates that the +character will be printed in the color it normally is printed in with its usual +backround. "Yes" means that the character will be printed in the backround +color and the character's backround will be the color it is usually printed in. +Shade refers to the brightness of the character. Normal is the standard +brightness of the character. Bright is bold type. Dark is a darker brightness +than usual. + +The escape code is the command you would type before the text you want to print +to get the indicated effects. This section was greatly expanded in version 1.1 +of this file. + +Double Double +Height Width _Line Blink Side Inverse Shade Escape Code +----------------------------------------------------------------------- + No No No No Normal No Normal <ESC>[0m + Yes Yes No No Top No Bright <ESC>#3<ESC>[1m + Yes Yes No No Bottom No Bright <ESC>#4<ESC>[1m + Yes Yes No No Top No Dark <ESC>#3<ESC>[2m + Yes Yes No No Bottom No Dark <ESC>#4<ESC>[2m + Yes Yes No No Top No Normal <ESC>#3<ESC>[3m + Yes Yes No No Bottom No Normal <ESC>#4<ESC>[3m + Yes Yes Yes No Top No Normal <ESC>#3<ESC>[4m + Yes Yes Yes No Bottom No Normal <ESC>#4<ESC>[4m + Yes Yes No Yes Top No Normal <ESC>#3<ESC>[5m + Yes Yes No Yes Bottom No Normal <ESC>#4<ESC>[5m + Yes Yes No No Top Yes Normal <ESC>#3<ESC>[7m + Yes Yes No No Bottom Yes Normal <ESC>#3<ESC>[7m + No Yes No No Normal No Normal <ESC>#6<ESC>[0m + No Yes No No Normal No Bright <ESC>#6<ESC>[1m + No Yes No No Normal No Dark <ESC>#6<ESC>[2m + No Yes Yes No Normal No Normal <ESC>#6<ESC>[4m + No Yes No Yes Normal No Normal <ESC>#6<ESC>[5m + No Yes No No Normal Yes Normal <ESC>#6<ESC>[7m + No No No No Normal No Bright <ESC>#7<ESC>[1m + No No No No Normal No Dark <ESC>#7<ESC>[2m + No No Yes No Normal No Normal <ESC>#7<ESC>[4m + No No No Yes Normal No Normal <ESC>#7<ESC>[5m + No No No No Normal Yes Normal <ESC>#7<ESC>[7m + +* Some codes have been eliminated due to a repetition of effects. To the best + of my knowledge, these codes are complete and correct. If you should find + any errors, or you find some new sequences/effects, please inform me. + +* <ESC>#3 and <ESC>#4 behave in the same way as <ESC>#3[3m and <ESC>#4[4m. + +CHARACTER SETS: +-------------- + +Character set G0 G1 +----------------------------------------------------- +United Kingdom (UK) Esc ( A Esc ) A +United States (US) Esc ( B Esc ) B +Graphics Esc ( 0 Esc ) 0 +Default ROM Esc ( 1 Esc ) 1 +Alternate ROM Esc ( 2 Esc ) 2 + +Switch to G0/G1 Esc O Esc N + +TAB STOPS: +--------- + + Set tab at current column Esc H + Clear tab at current column Esc [ g + Clear all tabs Esc [ 3 g + +MISCELLANEOUS: +------------- + + Hard Reset Esc c + + Character attributes Esc [ Ps m + or Esc [ Ps ; Ps ; Ps m + 0 - All attributes off + 1 - Bold on + 4 - Underscore on + 5 - Blink on + 7 - Reverse on + + Programmable LEDs Esc [ Ps q + 0 - All LEDs off + (1 - 4) - Turn respective LED on + + Fill screen with "E"s (test) Esc # 8 + +(* ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** *) + +NON-VT100 CONTROL SEQUENCES: +---------------------------- + + *Some VT100 terminal programs also understand a few other escape + sequences than the standard VT100. I cannot guarantee that any of + these nonstandard codes will work with any particular terminal, but + they may be useful if they do work. + + Transmit a file Esc { T filenameCR ---> CR = Carriage Return + Receive a file Esc { R filenameCR ---> CR = Carriage Return + Append to a file Esc { A filenameCR ---> CR = Carriage Return + Save collected text Esc { S + Save collected text Esc S + + * These sequences will probably be most useful in developing a micro + version of a VT100 emulator or in adapting an existing one. + +(* ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** *) + +VT52 MODE SUMMARY: +----------------- + + Cursor up Esc A + Cursor down Esc B + Cursor right Esc C + Cursor left Esc D + Graphics character set Esc F + ASCII character set Esc G + Home cursor Esc H + Reverse line feed Esc I + Erase to end of screen Esc J + Erase to end of line Esc K + Print cursor line Esc V + Enter print controller Esc W + Exit print controller Esc X + Cursor address Esc Y row col + Identify Esc Z + Print screen Esc ] + Enter auto print Esc ^ + Exit auto print Esc - + Alternate keypad Esc = + Numeric keypad Esc > + Enter ANSI mode Esc < + + * Row and column numbers are single characters with a bias of 31. + E.g., "$" means row/column 5.) + +KEYPAD AND FUNCTION KEY SUMMARY: +------------------------------- + + CURSOR CONTROL KEYS: + ------------------- + Vt52 ANSI and Cursor Key modes + Arrow Key Mode Reset Set + --------------------------------------------------- + Up Esc A Esc [ A Esc O A + Down Esc B Esc [ B Esc O B + Right Esc C Esc [ C Esc O C + Left Esc D Esc [ D Esc O D + + AUXILLIARY KEYPAD: + ----------------- + + VT52 Mode ANSI Mode + Key Numeric Application Numeric Application + ---------------------------------------------------------------------- + 0 0 Esc ? p 0 Esc O p + 1 1 Esc ? q 1 Esc O q + 2 2 Esc ? r 2 Esc O r + 3 3 Esc ? s 3 Esc O s + 4 4 Esc ? t 4 Esc O t + 5 5 Esc ? u 5 Esc O u + 6 6 Esc ? v 6 Esc O v + 7 7 Esc ? w 7 Esc O w + 8 8 Esc ? x 8 Esc O x + 9 9 Esc ? y 9 Esc O y + - - Esc ? m - Esc O m + , , Esc ? l , Esc O l + . . Esc ? n . Esc O n + ENTER ^M Esc ? M ^M Esc O M + PF1 Esc P Esc P Esc O P Esc O P + PF2 Esc Q Esc Q Esc O Q Esc O Q + PF3 Esc R Esc R Esc O R Esc O R + PF4 Esc S Esc S Esc O S Esc O S + +VT100 CURRENT STATES: +-------------------- + + Esc [ c DA:Device Attributes + + or + + Esc Z DECID:Identify Terminal (ANSI mode) + + * For PC/Intercomm and some other emulators, + irrespective of the parameter(s) present, the + response is always + + Esc [ ? 6 c + + (i.e., a VT102) Other DEC terminals will respond + according to their configuration and mode. + + Esc Z Identify (VT52 mode) + + * The sequence Esc / Z is always returned. + + Esc [ <sol> x DECREQTPARM: Request Terminal Parameters + + * <sol> values other than 1 are ignored. Upon + receipt of a <sol> value of 1, the following + response is sent: + + Esc[3;<par>;<nbits>;<xspeed>;<rspeed>;1;0x + + * Where <par>, <nbits>, <xspeed>, and <rspeed> + are as for VT100s with the following + exceptions: + + <nbits> Values of 5 and 6 bits per + character are sent as 7 bits. + + <xspeed>,<rspeed> + These two numbers will always + be the same. 9600 baud is + sent for 7200 baud. + + Esc [ Ps n DSR: Device Status Report + + * Parameter values other than 5, 6, are ignored. + If the parameter value is 5, the sequence + Esc [ O n is returned. If the parameter value is + 6, the CPR: Cursor Position Report sequence + Esc [ Pn ; Pn R is returned with the Pn set to + cursor row and column numbers. +/* ---------- */ + diff --git a/konsole/doc/More/vt100_codes_news.txt b/konsole/doc/More/vt100_codes_news.txt new file mode 100644 index 000000000..d136e2224 --- /dev/null +++ b/konsole/doc/More/vt100_codes_news.txt @@ -0,0 +1,970 @@ + vt100_codes_news.txt + =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= + + This information is largely derived from DEC document EK-VT100-UG-003, + the original manual for the VT100. + + Most so-called VT100 implementations (both stand-alone terminals and + PC emulators) actually implement more controls than are given here. + The minimal standard is really the slightly more advanced VT102 terminal. + + ...RSS + + =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= + +Path: cs.utk.edu!gatech!usenet.ins.cwru.edu!agate!doc.ic.ac.uk!pipex!sunic + !trane.uninett.no!news.eunet.no!nuug!news.eunet.fi!funic!nntp.hut.fi + !lk-hp-14.hut.fi!pev +From: [email protected] (Petri Virekoski) +Newsgroups: comp.terminals +Subject: VT100 control info +Date: 11 Sep 1993 12:43:22 GMT +Organization: Helsinki University of Technology +Lines: 878 +Distribution: world +Message-ID: <[email protected]> +NNTP-Posting-Host: lk-hp-14.hut.fi + + +OK. I finally found this on my local machine by doing a locate. +Still haven't found any FTP site bearing this kind of information. +I myself would need a similar file with extensions for VT200/VT220. +Please do not address any complaints to me, since I just copied this file +as I found it. There might be some escape sequences missing from the +end because there was some carbage, but I don't know. Here goes... + + +This file describes information needed for controlling the VT100 terminal from +a remote computer. All of the information was derived from the VT100 user's +manual, Programmer's Information section. Full documentation can be obtain +from DIGITAL'S Accessory and Supplies Group. + + [The notation <ESC> denotes a single ASCII Escape character, 1Bx.] + + + ANSI mode w/cursor ANSI mode w/cursor +Cursor Key VT52 mode key mode reset key mode set +-------------------------------------------------------------------------- + UP <ESC>A <ESC>[A <ESC>OA + DOWN <ESC>B <ESC>[B <ESC>OB + RIGHT <ESC>C <ESC>[C <ESC>OC + LEFT <ESC>D <ESC>[D <ESC>OD + + +******************************* +* Special Graphics Characters * +******************************* + + + If the Special Graphics set is selected, the graphics for ASCII codes +0137 through 0176 will be replaced according to the following table (see the +SCS control sequence). + + +Octal ASCII Special Octal ASCII Special +Code graphic graphic code graphic graphic +------------------------------------------------------------------------------- +0137 _ Blank 0157 o Horiz Line - scan 1 +0140 \ Diamond 0160 p Horiz Line - scan 3 +0141 a Checkerboard 0161 q Horiz Line - scan 5 +0142 b Digraph: HT 0162 r Horiz Line - scan 7 +0143 c Digraph: FF 0163 s Horiz Line - scan 9 +0144 d Digraph: CR 0164 t Left "T" (|-) +0145 e Digraph: LF 0165 u Right "T" (-|) +0146 f Degree Symbol 0166 v Bottom "T" (|_) +0147 g +/- Symbol 0167 w Top "T" (T) +0150 h Digraph: NL 0170 x Vertical Bar (|) +0151 i Digraph: VT 0171 y Less/Equal (<_) +0152 j Lower-right corner 0172 z Grtr/Egual (>_) +0153 k Upper-right corner 0173 { Pi symbol +0154 l Upper-left corner 0174 | Not equal (=/) +0155 m Lower-left corner 0175 } UK pound symbol +0156 n Crossing lines (+) 0176 ~ Centered dot + + +NOTE 1: Codes 0152-0156 and 0164-0170 are used to draw rectangular grids" each +piece of this set is contiguous with other so the lines formed will be +unbroken. + +NOTE 2: Codes 0157-0163 give better vertical resolution than dashes and +underlines when drawing graphs; using these segments, 120 x 132 resolution may +be obtained in 132 column mode with the Advanced Video Option installed. + + + +***************************** +* Terminal Control Commands * +***************************** + +Control Characters +------------------ + + The control characters recognized by the VT100 are listed below. All +other control characters cause no action to be taken. + + Control characters (codes 00 - 037 inclusive) are specifically excluded +from the control sequence syntax, but may be embedded within a control +sequence. Embedded control characters are executed as soon as they are +encountered by the VT100. The processing of the control sequence then +continues with the next character recieved. The exceptions are: if the <ESC> +character occurs, the current control sequence is aborted, and a new one +commences beginning with the <ESC> just recieved. If the character <CAN> +(030) or the character <SUB> (032) occurs, the current control sequence is +aborted. The ability to embed control characters allows the synchronization +characters XON and XOFF to be interpreted properly without affecting the +control sequence. + + + +Control Octal +Character Code Action Taken +------------------------------------------------------------------------------ +<NUL> 0000 Ignored on input; not stored in buffer +<ENQ> 0005 Transmit ANSWERBACK message +<BEL> 0007 Sound bell +<BS> 0010 Move cursor to the left one position, unless it is at + the left margin, in which case no action is taken. +<HT> 0011 Move cursor to the next tab stop, or to the right + margin if no further tabs are set. +<LF> 0012 Causes either a line feed or new line operation (See + new line mode.) +<VT> 0013 Same as <LF>. +<FF> 0014 Same as <LF>. +<CR> 0015 Move the cursor to the left margin of the current line. +<SO> 0016 Invoke the G1 character set, as designated by the SCS + control sequence. +<SI> 0017 Invoke the G0 character set, as selected by the <ESC>( + sequence. +<DC1> 0021 Causes terminal to resume transmission (XON). +<DC3> 0023 Causes terminal to stop transmitting all codes except + XOFF and XON (XOFF). +<CAN> 0030 If sent during a control sequence, the sequence id + immediately terminated and not executed. It also + causes the error character (checkerboard) to be + displayed. +<SUB> 0032 Same as <CAN>. +<ESC> 0033 Introduces a control sequence. +<DEL> 0177 Ignored on input; not stored in buffer. + + + The VT100 is an upward and downward software-compatible terminal; +that is, previous Digital video terminals have Digital's private standards +for control sequences. The American National Standards Institute has since +standardized escape and control sequences in terminals in documents X3.41-1974 +and X3.64-1977. + + The VT100 is compatible with both the previous Digital standard and +ANSI standards. Customers may use existing Digital software designed around +the VT52 or new VT100 software. The VT100 has a "VT52 compatible" mode in +which the VT100 responds to control sequences like a VT52. In this mode, most +of the new VT100 features cannot be used. + + Throughout this document references will be made to "VT52 mode" or +"ANSI mode". These two terms are used to indicate the VT100's software +compatibility. + + +NOTE: The ANSI standards allow the manufacturer flexibility in implementing +each function. This document describes how the VT100 will respond to the +implemented ANSI central function. + +NOTE: ANSI standards may be obtained by writing: + + American National Standards Institute + Sales Department + 1430 Broadway + New York, NY, 10018 + + + +Definitions +----------- + + Control Sequence Introducer (CSI) - An escape sequence that provides + supplementary controls and is itself a prefix affecting the + interpretation of a limited number of contiguous characters. + In the VT100, the CSI is: <ESC>[ + + Parameter: (1) A string of zero or more decimal characters which + represent a single value. Leading zeros are ignored. The + decimal characters have a range of 0 (060) to 9 (071). + (2) The value so represented. + + Numeric Parameter: A parameter that represents a number, designated by + Pn. + + Selective Parameter: A parameter that selects a subfunction from a + specified set of subfunctions, designated by Ps. In general, a + control sequence with more than one selective parameter causes + the same effect as several control sequences, each with one + selective parameter, e.g., CSI Psa; Psb; Psc F is identical to + CSI Psa F CSI Psb F CSI Psc F. + + Parameter String: A string of parameters separated by a semicolon. + + Default: A function-dependent value that is assumed when no explicit + value, or a value of 0, is specified. + + Final character: A character whose bit combination terminates an + escape or control sequence. + + + EXAMPLE: Control sequence to turn off all character attributes, then + turn on underscore and blink attributes (SGR). <ESC>[0;4;5m + + Sequence: + + + Delimiters + / \ + / \ + | | + \ / \ / + <ESC>[ 0 ; 4 ; 5 m + ^^^^^^ ^ ^ ^ ^ + |||||| | | | | + \||||/ \ | / +------Final character + \||/ \ | / + CSI Selective + Parameters + + + The octal representation of this string is: + + 033 0133 060 073 064 073 065 0155 + <ESC> [ 0 ; 4 ; 5 m + + + Alternate sequences which will accomplish the same thing: + + 1) <ESC>[;4;m + + 2) <ESC>[m + <ESC>[4m + <ESC>[5m + + 3) <ESC>[0;04;005m + + +Control Sequences +----------------- + + All of the following control sequences are transmitted from the Host to +VT100 unless otherwise noted. All of the control sequences are a subset of +those defined in ANSI X 3.64 1977 and ANSI X 3.41 1974. + + The following text conforms to these formatting conventions: + + 1) Control characters are designated by angle brackets (e.g. + the Escape character is <ESC>). + + 2) Parameters are indicated by curly braces. + + 3) Parameter types usually are indicated as one of: + + {Pn} A string of digits representing a numerical + value. + + {Ps} A character that selects an item from a list. + + {a-z} Any lowercase sequence of one44 or more + characters in braces represent a value to be + entered (as in {Pn}), and the name in the + braces will be referred to in explanatory text. + + 4) Spaces in the control sequence are present for clarity and + may be omitted. Spaces which are required will be + surrounded by single quotes: ' '. + + 5) All other characters are literals. + + + + + +CPR Cursor Position Report VT100 to Host + + <ESC>[ {Pn} ; {Pn} R Default Value: 1 + + The CPR sequence reports the active position by means of the + parameters. This sequence has two parameter values, the first + specifying the line and the second specifying the column. The default + condition with no parameters present, or parameters of 0, is equivelent + to a cursor at home position. + + The numbering of the lines depends upon the state of the Origin Mode + (DECOM). + + This control sequence is sent in reply to a device status report (DSR) + command sent from the host. + + + +CUB Cursor Backward Host to VT100 & VT100 to Host + + <ESC>[ {Pn} D Default Value: 1 + + The CUB sequence move the cursor to the left. The distance moved is + determined by the parameter. If the parameter missing, zero, or one, + the cursor is moved one position. The cursor cannot be moved past the + left margin. Editor Function. + + +CUD Cursor Down Host to VT100 & VT100 to Host + + <ESC>[ {Pn} B Default value: 1 + + Moves the cursor down a number of lines as specified in the parameter + without changing columns. The cursor cannot be moved past the bottom + margin. Editor Function. + + +CUF Cursor Foreward Host to VT100 & VT100 to Host + + <ESC>[ {Pn} C Default Value: 1 + + The CUF sequence moves the cursor to the right a number of positions + specified in the parameter. The cursor cannot be moved past the right + margin. Editor Function. + + +CUP Cursor Position + + <ESC>[ {Pn} ; {Pn} H Default Value: 1 + + The CUP sequence moves the curor to the position specified by the + parameters. The first parameter specifies the line, and the second + specifies the column. A value of zero for either line or column moves + the cursor to the first line or column in the display. The default + string (<ESC>H) homes the cursor. In the VT100, this command behaves + identically to it's format effector counterpart, HVP. + + The numbering of the lines depends upon the state of the Origin Mode + (DECOM). Editor Function. + + +CUU Cursor Up Host to VT100 & VT100 to Host + + <ESC>[ {Pn} A Default Value: 1 + + Moves the cursor up without changing columns. The cursor is moved up a + number of lines as indicated by the parameter. The cursor cannot be + moved beyond the top margin. Editor Function. + + +DA Device Attributes Host to VT100 & VT100 to Host + + <ESC>[ {Pn} c Default Value: 0 + + 1) The host requests the VT100 to send a DA sequence to indentify + itself. This is done by sending the DA sequence with no parameters, + or with a parameter of zero. + + 2) Response to the request described above (VT100 to host) is generated + by the VT100 as a DA control sequencewith the numeric parameters as + follows: + + Option Present Sequence Sent + --------------------------------------------- + No options <ESC>[?1;0c + Processor Option (STP) <ESC>[?1;1c + Advanced Video Option (AVO) <ESC>[?1;2c + AVO and STP <ESC>[?1;3c + Graphics Option (GPO) <ESC>[?1;4c + GPO and STP <ESC>[?1;5c + GPO and AVO <ESC>[?1;6c + GPO, ACO, and STP <ESC>[?1;7c + +<<<<<<<<<<<<<<<<<<<<<<<<<<>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>, +<<<I doubt if alot of these DEC commands work..a few do.. (like scroll areas)>> +<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> + +DECALN Screen Alignment Display (DEC private) + + <ESC># 8 + + This command causes the VT100 to fill it's screen with uppercase Es for + screen focus and alignment. + + +DECANM ANSI/VT52 Mode (DEC Private) + + This is a private parameter to the SM and RM control sequences. The + reset state causes only VT52 compatible escape sequences to be + recognized. The set state causes only ANSI compatible escape sequences + to be recognized. See the entries for MODES, SM, and RM. + + +DECARM Auto Repeat Mode (DEC Private) + + This is a private parameter to the SM and RM control sequences. The + reset state causes no keyboard keys to auto-repeat, the set state + causes most of them to. See MODES, SM, and RM. + + +DECAWM Autowrap Mode (DEC Private) + + This is a private parameter to the SM and RM control sequences. The + reset state prevents the cursor from moving when characters are + recieved while at the right margin. The set state causes these + characters to advance to the next line, causing a scroll up if required + and permitted. See MODES, SM, and RM. + + +DECCKM Cursor Keys Mode (DEC Private) + + This is a private parameter to the SM and RM control requences. This + mode is only effective when the terminal is in keypad application mode + (DECPAM) and the ANSI/VT52 mode (DECANM) is set. Under these + conditions, if this mode is reset, the cursor keys will send ANSI + cursor control commands. If setm the cursor keys will send application + function commands (See MODES, RM, and SM). + + +DECCOLM Column Mode (DEC Private) + + This is a private parameter to the SM and RM control sequences. The + reset state causes an 80 column screen to be used. The set state + causes a 132 column screen to be used. See MODES, RM, and SM. + + +DECDHL Double Height Line (DEC Private) + + Top Half: <ESC>#3 + Bottom Half: <ESC>#4 + + These sequences cause the line containing the cursor to become the top + or bottom half of a double-height, double width line. The sequences + should be used in pairs on adjacent lines with each line containing the + same character string. If the line was single width single height, all + characters to the right of the center of the screen will be lost. The + cursor remains over the same character position, unless it would be to + the right of the right margin, in which case it is moved to the right + margin. + + +DECDWL Double Width Line (DEC Private) + + <ESC>#6 + + This causes the line that contains the cursor to become double-width + single height. If the line was single width, all characters ro the + right of the center of the screen will be lost. The cursor remains + over the same character position, unless it would be to the right of + the right margin, in which case it is moved to the right margin. + + +DECID Identify Terminal (DEC Private) + + <ESC>Z + + This sequence causes the same response as the DA sequence. This + sequence will not be supported in future models. + + +DECINLM Interlace Mode (DEC Private) + + This is a private parameter to the RM and SM control sequences. The + reset state (non-interlace) causes the video processor to display 240 + scan lines per frame. The set state causes the video processor to + display 480 scan lines per screen. See MODES, RM, and SM. + + +DECKPAM Keypad Application Mode (DEC Private) + + <ESC>= + + The auxiliary keypad keys will transmit control sequences. + + +DECKPNM Keypad Numeric Mode (DEC Private) + + <ESC> > + + The auxiliary keypad keys will send ASCII codes corresponding to the + characters engraved on their keys. + + +DECLL Load LEDs (DEC Private) + + <ESC>[ {Ps} q Default Value: 0 + + Load the four programmable LEDs on the keyboard according to the + prameter(s). + + Parameter Meaning + ----------------------- + 0 Clear All LEDs + 1 Light L1 + 2 Light L2 + 3 Light L3 + 4 Light L4 + + +DECOM Origin Mode (DEC Private) + + This is a private parameter to SM and RM control sequences. The reset + state causes the origin (or home position) to be the upper left + character position of the screen. Line and column numbers are, + therefore, independent of current margin settings. The cursor may be + positioned outside the margins with a cursor position (CUP) or + horizontal and vertical position (HVP) control. + + The set state causes the origin to be at the upper left character + position within the current margins. Line and column numbers are, + therefore, relative to the current margin settings. The cursor cannot + be positioned outside of the margins. + + The cursor is moved to the new home position when this mode is set or + reset. Lines and columns are numbered consecutively, with the origin + being line 1, column 1. + + +DECRC Restore Cursor (DEC Private) + + <ESC>8 + + This sequence causes the previously saved cursor position, graphic + rendition, and character set to be restored. + + +DECREPTPARM Report Terminal Parameters VT100 to Host + + <ESC>[ {sol} ; {par} ; {nbits} ; {xspd} ; {rspd} ; {cmul} ; {flags} x + + This sequence is generated by the VT100 to notify the host of the + status of selected terminal parameters. The status sequence may be + sent when requested by the host (via DECREQTPARM) or at the terminal's + discretion. On power up or reset, the VT100 is inhibited from sending + unsolicited reports. + + The meanings of the sequence paramters are: + + Parameter Value Meaning + ------------------------------------------------------------------ + {sol} 1 This message is a report. + 2 This message is a report, and the terminal is + only reporting on request. + + {par} 1 No parity set + 4 Parity set and odd + 5 Parity set and even + + {nbits} 1 8 bits per character + 2 7 bits per character + + {xspd} 0 Speed set to 50 bps + -and- 8 Speed set to 75 bps + {rspd} 16 Speed set to 110 bps + 24 Speed set to 134.5 bps + {xspd}= 32 Speed set to 150 bps + Transmit 40 Speed set to 200 bps + Speed 48 Speed set to 300 bps + 56 Speed set to 600 bps + {rspd}= 64 Speed set to 1200 bps + Recieve 72 Speed set to 1800 bps + Speed 80 Speed set to 2000 bps + 88 Speed set to 2400 bps + 96 Speed set to 3600 bps + 104 Speed set to 4800 bps + 112 Speed set to 9600 bps + 120 Speed set tp 19200 bps + + {cmul} 1 The bit rate multiplier is 16 + + {flags} 0-15 This value communicates the four switch values + in block 5 of SET-UP B, which are only visible + to the user when an STP option is installed. + + +DECREQTPARM Request Terminal Parameters + + <ESC>[ {Ps} x + + The host sends this sequence to request the VT100 to send a DECREPTPARM + sequence back. {Ps} can be either 0 or 1. If 0, the terminal will be + allowed to send unsolicited DECREPTPARMs. These reports will be + generated each time the terminal exits the SET-UP mode. If {Ps} is 1, + then the terminal will only generate DECREPTPARMs in response to a + request. + + +DECSC Save Cursor (DEC Private) + + <ESC>7 + + Causes the cursor position, graphic rendition, and character set to be + saved. (See DECRC) + + +DECSCLM Scrolling Mode (DEC Private) + + This is a private parameter to RM and SM control sequences. The reset + state causes scrolls to "jump" instantaneuously one line at a time. + The set state causes the scrolls to be "smooth", and scrolls at a + maximum rate of siz lines/sec. See MODES, RM, and SM. + + +DECSCNM Screen Mode (DEC Private) + + This is a private parameter to RM and SM control sequences. The reset + state causes the screen to be black with white characters; the set + state causes the screen to be white with black characters. See MODES, + RM, and SM. + +<<<<This one works...and is very handy! >>>> +DECSTBM Set Top and Bottom Margins (DEC Private) + + <ESC>[ {Pn} ; {Pn} r Default Values: See Below + + This sequence sets the top and bottom margins to define the scrolling + region. The first parameter is the line number of the first line in + the scrolling region; the second parameter is the line number of the + bottom line of the scrolling region. Default is the entire screen (no + margins). The minimum region allowed is two lines, i.e., the top line + must be less than the bottom. The cursor is placed in the home + position (See DECOM). + + +DECSWL Single-width Line (DEC Private) + + <ESC>#5 + + This causes the line which contains the cursor to become single-width, + single-height. The cursor remains on the same character position. + This is the default condition for all new lines on the screen. + + +DECTST Invoke Confidence Test + + <ESC>[ 2 ; {Ps} y + + Ps is the parameter indicating the test to be done. It is computed by + taking the weight indicated for each desired test and adding them + together. If Ps is 0, no test is performed but the VT100 is reset. + + Test Weight + -------------------------------------------------------------- + POST (ROM checksum, RAM NVR, keyboardm and AVO) 1 + Data Loop Back (Loopback connector required) 2 + EIA Modem Control Test (Loopback connector req.) 4 + Repeat Testing until failure 8 + + +DSR Device Status Report Host to VT100 & VT100 to Host + + <ESC>[ {Ps} n + + Requests and reports the general status of the VT100 according to the + following parameters: + + Parameter Meaning + --------------------------------------------------------------- + 0 Response from VT100 - Ready, no faults detected + 3 Response from VT100 - Malfunction Detected + 5 Command from host - Report Status (using a DSR control + sequence) + 6 Command from host - Report Active Position (using a CPR + sequence) + + DSR with a parameter of 0 or 3 is always sent as a response to a + requesting DSR with a parameter of 5. + + +ED Erase in Display + + <ESC>[ {Ps} J Default: 0 + + This sequence erases some or all of the characters in the display + according to the parameter. Any complete line erased by this sequence + will return that line to single width mode. Editor Function. + + Parameter Meaning + ---------------------------------------------------------------- + 0 Erase from the cursor to the end of the screen. + 1 Erase from the start of the screen to the cursor. + 2 Erase the entire screen. + + +EL Erase in Line + + <ESC>[ {Ps} K Default: 0 + + Erases some or all characters in the active line, according to the + parameter. Editor Function. + + Parameter Meaning + --------------------------------------------------------------- + 0 Erase from cursor to the end of the line. + 1 Erase from the start of the line to the cursor. + 2 Erase the entire line. + + +HTS Horizontal Tab Set + + <ESC>H + + Set a tab stop at the current cursor position. Format Effector. + + +HVP Horizontal and Vertical Position + + <ESC>[ {Pn} ; {Pn} f + + Moves the cursor to the position specified by the parameters. The + first parameter specifies the line, and the second specifies the + column. A parameter of 0 or 1 causes the active position to move to + the first line or column in the display. In the VT100, this control + behaves identically with it's editor counterpart, CUP. The numbering + of hte lines depends upon the state of the Origin Mode (DECOM). Format + Effector. + + +IND Index + + <ESC>D + + This sequence causes the cursor to move downward one line without + changing the column. If the cursor is at the bottom margin, a scroll + up is performed. Format Effector. + + +LNM Line Feed/New Line Mode + + This is a parameter to SM and RM control sequences. The reset state + causes the interpretation of the <LF> character to imply only vertical + movement of the cursor and causes the RETURN key to send the single + code <CR>. The set state causes the <LF> character to imply movement + to the first position of the following line, and causes the RETURN key + to send the code pair <CR><LF>. This is the New Line option. + + This mode does not affect the Index (IND) or the next line (NEL) format + effectors. + + +MODES The Following is a list of VT100 modes which may be changed with Set + Mode (SM) and Reset Mode (RM) controls. + + ANSI Specified Modes + + Parameter Mnemonic Function + ------------------------------------------------------------------ + 0 Error (Ignored) + 20 LNM Line Feed/New Line Mode + + + DEC Private Modes + + If the first character in the parameter string is ? (077), the + parameters are interpreted as DEC private parameters according to the + following: + + Parameter Mnemonic Function + ------------------------------------------------------------------- + 0 Error (Ignored) + 1 DECCKM Cursor Key + 2 DECANM ANSI/VT52 + 3 DECCOLM Column + 4 DECSCLM Scrolling + 5 DECSCNM Screen + 6 DECOM Origin + 7 DECAWM Auto Wrap + 8 DECARM Auto Repeat + 9 DECINLM Interlace + + Any other parameter values are ignored. + + The following modes, which are specified in the ANSI standard, may be + considered to be permanently set, permanently reset, or not applicable, + as noted. + + Mnemonic Function State + ------------------------------------------------------ + CRM Control Representation Reset + EBM Editing Boundary Reset + ERM Erasure Set + FEAM Format Effector Action Reset + FETM Format Effector Transfer Reset + GATM Guarded Area Transfer NA + HEM Horizontal Editing NA + IRM Insertion-replacement Reset + KAM Keyboard Action Reset + MATM Multiple area transfer NA + PUM Positioning Unit Reset + SATM Selected Area Transfer NA + SRTM Status Reporting Transfer Reset + TSM Tabulation Stop Reset + TTM Transfer Termination NA + VEM Vertical Editing NA + + +NEL Next Line + + <ESC>E + + This causes the cursor to move to the first position of the next line + down. If the cursor is on the bottom line, a scroll is performed. + Format Effector. + + +RI Reverse Index + + <ESC>M + + Move the cursor up one line without changing columns. If the cursor is + on the top line, a scroll down is performed. + + +RIS Reset to Initial State + + <ESC>c + + Resets the VT100 to the state is has upon power up. This also causes + the execution of the POST and signal INT H to be asserted briefly. + + +RM Reset Mode + + <ESC>[ {Ps} ; {Ps} l + + Resets one or more VT100 modes as specified by each selective parameter + in the parameter string. Each mode to be reset is specified by a + separate parameter. See MODES and SM. + + +SCS Select Character Set + + The appropriate D0 and G1 character sets are designated from one of the + five possible sets. The G0 and G1 sets are invokedd by the characters + <SI> and <SO>, respectively. + + G0 Sets G1 Sets + Sequence Sequence Meaning + ------------------------------------------------------------------ + <ESC>(A <ESC>)A United Kingdom Set + <ESC>(B <ESC>)B ASCII Set + <ESC>(0 <ESC>)0 Special Graphics + <ESC>(1 <ESC>)1 Alternate Character ROM + Standard Character Set + <ESC>(2 <ESC>)2 Alternate Character ROM + Special Graphics + + The United Kingdom and ASCII sets conform to the "ISO international + register of character sets to be used with escape sequences". The + other sets are private character sets. Special graphics means that the + graphic characters fpr the codes 0137 to 0176 are replaced with other + characters. The specified character set will be used until another SCS + is recieved. + + +SGR Select Graphic Rendition + + <ESC>[ {Ps} ; {Ps} m + + Invoke the graphic rendition specified by the parameter(s). All + following characters transmitted to the VT100 are rendered according + to the parameter(s) until the next occurrence of an SGR. Format + Effector. + + Parameter Meaning + --------------------------------------------------------------- + 0 Attributes Off + 1 Bold or increased intensity + 4 Underscore + 5 Blink + 7 Negative (reverse) image + + All other parameter values are ignored. + + Without the Advanced Video Option, only one type of character attribute + is possible, as determined by the cursor selection; in that case + specifying either underscore or reverse will activate the currently + selected attribute. + + +SM Set Mode + + <ESC> [ {Ps} ; {Ps} h + + Causes one or more modes to be set within the VT100 as specified by + each selective parameter string. Each mode to be set is specified by a + seperate parameter. A mode is considered set until it is reset by a + Reset Mode (RM) control sequence. See RM and MODES. + + [Editor's note: The original DEC VT100 documentation EK-VT100-UG-003 + erroneously omitted the "[" character from the SM sequence.] + + +TBC Tabulation Clear + + <ESC>[ {Ps} g + + If the parameter is missing or 0, this will clear the tab stop at the + cursor's position. If it is 3, this will clear all of the tab stops. + Any other parameter is ignored. Format Effector. + + + + ___ + ( /_)_---_------------------------------------------------- +(_/ ( ! / ) Petri Virekoski ------ [email protected] ------ +-------!/--------------------------------------------------- + + =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= + +Article 4247 of comp.terminals: +Path: cs.utk.edu!willis.cis.uab.edu!news.ecn.bgu.edu!vixen.cso.uiuc.edu!howland.reston.ans.net!news.sprintlink.net!uunet!news.aurora.net!netnews +From: [email protected] (Michael Simms) +Newsgroups: comp.terminals +Subject: Re: VT420 control sequence question +Date: 15 Jun 1995 01:23:10 GMT +Organization: Attachmate Canada +Lines: 39 +Distribution: world +Message-ID: <[email protected]> +References: <[email protected]> +NNTP-Posting-Host: 204.174.235.139 +X-Newsreader: WinVN 0.92.5 + +In article <[email protected]>, [email protected] (Igor Lyubashevskiy) says: +> +>Hi, while reading through DEC's VT420 manuals, I enountered a control sequence +>that I don't understand. That is "Change attributes in rectangular area" +>(DECCARA). +> +>The manual says that this sequence's "syntax" is +> CSI Pt;Pl;Pb;Pr;Ps1..Psn $ r +>Where Psn = visual character attributes. +> +>Does anyone know what Psn really is (what those visual character attributes +>are)? And how many of those Psn can be there? +>If you can help, please reply either by email or by a followup to this group. +> +>Thank you for your time, +> +>Igor +> + +The Ps1..Psn are the standard character attributes such as used with +CSIm (SGR). The values they can hold are: + +0 - reset all attributes (white on black) +1 - bold +4 - underline +5 - blink +7 - inverse +21 - bold off +24 - underline off +25 - blink off +27 - inverse off + +For example to turn all the characters in the top left quadrant of the +screen bold and inverse with no blinking (as I hate blinking) use: + CSI 1;1;40;12;1;7;25$r + +As to the number of parameters, I don't know. + +Michael Simms. + + + =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= diff --git a/konsole/doc/More/vt100_colorized_termcap.txt b/konsole/doc/More/vt100_colorized_termcap.txt new file mode 100644 index 000000000..0a5470b45 --- /dev/null +++ b/konsole/doc/More/vt100_colorized_termcap.txt @@ -0,0 +1,438 @@ +Article 3992 of comp.terminals: +Path: cs.utk.edu!gatech!howland.reston.ans.net!vixen.cso.uiuc.edu!uwm.edu!msunews!harbinger.cc.monash.edu.au!bunyip.cc.uq.oz.au!newshost.gu.edu.au!news +From: Tony Nugent <[email protected]> +Newsgroups: comp.terminals +Subject: (howto) Set up a custom (colour) vt term +Date: 30 Apr 1995 06:35:49 GMT +Organization: Griffith University Brisbane Queensland Australia +Lines: 371 +Message-ID: <[email protected]> +Reply-To: [email protected] +NNTP-Posting-Host: kraken.itc.gu.edu.au +Summary: How to set up a customised term entry +Keywords: vt100 vt102 vt220 ansi colour terminfo termcap term + +G'day all! + +Here is something that I wrote a little while ago (with some more +recent changes) for someone who asked me how to set up a +customised TERMINFO and TERMCAP entry. + +I've never seen this in any FAQ, and I thought that others might +be interested in this too, so I've posted it. It took me *ages* +and lots of trial and error to figure out how to do this +properly, but the process is actually quite simple once you have +the man pages figured out :) + +I would appreciate any comments, corrections or suggestions to +this... I'm posting it here into comp.terminals as a "beta" +document as I'm sure that this could be refined some more. + +========8<----insert-crowbar-here------------------------------ + +I presume that you understand the basics of ansi and vt-term +escape sequences. + +I use a customised vt220 term to get colours instead of boring +black and white text on my pc screen when I'm logged into my +account over a modem. My comms program is emulating vt100/220 +with my screen in 50 line mode (49 lines + one for my comms +program's status line). + +The system here with my account is a Sparc running Solaris 2.3, +SunOS 5.3 - but this also works under SGI IRIX and SunOS 4.3.1 +(remote vt-term login). I use tcsh as my default login shell +(I'll eventually try out ksh once I have some time :-) + +Here is my customised termcap entry, produced by the "infocmp -1" +command... + +========8<-----------cut-here------------>8==================== +# Reconstructed via infocmp from file: /home/tnugent/.terminfo/v/vt220 +vt220|vt-220|dec colour vt220, + xon, + cols#80, lines#49, vt#3, + bel=^G, blink=\E[5m$<2>, bold=\E[1m\E[32;44m$<2>, + clear=\E[;H\E[2J$<50>, cnorm=\E[?7h\E[0;2;1;36m, + cr=\r, csr=\E[%i%p1%d;%p2%dr, cub1=\b, cud1=\n, + cuf1=\E[C$<2>, cup=\E[%i%p1%d;%p2%dH$<5>, + cuu1=\E[A$<2>, cvvis=\E[?7l, ed=\E[J$<50>, + el=\E[K$<3>, home=\E[H, ht=\t, ind=\n, + is2=\E[1;49r\E[49;1H, kbs=\b, kcub1=\EOD, kcud1=\EOB, + kcuf1=\EOC, kcuu1=\EOA, kf0=\E[29~, kf1=\EOP, + kf10=\E[29~, kf2=\EOQ, kf3=\EOR, kf4=\EOS, kf5=\E[17~, + kf6=\E[18~, kf7=\E[19~, kf8=\E[20~, kf9=\E[21~, + rc=\E8, rev=\E[7m$<2>, ri=\EM$<5>, rmacs=\E(B$<4>, + rmir=\E[4l, rmkx=\E[?1l\E>, rmso=\E[7m\E[0;1;36m$<2>, + rmul=\E[m\E[0;1;36m$<2>, + rs2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E1;36m\E[?8h, sc=\E7, + sgr0=\E[m\E[1;36m$<2>, smkx=\E[?1h\E=, + smso=\E[m\E[1;33;44m$<2>, smul=\E[4m\E[1;32m$<2>, +========8<-----------cut-here------------>8==================== + +For the explaination of what all this means, see "man terminfo"; +also try "man termcap", but this man page is often not there. + +It's set for a default of 49 lines, but if you only use 24 then +change it in the entry, but I'll explain how to easily reset it +manually with some aliases. + +Otherwise edit this however you like. You'll recognise all the +"ansi" escape sequences up there. Customise the colour ones as +desired, but after trial and error I've found these to be quite +acceptable. Some of the entries might need some more refining, +but this works. Bold, underline, reverse and norm are all in +colour. I've thought about adding an entry for italic (sitm and +ritm), but I haven't got around to this yet. + +I've called this "vt220", but it really isn't (although +compatable). I've found it better to use a "common" name rather +than an unusual one, or else I tend to get "unknown term type, +using dumb terminal settings" complaints when I rlogin or telnet +into other accounts. + +vt220 is defined in /etc/termcap here as: + +de|vt220|DEC VT220 in vt100 emulation mode:\ + :tc=vt100: + +so vt220 actually uses vt100 anyway. They are similar, but vt220 +defines more of the F (function) keys. Other differences are +trivial (and I haven't noticed many from what I've been able to +ascertain from a scattering of "non-authoritative" sources). + +Create a ~/.terminfo/ directory, and save this terminfo entry in +a file called ~/.terminfo/terminfo.src + +Now change to this directory and append the other terminal +entries that you might use onto the end of this file (except for +vt220): + +% echo $term +% infocmp >> terminfo.src +% infocmp vt100 >> terminfo.src +% infocmp xterm >> terminfo.src + +etc. Check it's general format what you find in /etc/termcap to +make sure that it's similar. + +Now do this (in the ~/.terminfo/ directory): + +% setenv TERMINFO ~/.terminfo +% tic + +After running tic (it uses the terminfo.src file), you should see +a new directory called ~/.terminfo/v/ (and perhaps others) which +has the termcap entries compiled from the terminfo.src file. + +Now, do this: + +% set term=vt220 + +You *should* immediately see a change in colour of normally white +(or grey) text to a light bright blue (see "norm=" above). If +you have tcsh as your shell, then try the prompts below to see +some nice bold and reverse colour. Man pages should now also +demostrate this too (especially if you have setenv PAGER "less -s +-I"). Nice change, eh? :-) + +Ok, now to make this change permanent... + +Cut this shell script out, save it in ~/.terminfo/maketc and +"chmod +x maketc" to make it executable: + +========8<-----------cut-here------------>8==================== +#!/bin/sh +# +# Make a TERMCAP entry +# +# Use: +# maketc [termtype] +# +# setenv TERMCAP `maketc [termtype]` +# +# There's probably a better way to do this +# +infocmp -C $1 | \ + sed -e '/^#/d' -e '3,$s/[ ]//g' -e 's/:\\$//' | \ + awk '{printf("%s",$0)}' +echo "" +# NB: that's a Tab and a space in between the []'s! +# Is there a way to get sed to strip out newlines? +========8<-----------cut-here------------>8==================== + +Now try this (using this new term setting): + +% maketc + +Ugly, yes? :) + +Create a ~/.terminfo/TERMCAP.vt220 file by redirecting this output: + +% maketc vt220 > TERMCAP.vt220 + +(alternatively, use " setenv TERMCAP `cat ~/.terminfo/maketc` " +below instead). + +Put the following lines in your ~/.login file, or into another +file (say, ~/.termrc) and source it from ~/.login... + +========8<-----------cut-here------------>8==================== +# Please customise this! +# +if ( ! $?term ) then + set term=vt102 + setenv TERM vt102 +endif +# +switch($term) +# + case 'vt220': + case 'vt102': + stty rows 49 + stty columns 80 + setenv LINES 49 + setenv COLUMNS 80 + echo Assuming \($term with $LINES rows\) + breaksw + case 'vt100': + stty rows 24 + stty columns 80 + setenv LINES 24 + setenv COLUMNS 80 + breaksw + case 'xterm': + eval `/usr/openwin/bin/resize` + stty rows $LINES + stty cols $COLUMNS + default: + breaksw +endsw +# +# Set colour if on a vt100, vt102 or vt220 +# +if ( $TERM == vt102 || $TERM == vt100 || $TERM == vt220 ) then + setenv TERMINFO ~/.terminfo + set term=vt220 + setenv TERM vt220 + setenv TERMCAP `cat ${TERMINFO}/TERMCAP.vt220` + # setenv TERMCAP `~/.terminfo/maketc` +endif +# +# Set variables: NORM BOLD OFFBOLD ULINE OFFULINE REV +# +setenv NORM `tput cnorm` +setenv REV `tput rev` +setenv BOLD `tput smso` +setenv OFFBOLD `tput smso` +setenv ULINE `tput smul` +setenv OFFUL `tput rmul` +# +echo "" +echo "${BOLD}TERMINFO is now: $NORM$TERMINFO" +echo "${BOLD}TERMCAP is now: $NORM" +echo "$TERMCAP" +echo "" +# +echo -n "${ULINE}"\$TERM"$NORM is $BOLD $TERM $NORM and " +echo "${ULINE}"\$term"$NORM is $BOLD $term ${NORM}" +echo -n "$BOLD $LINES $NORM ${ULINE}rows${NORM} " +echo "$BOLD $COLUMNS $NORM ${ULINE}columns${NORM}" +echo "" +# +echo -n "${REV}reverse${NORM} " +echo -n "${BOLD}bold${NORM} " +echo -n "${ULINE}underline${OFFUL} " +echo "$NORM" +echo -n "${REV}${BOLD} reverse-bold ${NORM} " +echo -n "${REV}${ULINE} reverse-underline ${NORM} " +echo -n "${BOLD}${ULINE} bold-underline ${NORM} " +echo -n "${REV}${BOLD}${ULINE} reverse-bold-underline ${NORM} " +echo "" +# +echo -n tset: +/usr/ucb/tset -I -Q - +# +========8<-----------cut-here------------>8==================== + +It's a bit overdone, but it will show you what's going on. +Warnings.... on some unix'es, stty does not have "rows" or +"columns" options. And if you ever use those global variables +for anything, enclose the variables in quotes like I have above. + +Next time you log in (with csh or tcsh), ~/.login is sourced +(after ~/.cshrc) and you will automatically have this customised +colour terminal enabled. + +To make switching term very easy, I use a few aliases. I have +the following in a ~/.alias file that I source from ~/.cshrc... + +========8<-----------cut-here------------>8==================== +# ~/.alias +# sourced from ~/.cshrc +#... +#... +# +#-------- Terminal setup ------------ +# +a cls 'clear' +a seterm 'setenv TERM \!:1 ; set term=\!:1' +a vt102 'unsetenv TERMINFO ; unsetenv TERMCAP ; seterm vt102' +a vt220 'colour' +a colour 'setenv TERMINFO ~/.terminfo ; \ + setenv TERMCAP `cat ${TERMINFO}/TERMCAP` ; seterm vt220' +a rows 'stty rows \!:1 ; setenv LINES \!:1 ; cols 80' +a cols 'stty columns \!:1 ; setenv COLUMNS \!:1 ' +a setsize 'rows \!:1 ; echo $LINES line mode' +a 49 'setsize 49' +a 50 '49' +a 24 'setsize 24' +a 25 '24' +# +a vtn 'echo -n "^[[m^[(B^[)0^O^[[?5l^[7^[[r^[8"' +# ^^ ^^ ^^ ^^^^ ^^ ^^ ^^ +# Esc Esc Esc Ctrl-O EscEsc Esc +# If the vtn alias doesn't work correctly, then try this: +# a vtn 'echo "X[mX(BX)0OX[?5lX7X[rX8" | tr '\''XO'\'' '\''\033\017'\''' +# +# +#... other aliases ... +========8<-----------cut-here------------>8==================== + +The vtn alias has been piped through cat -v to make the control +codes look like their two-character representation. Edit the +echo'ed string so that the ^[ characters are real escape +characters and ^O is a control-O. Or comment out that line and +use the one below it that uses the tr command. This alias is +very, VERY handy for resetting a vt100 style screen if it gets +screwed up with an accidental character set sequence (see any +vt100 term escape code reference). + +If you want to see some interesting colourful prompts and you use +tcsh, then try sourcing this: + +========8<-----------cut-here------------>8==================== +# Primary tcsh command prompt +# +# simple looking one +# set prompt='$S%?%s %B%/-%b%U%h%u-%U%#%u%L' +# +# set prompt='%S%l%s|%U%?%u[%B%t%b]%S%~%s-%B%h%b-%U%#%u%L' +# set prompt='%u%s%b[%U%m%u|%U%~%u][%S%t%s][%B%h%b][%S%?%s]%U-%#%u%L' +# set prompt='%B%b[%S%?%s][%S%t%s][%B%h%b][%U%m%u|%U%~%u]%U-%#%u%L' + set prompt='%B%b[%S%?%s][%U%t%u][%S%m%s|%S%~%s][%B%h%b]%U-%#%u%L' +# +# prompt2 +# Used wherever normal csh prompts with a question mark. +# +# set prompt2='%B%R?>%b ' + set prompt2='%B%R%b%S?%s%L' +# +# prompt3 +# Used when displaying the corrected command line when automatic +# spelling correction is in effect. +# +# set prompt3='CORRECT>%R (y|n|e)?' +# set prompt3='%BCORRECT%b%S>%s%R (%By%b|%Bn%b|%Be%b)%S?%s%L' + set prompt3='%{[41;33;5m%}CORRECT%S>%s%R (%By%b|%Bn%b|%Be%b)%S?%s%L' +========8<-----------cut-here------------>8==================== + +Note how the red colour is manually put into prompt3. It's +possible to put colour sequences into the prompts of all the +common shells (check its man page). + +For more info check out: + +1. The man pages for: + terminfo, (termcap), stty, tput, infocmp, captoinfo, tic + (and the man pages in the "see also" sections). + +2. The file /etc/termcap + +3. The comp.terminals ftp archive site: + cs.utk.edu :: /pub/shuford/terminal/ + You should be able to find at least one file there that + explains all the vt100 control sequences. + +4. I've got a file with the vt102 and ansi escape sequences in it. + If you want a copy, just let me know. + +5. I've never seen it, but for a color xterm check this out: + X11R5 and X11R6 versions: + ftp.x.org /R5contrib/color_xterm.tar.Z + ftp.x.org /contrib/utilities/color-xterm-R6-patch.README + ftp.x.org /contrib/utilities/color-xterm-R6pl5-patch.gz + ftp.x.org /contrib/utilities/colour_xterm.tar.gz + +Enjoy! + +Tony +04/23/95 +========8<----insert-crowbar-here------------------------------ + +All comments very much appreciated. + +Cheers +Tony + MMM \|/ www __^__ + (o o) @ @ (o o) /(o o)\ + -.ooO-(_)-Ooo.-+-.oOO-(_)-OOo.-+-.oOO--(_)--OOo.-+-.oOO==(_)==OOo.-----+ + | Tony Nugent |-| Griffith University [email protected] |--. + | __'!`__ | | Brisbane, Queensland [email protected] | | + | (o o) | | Australia | | + `-ooO---(=)---Ooo-' `--------------------------------------------------' | + `------------------' `--------------------------------------------------' + + +Article 3993 of comp.terminals: +Path: cs.utk.edu!gatech!swrinde!hookup!news.moneng.mei.com!uwm.edu!msunews!harbinger.cc.monash.edu.au!bunyip.cc.uq.oz.au!newshost.gu.edu.au!news +From: Tony Nugent <[email protected]> +Newsgroups: comp.terminals +Subject: Re: (howto) Set up a custom (colour) vt term +Date: 30 Apr 1995 07:17:03 GMT +Organization: Griffith University Brisbane Queensland Australia +Lines: 35 +Message-ID: <[email protected]> +References: <[email protected]> +Reply-To: [email protected] +NNTP-Posting-Host: kraken.itc.gu.edu.au +Keywords: vt100 vt102 vt220 ansi colour terminfo termcap term + +Tony Nugent <[email protected]> writes: + +Sorry about this: + +[munch] + +>To make switching term very easy, I use a few aliases. I have +>the following in a ~/.alias file that I source from ~/.cshrc... + +>========8<-----------cut-here------------>8==================== +># ~/.alias +># sourced from ~/.cshrc +>#... + +alias a 'alias' + +>#... +># +>#-------- Terminal setup ------------ +># +>a cls 'clear' +>a seterm 'setenv TERM \!:1 ; set term=\!:1' + +[munch] + +I forgot to mention that I have the alias command aliased to "a". + +Cheers +Tony + /~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~/~\ + | Tony Nugent Griffith University, Brisbane, Queensland, Australia| _ | + | Email: [email protected] [email protected] | @|| + \__________________________________________________________________\_/| + / Pull here for the full .sig or use finger on the second address / + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + + diff --git a/konsole/doc/More/vt100_numeric_keypad.txt b/konsole/doc/More/vt100_numeric_keypad.txt new file mode 100644 index 000000000..fbd953d45 --- /dev/null +++ b/konsole/doc/More/vt100_numeric_keypad.txt @@ -0,0 +1,202 @@ +Subject: Re: ENTER keys + +In message <[email protected]>, [email protected] says: +> +> We're using MicroSoft's telnet software to connect to Stratus (VOS). +> Using a VT100 emulator (yes, on both ends - I'm not THAT novice) we +> find that the ENTER key (the key marked "Enter" on the PC's keypad) +> does the same thing as the RETURN key (the key marked "Enter" on the +> main part of the PC's keyboard) when it comes to working with CRT +> forms. +> ... +> (A) why do the RETURN and ENTER keys behave the same? +> (B) how does one submit a completed CRT form with ONE keystroke? + +To which <[email protected]> replied in message +| +| You don't say which ttp you are using on VOS, but I will assume +| it is the vt100.ttp file. +| +| The "keyboard" section of the vt100.ttp file defines the names +| and key sequences used by the VT100 keys. In it we find: +| +| enter-key Enter esc O M + + +I have not used the Microsoft "telnet" application, but one standard +setup option in a DEC VT100 (or VT220, VT340, VT420, VT510, etc.) is +the "keypad mode"--what the behavior of the numeric keypad should be. + +The two modes are "application" and "numeric". + +In numeric mode, the various keypad keys send either the ASCII code +for decimal digits, or the ASCII code for the comma, period, or +hyphen, or (in the case of the keypad "Enter" key") the ASCII carriage +return control character (or CR/LF if so configured). + +The "Enter" key behavior you describe is characteristic of numeric- +keypad mode. + +The application mode is used by programs that don't need decimal +digits so much but need lots of user-activated software functions. +The DEC text-editing programs (EDT, EVE, etc.) are a classic example. +In application mode, the keypad keys send special Escape sequences +that chiefly begin with the so-called SS3 (single-shift G3) prefix, +which in 7-bit ASCII representation is the "Esc O". (In 8-bit, SS3 +is the single code hexadecimal 8F.) + +The following chart summarizes the possible codes (7-bit) generated by +the DEC terminals' keypad: + + Keypad Key Numeric Mode Application Mode + ---------- ------------ ---------------- + 0 0 Esc O p + 1 1 Esc O q + 2 2 Esc O r + 3 3 Esc O s + 4 4 Esc O t + 5 5 Esc O u + 6 6 Esc O v + 7 7 Esc O w + 8 8 Esc O x + 9 9 Esc O y + - - Esc O m + , , Esc O l + . . Esc O n + Enter carriage return Esc O M + PF1 Esc O P Esc O P + PF2 Esc O Q Esc O Q + PF3 Esc O R Esc O R + PF4 Esc O S Esc O S + + + was intended for use by programs that + + + + +This is a matter that my site has encountered in a slightly different form. + +Article 2620 of comp.protocols.kermit.misc: +Path: cs.utk.edu!cssun.mathcs.emory.edu!hobbes.cc.uga.edu!news-feed-1.peachnet.edu!gatech!swrinde!cs.utexas.edu!news.cs.utah.edu!cc.usu.edu!jrd +From: [email protected] (Joe Doupnik) +Newsgroups: comp.protocols.kermit.misc +Subject: Re: Defining functional keys +Message-ID: <[email protected]> +Date: 22 Apr 95 12:22:57 MDT +References: <[email protected]> +Organization: Utah State University +Lines: 109 + +In article <[email protected]>, [email protected] (Uuno Vallner) writes: +> We try to use KERMIT DOS as terminal. We have Novel and Unix +> mixed network. We try access to OSF/1 via IPX using Softnet in OSF/1. +> +> We defined Kermit port bios3. It works perfectly. We need to use estonian +> characters. We are resolved this problem too. But ... +> +> We use application in OSF/1 (text retrieval system trip), which needs +> for operating Application keypad (7,8. 9 ..1,0 ...)and some functional keys. +> But Kermit are using 7 as "home" +> +> Kermit interpreted non correct functional keys. After pressing f1, system +> sends only ESC , after next f1 follows code and new ESC. Same effect is with +> array keys. +-------------- + + I think there is some confusion about DEC versus IBM PC keys. +The relationship is detailed in distribution file MSVIBM.VT and also +in the user's manual book "Using MS-DOS Kermit." The IBM PC numeric +keypad keys are not necessarily related to the DEC KeyPad keys. Here +is a cutout from my copy of msvibm.vt: + + +1. VT320/VT102/VT52/Heath-19 EMULATOR IN MS-DOS KERMIT IBM-PC, CODE SUMMARY + + VT320/VT102 keypads Heath-19 and VT52 Keypads + IBM keys IBM Keys + +------+------+------+------+ +------+------+-------+----------+ + | PF1 | PF2 | PF3 | PF4 | | Blue | Red | Grey | up arrow | - Vendor + | F1 | F2 | F3 | F4 | | F1 | F2 | F3 | up arrow | - Kermit + +------+------+------+------+ +------+------+-------+----------+ + | 7 | 8 | 9 | - | | 7 | 8 | 9 |down arrow| + | F5 | F6 | F7 | F8 | | F5 | F6 | F7 |down arrow| + +------+------+------+------+ +------+------+-------+----------+ + | 4 | 5 | 6 | , | | 4 | 5 | 6 | rgt arrow| + | F9 | F10 | SF1 | SF2 | | F9 | F10 | SF1 | rgt arrow| + +------+------+------+------+ +------+------+-------+----------+ + | 1 | 2 | 3 | E | | 1 | 2 | 3 |left arrow| + | SF3 | SF4 | SF5 | n S| | SF3 | SF4 | SF5 |left arrow| + +------+------+------+ t F| +------+------+-------+----------+ + | 0------0 | . | e 6| | 0------0 | . | Enter | + | SF7 | SF8 | r | | SF7 | SF8 | SF6 | + +-------------+------+------+ +-------------+-------+----------+ + +SF1 means push Shift and F1 keys simultaneously +--------------------------------------------------------------------------- +Below, the acronyms CSI and SS3 stand for 8-bit control codes in an 8-bit +environment or for their 7-bit equivalents "ESC [" and "ESC O", respectively. +Command SET TERMINAL CONTROL {8-BIT | 7-BIT}, and an equivalent command from +the host, determines the usage for output text; use of parity forces 7-bit +mode. CSI is decimal 155, SS3 is decimal 143. Similarly, DCS is decimal 144 +or ESC P and ST is decimal 156 or ESC \. APC is decimal 159 or ESC _. +--------------------------------------------------------------------------- +Codes sent by DEC and Heath arrow keys +Key Verb IBM VT320/VT102 mode VT52/H19 mode + key Cursor Application Cursor or Application + +up uparr up CSI A SS3 A ESC A +down dnarr down CSI B SS3 B ESC B +right rtarr right CSI C SS3 C ESC C +left lfarr left CSI D SS3 D ESC D + +Codes sent by DEC editing keys, not preassigned to keys. +Key Verb VT320 mode VT102/VT52/H19 mode + +Find decFind CSI 1 ~ these keys +Insert Here decInsert CSI 2 ~ send nothing +Remove decRemove CSI 3 ~ +Select decSelect CSI 4 ~ +Prev Screen decPrev CSI 5 ~ +Next Screen decNext CSI 6 ~ ~ is ASCII chart 7/14 + +Codes sent by DEC Numeric Keypad +Key Verb IBM ANSI VT320/VT102 mode VT52/H19 mode + key Numeric Application Numeric Application + +PF1/HF7/Blue Gold,pf1 F1 SS3 P SS3 P ESC P ESC P +PF2/HF8/Red pf2 F2 SS3 Q SS3 Q ESC Q ESC Q +PF3/HF9/Grey pf3 F3 SS3 R SS3 R ESC R ESC R +PF4/HF1 pf4 F4 SS3 S SS3 S ESC S ESC S +0 kp0 SF7 0 SS3 p 0 ESC ? p +1 kp1 SF3 1 SS3 q 1 ESC ? q +2 kp2 SF4 2 SS3 r 2 ESC ? r +3 kp3 SF5 3 SS3 s 3 ESC ? s +4 kp4 F9 4 SS3 t 4 ESC ? t +5 kp5 F10 5 SS3 u 5 ESC ? u +6 kp6 SF1 6 SS3 v 6 ESC ? v +7 kp7 F5 7 SS3 w 7 ESC ? w +8 kp8 F6 8 SS3 x 8 ESC ? x +9 kp9 F7 9 SS3 y 9 ESC ? y +comma (,) kpcoma SF2 , SS3 l , ESC ? l +minus (-) kpminus F8 - SS3 m - ESC ? m +period (.) kpdot SF8 . SS3 n . ESC ? n +Enter kpenter SF6 CR or SS3 M CR or ESC ? M + CR LF (newline on) CR LF + (SFn means hold down Shift key while pressing Function key n.) +--------------- + + Please note that \Kkp0...\Kkp0 are placed on IBM PC function +keys by default. You can redefine such things using Kermit command +SET KEY, as discussed in depth in "Using MS-DOS Kermit." + I don't quite understand why you are using SET PORT BIOS3. Do +you have some Int 14h interceptor present to route traffic to the net? +For real serial ports BIOS3 is terrible. If you are using Novell's ODI +material then Kermit can operate as a native ODI client (using it's +internal TCP/IP stack). This is discussed in the release notes. + Joe D. + + + + diff --git a/konsole/doc/More/vt100_reference_card.txt b/konsole/doc/More/vt100_reference_card.txt new file mode 100644 index 000000000..e80ea1325 --- /dev/null +++ b/konsole/doc/More/vt100_reference_card.txt @@ -0,0 +1,215 @@ +Article 248 of comp.terminals: +Newsgroups: comp.terminals +Path: cs.utk.edu!gatech!udel!bogus.sura.net!opusc!usceast!chan +From: [email protected] (Simon Chan) +Subject: VT100 Reference Card !! ( if you are looking for....) +Message-ID: <chan.728236678@hertz> +Keywords: vt100 terminal escape codes +Sender: [email protected] (USENET News System) +Organization: USC Department of Computer Science +Date: 28 Jan 93 15:57:58 GMT +Lines: 162 + + + +Taken from VT100 Programming Reference Card (DIGITAL) + +ANSI Compatible Mode + + Cursor Movement Commands + Cursor up ESC [ Pn A + Cursor down ESC [ Pn B + Cursor forward (right) ESC [ Pn C + Cursor backward (left) ESC [ Pn D + Direct cursor addressing ESC [ Pl; Pc H or + ESC [ Pl; Pc f + Index ESC D + Next Line ESC E + Reverse index ESC M + Save cursor and attributes ESC 7 + Restore cursor and attributes ESC 8 + * Pn = decimal parameter in string of ASCII digits.(default 1) + * Pl = line number (default 0); Pc = column number (default 0) + + Line Size (Double-Height and Double-Width) Commands + Change this line to double-height top half ESC # 3 + Change this line to double-height bottom half ESC # 4 + Change this line to single-width single-height ESC # 5 + Change this line to double-width single-height ESC # 6 + + Character Attributes + ESC [ Ps;Ps;Ps;...,Ps m + Ps = 0 or None All Attributes Off + 1 Bold on + 4 Underscore on + 5 Blink on + 7 Reverse video on + Any other parameter values are ignored. + + Erasing + From cursor to end of line ESC [ K or ESC [ 0 K + From beginning of line to cursor ESC [ 1 K + Entire line containing cursor ESC [ 2 K + From cursor to end of screen ESC [ J or ESC [ 0 J + From beginning of screen to cursor ESC [ 1 J + Entire screen ESC [ 2 J + + Programmable LEDs + ESC [ Ps;Ps;...Ps q + Ps = 0 or None All LEDs Off + 1 L1 on + 2 L2 on + 3 L3 on + 4 L4 on + Any other parameter values are ignored. + + Character Set (G0 and G1 Designators) + Charactor Set G0 Designator G1 Designator + United Kingdom (UK) ESC ( A ESC ) A + United States (USASCII) ESC ( B ESC ) B + Special graphics characters ESC ( 0 ESC ) 0 + and line drawing set + Alternate character ROM ESC ( 1 ESC ) 1 + Alternate character ROM ESC ( 2 ESC ) 2 + special graphics characters + + Scrolling Region + ESC [ Pt ; Pb r + Pt is the number of the top line of the scrolling region; + Pb is the number of the bottom line of the scrolling region + and must be greater than Pt. + (The default for Pt is line 1, the default for Pb is the end + of the screen) + + TAB stops + Set tab at current column ESC H + Clear tab at curent column ESC [ g or ESC [ 0 g + Clear all tabs ESC [ 3 g + + Modes + To Set To Reset + Mode Name Mode Sequence Mode Sequence + Line feed/new line New line ESC [20h Line feed ESC [20l + Cursor key mode Application ESC [?1h Cursor ESC [?l + ANSI/VT52 mode ANSI N/A VT52 ESC [?2l + Column mode 132 Col ESC [?3h 80 Col ESC [?3l + Scrolling mode Smooth ESC [?4h Jump ESC [?4l + Screen mode Reverse ESC [?5h Normal ESC [?5l + Origin mode Relative ESC [?6h Absolute ESC [?6l + Wraparound On ESC [?7h Off ESC [?7l + Auto repeat On ESC [?8h Off ESC [?8l + Interlace On ESC [?9h Off ESC [?9l + Graphic proc. option On ESC 1 Off ESC 2 + Keypad mode Application ESC = Numeric ESC > + + Reports + Cursor Position Report + Invoked by ESC [ 6 n + Response is ESC [ Pl; Pc R + * Pl = line number; Pc = column number + + Status Report + Invoked by ESC [ 5 n + Response is ESC [ 0 n (terminal ok) + ESC [ 3 n (terminal not ok) + + What Are You + Invoked by ESC [ c or ESC [ O c + Response is ESC [ ?1 ; Ps C + Ps = 0 Base VT100, no options + 1 Processor option (STP) + 2 Advanced Video option (AVO) + 3 AVO and STP + 4 Graphocs processor option (GO) + 5 GO and STP + 6 GO and AVO + 7 GO, STP, and AVO + Alternately invoked by ESC Z (not recommended.) Response is the same. + + Reset + ESC c + + Confidence Tests + Fill Screen with "Es" ESC # 8 + Invoke Test(s) ESC [ 2 ; Ps y + Ps = 1 Power-up self test + (ROM checksum, RAM, NVR, + keyboard and AVO if installed) + 2(loop back connector required) Data Loop Back + 4(loop back connector required) ETA Modern Control Test + 8 Repeat selected test(s) + indefinitely + (until failure or power off) + +VT52 Compatible Mode + Cursor Up ESC A + Cursor Down ESC B + Cursor Right ESC C + Cursor Left ESC D + Select Special Graphics character set ESC F + Select ASCII character set ESC G + Cursor to home ESC H + Reverse line feed ESC I + Erase to end of screen ESC J + Erase to end of line ESC K + Direct cursor address ESC Ylc (see note 1) + Identify ESC Z (see note 2) + Enter alternate keypad mode ESC = + Exit alternate keypad mode ESC > + Enter ANSI mode ESC < + + NOTE 1: Line and column numbers for direct cursor address are single + character codes whose values are the desired number plus + 37 (in Octal). Line and column numbers start at 1. + NOTE 2: Response to ESC Z is ESC / Z. + + + +-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- +Simon Chan [email protected] +Department of Electrical & Computer Engineering +Swearingen Engineering Centre +University of South Carolina +Coulmbia, South Carolina 29208 +-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- + + +Article 269 of comp.terminals: +Path: cs.utk.edu!gatech!news.ans.net!cmcl2!adm!smoke!gwyn +From: [email protected] (Doug Gwyn) +Newsgroups: comp.terminals +Subject: Re: VT100 Reference Card !! +Keywords: vt100 terminal escape codes +Message-ID: <[email protected]> +Date: 1 Feb 93 15:01:49 GMT +References: <chan.728236678@hertz> +Organization: U.S. Army Ballistic Research Lab, APG MD. +Lines: 25 + +In article <chan.728236678@hertz> [email protected] (Simon Chan) writes: +>Taken from VT100 Programming Reference Card (DIGITAL) + +Note that EK-VT100-RC-001 contains several errors and omissions. +The errors appear to all be fixed in the posted version. +Here are some additions: + + Parameters to Direct cursor addressing can be omitted if 1. + "Index" is broken if NEWLINE is enabled (set-up). + "Reverse index" scrolls up retaining the same column. + + CHARACTER SET DESIGNATORS: G0 = Shift-In, G1 = Shift-Out + +> ANSI/VT52 mode ANSI N/A VT52 ESC [?2l + ANSI/VT52 mode ANSI ESC < VT52 ESC [?2l + Modes can be combined using ";", for example "ESC [ ? 3 ; 4 ; 7 h" + + CONFIDENCE TESTS: Parameter bits are summed into one parameter. + + Hardcopy ESC # 7 + Graphic processor ON ESC 1 + Graphic processor OFF ESC 2 + +The reference card showed incorrect graphics for octal code 140; its +correct graphic is ` (accent grave). + + diff --git a/konsole/doc/More/vt100_scroll_region.txt b/konsole/doc/More/vt100_scroll_region.txt new file mode 100644 index 000000000..4297aaba3 --- /dev/null +++ b/konsole/doc/More/vt100_scroll_region.txt @@ -0,0 +1,124 @@ +Newsgroups: comp.terminals,comp.protocols.misc +Subject: ANSI X3.64 sequences (was Re: VT100 scrolling region) +Summary: Escape code effects +Expires: Sun, 31 Jan 1993 22:23:24 GMT +References: <[email protected]> <[email protected]> +Sender: [email protected] +Followup-To: comp.terminals +Distribution: world +Organization: University of Tennessee, Knoxville--Dept. of Computer Science +Keywords: VT100, scroll, control code, Escape, ANSI X3.64, terminal + +In article <[email protected]> [email protected] (Peter D. Smith) writes: +> In article <[email protected]>, [email protected] (Frank I. Reiter) +> writes: +> > Part of an application I am working on includes a VT100 emulator. +> > 1) Does ESC [;22r mean "scroll lines 0 through 22" or does it mean "Set +> > the bottom scrolling line to 22, leave the top line as it is set already"? +> +> It should mean 'scroll lines 1 to 22'. + +The control sequences recognized by the Digital Equipment Corporation +VT100, VT200, VT300, and VT400-family character-cell video terminals +are an extended variant of the control sequences specified by an ANSI +standard, ANSI X3.64. (ISO DP6429 is the international version.) + +The generic sequence introducer is a thing called CSI (Control +Sequence Introducer). If you are using 8-bit communication, you +can use the hexadecimal value 9B to represent this (but be sure you +understand the side effects thereof). Otherwise, use the 7-bit +equivalent: the Escape character (1Bh) followed by [ (the left +bracket character). + +The canonical form of the given scroll-region command would be + + CSI xx ; yy r + +or in 7-bit style + + Esc [ xx ; yy r + +(where xx and yy are decimal digits expressed in ASCII/IA5; you do not +actually use a space between sequence elements, this is for clarity. +Be careful with the notation here--sometimes a space character _is_ +a sequence element, as in the SR Scroll Right editing function.) + +In an X3.64 control sequence, the numeric arguments may default to an +arbitrary value specific to the device function being controlled. Do +not assume that the default always will be 0 or 1. (Or there may be +no default allowed.) For example, the numeric arguments in the GSM +(Graphic Size Modify) sequence have the default values 100, 100. + +As a private extension to X3.64, DEC defines the DECSTBM (Set Top and +Bottom Margins) command as follows: + + CSI Pt ; Pb r + + Selects top and bottom margins defining the scrolling region. + Pt is the line number of the first line in the scrolling region. + Pb is the line number of the bottom line. + If you do not select either Pt or Pb, they default to the top + and bottom respectively. Lines are counted from 1. + +(See \VT220 Programmer Pocket Guide/, part EK-VT220-HR-002, page 37.) + +> Remember that these sequences +> could be implemented in TTL without a microprocessor of any +> kind & therefore use the simplest possible implementation. + +Peter must be thinking of the much simpler DEC VT52 sequences. As far +as I know, terminals implementing X3.64 have ALWAYS used a built-in +microprocessor. The VT100 was built around an 8-bit-bus Intel 8085. + +In fact, when the X3.64 document was published (circa 1978), some +vendors, insisting on using discrete logic designs, objected that the +standard was so complex it could not be implemented. Most of these +vendors are now floating belly-up on the tide of technology. Some +credit is due to The Heath Company for a pioneering microprocessor- +based video terminal that implemented many of the X3.64 functions. + +> > 2) Should a clear screen code clear the scrolling region only, or the +> > entire screen? How about a clear to end of screen? +> +> I think this is the whole screen regardless of the scrolling region. +> Don't bet your company on it, though. + +Screen clearing should not depend on scrolling. + +Erasing parts of the display (EL and ED) in the VT100 is performed thus: + + Erase from cursor to end of line Esc [ 0 K or Esc [ K + Erase from beginning of line to cursor Esc [ 1 K + Erase line containing cursor Esc [ 2 K + Erase from cursor to end of screen Esc [ 0 J or Esc [ J + Erase from beginning of screen to cursor Esc [ 1 J + Erase entire screen Esc [ 2 J + +Some brain-damaged terminal/emulators respond to Esc [ J as if it were +Esc [ 2 J (here the default is 0), and _some_ versions of Microsoft's +MS-DOS ANSI.SYS contain a bug requiring software to send Esc [ k +(instead of the uppercase). Of course, you would never make this mistake. + +The VT200 and later terminals have the ECH control sequence: + + Esc yy X + +(where yy is a numeric parameter) + +This erases the cursor position and the next (yy-1) positions, but this +is not part of the least common denominator VT100. + + - - - - - - + +There is still various video-terminal information available for +anonymous FTP in "pub/shuford" from + + CS.UTK.EDU [128.169.94.1] + + - - - - - - + +VT, Flip Chip, DIBOL, and Rainbow are trademarks of Digital Equipment +Corporation. + + = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = + diff --git a/konsole/doc/More/vt100_setup.txt b/konsole/doc/More/vt100_setup.txt new file mode 100644 index 000000000..1bdf44cdd --- /dev/null +++ b/konsole/doc/More/vt100_setup.txt @@ -0,0 +1,170 @@ +From: [email protected] (Jim Sherwin) +Newsgroups: comp.terminals +Subject: Re: VT100 (DEC) Setup Problem (online/offline) +Message-ID: <[email protected]> +Date: 25 Oct 91 02:02:07 GMT +Organization: DEC -- Video, Image and Printer Systems Group +Lines: 63 + + + Striking the SET-UP key places you into SET-UP A mode. SET-UP A is + basically your tab stops. Use the space bar to move along the ruler + and strike the T key at the desired tab stop location. + + SET-UP B may only be entered from SET-UP A and is done be striking + the 5 on the main keyboard (i.e. top-row). + + To exit SET-UP B strike the SET-UP key. + + The SET-UP parameters are as follows: + + + Bank Position Parameters + + 1 1 Scroll; 0=jump; 1=smooth + 1 2 Autorepeat; 0=off; 1=on + 1 3 Screen; 0=dark; 1=light + 1 4 Cursor; 0=underline; 1=block + + 2 1 Margin Bell; 0=off; 1=on + 2 2 Keyclick; 0=off; 1=on + 2 3 ANSI/VT52; 0=VT52; 1=ANSI + 2 4 Auto XON/XOFF; 0=off; 1=on + + 3 1 Pound Sign; 0=octothorpe; 1=British Pound + 3 2 Wrap Around; 0=off; 1=on + 3 3 New Line; 0=off; 1=on + 3 4 Interlace; 0=off; 1=on + + 4 1 Parity Sense; 0=odd; 1=even + 4 2 Parity; 0=off; 1=on + 4 3 Bits per Char; 0=7 bits; 1=8 bits + 4 4 Power; 0=60 Hz; 1=50 Hz + + While in SET-UP B mode, these features are set by positioning the + cursor above the feature switch, using the spacebar, and striking + the 6 key on the main keyboard. + + To set the ANSWERBACK MESSAGE, enter SET-UP B and strike the SHIFT + and A keys simultaneously. The terminal will respond with A = on + the screen. Type a message delimiter character which may be any + chaacter not used in the actual message. Type the ANSWERBACK + MESSAGE, up to 20 characters. Type the message delimiter + character. The message will disappear from the screen. You may + not edit an ANSWERBACK MESSAGE. You may only supercede it with a + new ANSWERBACK MESSAGE. + + To save the SET-UP, strike the SHIFT and S keys simultaneously, + while in SET-UP mode. + + I hope this helps. + + Jim + + + <>-<>-<>-<>-<>-<>-<>-<>-<>-<>-<>-<>-<>-<>-<>-<>-<>-<>-<>-<>-<>-<>-<>-<>-<>-<> + <> "When things are going well, \ Jim Sherwin a.k.a. <> + <> someone will inevitably \ [email protected] <> + <> experiment detrimentally." \ !decwrl!royalt.enet.dec.com!sherwin <> + <> Boyle's Second Law \ sherwin%[email protected] <> + <>-<>-<>-<>-<>-<>-<>-<>-<>-<>-<>-<>-<>-<>-<>-<>-<>-<>-<>-<>-<>-<>-<>-<>-<>-<> + + +Article 20936 of comp.dcom.modems: +Path: utkcs2!darwin.sura.net!jvnc.net!yale.edu!think.com!news.bbn.com!news.bbn.com!news +From: Paul Placeway <[email protected]> +Newsgroups: comp.dcom.modems,alt.bbs +Subject: Re: Detecting ANSI on a remote system +Date: 11 Jul 1992 00:04:09 GMT +Lines: 82 +Message-ID: <[email protected]> +References: <[email protected]> <[email protected]> +NNTP-Posting-Host: bbn.com +Xref: utkcs2 comp.dcom.modems:20936 alt.bbs:11447 + [email protected] (Nils Hammar) writes: + +< [email protected] (David Emami) writes: + + +< >I am currently writing a communications app using TurboVision; I've got a +< >view that can display ANSI, but how do I let the system that I hook up with +< >that I can use ANSI codes. Most BBS's that I've tried respond with "ANSI +< >detected" or "ANSI not detected" when I login using a commercial term +< >program, based on the emulation I'm using. I presume that the BBS sends a +< >string which I need to respond to in a certain way; what should my program +< >be looking for, and how should it answer? Any help would be appreciated. + +< What I have been using is the function that reports the cursor position. +< If you get an answer on that request that is correct, it's ANSI, or a VT100 +< compatible terminal. To determine if it's a VT100 or similar, you will have +< to send a second request that's only recognized by the VT100 or +< similar terminals. That request will result in an answer that tells you +< almost everything that you need to know about the terminal. +< If this secondary request doesn't give you any response, then it's only +< ANSI. This is a really nice way to find out if you can send high resolution +< graphics to the caller too. What a surprise to get a hig resolution +< picture on the screen when you are calling an ordinary BBS! + +The ANSI Device Status Report (DSR) is + + ESC [ <n> n + +where <n> is 5 for a status report (OK reply is "ESC [ 0 n"), and 6 +for report cursor position (reply is "ESC [ <row> ; <col> R"). + +ANSI (and DEC) Send Device Attributes is + + ESC [ <n> c + +where <n> is a number, in ASCII 0-9, and usually is 0 for the request. + +Here are a (small) selection of replies: + + what reply comments + ---- ----- ----------- + xterm ESC[?1;2c VT100 w/AVO + MacKermit ESC[?1;2c + VT102 ESC[?6c + VT320 ESC[63;1;2;8;9c + +(These are from vttest, by Per Lindberg) + + vanilla VT100 ESC[?1;0c no options + VT100 with STP ESC[?1;1c + VT100 with AVO ESC[?1;2c could be a VT102 + VT100 with STP and AVO ESC[?1;3c + VT100 with GPO ESC[?1;4c + VT100 with STP and GPO ESC[?1;5c + VT100 with AVO and GPO ESC[?1;6c + VT100 with STP, AVO and GPO ESC[?1;7c + VT100 with PP and AVO ESC[?1;11c + VT100 with PP, GPO and AVO ESC[?1;15c + VT132 with AVO ESC[?4;2c + VT132 with AVO and STP ESC[?4;3c + VT132 with GPO and AVO ESC[?4;6c + VT132 with GPO, AVO, and STP ESC[?4;7c + VT132 with PP and AVO ESC[?4;11c + VT132 with PP, GPO and AVO ESC[?4;15c + VT131 ESC[?7c + VT125 ESC[?12;5c VT125 also has ROM version + VT125 with AVO ESC[?12;7c number, so this won't work + VK100 (GIGI) ESC[?5;0c + VK100 (GIGI) ESC[?5c + + DXterm (DEC's version of xterm) ESC[?63;1;3;4;6;8;9;15;16;29c + +< For this reason, I once wrote a program that convert PCX pictures +< to DEC Sixel Graphics. It was interesting to view those pictures +< on the screen with MS-KERMIT (which supports Sixel Graphics in colour.) +< The only disadvantage was that Sixel graphics is bitmapped and slow. + +This is cute, but one needs to be careful about assuming what a +terminal emulator will do based on what it claims to be. There are a +lot of mediocre "emulations" out there. This is partially because the +ANSI spec allows the terminal to do a lot of weird and unexpected +things, like embedding simple control characters in the middle of an +escape sequence. ("foo ^H^[^H[^H4^HCbar" should render as "foo bar". +Yuck.) + + -- Paul Placeway <[email protected]> diff --git a/konsole/doc/More/vttest.html b/konsole/doc/More/vttest.html new file mode 100644 index 000000000..1474d7601 --- /dev/null +++ b/konsole/doc/More/vttest.html @@ -0,0 +1,205 @@ +<html><head> +<title>The VTTEST VT100/102 Terminal Emulation Test</title> +</head><body> +<h3>The VTTEST VT100/102 Terminal Emulation Test</h3> + +The VTTEST program was written in 1983-85 by Per Lindberg of Stockholm +University in Sweden to exercise and test all the features of a Digital +Equipment Corporation (DEC) VT100 or VT102 terminal or software that emulates +one of these terminals. Incidentally, the primary additional feature of the +VT102 terminal over the VT100 is character insertion and deletion, important in +text-editing applications (like vi or EMACS), especially on slow connections. +<p> +You may obtain the C-language source code for the VTTEST program by ftp, +compile it on your UNIX system (or adapt it to others), and run the tests +yourself: +<p> +<a href="ftp://kermit.columbia.edu/kermit/vttest/"> +ftp://kermit.columbia.edu/kermit/vttest/</a> +<p> +The VTTEST program does not test any features of the VT220 or above, +nor of esoteric VT models like VT125, VT131, etc. A VT220/320 test suite +similar to VTTEST would be most welcome, but none seems to exist. +<p> +The following sheet may be used to administer the test. There are 100 +points, plus 10 possible extra-credit points, so the highest possible +score would be 110. To minimize confusion and promote fairness, begin with +your emulator set to: +<ul> +<li>VT102 (or, if no VT102, then VT100) emulation; +<li>24 rows by 80 columns; +<li>Light foreground on dark background; +<li>Answerback enabled. +</ul> +<pre> +<hr> +VTTEST VT100/VT102 Compatibility Test Score Sheet + +Program and version: konsole______________________________ Date: _________ + +Score: ____________ + Extra credit: ___________ = Final score: ___________ + +Check box if test passed. Score 1 point per check mark. +Perfect score = 100 points. Extra credit at end. + +1. Test of cursor movements + +[1] 1. Text inside frame of E's inside frame of *'s and +'s, 80 columns +[1] 2. Text inside frame of E's inside frame of *'s and +'s, 132 columns +[1] 3. Cursor-control chars inside ESC sequences +[1] 4. Leading 0's in ESC sequences + +2. Test of screen features + +[1] 5. Three identical lines of *'s (test of wrap mode) +[1] 6. Test of tab setting/resetting +[1] 7. 132-column mode, light background +[1] 8. 80-column mode, light background +[1] 9. 132-column mode, dark background +[1] 10. 80-column mode, dark background +[1] 11. Soft scroll down +[1] 12. Soft scroll up / down +[1] 13. Jump scroll down +[1] 14. Jump scroll up / down +[1] 15. Origin mode test (2 parts) + + Graphic Rendition test pattern, dark background + +[1] 16. Normal ("vanilla") +[1] 17. Normal underlined distinct from normal +[1] 18. Normal blink distinct from all above +[1] 19. Normal underline blink distinct from all above +[1] 20. Normal reverse ("negative") distinct from all above +[1] 21. Normal underline reverse distinct from all above +[1] 22. Normal blink reverse distinct from all above +[1] 23. Normal underline blink reverse distinct from all above +[1] 24. Bold distinct from all above +[1] 25. Bold underlined distinct from all above +[1] 26. Bold blink distinct from all above +[1] 27. Bold underline blink distinct from all above +[1] 28. Bold reverse ("negative") distinct from all above +[1] 29. Bold underline reverse distinct from all above +[1] 30. Bold blink reverse distinct from all above +[1] 31. Bold underline blink reverse distinct from all above + + Graphic Rendition test pattern, light background + +[1] 32. Normal ("vanilla") +[1] 33. Normal underlined distinct from normal +[1] 34. Normal blink distinct from all above +[1] 35. Normal underline blink distinct from all above +[1] 36. Normal reverse ("negative") distinct from all above +[1] 37. Normal underline reverse distinct from all above +[1] 38. Normal blink reverse distinct from all above +[1] 39. Normal underline blink reverse distinct from all above +[1] 40. Bold distinct from all above +[1] 41. Bold underlined distinct from all above +[1] 42. Bold blink distinct from all above +[1] 43. Bold underline blink distinct from all above +[1] 44. Bold reverse ("negative") distinct from all above +[1] 45. Bold underline reverse distinct from all above +[1] 46. Bold blink reverse distinct from all above +[1] 47. Bold underline blink reverse distinct from all above + + Save/Restore Cursor + +[1] 48. AAAA's correctly placed +[1] 49. Lines correctly rendered (middle of character cell) +[1] 50. Diamonds correctly rendered + +3. Test of character sets + +[1] 51. UK/National shows Pound Sterling sign in 3rd position +[1] 52. US ASCII shows number sign in 3rd position +[1] 53. SO/SI works (right columns identical with left columns) +[1] 54. True special graphics & line drawing chars, not simulated by ASCII + +4. Test of double-sized chars + + Test 1 in 80-column mode: + +[0] 55. Left margin correct +[0] 56. Width correct + + Test 2 in 80-column mode: + +[0] 57. Left margin correct +[0] 58. Width correct + + Test 1 in 132-column mode: + +[0] 59. Left margin correct +[0] 60. Width correct + + Test 2 in 132-column mode: + +[0] 61. Left margin correct +[0] 62. Width correct + +[0] 63. "The man programmer strikes again" test pattern +[0] 64. "Exactly half the box should remain" + +5. Test of keyboard + +[?] 65. LEDs. +[?] 66. Autorepeat +[1] 67. "Press each key" (ability to send each ASCII graphic char) +[1] 68. Arrow keys (ANSI/Cursor key mode reset) +[1] 69. Arrow keys (ANSI/Cursor key mode set) +[?] 70. Arrow keys VT52 mode +[?] 71. PF keys numeric mode +[?] 72. PF keys application mode +[?] 73. PF keys VT52 numeric mode +[?] 74. PF keys VT52 application mode +[1] 75. Send answerback message from keyboard +[?] 76. Ability to send every control character + +6. Test of Terminal Reports + +[1] 77. Respond to ENQ with answerback +[1] 78. Newline mode set +[1] 79. Newline mode reset +[1] 80. Device status report 5 +[1] 81. Device status report 6 +[1] 82. Device attributes report +[1] 83. Request terminal parameters 0 +[1] 84. Request terminal parameters 1 + +7. Test of VT52 submode + +[1] 85. Centered rectangle +[1] 86. Normal character set +[1] 87. Graphics character set +[1] 88. Identify query + +8. VT102 Features + +[1] 89. Insert/delete line, 80 columns +[1] 90. Insert (character) mode, 80 columns +[1] 91. Delete character, 80 columns +[1] 92. Right column staggered by 1 (normal chars), 80 columns +[1] 93. Right column staggered by 1 (double-wide chars), 80 columns +[1] 94. ANSI insert character, 80 columns +[1] 95. Insert/delete line, 132 columns +[1] 96. Insert (character) mode, 132 columns +[1] 97. Delete character, 132 columns +[1] 98. Right column staggered by 1 (normal chars), 132 columns +[1] 99. Right column staggered by 1 (double-wide chars), 132 columns +[1] 100. ANSI insert character, 132 columns + +9. Extra credit + +[0] 101. True soft (smooth) scroll +[1] 102. True underline +[1] 103. True blink +[0] 104. True double-high/wide lines, not simulated +[1] 105. Reset terminal (*) +[0] 106. Interpret controls (debug mode) (*) +[0] 107. Send BREAK (250 msec) (*) +[0] 108. Send Long BREAK (1.5 sec) (*) +[0] 109. Host-controlled transparent / controller print (*) +[0] 110. Host-controlled autoprint (*) + +(*) Features of VT100 not tested by vttest. +</body> +</html> diff --git a/konsole/doc/More/xterm.codes b/konsole/doc/More/xterm.codes new file mode 100644 index 000000000..b14ead600 --- /dev/null +++ b/konsole/doc/More/xterm.codes @@ -0,0 +1,206 @@ + + Basic forms + + : Char (ordinary character) - evtChar(char chr) + : Cntl (control character) - evtCtrl(char control) + : ESC <Mono> - evtMono(char mono) + : ESC [ <Ps> <Char> - evtParm(char pc, int n, char* Ps[]) + : ESC <Duo> <Char> - evtPrmc(char duo, char arg) + + : Special forms for Xterm extentions + + + DEC private mode. + + - Although <Ps> can be any character in range of 0x30-0x3f, that + means any of "0123456789:;<=>?", a scan through different sources + shows that DEC private mode is indicated only with the *first* + parameter. That means that the '?' is attached only to the first + parameter in a sequence and all following are implicitely ment, too. + Thus DES private mode and ordinary modes cannot be mixed within + one sequence. + +------------------------ + + The following is a list of control sequences recognized by screen. "(V)" + and "(A)" indicate VT100-specific and ANSI- or ISO-specific functions, + respectively. + + 'x' in beginning means 'XTerm'. (ftp://ftp.x.org/...?) + +x BEL Bell (Ctrl-G) +x BS Backspace (Ctrl-H) +x TAB Horizontal Tab (HT) (Ctrl-I) +x LF Linefeed or New Line (NL) (Ctrl-J) +x VT Vertical Tab (Ctrl-K) same as LF +x FF Form Feed or New Page (NP) (Ctrl-L) same as LF +x CR Carriage Return (Ctrl-M) +x SO (A) Lock Shift G1 (Ctrl-N) +x SI (A) Lock Shift G0 (Ctrl-N) + +x ESC # 8 (V) Fill Screen with E's (for adjustment) + +x ESC ( Pcs (A) Designate character set as G0 +x ESC ) Pcs (A) Designate character set as G1 +x ESC * Pcs (A) Designate character set as G2 +x ESC + Pcs (A) Designate character set as G3 +x Pcs = 0 : Graphics +x A : UK +x B : US + +x ESC 7 (V) Save Cursor and Attributes +x ESC 8 (V) Restore Cursor and Attributes + +x ESC = (V) Application Keypad Mode +x ESC > (V) Numeric Keypad Mode + +x ESC D Index +x ESC E Next Line +x ESC F Cursor to left lower corner +x ESC H Horizontal Tab Set +x ESC M Reverse Index +x ESC N (A) Single Shift G2 +x ESC O (A) Single Shift G3 +x ESC Z Send VT100 Identification String + +x ESC [ Pn @ (dft:1) (A) Insert Blank Characters +x ESC [ Pn A (dft:1) Cursor Up +x ESC [ Pn B (dft:1) Cursor Down +x ESC [ Pn C (dft:1) Cursor Right +x ESC [ Pn D (dft:1) Cursor Left + +x ESC [ Pn ; Pn H (dft:1;1) Direct Cursor Addressing + ESC [ Pn J (dft:1) Erase in Display +x Pn = 0 (dft) From Cursor to End of Screen +x 1 From Beginning of Screen to Cursor +x 2 Clear whole screen + ESC [ Pn K Erase in Line +x Pn = 0 (dft) From Cursor to End of Line +x 1 From Beginning of Line to Cursor +x 2 Clear whole Line +x ESC [ Pn L (dft: 1) (A) Insert Line +x ESC [ Pn M (dft: 1) (A) Delete Line +x ESC [ Pn P (dft: 1) (A) Delete Character + +x ESC [ Ps c Send Device Attribute +x Ps = 0 (dft) Send VT100 Identification String +x > Send VT220 Secondary Device Attributes String + +x ESC [ Pn ; Pn f (dft:1;1) Direct Cursor Addressing (see ESC[H) +x ESC [ Ps g Clear Tabs +x Ps = 0 (dft) Clear current +x 3 Clear all + + ESC [ Ps ;...; Ps h Set Mode + ESC [ Ps ;...; Ps l Reset Mode (indicated in parenthesis) +x Ps = 4 (A) Insert (Replace) Mode +x 20 (A) Automatic (Normal) Linefeed Mode +- 34 Normal Cursor Visibility + +x ESC [ Ps ;...; Ps m Select Graphic Rendition +x Ps = 0 (dft) Default Rendition +x 1 Bold +- 2 (A) Faint +- 3 (A) Standout Mode (ANSI: Italicized) +x 4 Underlined +x 5 Blinking +x 7 Negative Image + + 22 (A) Normal Intensity + 23 (A) Standout Mode off (ANSI: Italicized off) + 24 (A) Not Underlined + 25 (A) Not Blinking + 27 (A) Positive Image + +x 3x (A) Foreground Color x +x 4x (A) Background Color x +x x = 0 (A) Black +x 1 (A) Red +x 2 (A) Green +x 3 (A) Yellow +x 4 (A) Blue +x 5 (A) Magenta +x 6 (A) Cyan +x 7 (A) White +x 9 (A) Default + +x ESC [ 6 n Send Device Report +x Ps = 5 Send Status report (ESC [ 0 n) +x 6 Send Cursor Position Report (ESC [ Row ; Col R) + +x ESC [ Pn ; Pn r (dft:all) Set Scrolling region + +x ESC [ ? Ps ; ... Ps h Set DEC private mode +x ESC [ ? Ps ; ... Ps l Reset DEC private mode +x ESC [ ? Ps ; ... Ps s Save DEC private mode +x ESC [ ? Ps ; ... Ps r Restore DEC private mode +x Ps = 1 (V) Application (Normal) Cursor Keys +x 2 // xterm: US -> G0..G3 // vt100: --> ansi/vt52 +x 3 (V) 132 (80) columns mode +x 4 Smooth (Fast) Scroll +x 5 (V) Reverse (Normal) Video +x 6 (V) Origin (Normal) Cursor Mode +x 7 (V) Wraparound (Normal) Cursor Mode +x 8 (No) Autorepeat Keys +x 9 (Don't) Send Mouse XY on button press +x 40 (Dis-) Allow 80<->132 +x 44 turn on (off) margin bell +x 45 (no) reverse wrap around mode +x 47 use (normal) alternate screen +x 1000 (don't) send mouse XY on button press and release + + i won't care for that +x-- 38 Enter Textronix Mode +x?? 41 (No) 'more(1)' fix +x- 46 start (stop) logging +x 1001 (don't) use hilite mouse tracking + +---------------------------------------------- + +following some Xterm specific commands + +x ESC ] Ps ; Pt BEL (A) Operating System Command (xterm title hack) +x Ps = 0 +x 1 +x 2 +x 46 +x 50 + +x ESC ^ Pt ESC \ (A) Privacy Message String (Message Line) +x- ESC _ Pt ESC \ (A) Application Program Command +x- ESC P Ps ESC \ (A) Device Control String. Outputs a string + directly to the host terminal without + interpretation. + +---------------------------------------------- + +x ESC c Full Reset + +x ESC n (A) Lock Shift G2 +x ESC o (A) Lock Shift G3 + +------------ more... + + ESC [ s (A) Save Cursor and Attributes + + ESC [ 8 ; Ph ; Pw t Resize the window to `Ph' lines and `Pw' columns + (SunView special) + + ESC \ (A) String Terminator + ESC ! Global Message String (Message Line) + ESC k A.k.a. Definition String + +- ESC [ Pn i (A) Relay to printer (ANSI Media Copy) +- Pn = 4 (A) Stop relay to printer (ANSI Media Copy) +- 5 (A) Start relay to printer (ANSI Media Copy) + +x- ESC l Memory Lock (HP) (FIXME: what that?) +x- ESC m Memory Unlock (HP) (FIXME: what that?) + +x- ESC | +x- ESC } +x- ESC ~ + +//FIXME: ESC[...T is hilite mouse tracking in xterm. +- ESC [ Pn S Scroll Scrolling Region Up +- ESC [ Pn T Scroll Scrolling Region Down |