mirror of
https://github.com/KDE/konsole.git
synced 2026-01-17 19:48:14 -05:00
1880 lines
59 KiB
Plaintext
1880 lines
59 KiB
Plaintext
##############################################################################
|
||
# #
|
||
# [Table.Codes] Concept Data Base #
|
||
# #
|
||
# Copyright (c) 1998 by Lars Doelle <lars.doelle@on-line.de> #
|
||
# This file is part of Konsole #
|
||
##############################################################################
|
||
|
||
# This is work in progress. The overall goal is to link the documentation of
|
||
# konsole closely to it's source. Further, the source could be organize such
|
||
# that the emulation dependent parts are separated from everything else.
|
||
# If this goal is matched, the emulation independent parts have to undergo
|
||
# documentation, also.
|
||
#
|
||
# Refere to [db.trans] for not-yet-integrated stuff.
|
||
#
|
||
# What has to be done in any case is to merge db.trans into this file and to
|
||
# make a script that extracts it again. From db.trans, we then generate parts
|
||
# of the decoder (the semantic assignment).
|
||
#
|
||
# db2.pl contains as script able to slit TEScreen.C into the emulation
|
||
# (in)dependent parts due to [db.trans].
|
||
#
|
||
# A like thing has to be done for TEmuVt102.C/h and for TEScreen.h.
|
||
#
|
||
# The missing link in the moment is a proper handling of all the Ps arguments
|
||
# that refere to different routines (subfunction of an esc code).
|
||
|
||
## Section Text ##############
|
||
|
||
Introduction.html
|
||
<h2>Introduction</h2>
|
||
<p>
|
||
In a traditional UNIX installation a single machine (host) served
|
||
several users by means of terminals attached to this host by a serial
|
||
cable. These terminals (end points) where specialized devices, either
|
||
regular ttys (printer with keyboard) or later more sophisticated
|
||
things with cathode ray tubes.
|
||
<p>
|
||
<center><img src="konsole2.gif"></center>
|
||
<p>
|
||
Today, hardware has become so cheap, that each single user could
|
||
be provided with a complete host/display combination for the former
|
||
price of a terminal.
|
||
<p>
|
||
Additional, and here we come to the X in the emulation, display
|
||
devices have become graphical while the original terminal where
|
||
only able to show characters but not graphics.
|
||
<p>
|
||
To allow programs designed for the original configuration to be
|
||
used in the contemporary setup, "terminal emulations" where invented.
|
||
In these emulations, the whole original setup is simulated.
|
||
<p>
|
||
The serial cable is folded into the operating system as a sort of
|
||
loop back device, and a program, the terminal emulation, uses modern
|
||
means of graphical user interfaces to behave like an earlier terminal.
|
||
To complete the picture, the host in the diagram is replaced by the
|
||
application that runs in the emulation (typically a shell or an old
|
||
editor). So, terminal emulations are in fact interfaces to character
|
||
oriented applications.
|
||
<p>
|
||
This document describes the implementations of a program named
|
||
"konsole", which is such an X terminal emulation. Since konsole
|
||
is distributed under the GPL, meaning that it's source code is
|
||
available to whoever likes to hack on it, the program would be
|
||
incomplete without a proper introduction into the code and it's
|
||
concepts. Thus, this text is to complement the program and the
|
||
source with the remaining informations to make a complete product.
|
||
<p>
|
||
<h2>A first refinement</h2>
|
||
<p>
|
||
Before we can come to the actual implementation, quite some
|
||
notions have to be introduced. We have to get us an idea what
|
||
a terminal emulation does in more detail.
|
||
<p>
|
||
To this end, a simple model of the terminal and it's operation
|
||
is given, which is later extended and refined as we come deeper
|
||
into matter and implementation.
|
||
<p>
|
||
At some level conception, a terminal can be described as a
|
||
(abstract) data model. This means it has some type of state
|
||
together with operations on that data type. These operations
|
||
are somehow encoded to be passed over the serial line.
|
||
<p>
|
||
The concrete model is often loosely named the "emulation",
|
||
the specific encoding chosen, the "protocol".
|
||
<p>
|
||
There are two principle models in use. The first, stream like
|
||
one, which is related to a tty, consideres the terminal as an
|
||
indefinit long and wide sheet of paper on which a printer head
|
||
types the characters that come in over the line. Typical examples
|
||
are shell scripts, make and other programs producing sequential
|
||
protocols of their activity. Their basic data type is a list of
|
||
list of characters.
|
||
<p>
|
||
The second principle model is used by applications written
|
||
especially for crt devices, so called full screen applications.
|
||
These treat the terminal as a matrix of characters where each
|
||
position can be individually addressed and written to. Typical
|
||
representatives are full screen editors like vi and emacs,
|
||
file managers like mc and mail readers like mutt.
|
||
<p>
|
||
Though the second model is newer, it's age does not imply a
|
||
preference. To the contrary, both models have a right for their
|
||
own and are both to be supported. The first model is fully
|
||
expressed within konsole in form of it's ref:history buffer.
|
||
<p>
|
||
Note, that although the second model definitely build on the
|
||
first one in almost any respect, it cannot fully express it,
|
||
since it introduces a finite line length, while the first
|
||
model works with indefinite lines.
|
||
<p>
|
||
Since application with both view of things are typically run
|
||
within the same session, some effort has been made within
|
||
konsole to maintain both ideas simultaniously, but only with
|
||
limited success so far.
|
||
<p>
|
||
In both models, the notion of a current position (historically
|
||
a printer's head, nowadays visualized by a cursor) is present.
|
||
"Printing" a character at the current position and advancing
|
||
the head together with the starting a new line are the most
|
||
fundamental operations of the emulation.
|
||
<p>
|
||
The full screen model basically adds the possibility to position
|
||
the cursor and to overwrite and clear the screen.
|
||
<p>
|
||
A plethora of additional (more or less useful) commands are
|
||
then added on this by every specific emulation, see below for
|
||
the awful details.
|
||
<p>
|
||
<!-- BEGIN: new section about the codes -->
|
||
<h2>Parts of the model</h2>
|
||
<p>
|
||
<it>All the following in this section is an outline</it>.
|
||
<p>
|
||
Parts of the terminal description
|
||
<ul>
|
||
<li>State
|
||
<br>This is mainly the screen, the cursor (including it's graphical state)
|
||
and some hidden mode variables. Note that the state cannot be investigated
|
||
by the attached host.
|
||
<li>Interface
|
||
<br>That's what goes over the wire. Beside being related to objects, this
|
||
appears so closely related to contemporal process communication, that
|
||
it might be discussed in likely terms.
|
||
<br>We have information flowing in both directions. On could destinguist
|
||
between:
|
||
<li>Commands
|
||
<br>These are "calls" of the terminals interface by the host which cause
|
||
some change of the terminals state, but do not end in a response.
|
||
<li>Requests
|
||
<br>These are "calls" of the terminals interface by the host which do not cause
|
||
any change of the terminals state, but end in a response of the terminal.
|
||
Clearly, requests are somehow used to investigate the state of the terminal.
|
||
<li>Events
|
||
<br>These are signals from the terminal caused by the user affecting the
|
||
mouse or keyboard to the host.
|
||
<li>Replys
|
||
<br>These are send by the terminal as a result of a Request from the hosts.
|
||
<li>Encoding/Decoding
|
||
</ul>
|
||
|
||
Sequences.html
|
||
Conceptually, the commands to the terminal emulation are encoded if form
|
||
of byte sequences to meet the restrictions of the transport media. These
|
||
sequences have pretty different originations and therefore the format of
|
||
the sequences are inhomogenous.
|
||
<p>
|
||
Refering both to their origin and form, one can group the overall encoding
|
||
schemes as follows:
|
||
<p>
|
||
<table>
|
||
<tr><td width=20% bgcolor=#d0d0d0>Name</td><td width=20% bgcolor=#d0d0d0>Pattern</td><td bgcolor=#d0d0d0>Scope</td><td bgcolor=#d0d0d0>Comment</td></tr>
|
||
<tr><td>Printable Ascii Characters</td><td>32..126</td><td>ASCII ECMA</td>
|
||
<td>This is the most original pattern of all. The characters to be
|
||
displayed are passed over the chanel and are interpreted by the
|
||
terminal (emulation) as instructions to display the corresponding
|
||
glyph of the ascii character set. Contempory emulations include the
|
||
upper half (128..255) of the extentions to the national ascii character
|
||
sets, also.</td></tr>
|
||
<tr><td>Ascii Control Characters</td><td>0..26,28..31,127</td><td>ASCII ECMA</td>
|
||
<td>Ascii defines some non-printable, but format effecting characters, too.
|
||
Depending on the emulation, at least some of them are given a meaning.
|
||
The typically implemented ones are those that are handled by a teletype
|
||
like device.</td></tr>
|
||
<tr><td>Simple Escape Sequence</td><td><b>ESC</b> <i>C</i></td><td>ECMA</td>
|
||
<td>These sequences are made up from an <b>ESC</b> character followed by
|
||
exactly one other character in the range ???..???.</td></tr>
|
||
<tr><td>CSI Sequence</td>
|
||
<td><b>ESC</b> <b>[</b> <i>Parameters</i> {<i>I</i>} <i>C</i></td>
|
||
<td>ECMA</td>
|
||
<td></td></tr>
|
||
<tr><td colspan=4>
|
||
<p>
|
||
The remaining codes are nonstandard but traditionalized hacks.
|
||
<p>
|
||
</td></tr>
|
||
<tr><td>DEC hacks</td>
|
||
<td><b>ESC</b> <i>C</i> <i>D</i></td>
|
||
<td>VT100</td>
|
||
<td></td></tr>
|
||
<tr><td>XTERM hacks</td>
|
||
<td><b>ESC ]</b> <i>Pn</i> <b>;</b> <i>text</i> <b>BEL</b></td>
|
||
<td>XTERM</td>
|
||
<td></td>
|
||
<tr><td colspan=4>
|
||
<p>
|
||
VT52 uses a different (incompatible) set of escape codes. VT100 includes
|
||
the VT52 emulation as a mode.
|
||
<p>
|
||
</td></tr>
|
||
</tr>
|
||
<tr><td>Simple Escape Sequence</td><td><b>ESC</b> <i>C</i></td><td>VT52</td>
|
||
<td></td></tr>
|
||
<tr><td>Complex Escape Sequence</td><td><b>ESC</b> <b>Y</b> <i>X</i> <i>Y</i></td><td>VT52</td>
|
||
<td></td></tr>
|
||
.
|
||
</table>
|
||
.
|
||
<h3>More on Control Sequences</h3>
|
||
.
|
||
<h4>Control Characters</h4>
|
||
.
|
||
Control characters (codes 0x00 - 0x1f 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 a VT100. The processing of the control sequence then
|
||
continues with the next character received. The exceptions are:
|
||
if the <a href=#ESC>ESC</a> character occurs, the current control sequence
|
||
is aborted, and a new one commences beginning with the <a href=#ESC>ESC</a>
|
||
just received. If the character <a href=#CAN>CAN</a> (0x0c) or the
|
||
character <a href=#SUB>SUB</a> (0x0e) 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.
|
||
<p>
|
||
.
|
||
<h4>CSI Sequences</h4>
|
||
.
|
||
<dl>
|
||
<dt>Control Sequence Introducer (CSI):
|
||
<dd>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>[
|
||
.
|
||
<dt>Parameter:
|
||
<dd>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).
|
||
<br>2. The value so represented.
|
||
.
|
||
<dt>Numeric Parameter:
|
||
<dd>A parameter that represents a number, designated by Pn.
|
||
.
|
||
<dt>Selective Parameter:
|
||
<dd>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.
|
||
.
|
||
<dt>Parameter String:
|
||
<dd>A string of parameters separated by a semicolon.
|
||
.
|
||
<dt>Default:
|
||
<dd> A function-dependent value that is assumed when no explicit
|
||
value, or a value of 0, is specified.
|
||
.
|
||
<dt>Final character:
|
||
<dd>A character whose bit combination terminates an escape or control sequence.
|
||
</dl>
|
||
.
|
||
<em>EXAMPLE</em>: Control sequence to turn off all character attributes, then
|
||
turn on underscore and blink attributes (<a href=#SGR>SGR</a>).
|
||
.
|
||
<center><img src="konsole1.gif"></center>
|
||
<p>
|
||
The octal representation of this string is:
|
||
<pre>
|
||
033 0133 060 073 064 073 065 0155
|
||
<ESC> [ 0 ; 4 ; 5 m
|
||
</pre>
|
||
.
|
||
Alternate sequences which will accomplish the same thing:
|
||
.
|
||
<ul>
|
||
<li><code><ESC>[;4;m </code>
|
||
<li><code><ESC>[m </code>
|
||
<br><code><ESC>[4m </code>
|
||
<br><code><ESC>[5m </code>
|
||
<li><code><ESC>[0;04;005m</code>
|
||
</ul>
|
||
.
|
||
<h4>DEC hacks</h4>
|
||
.
|
||
These form two groups of commands.
|
||
<p>
|
||
In one first the first character is a hash (<em>#</em>) and the following a digit.
|
||
This command group is used to denote VT100 specific instructions and can
|
||
safely be sonsidered to be obsolete. See
|
||
<a href=#DECALN>DECALN</a>,
|
||
<a href=#DECDHLB>DECDHLB</a>,
|
||
<a href=#DECDHLT>DECDHLT</a>,
|
||
<a href=#DECDWL>DECDWL</a> and
|
||
<a href=#DECSWL>DECSWL</a>.
|
||
<p>
|
||
The second one is used to specify character set mappings (see <a
|
||
href=#SCS>SCS</a>). A CSI instruction to do this is specified in ECMA,
|
||
and this should be used as a replacement.
|
||
.
|
||
<h4>XTERM hacks</h4>
|
||
|
||
ConceptDB.html
|
||
<i>The following text is a collection of several sorts of definitions and
|
||
explainations. It is incomplete in many respects and a working draft.
|
||
</i>
|
||
.
|
||
<p>
|
||
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.
|
||
<p>
|
||
The following text conforms to these formatting conventions:
|
||
<ul>
|
||
<li>Individual character literals are set in bold face. Ascii representation
|
||
is used throughout, so <b>ESC</b> means the binary value of 27 and
|
||
<b>[</b> a value of 91.
|
||
.
|
||
<li>Parameters are indicated by italic type faces.
|
||
<li>Parameter types usually are indicated as one of:
|
||
<table>
|
||
<tr><td><i>Pn </i></td><td>A string of digits representing a numerical value.</td></tr>
|
||
<tr><td><i>Ps </i></td><td>A character that selects an item from a list.</td></tr>
|
||
<tr><td><i>a-z</i></td><td>Any lowercase sequence of one or more
|
||
characters represent a value to be
|
||
entered (as in <i>Pn</i>), and the name in the
|
||
will be referred to in explanatory text.</td></tr>
|
||
</table>
|
||
.
|
||
<li>Spaces are used only to improve readability, they do not occure in the
|
||
control sequences unless otherwise indicated.
|
||
.
|
||
</ul>
|
||
.
|
||
<p>
|
||
The following attributes below have the following meaning:
|
||
<ul>
|
||
<li>VT100 - This code is known to VT100.
|
||
<li>ANSI - This code is defined by ANSI.
|
||
<li>DEC - This code is DEC private.
|
||
<li>Command - Sent from host to the terminal. <b>FIXME:</b>add Inquiery.
|
||
<li>Reply - Sent from terminal to the host (as response to an Inquiery).
|
||
<li>Event - Sent from terminal to the host (caused by a user activity).
|
||
<li>Mode - The entry is a mode.
|
||
</ul>
|
||
|
||
Operations.html
|
||
<p>
|
||
<ul>
|
||
<li>Host to Terminal (Commands,Requests)
|
||
<ul>
|
||
<li>Commands
|
||
<ul>
|
||
<li>Character Display Operation
|
||
<li>Rendition related status
|
||
<li>Cursor
|
||
<li>Cursor related status
|
||
<li>Edit
|
||
<li>Miscellaneous
|
||
<li>General mode setting
|
||
<li>Miscellaneous status
|
||
<li>VT52
|
||
<li>Not implemented
|
||
<li>Ignored
|
||
</ul>
|
||
<li>Requests
|
||
</ul>
|
||
<li>Terminal to Host (Replies, Events)
|
||
<ul>
|
||
<li>Replies
|
||
<li>Events
|
||
</ul>
|
||
<li>Modes
|
||
<ul>
|
||
<li>Modes
|
||
</ul>
|
||
</ul>
|
||
|
||
## Keyboard #################################################################
|
||
|
||
KEYBOARD.head Keyboard Events
|
||
KEYBOARD.emus KONSOLE
|
||
KEYBOARD.sect Event
|
||
KEYBOARD.text
|
||
FIXME. explain
|
||
KEYBOARD.table.Codes
|
||
Key|Code:4
|
||
AltButton|"\033"
|
||
Return|MODE_NewLine ? "\r\n" : "\r"
|
||
Backspace|MODE_BsHack ? "\x7f" : "\x08"
|
||
Delete|MODE_BsHack ? "\033[3~" : "\x7f"
|
||
Up|!MODE_Ansi ?"\033A" : MODE_AppCuKeys ?"\033OA" : "\033[A"
|
||
Down|!MODE_Ansi ?"\033B" : MODE_AppCuKeys ?"\033OB" : "\033[B"
|
||
Right|!MODE_Ansi ?"\033C" : MODE_AppCuKeys ?"\033OC" : "\033[C"
|
||
Left|!MODE_Ansi ?"\033D" : MODE_AppCuKeys ?"\033OD" : "\033[D"
|
||
F1|Xterm? "\033[11~": "\033[[A"
|
||
F2|Xterm? "\033[12~": "\033[[B"
|
||
F3|Xterm? "\033[13~": "\033[[C"
|
||
F4|Xterm? "\033[14~": "\033[[D"
|
||
F5|Xterm? "\033[15~": "\033[[E"
|
||
F6|"\033[17~"
|
||
F7|"\033[18~"
|
||
F8|"\033[19~"
|
||
F9|"\033[20~"
|
||
F10|"\033[21~"
|
||
F11|"\033[23~"
|
||
F12|"\033[24~"
|
||
Home|"\033[7~"
|
||
End|"\033[8~"
|
||
Prior|"\033[5~"
|
||
Next|"\033[6~"
|
||
Insert|"\033[2~"
|
||
Control_Space|"\x00"
|
||
Control_Print|reportAnswerBack()
|
||
Ascii|Character
|
||
|
||
MOUSE.head Mouse Events
|
||
MOUSE.emus KONSOLE
|
||
MOUSE.sect Event
|
||
MOUSE.text
|
||
FIXME. explain
|
||
|
||
CHA.head Cursor Horizontal Absolute
|
||
CHA.emus ECMA KONSOLE
|
||
CHA.sect Command.Cursor
|
||
CHA.code CSI|G|{Pn}
|
||
CHA.text
|
||
FIXME. explain
|
||
CHA.table.XPS
|
||
Subcode|Emulation|Scope|Operation|Args|Meaning
|
||
N/A|xterm|scr|setCursorX|p|see above
|
||
|
||
DCH.head Delete Character
|
||
DCH.emus ECMA KONSOLE
|
||
DCH.sect Command.Delete
|
||
DCH.code CSI|P|{Pn}
|
||
DCH.text
|
||
FIXME. explain
|
||
DCH.table.XPS
|
||
Subcode|Emulation|Scope|Operation|Args|Meaning
|
||
N/A|xterm|scr|deleteChars|p|see above
|
||
|
||
DECRST.head DEC Private Reset Mode
|
||
DECRST.emus VT100 KONSOLE
|
||
DECRST.sect Command.SetMode
|
||
DECRST.code PRI|l|{Ps;...}
|
||
DECRST.text
|
||
FIXME. explain
|
||
DECRST.table.XPS
|
||
Subcode|Emulation|Scope|Operation|Args|Meaning
|
||
1|VT100|emu|resetMode|MODE_AppCuKeys|Meaning
|
||
2|VT100|emu|resetMode|MODE_Ansi|Meaning
|
||
3|VT100|emu|setColumns|80|Meaning
|
||
4|VT100|emu|Ignored||Meaning
|
||
5|VT100|scr|resetMode|MODE_Screen|Meaning
|
||
6|VT100|scr|resetMode|MODE_Origin|Meaning
|
||
7|VT100|scr|resetMode|MODE_Wrap|Meaning
|
||
8|VT100|emu|Ignored||Meaning
|
||
9|VT100|emu|Ignored||Meaning
|
||
25|VT100|emu|resetMode|MODE_Cursor|Meaning
|
||
47|xterm|emu|resetMode|MODE_AppScreen|Meaning
|
||
1000|xterm|emu|resetMode|MODE_Mouse1000|Meaning
|
||
1001|xterm|emu|Ignored||Meaning
|
||
1047|xterm|emu|resetMode|MODE_AppScreen|Meaning
|
||
1048|xterm|scr|restoreCursor||Meaning
|
||
|
||
DECSET.head DEC Private Set Mode
|
||
DECSET.emus VT100 KONSOLE
|
||
DECSET.sect Command.SetMode
|
||
DECSET.code PRI|h|{Ps;...}
|
||
DECSET.text
|
||
FIXME. explain
|
||
DECSET.table.XPS
|
||
Subcode|Emulation|Scope|Operation|Args|Meaning
|
||
1|VT100|emu|setMode|MODE_AppCuKeys|Meaning
|
||
3|VT100|emu|setColumns|132|Meaning
|
||
4|VT100|emu|Ignored||Meaning
|
||
5|VT100|scr|setMode|MODE_Screen|Meaning
|
||
6|VT100|scr|setMode|MODE_Origin|Meaning
|
||
7|VT100|scr|setMode|MODE_Wrap|Meaning
|
||
8|VT100|emu|Ignored||Meaning
|
||
9|VT100|emu|Ignored||Meaning
|
||
25|VT100|emu|setMode|MODE_Cursor|Meaning
|
||
47|xterm|emu|setMode|MODE_AppScreen|Meaning
|
||
1000|xterm|emu|setMode|MODE_Mouse1000|Meaning
|
||
1001|xterm|emu|Ignored||Meaning
|
||
1047|xterm|emu|setMode|MODE_AppScreen|Meaning
|
||
1048|xterm|scr|saveCursor||Meaning
|
||
|
||
DL.head Delete Line
|
||
DL.emus ECMA KONSOLE
|
||
DL.sect Command.Delete
|
||
DL.code CSI|M|{Pn}
|
||
DL.text
|
||
FIXME. explain
|
||
DL.table.XPS
|
||
Subcode|Emulation|Scope|Operation|Args|Meaning
|
||
N/A|konsole|scr|deleteLines|p|see above
|
||
|
||
ECH.head Erase Character
|
||
ECH.emus ECMA KONSOLE
|
||
ECH.sect Command.Erase
|
||
ECH.code CSI|X|{Pn}
|
||
ECH.text
|
||
FIXME. explain
|
||
ECH.table.XPS
|
||
Subcode|Emulation|Scope|Operation|Args|Meaning
|
||
N/A|konsole|scr|eraseChars|p|see above
|
||
|
||
ICH.head Insert Character
|
||
ICH.emus ECMA KONSOLE
|
||
ICH.sect Command.Insert
|
||
ICH.code CSI|@|{Pn}
|
||
ICH.text
|
||
FIXME. explain
|
||
ICH.table.XPS
|
||
Subcode|Emulation|Scope|Operation|Args|Meaning
|
||
N/A|konsole|scr|insertChars|p|see above
|
||
|
||
IL.head Insert Line
|
||
IL.emus KONSOLE
|
||
IL.sect Command.Insert
|
||
IL.code CSI|L|{Pn}
|
||
IL.text
|
||
FIXME. explain
|
||
IL.table.XPS
|
||
Subcode|Emulation|Scope|Operation|Args|Meaning
|
||
N/A|xterm|scr|insertLines|p|see above
|
||
|
||
LS2.head Lock Shift Two
|
||
LS2.emus KONSOLE
|
||
LS2.sect Command.RenderMode
|
||
LS2.code ESC|n|
|
||
LS2.text
|
||
FIXME. explain
|
||
LS2.table.XPS
|
||
Subcode|Emulation|Scope|Operation|Args|Meaning
|
||
N/A|xterm|scr|useCharset|2|see above
|
||
|
||
LS3.head Lock Shift Three
|
||
LS3.emus KONSOLE
|
||
LS3.sect Command.RenderMode
|
||
LS3.code ESC|o|
|
||
LS3.text
|
||
FIXME. explain
|
||
LS3.table.XPS
|
||
Subcode|Emulation|Scope|Operation|Args|Meaning
|
||
N/A|xterm|scr|useCharset|3|see above
|
||
|
||
MC.head Media Copy
|
||
MC.emus ECMA VT100
|
||
MC.sect Command.NoImp
|
||
MC.code CSI|i|{Pn}
|
||
MC.text
|
||
FIXME. explain
|
||
MC.table.XPS
|
||
Subcode|Emulation|Scope|Operation|Args|Meaning
|
||
0|VT100|emu|Ignored||Meaning
|
||
|
||
VPA.head Vertical Position Absolute
|
||
VPA.emus ECMA KONSOLE
|
||
VPA.sect Command.Cursor
|
||
VPA.code CSI|d|{Pn}
|
||
VPA.text
|
||
FIXME. explain
|
||
VPA.table.XPS
|
||
Subcode|Emulation|Scope|Operation|Args|Meaning
|
||
N/A|xterm|scr|setCursorY|p|see above
|
||
|
||
XTERESTORE.head XTerm Private Restore Mode
|
||
XTERESTORE.emus XTERM KONSOLE
|
||
XTERESTORE.sect Command.SetMode
|
||
XTERESTORE.code PRI|r|{Ps;...}
|
||
XTERESTORE.text
|
||
FIXME. explain
|
||
XTERESTORE.table.XPS
|
||
Subcode|Emulation|Scope|Operation|Args|Meaning
|
||
1|xterm|emu|restoreMode|MODE_AppCuKeys|Meaning
|
||
6|xterm|scr|restoreMode|MODE_Origin|Meaning
|
||
7|xterm|scr|restoreMode|MODE_Wrap|Meaning
|
||
1000|xterm|emu|restoreMode|MODE_Mouse1000|Meaning
|
||
1001|xterm|emu|Ignored||Meaning
|
||
|
||
XTESAVE.head XTerm Private Save Mode
|
||
XTESAVE.emus XTERM KONSOLE
|
||
XTESAVE.sect Command.SetMode
|
||
XTESAVE.code PRI|s|{Ps;...}
|
||
XTESAVE.text
|
||
FIXME. explain
|
||
XTESAVE.table.XPS
|
||
Subcode|Emulation|Scope|Operation|Args|Meaning
|
||
1|xterm|emu|saveMode|MODE_AppCuKeys|Meaning
|
||
6|xterm|scr|saveMode|MODE_Origin|Meaning
|
||
7|xterm|scr|saveMode|MODE_Wrap|Meaning
|
||
1000|xterm|emu|saveMode|MODE_Mouse1000|Meaning
|
||
1001|xterm|emu|Ignored||Meaning
|
||
|
||
NUL.head Null
|
||
NUL.emus VT100 XTERM Linux KONSOLE
|
||
NUL.sect Command.Ignored
|
||
NUL.code CTL|0x00|
|
||
NUL.text
|
||
NUL is used as media- or time-fill. It is ignored by Konsole, but may
|
||
be sensible for devices which requiere a recognizable amount of time
|
||
to complete some commands (e.g. form feed on a non-buffering printing
|
||
device).
|
||
NUL.table.XPS
|
||
Subcode|Emulation|Scope|Operation|Args|Meaning
|
||
N/A|VT100|emu|Ignored||see above
|
||
|
||
SOH.head Start Of Heading
|
||
SOH.emus VT100 XTERM Linux KONSOLE
|
||
SOH.sect Command.Ignored
|
||
SOH.code CTL|0x01|
|
||
SOH.text
|
||
Ignored
|
||
SOH.table.XPS
|
||
Subcode|Emulation|Scope|Operation|Args|Meaning
|
||
N/A|VT100|emu|Ignored||see above
|
||
|
||
STX.head Start Of Text
|
||
STX.emus VT100 XTERM Linux KONSOLE
|
||
STX.sect Command.Ignored
|
||
STX.code CTL|0x02|
|
||
STX.text
|
||
Ignored
|
||
STX.table.XPS
|
||
Subcode|Emulation|Scope|Operation|Args|Meaning
|
||
N/A|VT100|emu|Ignored||see above
|
||
|
||
ETX.head End Of Text
|
||
ETX.emus VT100 XTERM Linux KONSOLE
|
||
ETX.sect Command.Ignored
|
||
ETX.code CTL|0x03|
|
||
ETX.text
|
||
Ignored
|
||
ETX.table.XPS
|
||
Subcode|Emulation|Scope|Operation|Args|Meaning
|
||
N/A|VT100|emu|Ignored||see above
|
||
|
||
EOT.head End Of Transmission
|
||
EOT.emus VT100 XTERM Linux KONSOLE
|
||
EOT.sect Command.Ignored
|
||
EOT.code CTL|0x04|
|
||
EOT.text
|
||
Ignored
|
||
EOT.table.XPS
|
||
Subcode|Emulation|Scope|Operation|Args|Meaning
|
||
N/A|VT100|emu|Ignored||see above
|
||
|
||
ENQ.head Enquiry
|
||
ENQ.emus VT100
|
||
ENQ.sect Command.Request
|
||
ENQ.code CTL|0x05|
|
||
ENQ.text
|
||
Transmit the ANSWERBACK message. The answerback message can be loaded
|
||
in SET-UP B (i.e. is a configurable string).
|
||
ENQ.table.XPS
|
||
Subcode|Emulation|Scope|Operation|Args|Meaning
|
||
N/A|VT100|emu|reportAnswerBack||see above
|
||
|
||
ACK.head Acknowledge
|
||
ACK.emus VT100 XTERM Linux KONSOLE
|
||
ACK.sect Command.Ignored
|
||
ACK.code CTL|0x06|
|
||
ACK.text
|
||
Ignored
|
||
ACK.table.XPS
|
||
Subcode|Emulation|Scope|Operation|Args|Meaning
|
||
N/A|VT100|emu|Ignored||see above
|
||
|
||
BEL.head Bell
|
||
BEL.emus VT100
|
||
BEL.sect Command
|
||
BEL.code CTL|0x07|
|
||
BEL.text
|
||
Sound bell
|
||
BEL.table.XPS
|
||
Subcode|Emulation|Scope|Operation|Args|Meaning
|
||
N/A|VT100|gui|Bell||see above
|
||
|
||
BS.head Back Space
|
||
BS.emus VT100
|
||
BS.sect Command.Cursor
|
||
BS.code CTL|0x08|
|
||
BS.text
|
||
Move cursor to the left one position, unless it is at the left
|
||
margin, in which case no action is taken.
|
||
BS.table.XPS
|
||
Subcode|Emulation|Scope|Operation|Args|Meaning
|
||
N/A|VT100|scr|BackSpace||see above
|
||
|
||
HT.head Horizontal Tabulation
|
||
HT.emus VT100
|
||
HT.sect Command.Cursor
|
||
HT.code CTL|0x09|
|
||
HT.text
|
||
Move cursor to the next tab stop, or to the right margin
|
||
if no further tabs are set.
|
||
HT.table.XPS
|
||
Subcode|Emulation|Scope|Operation|Args|Meaning
|
||
N/A|VT100|scr|Tabulate||see above
|
||
|
||
LF.head Line Feed
|
||
LF.emus VT100
|
||
LF.sect Command.Cursor
|
||
LF.code CTL|0x0a|
|
||
LF.text
|
||
Causes either a line feed or new line operation (See \ref:LNM.)
|
||
LF.table.XPS
|
||
Subcode|Emulation|Scope|Operation|Args|Meaning
|
||
N/A|VT100|emu|NewLine||see above
|
||
|
||
VT.head Vertical Tabulation
|
||
VT.emus VT100
|
||
VT.sect Command.Cursor
|
||
VT.code CTL|0x0b|
|
||
VT.text
|
||
Same as \ref:LF.
|
||
VT.table.XPS
|
||
Subcode|Emulation|Scope|Operation|Args|Meaning
|
||
N/A|VT100|emu|NewLine||see above
|
||
|
||
FF.head Form Feed
|
||
FF.emus VT100
|
||
FF.sect Command.Cursor
|
||
FF.code CTL|0x0c|
|
||
FF.text
|
||
Same as \ref:LF.
|
||
FF.table.XPS
|
||
Subcode|Emulation|Scope|Operation|Args|Meaning
|
||
N/A|VT100|emu|NewLine||see above
|
||
|
||
CR.head Carriage Return
|
||
CR.emus VT100
|
||
CR.sect Command.Cursor
|
||
CR.code CTL|0x0d|
|
||
CR.text
|
||
Move the cursor to the left margin of the current line.
|
||
CR.table.XPS
|
||
Subcode|Emulation|Scope|Operation|Args|Meaning
|
||
N/A|VT100|scr|Return||see above
|
||
|
||
LS0.head Lock Shift Zero (Shift Out - SO)
|
||
LS0.emus VT100
|
||
LS0.sect Command.RenderMode
|
||
LS0.code CTL|0x0e|
|
||
LS0.text
|
||
Invoke the G1 character set, as designated by the \ref:SCS control sequence.
|
||
LS0.table.XPS
|
||
Subcode|Emulation|Scope|Operation|Args|Meaning
|
||
N/A|VT100|scr|useCharset|1|see above
|
||
|
||
LS1.head Lock Shift One (Shift In - SI)
|
||
LS1.emus VT100
|
||
LS1.sect Command.RenderMode
|
||
LS1.code CTL|0x0f|
|
||
LS1.text
|
||
Invoke the G0 character set, as selected by the <ESC>( sequence.
|
||
LS1.table.XPS
|
||
Subcode|Emulation|Scope|Operation|Args|Meaning
|
||
N/A|VT100|scr|useCharset|0|see above
|
||
|
||
DLE.head Data Link Escape
|
||
DLE.emus VT100 XTERM Linux KONSOLE
|
||
DLE.sect Command.Ignored
|
||
DLE.code CTL|0x10|
|
||
DLE.text
|
||
Ignored
|
||
DLE.table.XPS
|
||
Subcode|Emulation|Scope|Operation|Args|Meaning
|
||
N/A|VT100|emu|Ignored||see above
|
||
|
||
DC1.head Device Control One
|
||
DC1.emus VT100
|
||
DC1.sect Ignored
|
||
DC1.code CTL|0x11|
|
||
DC1.text
|
||
Causes terminal to resume transmission (XON).
|
||
DC1.table.XPS
|
||
Subcode|Emulation|Scope|Operation|Args|Meaning
|
||
N/A|VT100|emu|Ignored||see above
|
||
|
||
DC2.head Device Control Two
|
||
DC2.emus VT100 XTERM Linux KONSOLE
|
||
DC2.sect Command.Ignored
|
||
DC2.code CTL|0x12|
|
||
DC2.text
|
||
Ignored
|
||
DC2.table.XPS
|
||
Subcode|Emulation|Scope|Operation|Args|Meaning
|
||
N/A|VT100|emu|Ignored||see above
|
||
|
||
DC3.head Device Control Three
|
||
DC3.emus VT100 XTERM Linux KONSOLE
|
||
DC3.sect Command.Ignored
|
||
DC3.code CTL|0x13|
|
||
DC3.text
|
||
Causes terminal to stop transmitting all codes except XOFF and XON (XOFF).
|
||
DC3.table.XPS
|
||
Subcode|Emulation|Scope|Operation|Args|Meaning
|
||
N/A|VT100|emu|Ignored||see above
|
||
|
||
DC4.head Device Control Four
|
||
DC4.emus VT100 XTERM Linux KONSOLE
|
||
DC4.sect Command.Ignored
|
||
DC4.code CTL|0x14|
|
||
DC4.text
|
||
Ignored
|
||
DC4.table.XPS
|
||
Subcode|Emulation|Scope|Operation|Args|Meaning
|
||
N/A|VT100|emu|Ignored||see above
|
||
|
||
NAK.head Negative Acknowledge
|
||
NAK.emus VT100 XTERM Linux KONSOLE
|
||
NAK.sect Command.Ignored
|
||
NAK.code CTL|0x15|
|
||
NAK.text
|
||
Ignored
|
||
NAK.table.XPS
|
||
Subcode|Emulation|Scope|Operation|Args|Meaning
|
||
N/A|VT100|emu|Ignored||see above
|
||
|
||
SYN.head Synchronous Idle
|
||
SYN.emus VT100 XTERM Linux KONSOLE
|
||
SYN.sect Command.Ignored
|
||
SYN.code CTL|0x16|
|
||
SYN.text
|
||
Ignored
|
||
SYN.table.XPS
|
||
Subcode|Emulation|Scope|Operation|Args|Meaning
|
||
N/A|VT100|emu|Ignored||see above
|
||
|
||
ETB.head End Of Transmission Block
|
||
ETB.emus VT100 XTERM Linux KONSOLE
|
||
ETB.sect Command.Ignored
|
||
ETB.code CTL|0x17|
|
||
ETB.text
|
||
Ignored
|
||
ETB.table.XPS
|
||
Subcode|Emulation|Scope|Operation|Args|Meaning
|
||
N/A|VT100|emu|Ignored||see above
|
||
|
||
CAN.head Cancel
|
||
CAN.emus VT100
|
||
CAN.sect Command
|
||
CAN.code CTL|0x18|
|
||
CAN.text
|
||
If sent during a control sequence, the sequence id immediately
|
||
terminated and not executed. It also causes the error character
|
||
(checkerboard) to be displayed.
|
||
CAN.table.XPS
|
||
Subcode|Emulation|Scope|Operation|Args|Meaning
|
||
N/A|VT100|scr|ShowCharacter|2|see above
|
||
|
||
EM.head End Of Medium
|
||
EM.emus VT100 XTERM Linux KONSOLE
|
||
EM.sect Command.Ignored
|
||
EM.code CTL|0x19|
|
||
EM.text
|
||
Ignored
|
||
EM.table.XPS
|
||
Subcode|Emulation|Scope|Operation|Args|Meaning
|
||
N/A|VT100|emu|Ignored||see above
|
||
|
||
SUB.head Substitute
|
||
SUB.emus VT100
|
||
SUB.sect Command
|
||
SUB.code CTL|0x1a|
|
||
SUB.text
|
||
Same as \ref:CAN.
|
||
SUB.table.XPS
|
||
Subcode|Emulation|Scope|Operation|Args|Meaning
|
||
N/A|VT100|scr|ShowCharacter|2|see above
|
||
|
||
ESC.head Escape
|
||
ESC.emus ECMA VT100
|
||
ESC.sect Ignored
|
||
ESC.code CTL|0x1b|
|
||
ESC.text
|
||
Introduces a control sequence.
|
||
ESC.table.XPS
|
||
Subcode|Emulation|Scope|Operation|Args|Meaning
|
||
N/A|VT100|emu|Ignored||see above
|
||
|
||
FS.head File Separator (IS4 - Information Separator Four)
|
||
FS.emus VT100 XTERM Linux KONSOLE
|
||
FS.sect Command.Ignored
|
||
FS.code CTL|0x1c|
|
||
FS.text
|
||
Ignored
|
||
FS.table.XPS
|
||
Subcode|Emulation|Scope|Operation|Args|Meaning
|
||
N/A|VT100|emu|Ignored||see above
|
||
|
||
GS.head Group Separator (IS3 - Information Separator Three)
|
||
GS.emus VT100 XTERM Linux KONSOLE
|
||
GS.sect Command.Ignored
|
||
GS.code CTL|0x1d|
|
||
GS.text
|
||
Ignored
|
||
GS.table.XPS
|
||
Subcode|Emulation|Scope|Operation|Args|Meaning
|
||
N/A|VT100|emu|Ignored||see above
|
||
|
||
RS.head Record Separator (IS2 - Information Separator Two)
|
||
RS.emus VT100 XTERM Linux KONSOLE
|
||
RS.sect Command.Ignored
|
||
RS.code CTL|0x1e|
|
||
RS.text
|
||
Ignored
|
||
RS.table.XPS
|
||
Subcode|Emulation|Scope|Operation|Args|Meaning
|
||
N/A|VT100|emu|Ignored||see above
|
||
|
||
US.head Unit Separator (IS1 - Information Separator One)
|
||
US.emus VT100 XTERM Linux KONSOLE
|
||
US.sect Command.Ignored
|
||
US.code CTL|0x1f|
|
||
US.text
|
||
Ignored
|
||
US.table.XPS
|
||
Subcode|Emulation|Scope|Operation|Args|Meaning
|
||
N/A|VT100|emu|Ignored||see above
|
||
|
||
DEL.head Delete Character
|
||
DEL.emus VT100
|
||
DEL.sect Command.Ignored
|
||
DEL.code DEL||
|
||
DEL.text
|
||
Ignored
|
||
|
||
CPR.head Cursor Position Report
|
||
CPR.emus ECMA VT100
|
||
CPR.sect Reply
|
||
CPR.code CSI|R|{Pn;Pn}
|
||
CPR.dflt 1 1
|
||
CPR.text
|
||
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 equivalent
|
||
to a cursor at home position.
|
||
.
|
||
The numbering of the lines depends upon the state of the Origin Mode
|
||
(\ref:DECOM).
|
||
.
|
||
This control sequence is sent in reply to a device status report
|
||
(\ref:DSRREQ) command sent from the host.
|
||
|
||
CUB.head Cursor Backward
|
||
CUB.emus ECMA VT100
|
||
CUB.sect Command.Cursor Event
|
||
CUB.code CSI|D|{Pn}
|
||
CUB.dflt 1
|
||
CUB.text
|
||
Moves 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.
|
||
CUB.table.XPS
|
||
Subcode|Emulation|Scope|Operation|Args|Meaning
|
||
N/A|VT100|scr|cursorLeft|p|see above
|
||
|
||
CUD.head Cursor Down
|
||
CUD.emus ECMA VT100
|
||
CUD.sect Command.Cursor Event
|
||
CUD.code CSI|B|{Pn}
|
||
CUD.dflt 1
|
||
CUD.text
|
||
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.
|
||
CUD.table.XPS
|
||
Subcode|Emulation|Scope|Operation|Args|Meaning
|
||
N/A|VT100|scr|cursorDown|p|see above
|
||
|
||
CUF.head Cursor Foreward
|
||
CUF.emus ECMA VT100
|
||
CUF.sect Command.Cursor Event
|
||
CUF.code CSI|C|{Pn}
|
||
CUF.dflt 1
|
||
CUF.text
|
||
Moves the cursor to the right a number of positions
|
||
specified in the parameter. The cursor cannot be moved past the right
|
||
margin.
|
||
CUF.table.XPS
|
||
Subcode|Emulation|Scope|Operation|Args|Meaning
|
||
N/A|VT100|scr|cursorRight|p|see above
|
||
|
||
CUP.head Cursor Position
|
||
CUP.emus ECMA VT100
|
||
CUP.sect Command.Cursor
|
||
CUP.code CSI|H|{Pn;Pn}
|
||
CUP.dflt 1 1
|
||
CUP.text
|
||
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, \ref:HVP.
|
||
.
|
||
The numbering of the lines depends upon the state of the Origin Mode
|
||
(\ref:DECOM).
|
||
CUP.table.XPS
|
||
Subcode|Emulation|Scope|Operation|Args|Meaning
|
||
N/A|VT100|scr|setCursorYX|p,q|see above
|
||
|
||
CUU.head Cursor Up
|
||
CUU.emus ECMA VT100
|
||
CUU.sect Command.Cursor Event
|
||
CUU.code CSI|A|{Pn}
|
||
CUU.dflt 1
|
||
CUU.text
|
||
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.
|
||
CUU.table.XPS
|
||
Subcode|Emulation|Scope|Operation|Args|Meaning
|
||
N/A|VT100|scr|cursorUp|p|see above
|
||
|
||
DA.head Device Attributes Request
|
||
DA.emus ECMA VT100
|
||
DA.sect Command.Request
|
||
DA.code CSI|c|{Pn}
|
||
DA.dflt 0
|
||
DA.text
|
||
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.
|
||
The device replies by (\ref:DECDA).
|
||
DA.table.XPS
|
||
Subcode|Emulation|Scope|Operation|Args|Meaning
|
||
N/A|VT100|emu|reportTerminalType||see above
|
||
|
||
DECDA.head Device Attributes Reply
|
||
DECDA.emus VT100
|
||
DECDA.sect Reply
|
||
DECDA.code PRI|c|{1;Pn}
|
||
DECDA.text
|
||
Response to the \ref:DA request (VT100 to host) is generated
|
||
by the VT100 as a DECDA control sequence with the numeric parameters as
|
||
follows:
|
||
DECDA.table.Pn
|
||
Pn|Meaning:4
|
||
0|No options
|
||
1|Processor Option (STP)
|
||
2|Advanced Video Option (AVO)
|
||
3|AVO and STP
|
||
4|Graphics Option (GPO)
|
||
5|GPO and STP
|
||
6|GPO and AVO
|
||
|
||
DECALN.head Screen Alignment Display
|
||
DECALN.emus VT100
|
||
DECALN.sect Command
|
||
DECALN.code HSH|8|
|
||
DECALN.text
|
||
Causes the VT100 to fill it's screen with
|
||
uppercase Es for screen focus and alignment.
|
||
DECALN.table.XPS
|
||
Subcode|Emulation|Scope|Operation|Args|Meaning
|
||
N/A|VT100|scr|helpAlign||see above
|
||
|
||
DECANM.head ANSI/VT52 Mode
|
||
DECANM.emus VT100
|
||
DECANM.sect Mode
|
||
DECANM.text
|
||
This is a private parameter to the \ref:SM and \ref: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 \ref:MODES, \ref:SM, \ref:RM
|
||
and \ref:VT52ANSI.
|
||
|
||
DECARM.head Auto Repeat Mode
|
||
DECARM.emus VT100
|
||
DECARM.sect Mode
|
||
DECARM.text
|
||
This is a private parameter to the \ref:SM and \ref:RM
|
||
control sequences. The
|
||
reset state causes no keyboard keys to auto-repeat, the set state
|
||
causes most of them to. See \ref:MODES, \ref:SM and \ref:RM.
|
||
|
||
DECAWM.head Autowrap Mode
|
||
DECAWM.emus VT100
|
||
DECAWM.sect Mode
|
||
DECAWM.text
|
||
This is a private parameter to the \ref:SM and \ref:RM
|
||
control sequences. The
|
||
reset state prevents the cursor from moving when characters are
|
||
received 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 \ref:MODES, \ref:SM, and
|
||
\ref:RM.
|
||
|
||
DECCKM.head Cursor Keys Mode
|
||
DECCKM.emus VT100
|
||
DECCKM.sect Mode
|
||
DECCKM.text
|
||
This is a private parameter to the \ref:SM and \ref:RM
|
||
control requences. This
|
||
mode is only effective when the terminal is in keypad application mode
|
||
(\ref:DECKPAM) and the ANSI/VT52 mode (\ref: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 \ref:MODES, \ref:RM, and
|
||
\ref:SM.
|
||
|
||
DECCOLM.head Column Mode
|
||
DECCOLM.emus VT100
|
||
DECCOLM.sect Mode
|
||
DECCOLM.text
|
||
This is a private parameter to the \ref:SM and \ref: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 \ref:MODES,
|
||
\ref:RM, and \ref:SM.
|
||
|
||
DECDHLT.head Double Height Line (Top)
|
||
DECDHLT.emus VT100
|
||
DECDHLT.sect Command.NoImp
|
||
DECDHLT.code HSH|3|
|
||
DECDHLT.text
|
||
Cause the line containing the cursor to become the top half of a
|
||
double-height, double width line.
|
||
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.
|
||
.
|
||
\ref:DECDHLB and \ref:DECDHLT
|
||
should be used in pairs on adjacent lines with each line containing the
|
||
same character string.
|
||
DECDHLT.table.XPS
|
||
Subcode|Emulation|Scope|Operation|Args|Meaning
|
||
N/A|VT100|emu|Ignored||see above
|
||
|
||
DECDHLB.head Double Height Line (Bottom)
|
||
DECDHLB.emus VT100
|
||
DECDHLB.sect Command.NoImp
|
||
DECDHLB.code HSH|4|
|
||
DECDHLB.text
|
||
This sequence cause the line containing the cursor to become the
|
||
bottom half of a double-height, double width line.
|
||
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.
|
||
.
|
||
\ref:DECDHLB and \ref:DECDHLT
|
||
should be used in pairs on adjacent lines with each line containing the
|
||
same character string.
|
||
DECDHLB.table.XPS
|
||
Subcode|Emulation|Scope|Operation|Args|Meaning
|
||
N/A|VT100|emu|Ignored||see above
|
||
|
||
DECDWL.head Double Width Line
|
||
DECDWL.emus VT100
|
||
DECDWL.sect Command.NoImp
|
||
DECDWL.code HSH|6|
|
||
DECDWL.text
|
||
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.
|
||
DECDWL.table.XPS
|
||
Subcode|Emulation|Scope|Operation|Args|Meaning
|
||
N/A|VT100|emu|Ignored||see above
|
||
|
||
DECID.head Identify Terminal
|
||
DECID.emus VT100
|
||
DECID.sect Command.Request
|
||
DECID.code ESC|Z|
|
||
DECID.text
|
||
This sequence causes the same response as the \ref:DA sequence. This
|
||
sequence will not be supported in future models.
|
||
DECID.table.XPS
|
||
Subcode|Emulation|Scope|Operation|Args|Meaning
|
||
N/A|VT100|emu|reportTerminalType||see above
|
||
|
||
DECINLM.head Interlace Mode
|
||
DECINLM.emus VT100
|
||
DECINLM.sect Mode
|
||
DECINLM.text
|
||
This is a private parameter to the \ref:RM and \ref: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 \ref:MODES,
|
||
\ref:RM, and \ref:SM.
|
||
|
||
DECKPAM.head Keypad Application Mode
|
||
DECKPAM.emus VT100
|
||
DECKPAM.sect Command.Mode Mode
|
||
DECKPAM.code ESC|=|
|
||
DECKPAM.text
|
||
The auxiliary keypad keys will transmit control sequences.
|
||
DECKPAM.table.XPS
|
||
Subcode|Emulation|Scope|Operation|Args|Meaning
|
||
N/A|VT100|emu|setMode|MODE_AppKeyPad|see above
|
||
|
||
DECKPNM.head Keypad Numeric Mode
|
||
DECKPNM.emus VT100
|
||
DECKPNM.sect Mode Command.Mode
|
||
DECKPNM.code ESC|>|
|
||
DECKPNM.text
|
||
The auxiliary keypad keys will send ASCII codes corresponding to the
|
||
characters engraved on their keys.
|
||
DECKPNM.table.XPS
|
||
Subcode|Emulation|Scope|Operation|Args|Meaning
|
||
N/A|VT100|emu|resetMode|MODE_AppKeyPad|see above
|
||
|
||
DECLL.head Load LEDs
|
||
DECLL.emus VT100
|
||
DECLL.sect Command.NoImp
|
||
DECLL.code CSI|q|{Ps;...}
|
||
DECLL.dflt 0
|
||
DECLL.text
|
||
Load the four programmable LEDs on the keyboard according to the parameter(s).
|
||
DECLL.table.XPS
|
||
Subcode|Emulation|Scope|Operation|Args|Meaning
|
||
0|VT100|emu|Ignore||Clear all LEDs
|
||
1|VT100|emu|Ignore||Light LED 1
|
||
2|VT100|emu|Ignore||Light LED 2
|
||
3|VT100|emu|Ignore||Light LED 3
|
||
4|VT100|emu|Ignore||Light LED 4
|
||
|
||
DECOM.head Origin Mode
|
||
DECOM.emus VT100
|
||
DECOM.sect Mode
|
||
DECOM.text
|
||
This is a private parameter to \ref:SM and \ref: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 (\ref:CUP) or
|
||
horizontal and vertical position (\ref: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.head Restore Cursor
|
||
DECRC.emus VT100
|
||
DECRC.sect Command.CursMode
|
||
DECRC.code ESC|8|
|
||
DECRC.text
|
||
This sequence causes the previously saved cursor position, graphic
|
||
rendition, and character set to be restored.
|
||
DECRC.table.XPS
|
||
Subcode|Emulation|Scope|Operation|Args|Meaning
|
||
N/A|VT100|scr|restoreCursor||see above
|
||
|
||
DECREPTPARM.head Report Terminal Parameters
|
||
DECREPTPARM.emus ECMA VT100
|
||
DECREPTPARM.sect Reply
|
||
DECREPTPARM.code CSI|x|{sol;par;nbits;xspd;rspd;cmul;flags}
|
||
DECREPTPARM.text
|
||
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 \ref: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 parameters are:
|
||
DECREPTPARM.table.sol
|
||
sol|Meaning:4
|
||
1|This message is a report.
|
||
2|This message is a report, and the terminal is only reporting on request.
|
||
DECREPTPARM.table.par
|
||
par|Meaning:4
|
||
1|No parity set
|
||
4|Parity set and odd
|
||
5|Parity set and even
|
||
DECREPTPARM.table.nbits
|
||
nbits|Meaning:4
|
||
1|8 bits per character
|
||
2|7 bits per character
|
||
DECREPTPARM.table.speed(xspd,rspd)
|
||
speed|Meaning (xspd,rspd):4
|
||
0|Speed set to 50 bps
|
||
8|Speed set to 75 bps
|
||
16|Speed set to 110 bps
|
||
24|Speed set to 134.5 bps
|
||
32|Speed set to 150 bps
|
||
40|Speed set to 200 bps
|
||
48|Speed set to 300 bps
|
||
56|Speed set to 600 bps
|
||
64|Speed set to 1200 bps
|
||
72|Speed set to 1800 bps
|
||
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
|
||
DECREPTPARM.table.cmul
|
||
cmul|Meaning:4
|
||
1|The bit rate multiplier is 16
|
||
DECREPTPARM.table.flags
|
||
flags|Meaning:4
|
||
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.head Request Terminal Parameters
|
||
DECREQTPARM.emus ECMA VT100
|
||
DECREQTPARM.sect Command.Request
|
||
DECREQTPARM.code CSI|x|{Ps}
|
||
DECREQTPARM.text
|
||
The host sends this sequence to request the VT100 to send a
|
||
\ref:DECREPTPARM
|
||
sequence back. {Ps} can be either 0 or 1. If 0, the terminal will be
|
||
allowed to send unsolicited \ref: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
|
||
\ref:DECREPTPARMs in response to a request.
|
||
DECREQTPARM.table.XPS
|
||
Subcode|Emulation|Scope|Operation|Args|Meaning
|
||
0|VT100|emu|reportTerminalParms|2|Meaning
|
||
1|VT100|emu|reportTerminalParms|3|Meaning
|
||
|
||
DECSC.head Save Cursor
|
||
DECSC.emus VT100
|
||
DECSC.sect Command.CursMode
|
||
DECSC.code ESC|7|
|
||
DECSC.text
|
||
Causes the cursor position, graphic rendition, and character set to be
|
||
saved. (See \ref:DECRC)
|
||
DECSC.table.XPS
|
||
Subcode|Emulation|Scope|Operation|Args|Meaning
|
||
N/A|VT100|scr|saveCursor||see above
|
||
|
||
DECSCLM.head Scrolling Mode
|
||
DECSCLM.emus VT100
|
||
DECSCLM.sect Mode
|
||
DECSCLM.text
|
||
This is a private parameter to \ref:RM and \ref: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 \ref:MODES,
|
||
\ref:RM, and \ref:SM.
|
||
|
||
DECSCNM.head Screen Mode
|
||
DECSCNM.emus VT100
|
||
DECSCNM.sect Mode
|
||
DECSCNM.text
|
||
This is a private parameter to \ref:RM and \ref: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 \ref:MODES, \ref:RM, and \ref:SM.
|
||
|
||
DECSTBM.head Set Top and Bottom Margins
|
||
DECSTBM.emus VT100
|
||
DECSTBM.sect Command.CursMode
|
||
DECSTBM.code CSI|r|{Pn;Pn}
|
||
DECSTBM.dflt 1 ScreenLines
|
||
DECSTBM.text
|
||
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 \ref:DECOM).
|
||
DECSTBM.table.XPS
|
||
Subcode|Emulation|Scope|Operation|Args|Meaning
|
||
N/A|VT100|scr|setMargins|p,q|see above
|
||
|
||
DECSWL.head Single-width Line
|
||
DECSWL.emus VT100
|
||
DECSWL.sect Command.NoImp
|
||
DECSWL.code HSH|5|
|
||
DECSWL.text
|
||
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.
|
||
DECSWL.table.XPS
|
||
Subcode|Emulation|Scope|Operation|Args|Meaning
|
||
N/A|VT100|emu|Ignored||see above
|
||
|
||
DECTST.head Invoke Confidence Test
|
||
DECTST.emus ECMA VT100
|
||
DECTST.sect Command
|
||
DECTST.code CSI|y|{2;Ps}
|
||
DECTST.text
|
||
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.
|
||
DECTST.table.XPS
|
||
Subcode|Emulation|Scope|Operation|Args|Meaning
|
||
N/A|VT100|emu|Ignored||see above
|
||
DECTST.table.Weight
|
||
Weight|Meaning:4
|
||
1|POST (ROM checksum, RAM NVR, keyboardm and AVO)
|
||
2|Data Loop Back (Loopback connector required)
|
||
3|EIA Modem Control Test (Loopback connector req.)
|
||
4|Repeat Testing until failure
|
||
|
||
DSRREQ.head Device Status Report
|
||
DSRREQ.emus ECMA VT100
|
||
DSRREQ.sect Command.Request
|
||
DSRREQ.code CSI|n|{Ps}
|
||
DSRREQ.text
|
||
Requests status of the VT100 according to the following parameters.
|
||
DSRREQ.table.XPS
|
||
Subcode|Emulation|Scope|Operation|Args|Meaning
|
||
5|VT100|emu|reportStatus||Report Status (using a \ref:DSRREP control sequence)
|
||
6|VT100|emu|reportCursorPosition||Report Active Position (using a \ref:CPR sequence)
|
||
|
||
DSRREP.head Device Status Report Reply
|
||
DSRREP.emus ECMA VT100
|
||
DSRREP.sect Reply
|
||
DSRREP.code CSI|n|{Status}
|
||
DSRREP.text
|
||
Reports the general status of the VT100 according to the
|
||
following parameters.
|
||
.
|
||
DSRREP with a parameter of 0 or 3 is always sent as a response to a
|
||
requesting \ref:DSRREQ with a parameter of 5.
|
||
DSRREP.table.Status
|
||
Status|Meaning:3
|
||
0|Ready, no faults detected
|
||
3|Malfunction detected
|
||
|
||
ED.head Erase in Display
|
||
ED.emus ECMA VT100
|
||
ED.sect Command.Erase
|
||
ED.code CSI|J|{Ps}
|
||
ED.dflt 0
|
||
ED.text
|
||
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.
|
||
ED.table.XPS
|
||
Subcode|Emulation|Scope|Operation|Args|Meaning
|
||
0|VT100|scr|clearToEndOfScreen||Erase from the cursor to the end of the screen.
|
||
1|VT100|scr|clearToBeginOfScreen||Erase from the start of the screen to the cursor.
|
||
2|VT100|scr|clearEntireScreen||Erase the entire screen.
|
||
|
||
EL.head Erase in Line
|
||
EL.emus ECMA VT100
|
||
EL.sect Command.Erase
|
||
EL.code CSI|K|{Ps}
|
||
EL.dflt 0
|
||
EL.text
|
||
Erases some or all characters in the active line, according to the
|
||
parameter.
|
||
EL.table.XPS
|
||
Subcode|Emulation|Scope|Operation|Args|Meaning
|
||
0|VT100|scr|clearToEndOfLine||Erase from cursor to the end of the line.
|
||
1|VT100|scr|clearToBeginOfLine||Erase from the start of the line to the cursor.
|
||
2|VT100|scr|clearEntireLine||Erase the entire line.
|
||
|
||
HTS.head Horizontal Tab Set
|
||
HTS.emus ECMA VT100
|
||
HTS.sect Command.CursMode
|
||
HTS.code ESC|H|
|
||
HTS.text
|
||
Set a tab stop at the current cursor position.
|
||
HTS.table.XPS
|
||
Subcode|Emulation|Scope|Operation|Args|Meaning
|
||
N/A|VT100|scr|changeTabStop|TRUE|see above
|
||
|
||
HVP.head Horizontal and Vertical Position
|
||
HVP.emus ECMA VT100
|
||
HVP.sect Command.Cursor
|
||
HVP.code CSI|f|{Pn;Pn}
|
||
HVP.dflt 1 1
|
||
HVP.text
|
||
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, \ref:CUP.
|
||
The numbering of hte lines depends upon the state of the Origin Mode
|
||
(\ref:DECOM).
|
||
HVP.table.XPS
|
||
Subcode|Emulation|Scope|Operation|Args|Meaning
|
||
N/A|VT100|scr|setCursorYX|p,q|see above
|
||
|
||
IND.head Index
|
||
IND.emus ECMA VT100
|
||
IND.sect Command.Cursor
|
||
IND.code ESC|D|
|
||
IND.text
|
||
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.
|
||
IND.table.XPS
|
||
Subcode|Emulation|Scope|Operation|Args|Meaning
|
||
N/A|VT100|scr|index||see above
|
||
|
||
LNM.head Line Feed/New Line Mode
|
||
LNM.emus ECMA VT100
|
||
LNM.sect Mode
|
||
LNM.text
|
||
This is a parameter to \ref:SM and \ref:RM control sequences.
|
||
The reset state
|
||
causes the interpretation of the \ref:LF character to imply only vertical
|
||
movement of the cursor and causes the RETURN key to send the single
|
||
code \ref:CR.
|
||
.
|
||
The set state causes the \ref:LF character to imply movement
|
||
to the first position of the following line, and causes the RETURN key
|
||
to send the code pair \ref:CR \ref:LF. This is the New Line option.
|
||
.
|
||
This mode does not affect the Index (\ref:IND) or the next line
|
||
(\ref:NEL) format effectors.
|
||
|
||
NEL.head Next Line
|
||
NEL.emus ECMA VT100
|
||
NEL.sect Command.Cursor
|
||
NEL.code ESC|E|
|
||
NEL.text
|
||
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.
|
||
NEL.table.XPS
|
||
Subcode|Emulation|Scope|Operation|Args|Meaning
|
||
N/A|VT100|scr|NextLine||see above
|
||
|
||
PRINT.head Printable Characters
|
||
PRINT.emus ECMA VT100
|
||
PRINT.sect Command.Display
|
||
PRINT.code PRN||{0x20..0x7e,0xa0..0xff}
|
||
PRINT.text
|
||
Printable characters are basically displayed. They my cause a line
|
||
wrap when the cursor is already located at the end of the line.
|
||
.
|
||
The VT100 has a unique way to do this by producing a line wrap before
|
||
the character would be displayed on the next line. This feature allows
|
||
to print at the rightmost column without producing an implicit line feed.
|
||
PRINT.table.XPS
|
||
Subcode|Emulation|Scope|Operation|Args|Meaning
|
||
N/A|VT100|scr|ShowCharacter|p|see above
|
||
|
||
RI.head Reverse Index
|
||
RI.emus ECMA VT100
|
||
RI.sect Command.Cursor
|
||
RI.code ESC|M|
|
||
RI.text
|
||
Move the cursor up one line without changing columns. If the cursor is
|
||
on the top line, a scroll down is performed.
|
||
RI.table.XPS
|
||
Subcode|Emulation|Scope|Operation|Args|Meaning
|
||
N/A|VT100|scr|reverseIndex||see above
|
||
|
||
RIS.head Reset to Initial State
|
||
RIS.emus ECMA VT100
|
||
RIS.sect Command.Mode
|
||
RIS.code ESC|c|
|
||
RIS.text
|
||
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.
|
||
RIS.table.XPS
|
||
Subcode|Emulation|Scope|Operation|Args|Meaning
|
||
N/A|VT100|emu|resetTerminal||see above
|
||
|
||
RM.head Reset Mode
|
||
RM.emus ECMA VT100
|
||
RM.sect Command.SetMode
|
||
RM.code CSI|l|{Ps;...}
|
||
RM.text
|
||
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 \ref:MODES and \ref:SM.
|
||
RM.table.XPS
|
||
Subcode|Emulation|Scope|Operation|Args|Meaning
|
||
4|xterm|scr|resetMode|MODE_Insert|Meaning
|
||
20|VT100|emu|resetMode|MODE_NewLine|\ref:LNM
|
||
|
||
SCS.head Select Character Set
|
||
SCS.emus ECMA VT100
|
||
SCS.sect Command.RenderMode
|
||
SCS.code SCS||{Pc;Cs}
|
||
SCS.text
|
||
The appropriate D0 and G1 character sets are designated from one of the
|
||
five possible sets. The G0 and G1 sets are invoked by the characters
|
||
\ref:LS1 and \ref:LS0, respectively.
|
||
.
|
||
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 received.
|
||
SCS.table.XPS
|
||
Subcode|Emulation|Scope|Operation|Args|Meaning
|
||
N/A|VT100|emu|setCharset|p-'(',q|see above
|
||
SCS.table.Pc
|
||
Pc|Character Selection:4
|
||
(|Select G0 Set
|
||
)|Select G1 Set
|
||
SCS.table.Cs
|
||
Cs|Character Set:4
|
||
A|United Kingdom Set
|
||
B|ASCII Set
|
||
0|Special Graphics
|
||
1|Alternate Character ROM (Standard Character Set)
|
||
2|Alternate Character ROM (Special Graphics)
|
||
|
||
SGR.head Select Graphic Rendition
|
||
SGR.emus ECMA VT100
|
||
SGR.sect Command.RenderMode
|
||
SGR.code CSI|m|{Ps;...}
|
||
SGR.text
|
||
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.
|
||
.
|
||
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.
|
||
SGR.table.XPS
|
||
Subcode|Emulation|Scope|Operation|Args|Meaning
|
||
0|VT100|scr|setDefaultRendition||Attributes Off
|
||
1|VT100|scr|setRendition|RE_BOLD|Bold or increased intensity
|
||
4|VT100|scr|setRendition|RE_UNDERLINE|Underscore
|
||
5|VT100|scr|setRendition|RE_BLINK|Blink
|
||
7|VT100|scr|setRendition|RE_REVERSE|Negative (reverse) image
|
||
10|konsole|emu|Ignored||Meaning
|
||
11|konsole|emu|Ignored||Meaning
|
||
12|konsole|emu|Ignored||Meaning
|
||
22|VT100|scr|resetRendition|RE_BOLD|Meaning
|
||
24|VT100|scr|resetRendition|RE_UNDERLINE|Meaning
|
||
25|VT100|scr|resetRendition|RE_BLINK|Meaning
|
||
27|VT100|scr|resetRendition|RE_REVERSE|Meaning
|
||
30|xterm|scr|setForeColor|0|Meaning
|
||
31|xterm|scr|setForeColor|1|Meaning
|
||
32|xterm|scr|setForeColor|2|Meaning
|
||
33|xterm|scr|setForeColor|3|Meaning
|
||
34|xterm|scr|setForeColor|4|Meaning
|
||
35|xterm|scr|setForeColor|5|Meaning
|
||
36|xterm|scr|setForeColor|6|Meaning
|
||
37|xterm|scr|setForeColor|7|Meaning
|
||
39|xterm|scr|setForeColorToDefault||Meaning
|
||
40|xterm|scr|setBackColor|0|Meaning
|
||
41|xterm|scr|setBackColor|1|Meaning
|
||
42|xterm|scr|setBackColor|2|Meaning
|
||
43|xterm|scr|setBackColor|3|Meaning
|
||
44|xterm|scr|setBackColor|4|Meaning
|
||
45|xterm|scr|setBackColor|5|Meaning
|
||
46|xterm|scr|setBackColor|6|Meaning
|
||
47|xterm|scr|setBackColor|7|Meaning
|
||
49|xterm|scr|setBackColorToDefault||Meaning
|
||
90|xterm|scr|setForeColor|8|Meaning
|
||
91|xterm|scr|setForeColor|9|Meaning
|
||
92|xterm|scr|setForeColor|10|Meaning
|
||
93|xterm|scr|setForeColor|11|Meaning
|
||
94|xterm|scr|setForeColor|12|Meaning
|
||
95|xterm|scr|setForeColor|13|Meaning
|
||
96|xterm|scr|setForeColor|14|Meaning
|
||
97|xterm|scr|setForeColor|15|Meaning
|
||
100|xterm|scr|setBackColor|8|Meaning
|
||
101|xterm|scr|setBackColor|9|Meaning
|
||
102|xterm|scr|setBackColor|10|Meaning
|
||
103|xterm|scr|setBackColor|11|Meaning
|
||
104|xterm|scr|setBackColor|12|Meaning
|
||
105|xterm|scr|setBackColor|13|Meaning
|
||
106|xterm|scr|setBackColor|14|Meaning
|
||
107|xterm|scr|setBackColor|15|Meaning
|
||
|
||
SM.head Set Mode
|
||
SM.emus ECMA VT100
|
||
SM.sect Command.SetMode
|
||
SM.code CSI|h|{Ps;...}
|
||
SM.text
|
||
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 (\ref:RM) control sequence.
|
||
See \ref:RM and \ref:MODES.
|
||
SM.table.XPS
|
||
Subcode|Emulation|Scope|Operation|Args|Meaning
|
||
4|VT100|scr|setMode|MODE_Insert|Meaning
|
||
20|VT100|emu|setMode|MODE_NewLine|\ref:LNM
|
||
|
||
TBC.head Tabulation Clear
|
||
TBC.emus ECMA VT100
|
||
TBC.sect Command.CursMode
|
||
TBC.code CSI|g|{Ps}
|
||
TBC.text
|
||
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.
|
||
TBC.table.XPS
|
||
Subcode|Emulation|Scope|Operation|Args|Meaning
|
||
0|VT100|scr|changeTabStop|FALSE|Meaning
|
||
3|VT100|scr|clearTabStops||Meaning
|
||
|
||
##############################################################################
|
||
# #
|
||
# VT52 #
|
||
# #
|
||
##############################################################################
|
||
|
||
VT52ANSI.head VT52 ANSI Ansi Mode
|
||
VT52ANSI.emus VT100 XTERM VT52 KONSOLE
|
||
VT52ANSI.sect Command.Mode
|
||
VT52ANSI.code ESC|<|
|
||
VT52ANSI.text
|
||
This is an extension to the VT52 commands to embed the emulation into VT100.
|
||
It allows to return back to VT100 emulation (ANSI mode).
|
||
See also \ref:DECANM and \ref:SM.
|
||
VT52ANSI.table.XPS
|
||
Subcode|Emulation|Scope|Operation|Args|Meaning
|
||
N/A|VT52|emu|setMode|MODE_Ansi|see above
|
||
|
||
VT52CUB.head VT52 Cursor Back
|
||
VT52CUB.emus KONSOLE
|
||
VT52CUB.sect Command.VT52
|
||
VT52CUB.code ESC|D|
|
||
VT52CUB.text
|
||
See \ref:CUB.
|
||
VT52CUB.table.XPS
|
||
Subcode|Emulation|Scope|Operation|Args|Meaning
|
||
N/A|VT52|scr|cursorLeft|1|see above
|
||
|
||
VT52CUD.head VT52 Cursor Down
|
||
VT52CUD.emus KONSOLE
|
||
VT52CUD.sect Command.VT52
|
||
VT52CUD.code ESC|B|
|
||
VT52CUD.text
|
||
See \ref:CUD.
|
||
VT52CUD.table.XPS
|
||
Subcode|Emulation|Scope|Operation|Args|Meaning
|
||
N/A|VT52|scr|cursorDown|1|see above
|
||
|
||
VT52CUF.head VT52 Cursor Forward
|
||
VT52CUF.emus KONSOLE
|
||
VT52CUF.sect Command.VT52
|
||
VT52CUF.code ESC|C|
|
||
VT52CUF.text
|
||
See \ref:CUF.
|
||
VT52CUF.table.XPS
|
||
Subcode|Emulation|Scope|Operation|Args|Meaning
|
||
N/A|VT52|scr|cursorRight|1|see above
|
||
|
||
VT52CUP.head VT52 Cursor Position
|
||
VT52CUP.emus KONSOLE
|
||
VT52CUP.sect Command.VT52
|
||
VT52CUP.code VT5||{X;Y}
|
||
VT52CUP.text
|
||
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.
|
||
VT52CUP.table.XPS
|
||
Subcode|Emulation|Scope|Operation|Args|Meaning
|
||
N/A|VT52|scr|setCursorYX|p-31,q-31|see above
|
||
|
||
VT52CUU.head VT52 Cursor Up
|
||
VT52CUU.emus KONSOLE
|
||
VT52CUU.sect Command.VT52
|
||
VT52CUU.code ESC|A|
|
||
VT52CUU.text
|
||
See \ref:CUU.
|
||
VT52CUU.table.XPS
|
||
Subcode|Emulation|Scope|Operation|Args|Meaning
|
||
N/A|VT52|scr|cursorUp|1|see above
|
||
|
||
VT52EDL.head VT52 Clear To End Of Line
|
||
VT52EDL.emus KONSOLE
|
||
VT52EDL.sect Command.VT52
|
||
VT52EDL.code ESC|K|
|
||
VT52EDL.text
|
||
FIXME. explain
|
||
VT52EDL.table.XPS
|
||
Subcode|Emulation|Scope|Operation|Args|Meaning
|
||
N/A|VT52|scr|clearToEndOfLine||see above
|
||
|
||
VT52EDS.head VT52 Clear To End Of Screen
|
||
VT52EDS.emus KONSOLE
|
||
VT52EDS.sect Command.VT52
|
||
VT52EDS.code ESC|J|
|
||
VT52EDS.text
|
||
FIXME. explain
|
||
VT52EDS.table.XPS
|
||
Subcode|Emulation|Scope|Operation|Args|Meaning
|
||
N/A|VT52|scr|clearToEndOfScreen||see above
|
||
|
||
VT52CUH.head VT52 Cursor Home
|
||
VT52CUH.emus KONSOLE
|
||
VT52CUH.sect Command.VT52
|
||
VT52CUH.code ESC|H|
|
||
VT52CUH.text
|
||
FIXME. explain
|
||
VT52CUH.table.XPS
|
||
Subcode|Emulation|Scope|Operation|Args|Meaning
|
||
N/A|VT52|scr|setCursorYX|1,1|see above
|
||
|
||
VT52KPAM.head VT52 Enter alternate keypad mode
|
||
VT52KPAM.emus KONSOLE
|
||
VT52KPAM.sect Command.VT52
|
||
VT52KPAM.code ESC|=|
|
||
VT2KPAM.text
|
||
FIXME. explain
|
||
VT52KPAM.table.XPS
|
||
Subcode|Emulation|Scope|Operation|Args|Meaning
|
||
N/A|VT52|emu|setMode|MODE_AppKeyPad|see above
|
||
|
||
VT52KPNM.head VT52 Exit alternate keypad mode
|
||
VT52KPNM.emus KONSOLE
|
||
VT52KPNM.sect Command.VT52
|
||
VT52KPNM.code ESC|>|
|
||
VT52KPNM.text
|
||
FIXME. explain
|
||
VT52KPNM.table.XPS
|
||
Subcode|Emulation|Scope|Operation|Args|Meaning
|
||
N/A|VT52|emu|resetMode|MODE_AppKeyPad|see above
|
||
|
||
VT52REP.head VT52 Report Terminal Type
|
||
VT52REP.emus KONSOLE
|
||
VT52REP.sect Command.VT52
|
||
VT52REP.code ESC|Z|
|
||
VT52REP.text
|
||
Response to ESC Z is ESC / Z.
|
||
VT52REP.table.XPS
|
||
Subcode|Emulation|Scope|Operation|Args|Meaning
|
||
N/A|VT52|emu|reportTerminalType||see above
|
||
|
||
VT52RI.head VT52 Reverse Index
|
||
VT52RI.emus KONSOLE
|
||
VT52RI.sect Command.VT52
|
||
VT52RI.code ESC|I|
|
||
VT52RI.text
|
||
FIXME. explain
|
||
VT52RI.table.XPS
|
||
Subcode|Emulation|Scope|Operation|Args|Meaning
|
||
N/A|VT52|scr|reverseIndex||see above
|
||
|
||
VT52SCSF.head VT52 Select special graphics character set
|
||
VT52SCSF.emus KONSOLE
|
||
VT52SCSF.sect Command.VT52
|
||
VT52SCSF.code ESC|F|
|
||
VT52SCSF.text
|
||
FIXME. explain
|
||
VT52SCSF.table.XPS
|
||
Subcode|Emulation|Scope|Operation|Args|Meaning
|
||
N/A|VT52|scr|setAndUseCharset|0,'0'|see above
|
||
|
||
VT52SCSG.head VT52 Select ASCII character set
|
||
VT52SCSG.emus KONSOLE
|
||
VT52SCSG.sect Command.VT52
|
||
VT52SCSG.code ESC|G|
|
||
VT52SCSG.text
|
||
FIXME. explain
|
||
VT52SCSG.table.XPS
|
||
Subcode|Emulation|Scope|Operation|Args|Meaning
|
||
N/A|VT52|scr|setAndUseCharset|0,'B'|see above
|