221 lines
8.3 KiB
Plaintext
221 lines
8.3 KiB
Plaintext
Date: 12 Sep 89 17:44:43 GMT
|
|
From: crdgw1!montnaro@uunet.uu.net (Skip Montanaro)
|
|
Organization: GE Corporate Research & Development, Schenectady, NY
|
|
Subject: XTerm Escape Sequences (X11 Version)
|
|
To: xpert@expo.lcs.mit.edu
|
|
|
|
I rummaged around through the xterm code and came up with the following
|
|
stuff. No guarantees. I'm headed out of town for a couple days and thought
|
|
it better to get it out than let it get stale. Comments, bugs, and other
|
|
notes are welcome. Somebody else can convert it to troff. I prefer LaTeX.
|
|
:-) I will try and get to the Tek mode stuff when I return, although I doubt
|
|
it's changed much from X10 XTerm.
|
|
|
|
I gleaned the basic stuff out of the charproc.c code, by hacking VTparse()
|
|
so it spit out leaves of the parse tree. I was mildly surprised to see
|
|
things like "ESC # BEL" turn up.
|
|
|
|
For most folks, the most interesting stuff will probably be "ESC ] Ps ND
|
|
string NP" down near the bottom. That's what you use to change the icon and
|
|
window labels, and the log file name. Most other things appear the same as
|
|
the X10 documentation, although a few DEC-ish mode parameters (42, 43, 48, &
|
|
49) seem to have disappeared.
|
|
|
|
------------------------------------------------------------------------------
|
|
BEL Bell (Ctrl-G)
|
|
BS Backspace (Ctrl-H)
|
|
HT Horizontal Tab (Ctrl-I)
|
|
NL Line Feed or New Line (Ctrl-J)
|
|
VT Vertical Tab (Ctrl-K)
|
|
NP Form Feed or New Page (Ctrl-L)
|
|
CR Carriage Return (Ctrl-M)
|
|
SO Shift Out (Ctrl-N) -> Switch to Alternate Character Set
|
|
SI Shift In (Ctrl-O) -> Switch to Standard Character Set
|
|
ESC BEL (Same as non-escaped BEL)
|
|
ESC BS (Same as non-escaped BS)
|
|
ESC HT (Same as non-escaped HT)
|
|
ESC NL (Same as non-escaped NL)
|
|
ESC VT (Same as non-escaped VT)
|
|
ESC NP (Same as non-escaped NP)
|
|
ESC CR (Same as non-escaped CR)
|
|
ESC SO (Same as non-escaped SO)
|
|
ESC SI (Same as non-escaped SI)
|
|
ESC # BEL (Same as non-escaped BEL)
|
|
ESC # BS (Same as non-escaped BS)
|
|
ESC # HT (Same as non-escaped HT)
|
|
ESC # NL (Same as non-escaped NL)
|
|
ESC # VT (Same as non-escaped VT)
|
|
ESC # NP (Same as non-escaped NP)
|
|
ESC # CR (Same as non-escaped CR)
|
|
ESC # SO (Same as non-escaped SO)
|
|
ESC # SI (Same as non-escaped SI)
|
|
ESC # 8 DEC Screen Alignment Test (DECALN)
|
|
ESC ( BEL (Same as non-escaped BEL)
|
|
ESC ( BS (Same as non-escaped BS)
|
|
ESC ( HT (Same as non-escaped HT)
|
|
ESC ( NL (Same as non-escaped NL)
|
|
ESC ( VT (Same as non-escaped VT)
|
|
ESC ( NP (Same as non-escaped NP)
|
|
ESC ( CR (Same as non-escaped CR)
|
|
ESC ( SO (Same as non-escaped SO)
|
|
ESC ( SI (Same as non-escaped SI)
|
|
ESC ( C Select G0 Character Set (SCS)
|
|
C = 0 -> Special Character and Line Drawing Set
|
|
C = 1 -> Alternate Character ROM Standard Set
|
|
C = 2 -> Alternate Character ROM Special Set
|
|
C = A -> United Kingdom (UK)
|
|
C = B -> United States (USASCII)
|
|
ESC ) C Select G1 Character Set (SCS)
|
|
C takes same values as above
|
|
ESC * C Select G2 Character Set (SCS)
|
|
C takes same values as above
|
|
ESC + C Select G3 Character Set (SCS)
|
|
C takes same values as above
|
|
ESC 7 Save Cursor (DECSC)
|
|
ESC 8 Restore Cursor (DECRC)
|
|
ESC = Application Keypad (DECPAM)
|
|
ESC > Normal Keypad (DECNM)
|
|
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)
|
|
ESC O Single Shift Select of G3 Character Set (SS3)
|
|
ESC [ BEL (Same as non-escaped BEL)
|
|
ESC [ BS (Same as non-escaped BS)
|
|
ESC [ HT (Same as non-escaped HT)
|
|
ESC [ NL (Same as non-escaped NL)
|
|
ESC [ VT (Same as non-escaped VT)
|
|
ESC [ NP (Same as non-escaped NP)
|
|
ESC [ CR (Same as non-escaped CR)
|
|
ESC [ SO (Same as non-escaped SO)
|
|
ESC [ SI (Same as non-escaped SI)
|
|
ESC [ ? BEL (Same as non-escaped BEL)
|
|
ESC [ ? BS (Same as non-escaped BS)
|
|
ESC [ ? HT (Same as non-escaped HT)
|
|
ESC [ ? NL (Same as non-escaped NL)
|
|
ESC [ ? VT (Same as non-escaped VT)
|
|
ESC [ ? NP (Same as non-escaped NP)
|
|
ESC [ ? CR (Same as non-escaped CR)
|
|
ESC [ ? SO (Same as non-escaped SO)
|
|
ESC [ ? SI (Same as non-escaped SI)
|
|
ESC [ ? Ps h DEC Private Mode Set (DECSET)
|
|
Ps = 1 -> Application Cursor Keys (DECCKM)
|
|
Ps = 2 -> Set VT52 Mode
|
|
Ps = 3 -> 132 Column Mode (DECCOLM)
|
|
Ps = 4 -> Smooth (Slow) Scroll (DECSCLM)
|
|
Ps = 5 -> Reverse Video (DECSCNM)
|
|
Ps = 6 -> Origin Mode (DECOM)
|
|
Ps = 7 -> Wraparound Mode (DECAWM)
|
|
Ps = 8 -> Auto-Repeat Keys (DECARM)
|
|
Ps = 9 -> Send MIT Mouse Row & Column on Button
|
|
Press
|
|
Ps = 38 -> Enter Tektronix Mode (DECTEK)
|
|
Ps = 40 -> Allow 80 <-> 132 Mode
|
|
Ps = 41 -> curses(5) fix
|
|
Ps = 44 -> Turn on Margin Bell
|
|
Ps = 45 -> Reverse-wraparound Mode
|
|
Ps = 46 -> Start Logging
|
|
Ps = 47 -> Use Alternate Screen Buffer
|
|
Ps = 1000 -> xtem bogus sequence (???)
|
|
Ps = 1001 -> xtem sequence w/hilite tracking (???)
|
|
ESC [ ? Ps l DEC Private Mode Reset (DECRST)
|
|
Ps = 1 -> Normal Cursor Keys (DECCKM)
|
|
Ps = 3 -> 80 Column Mode (DECCOLM)
|
|
Ps = 4 -> Jump (Fast) Scroll (DECSCLM)
|
|
Ps = 5 -> Normal Video (DECSCNM)
|
|
Ps = 6 -> Normal Cursor Mode (DECOM)
|
|
Ps = 7 -> No Wraparound Mode (DECAWM)
|
|
Ps = 8 -> No Auto-Repeat Keys (DECARM)
|
|
Ps = 9 -> Don't Send MIT Mouse Row & Column on
|
|
Button Press
|
|
Ps = 40 -> Don't Allow 80 <-> 132 Mode
|
|
Ps = 41 -> No curses(5) fix
|
|
Ps = 44 -> Turn Off Margin Bell
|
|
Ps = 45 -> No Reverse-wraparound Mode
|
|
Ps = 46 -> Stop Logging
|
|
Ps = 47 -> Use Normal Screen Buffer
|
|
Ps = 1000 -> xtem bogus sequence (???)
|
|
Ps = 1001 -> xtem sequence w/hilite tracking (???)
|
|
ESC [ ? Ps r Restore DEC Private Mode
|
|
Ps = 1 -> Normal/Application Cursor Keys (DECCKM)
|
|
Ps = 3 -> 80/132 Column Mode (DECCOLM)
|
|
Ps = 4 -> Jump (Fast)/Smooth (Slow) Scroll (DECSCLM)
|
|
Ps = 5 -> Normal/Reverse Video (DECSCNM)
|
|
Ps = 6 -> Normal/Origin Cursor Mode (DECOM)
|
|
Ps = 7 -> No Wraparound/Wraparound Mode (DECAWM)
|
|
Ps = 8 -> Auto-repeat/No Auto-repeat Keys (DECARM)
|
|
Ps = 9 -> Don't Send/Send MIT Mouse Row & Column on
|
|
Button Press
|
|
Ps = 40 -> Disallow/Allow 80 <-> 132 Mode
|
|
Ps = 41 -> Off/On curses(5) fix
|
|
Ps = 44 -> Turn Off/On Margin Bell
|
|
Ps = 45 -> No Reverse-wraparound/Reverse-wraparound
|
|
Mode
|
|
Ps = 46 -> Stop/Start Logging
|
|
Ps = 47 -> Use Normal/Alternate Screen Buffer
|
|
Ps = 1000 -> mouse bogus sequence (???)
|
|
Ps = 1001 -> mouse bogus sequence (???)
|
|
ESC [ ? Ps s Save DEC Private Mode
|
|
Same P's as Restore DEC Private Mode
|
|
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 ; Ps H Cursor Position [row;column] (default = [1,1]) (CUP)
|
|
ESC [ Ps J Erase in Display
|
|
Ps = 0 -> Clear Below (default)
|
|
Ps = 1 -> Clear Above
|
|
Ps = 2 -> Clear All
|
|
ESC [ Ps K Erase in Line
|
|
Ps = 0 -> Clear to Right (default)
|
|
Ps = 1 -> Clear to Left
|
|
Ps = 2 -> Clear All
|
|
ESC [ Ps L Insert Ps lines (default = 1) (IL)
|
|
ESC [ Ps M Delete Ps lines (default = 1) (DL)
|
|
ESC [ Ps P Delete Ps Characters (default = 1) (DCH)
|
|
ESC [ T Track Mouse (???)
|
|
ESC [ Ps c Device Attributes (DA1)
|
|
ESC [ Ps ; Ps f Cursor Position [row;column] (default = [1,1]) (HVP)
|
|
ESC [ Ps g Tab Clear
|
|
Ps = 0 -> Clear Current Column (default)
|
|
Ps = 3 -> Clear All
|
|
ESC [ Ps h Mode Set (SET)
|
|
Ps = 4 -> Insert Mode (IRM)
|
|
Ps = 20 -> Automatic Linefeed (LNM)
|
|
ESC [ Ps l Mode Reset (RST)
|
|
Ps = 4 -> Insert Mode (IRM)
|
|
Ps = 20 -> Automatic Linefeed (LNM)
|
|
ESC [ Pm m Character Attributes (SGR)
|
|
Ps = 0 -> Normal (default)
|
|
Ps = 1 -> Blink (appears as Bold)
|
|
Ps = 4 -> Underscore
|
|
Ps = 5 -> Bold
|
|
Ps = 7 -> Inverse
|
|
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
|
|
ESC [ Ps ; Ps r Set Scrolling Region [top;bottom] (default = full size
|
|
of window) (DECSTBM)
|
|
ESC [ Ps x Request Terminal Parameters (DECREQTPARM)
|
|
ESC ] Ps ND string NP OSC Mode
|
|
ND can be any non-digit Character (it's discarded)
|
|
NP can be any non-printing Character (it's discarded)
|
|
string can be any ASCII printable string
|
|
(max 511 characters)
|
|
Ps = 0 -> use string as a new icon name and title
|
|
Ps = 1 -> use string is a new icon name only
|
|
Ps = 2 -> use string is a new title only
|
|
Ps = 46 -> use string as a new log file name
|
|
|
|
ESC c Full Reset
|
|
ESC n Switch to Alternate Character Set LS2
|
|
ESC o Switch to Alternate Character Set LS3
|
|
ESC | Switch to Alternate Graphics(?) Set LS3R
|
|
ESC } Switch to Alternate Graphics(?) Set LS2R
|
|
ESC ~ Switch to Alternate Graphics(?) Set LS1R
|
|
--
|
|
Skip Montanaro (montanaro@crdgw1.ge.com)
|