.\" Copyright (C) 1994 Jochen Hein (Hein@Student.TU-Clausthal.de) .\" .\" %%%LICENSE_START(GPLv2+_SW_3_PARA) .\" This program is free software; you can redistribute it and/or modify .\" it under the terms of the GNU General Public License as published by .\" the Free Software Foundation; either version 2 of the License, or .\" (at your option) any later version. .\" .\" This program is distributed in the hope that it will be useful, .\" but WITHOUT ANY WARRANTY; without even the implied warranty of .\" MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the .\" GNU General Public License for more details. .\" .\" You should have received a copy of the GNU General Public .\" License along with this manual; if not, see .\" . .\" %%%LICENSE_END .\" .TH CHARMAP 5 2016-07-17 "GNU" "Linux Programmer's Manual" .SH NAME charmap \- character set description file .SH DESCRIPTION A character set description (charmap) defines all available characters and their encodings in a character set. .BR localedef (1) can use charmaps to create locale variants for different character sets. .SS Syntax The charmap file starts with a header that may consist of the following keywords: .TP .RI < code_set_name > is followed by the name of the character map. .TP .RI < comment_char > is followed by a character that will be used as the comment character for the rest of the file. It defaults to the number sign (#). .TP .RI < escape_char > is followed by a character that should be used as the escape character for the rest of the file to mark characters that should be interpreted in a special way. It defaults to the backslash (\\). .TP .RI < mb_cur_max > is followed by the maximum number of bytes for a character. The default value is 1. .TP .RI < mb_cur_min > is followed by the minimum number of bytes for a character. This value must be less than or equal than .RI < mb_cur_max >. If not specified, it defaults to .RI < mb_cur_max >. .PP The character set definition section starts with the keyword .I CHARMAP in the first column. .PP The following lines may have one of the two following forms to define the character set: .TP .RI < character >\ byte-sequence\ comment This form defines exactly one character and its byte sequence, .I comment being optional. .TP .RI < character >..< character >\ byte-sequence\ comment This form defines a character range and its byte sequence, .I comment being optional. .PP The character set definition section ends with the string .IR "END CHARMAP" . .PP The character set definition section may optionally be followed by a section to define widths of characters. .PP The .I WIDTH_DEFAULT keyword can be used to define the default width for all characters not explicitly listed. The default character width is 1. .PP The width section for individual characters starts with the keyword .I WIDTH in the first column. .PP The following lines may have one of the two following forms to define the widths of the characters: .TP .RI < character >\ width This form defines the width of exactly one character. .TP .RI < character >...< character >\ width This form defines the width for all the characters in the range. .PP The width definition section ends with the string .IR "END WIDTH" . .SH FILES .TP .I /usr/share/i18n/charmaps Usual default character map path. .SH CONFORMING TO POSIX.2. .SH EXAMPLE The Euro sign is defined as follows in the .I UTF\-8 charmap: .PP .nf /xe2/x82/xac EURO SIGN .fi .SH SEE ALSO .BR iconv (1), .BR locale (1), .BR localedef (1), .BR locale (5), .BR charsets (7) .SH COLOPHON This page is part of release 4.16 of the Linux .I man-pages project. A description of the project, information about reporting bugs, and the latest version of this page, can be found at \%https://www.kernel.org/doc/man\-pages/.