unicode_start
Enter Unicode input mode on serial console
SYNOPSIS
unicode_start
PARAMETERS
(No specific functional parameters)
The unicode_start command typically does not accept any specific functional parameters. Its execution without arguments is usually sufficient to enable Unicode mode. Some implementations might support standard options like --help for usage information or --version for showing the program's version, but these are not for configuring its core behavior.
DESCRIPTION
unicode_start is a utility designed to configure the Linux console, also known as the text-mode terminal or TTY, to correctly display and input Unicode characters. When invoked, it sets the console into UTF-8 mode, allowing it to render a vast array of characters from different languages and symbol sets defined by the Unicode standard. This command is a crucial component for internationalization on the command line, especially in environments without a graphical user interface. It's often automatically executed during system boot by console configuration scripts (e.g., part of the console-setup package) or can be run manually by users who require support for non-ASCII characters directly on the console. Its primary function is to prepare the console's character encoding, relying on the kernel's support for UTF-8 mode and appropriate console fonts to render the characters correctly.
CAVEATS
Kernel Support: Requires a Linux kernel compiled with support for UTF-8 console mode.
Font Dependency: Correct display of Unicode characters relies heavily on having an appropriate console font loaded (e.g., using setfont) that contains the necessary glyphs. Without the right font, characters may appear as question marks, empty boxes, or corrupted symbols.
Console Only: This command exclusively affects the physical Linux console (TTYs like /dev/tty1, /dev/tty2) and does not influence graphical terminal emulators (e.g., GNOME Terminal, Konsole, XTerm), which manage their own Unicode rendering.
Comprehensive Setup: Simply running unicode_start might not be sufficient for full internationalization; it's often part of a larger console setup process that includes locale configuration and font loading.
INTERACTION WITH SYSTEM LOCALES
While unicode_start enables UTF-8 mode for the console itself, the overall behavior of text processing tools (like grep, ls, etc.) and applications in the console also depends on the system's locale settings, particularly the LC_CTYPE environment variable. For consistent Unicode handling, ensure your locale (e.g., en_US.UTF-8) is correctly set to a UTF-8 variant.
REVERTING CONSOLE MODE
To disable Unicode mode and revert the console to an 8-bit character set (e.g., ISO-8859-1 or CP437), the companion command unicode_stop(8) can be used. This is useful if you encounter issues with Unicode fonts or need to work with legacy applications that expect an 8-bit encoding.
HISTORY
The need for unicode_start arose with the increasing adoption of Unicode and UTF-8 as the standard for character encoding, aiming to move beyond the limitations of older 8-bit character sets (like ISO-8859-x) on the Linux console. Early Linux systems primarily supported ASCII and various ISO character sets. As internationalization became a critical feature, utilities like unicode_start were developed as part of packages such as kbd and console-setup to bridge the gap and enable robust Unicode support in text-mode environments. Its development reflects the continuous effort to make the Linux command line fully functional and accessible for users worldwide, facilitating the display and input of diverse scripts and symbols without relying on a graphical interface.
SEE ALSO
unicode_stop(8), setfont(8), loadkeys(1), console-setup(8), kbd(7)