Categoria LC_CTYPE para o Formato de Arquivo Fonte de Definição de Locale

Propósito

Define classificação de caracteres, conversão de caso e outros atributos de caracteres.

Descrição

A categoria LC_CTYPE de um arquivo de origem de definição de locale define classificação de caracteres, conversão de casos e outros atributos de caracteres. Esta categoria começa com um cabeçalho de categoria LC_CTYPE e finaliza com um trailer de categoria END LC_CTYPE .

Todas as operandos para instruções de categoria LC_CTYPE são definidas como listas de caracteres. Cada lista consiste em um ou mais caracteres separados por ponto e vírgula ou nomes de caracteres simbólicos.

As palavras-chave a seguir são reconhecidas na categoria LC_CTYPE . Nas descrições, o termo incluído automaticamente significa que um erro não ocorre se os caracteres referenciados forem incluídos ou omitidos. Os personagens serão fornecidos se estiverem desaparecidos e serão aceitos se estiverem presentes.

Item Descrição
Copiar Especifica o nome de um locale existente a ser utilizado como a definição desta categoria. Se uma instrução cópia for incluída no arquivo, nenhuma outra palavra-chave pode ser especificada.
superior Define caracteres de letra maiúsa. Nenhum caractere definido pela palavra-chave cntrl, dígito, punctou espaço pode ser especificado. No mínimo, as letras maiúsculas A-Z devem ser definidas.
inferior Define caracteres de letra minúsida. Nenhum caractere definido pela palavra-chave cntrl, dígito, punctou espaço pode ser especificado. No mínimo, as letras minúsculas a-z devem ser definidas.
alpha Define todos os caracteres da letra. Nenhum caractere definido pela palavra-chave cntrl, dígito, punctou espaço pode ser especificado. Caracteres definidos pelas palavras-chave superior e inferior são automaticamente incluídos nesta classe de caracteres.
dígito Define caracteres de dígito numérico. Somente podem ser especificados os algaros 0, 1, 2, 3, 4, 5, 6, 7, 8 e 9.
alnum Define caracteres alfanuméricos. Nenhum caractere definido pela palavra-chave cntrl, punctou espaço pode ser especificado. Caracteres definidos pelas palavras-chave alfa e dígito são automaticamente incluídos nesta classe de caracteres.
espaço Define caracteres de espaço em branco. Nenhum caractere definido pelos palavras-chave superior, inferior, alfa, dígito, gráfico, cntrlou xdígito pode ser especificado. No mínimo, o<space>,<form-feed>,<newline>,<carriage return>,<tab>e<vertical-tab>caracteres, e quaisquer caracteres definidos pela palavra-chave branco , devem ser especificados.
cntrl Define caracteres de controle. Nenhum caractere definido pelos palavras-chave superior, inferior, alfa, dígito, punct, gráfico, imprimir, xdígitoou espaço pode ser especificado.
ponto Define caracteres de pontuação. Um caractere definido como o<space>caracteres e caracteres definidos pelos palavras-chave superior, inferior, alfa, dígito, cntrlou xdígito não podem ser especificados.
gráfico Define caracteres imprimíveis, excluindo o<space>!. Se esta palavra-chave não for especificada, caracteres definidos pelas palavras-chave superior, inferior, alfa, dígito, xdígitoe punct são automaticamente incluídos nesta classe de caracteres. Nenhum caractere definido pela palavra-chave cntrl pode ser especificado.
imprimir Define caracteres imprimíveis, incluindo o<space>!. Se esta palavra-chave não for especificada, o<space>caracteres e caracteres definidos pelas palavras-chave superior, inferior, alfa, dígito, xdígitoe punct são automaticamente incluídos nesta classe de caracteres. Nenhum caractere definido pela palavra-chave cntrl pode ser especificado.
xdígito Define caracteres de dígito hexadecimal. Os algarismo 0-9 e as letras A-F e a-f podem ser especificados. A palavra-chave xdígito é padronizado para seus limites de classe normais.
Em branco Define caracteres em branco. Se esta palavra-chave não for especificada, o<space>e<horizontal-tab>caracteres são incluídos nesta classe de caracteres. Quaisquer caracteres definidos por esta instrução são automaticamente incluídos na classe de palavra-chave espaço .
charclasse Define um ou mais nomes de classe de caracteres específicos do locale como strings separados por ponto e vírgula. Cada classe de caracteres nomeada pode então ser definida posteriormente na definição LC_CTYPE . Um nome de classe de caracteres consiste em pelo menos um, e no máximo 32 bytes, de caracteres alfanuméricos do conjunto de caracteres portáteis. O primeiro caractere de um nome de classe de caracteres não pode ser um dígito. O nome não pode corresponder a nenhuma das palavras-chave LC_CTYPE definidas nesta seção.
carclass-nome Define caracteres a serem classificados como pertencentes à classe de caracteres específicos do locale nomeado. As classes de caracteres nomeadas específicas do locale não precisam existir no locale POSIX .

Se um nome de classe é definido por uma palavra-chave charclasse , mas nenhum caractere é posteriormente designado para ele, ele representa uma classe sem nenhum caractere pertencente a ele.

O carclass-nome pode ser usado como o parâmetro Propriedade na subroutine wctype , em expressões regulares e expressões de correspondência de padrões de shell, e pelo comando tr .

