This page uses content from Wikipedia and is licensed under CC BY-SA.

Shift Out and Shift In characters

The effects of the Shift in and out on a Linux terminal.

Shift Out (SO) and Shift In (SI) are ASCII control characters 14 and 15, respectively (0x0E and 0x0F).[1] These are sometimes also called "Control-N" and "Control-O".

The original meaning of those characters provided a way to shift a coloured ribbon, split longitudinally usually with red and black, up and down to the other colour in an electro-mechanical typewriter or teleprinter, such as the Teletype Model 38, to automate the same function of manual typewriters. Black was the conventional ambient default colour and so was shifted "in" or "out" with the other colour on the ribbon.

Later advancements in technology instigated use of this function for switching to a different font or character set and back.  This was used, for instance, in the Russian character set known as KOI7, where SO starts printing Russian letters, and SI starts printing Latin letters again. SO/SI control characters also are used to display VT-100 pseudographics, and emoji (Japanese picture icons) on SoftBank Mobile. ISO/IEC 2022 standard specifies their generalized usage.


  1. ^ "The Linux Programmer's Manual". Retrieved 2012-11-16.

See also