Copyright © 2013-2014,2018 by Thomas E. Dickey

VTTEST – National Replacement Character Sets


By default, xterm uses ISO-8859-1 (Latin-1). That is for compatibility with the VT220. It is an example of a code page.

Actually, there are minor differences with VT220 versus ISO-8859-1. DEC supported the standard Latin-1 character set starting with the VT320.


Before the VT220 was introduced, the VT100 used ASCII (in some documentation, called "North American"). DEC initially added character sets by replacing items in that character set.

VT100 Character Sets

DEC Special Graphics

VT100 provided a set of graphics (line-drawing) characters which could be used as a temporary alternative to ASCII.

Example of NRCS for DEC Special Graphics


VT100 also allowed the “#” character to be replaced with “£” (the British pound symbol).

Example of NRCS for British


Replacing a few characters was less expensive than replacing the entire character set. In the replacement character scheme, the terminal had a basic character set, with a few replacements to adapt it to different nationalities.

The VT220 used this approach for its National Replacement Character (NRC) feature.

The VT320 did extend this slightly, but it added code pages (similar but different).
The VT510 extended this a little further, and added more code pages.

XTerm implements NRC, but there are differences. According to Installing and Using The VT320 Video Terminal (EK-VT320-UU-0001):

NRC sets are for 7-bit computing environments. Each NRC set is for a particular Western European language or dialect. NRC sets are similar to the ASCII set, but replace a few ASCII characters with characters used in that language or dialect.

You can only use one NRC set at a time. You select the NRC set by setting the Keyboard feature in the Set-Up Directory (Chapter 4).

If you set the Character Set Mode feature in the General Set-Up screen to "7-Bit Characters", you cannot use the 8-bit multinational character sets. However, if you set Character Set Mode to "8-Bit Characters" you can still use an NRC set. In that case, the NRC set replaces the ASCII set.

XTerm has no set-up dialog; it uses X resources for its settings. Rather than having to restart xterm to select a character set, users can switch into any NRC using control sequences, just as if they were a special type of code page.

This works with xterm, for other terminals your mileage may vary:

Example of Mixed NRC

In these screenshots, the replacement characters are shown highlighted.
Incidentally, not all of the VT220's characters have Unicode equivalents.
XTerm shows the ones that are in Unicode.


Example of NRCS for Dutch


Example of NRCS for Finnish

French Canadian

Example of NRCS for French-Canadian


Example of NRCS for French


Example of NRCS for German


Example of NRCS for Italian


Example of NRCS for Norwegian/Danish


Example of NRCS for Spanish


Example of NRCS for Swedish


Example of NRCS for Swiss



Example of NRCS for Portuguese



Example of NRCS for Greek


Example of NRCS for Hebrew


Example of NRCS for Turkish