toupper Define o mapeamento de caracteres minúsos para caracteres maiúsos. Operandos para esta palavra-chave consistem em pares de caracteres separados por ponto e vírgula. Cada par de caracteres é enfechado em () (parênteses) e separados do próximo par por a, (vírgula). O primeiro caractere em cada par é considerado minúsforo; o segundo caractere é considerado maiúsico. Somente caracteres definidos pelas palavras-chave inferior e superior podem ser especificados.
tolower Define o mapeamento de caracteres maiús-maiúsculas para caracteres minúsos. Operandos para esta palavra-chave consistem em pares de caracteres separados por ponto e vírgula. Cada par de caracteres é enfechado em () (parênteses) e separados do próximo par por a, (vírgula). O primeiro caractere em cada par é considerado maiúsos; o segundo caractere é considerado minúsforo. Somente caracteres definidos pelas palavras-chave inferior e superior podem ser especificados.

A palavra-chave tolower é opcional. Se esta palavra-chave não for especificada, o mapeamento padronizado para o mapeamento reverso da palavra-chave toupper , se especificado. Se as palavras-chave toupper e tolower forem ambas não especificadas, o mapeamento para cada padronizado para o do locale C .

A categoria LC_CTYPE não suporta elementos multicaracteres. Por exemplo, o caráter de sharp-s alemão é tradicionalmente classificado como uma letra minúsante. Não há letra maiússola correspondente; na capitalização adequada do texto alemão, o caráter pontiagudo é substituído pelos dois caracteres ss. Esse tipo de conversão está fora do escopo das palavras-chave toupper e tolower .

Exemplos

A seguir está um exemplo de uma possível categoria LC_CTYPE listada em um arquivo de origem de definição de locale:

LC_CTYPE
#"alpha" is by default "upper" and "lower"
#"alnum" is by default "alpha" and "digit"
#"print" is by default "alnum", "punct" and the space character
#"graph" is by default "alnum" and "punct"
#"tolower" is by default the reverse mapping of "toupper"
#
upper           <A>;<B>;<C>;<D>;<E>;<F>;<G>;<H>;<I>;<J>;<K>;<L>;<M>;\
                <N>;<O>;<P>;<Q>;<R>;<S>;<T>;<U>;<V>;<W>;<X>;<Y>;<Z>
#
lower           <a>;<b>;<c>;<d>;<e>;<f>;<g>;<h>;<i>;<j>;<k>;<l>;<m>;\
                <n>;<o>;<p>;<q>;<r>;<s>;<t>;<u>;<v>;<w>;<x>;<y>;<z>
#
digit           <zero>;<one>;<two>;<three>;<four>;<five>;<six>;\
                <seven>;<eight>;<nine>
#
space           <tab>;<newline>;<vertical-tab>;<form-feed>;\
                <carriage-return>;<space>
#
cntrl           <alert>;<backspace>;<tab>;<newline>;<vertical-tab>;/
                <form-feed>;<carriage-return>;<NUL>;<SOH>;<STX>;/
                <ETX>;<EOT>;<ENQ>;<ACK>;<SO>;<SI>;<DLE>;<DC1>;<DC2>;/
                <DC3>;<DC4>;<NAK>;<SYN>;<ETB>;<CAN>;<EM>;<SUB>;/
                <ESC>;<IS4>;<IS3>;<IS2>;<IS1>;<DEL>
#
punct           <exclamation-mark>;<quotation-mark>;<number-sign>;\
                <dollar-sign>;<percent-sign>;<ampersand>;<asterisk>;\
                <apostrophe>;<left-parenthesis>;<right-parenthesis>; 
                <plus-sign>;<comma>;<hyphen>;<period>;<slash>;/
                <colon>;<semicolon>;<less-than-sign>;<equals-sign>;\
                <greater-than-sign>;<question-mark>;<commercial-at>;\
                <left-square-bracket>;<backslash>;<circumflex>;\
                <right-square-bracket>;<underline>;<grave-accent>;\
                <left-curly-bracket>;<vertical-line>;<tilde>;\
                <right-curly-bracket>
#
xdigit          <zero>;<one>;<two>;<three>;<four>;<five>;<six>;\
                <seven>;<eight>;<nine>;<A>;<B>;<C>;<D>;<E>;<F>;\
                <a>;<b>;<c>;<d>;<e>;<f>
#
blank           <space>;<tab>
#
toupper  (<a>,<A>);(<b>,<B>);(<c>,<C>);(<d>,<D>);(<e>,<E>);\
                (<f>,<F>);(<g>,<G>);(<h>,<H>);(<i>,<I>);(<j>,<J>);\
                (<k>,<K>);(<l>,<L>);(<m>,<M>);(<n>,<N>);(<o>,<O>);\
                (<p>,<P>);(<q>,<Q>);(<r>,<R>);(<s>,<S>);(<t>,<T>);\
                (<u>,<U>);(<v>,<V>);(<w>,<W>);(<x>,<X>);(<y>,<Y>);\
                (<z>,<Z>)
#
END LC_CTYPE

Arquivos

Item Descrição
/usr/lib/nls/loc/* Especifica arquivos de origem de definição de locale para locales suportados.
/ usr/lib/nls/charmap/* Especifica descrição do conjunto de caracteres (carmap) arquivos de origem para locales suportados.