управляющие и управляющие последовательности консоли Linux (Linux console escape and control sequences)
Ошибки (баги) (Bugs)
In 2.0.23, CSI is broken, and NUL is not ignored inside escape
sequences.
Some older kernel versions (after 2.0) interpret 8-bit control
sequences. These "C1 controls" use codes between 128 and 159 to
replace ESC [, ESC ] and similar two-byte control sequence
initiators. There are fragments of that in modern kernels
(either overlooked or broken by changes to support UTF-8), but
the implementation is incomplete and should be regarded as
unreliable.
Linux "private mode" sequences do not follow the rules in ECMA-48
for private mode control sequences. In particular, those ending
with ] do not use a standard terminating character. The OSC (set
palette) sequence is a greater problem, since xterm
(1) may
interpret this as a control sequence which requires a string
terminator (ST). Unlike the setterm(1) sequences which will be
ignored (since they are invalid control sequences), the palette
sequence will make xterm
(1) appear to hang (though pressing the
return-key will fix that). To accommodate applications which
have been hardcoded to use Linux control sequences, set the
xterm
(1) resource brokenLinuxOSC
to true.
An older version of this document implied that Linux recognizes
the ECMA-48 control sequence for invisible text. It is ignored.