Provided by: manpages-pt-br_4.13-4_all bug

NOME

       unicode - conjunto de caracteres universal

DESCRIÇÃO

       O  padrão  internacional ISO 10646 define o Universal Character Set (UCS). UCS contém todos os caracteres
       de todos os outros padrões. Ele também garante a  compatibilidade  retroativa,  isto  é,  as  tabelas  de
       conversão  podem  ser  construídas  de  forma  que  nenhuma  informação  seja perdida quando uma string é
       convertida de qualquer outra codificação para UCS e vice-versa.

       UCS contém os caracteres necessários para representar quase todas as línguas conhecidas. Isto inclui  não
       somente  a latina, grega, cirílica, hebraica, árabe, armênia e gregoriana, mas também chinesa, japonesa e
       coreana, como também as escritas em ideogramas hiragana, katakana, hangul, devangari, bengali,  gurmukhi,
       gujarati,  oriya,  tamil,  telugu, kannada, malaio, thai, lao, khmer, bopomofo, tibetana, rúnica, etíope,
       silábica canadense, cherokee, mongol, oghan, myanmar, sinhalam thaana, yi e muitas outras. Para  escritas
       ainda  não  cobertas,  pesquisas  de como se fazer a codificação para o computador ainda são realizadas e
       elas serão eventualmente adicionadas. Isto não inclui  somente  símbolos  gráficos  e  várias  linguagens
       históricas  indo-europeias mas, também, escritas artísticas como o tengwar, cirth e klingon. A UCS também
       incluí um grande número de símbolos gráficos,  tipográficos,  matemáticos  e  científicos,  como  aqueles
       fornecidos  pelo  Tex,  PostScript,  APL,  MS-DOS, MS-Windows, Macintosh, fontes OCR e muitos sistemas de
       processamento de texto e de publicação, e mais será adicionado.

       O padrão UCS (ISO 10646) descreve uma arquitetura de conjunto de caracteres de 31  bits,  consistindo  de
       128  grupos  de  24  bits  divididos  em  256  planos de 16 bits que formam 256 linhas com 8 bits com 256
       colunas, uma para cada caractere. A parte 1 do  padrão  (ISO  10646-1)  define  que  as  primeiras  65534
       posições  de  código  (0x0000  to  0xfffd), formam o Plano Multilíngue Básico (Basic Multilingual Plane -
       BMP), que é o plano 0 no grupo 0. A parte 2 do padrão (ISO 10646-2) adiciona caracteres ao  grupo  0  que
       estão  fora  do BMP nos vários planos suplementares no intervalo 0x10000 até 0x10ffff. Não há planos para
       se adicionar caracteres depois de 0x10ffff no padrão, então de todo espaço de código, somente uma pequena
       fração do grupo 0 será sempre usada em um futuro previsto. O BMP contém todos os caracteres encontrado em
       outros conjuntos usados normalmente. Os planos suplementares adicionados pela ISO 10464-2  cobre  somente
       caracteres  muito  exóticos de necessidades especiais científicas, impressão de dicionários, industria de
       publicações, protocolo de alto-nível e entusiastas.

       A representação de cada caractere UCS como uma palavra de 2 bytes é referida pela  forma  UCS-2  (somente
       para  caracteres BMP), enquanto que UCS-4 é a representação de cada caractere por uma palavra de 4 bytes.
       Adicionalmente, existem duas formas de codificação UTF-8 para tratamento de compatibilidade  reversa  com
       processamento ASCII e UTF-16 para tratamento de compatibilidade reversa com caracteres que não estejam no
       BMP para 0x10ffff para UCS-2.

       Os  caracteres  UCS  0x0000  até  0x007f  são  idênticos ao clássico conjunto de caracteres US-ASCII e no
       intervalo de 0x000 até 0x00ff são idênticos ao ISO 8859-1 (Latin-1).

   Caracteres combinantes
       Alguns pontos de código no UCS têm sido atribuídos aos caracteres combinantes.  Estes  são  similares  às
       teclas de acento de não-espaçamento em uma máquina de escrever. Um caractere combinante apenas acrescenta
       um acento a um caractere anterior. Os caracteres acentuados mais importantes têm seus próprios códigos no
       UCS, porém o mecanismo de caracteres combinantes permitem acrescentar acentos e outras marcas diacríticas
       a  qualquer  caractere.  Os  caracteres  combinantes  sempre  seguem  o caractere que eles modificam. Por
       exemplo, o caractere alemão Umlaut-A ("letra A maiúscula com trema") pode ser  representado  pelo  código
       UCS  pré-composto 0x00c4, ou alternativamente como a combinação de uma "letra A maiúscula" normal seguida
       de um "trema combinante": 0x0041 0x0308.

       Caracteres combinantes são essencialmente para codificar  a  escrita  thai  ou  tipografia  matemática  e
       usuários do Alfabeto Fonético Internacional.

   Níveis de implementação
       Como nem todo sistema suporta mecanismos avançados, como caracteres combinantes, a ISO 10646-1 especifica
       os três seguintes níveis de implementação da UCS:

       Nível 1  Caracteres  combinantes  e caracteres Hangul Jamo (uma codificação especial e mais complicada da
                escrita  coreana,  onde  as  sílabas  Hangul  são  codificadas  como  dois   ou   três   códigos
                vogal/consoante) não são implementados.

       Nível 2  Em adição ao nível 1, caracteres combinantes são agora permitidos para algumas línguas, onde são
                essenciais (por exemplo, thai, lao, hebraico, árabe, devangari, malaio, etc.).

       Nível 3  Todos os caracteres UCS são suportados.

       O  padrão  Unicode  3.0 publicado pelo Unicode Consortium contém exatamente o Plano Multilíngue Básico do
       UCS no nível 3 de implementação, como descrito  na  ISO  10646:2000.  Unicode  3.1  adicionou  os  planos
       suplementares  da  ISO 10646-2. O padrão Unicode e relatórios técnicos publicados pelo Unicode Consortium
       fornecem informações adicionais da semântica e utilização recomendada dos vários caracteres. Ele  fornece
       diretrizes  e  algoritmos  para  edição,  ordenamento,  comparação, normalização, conversão e exibição de
       strings Unicode.

   Unicode no Linux
       No GNU/Linux, o tipo C wchar_t é um tipo inteiro, com  sinal,  de  32  bits.  Estes  valores  são  sempre
       interpretados  pela  biblioteca  C  como  código  UCS  (em  todas  as  localizações), uma convenção que é
       assinalada pela biblioteca GNU C para aplicações pela  definição  da  constante  __STDC_ISO_10646__  como
       especificado no padrão ISO C99.

       UCS/Unicode  pode ser usado como ASCII nos fluxos de entrada/saída, comunicação de terminais, arquivos de
       texto simples, nomes de arquivos e variáveis de  ambiente  na  codificação  multibyte  UTF-8,  compatível
       ASCII.  Para  sinalizar  o uso do UTF-8 como codificação caractere para todos aplicativos, uma localidade
       (locale) adequada deve ser selecionada pela variáveis de ambiente (por exemplo, "LANG=en_GB.UTF-8").

       A função nl_langinfo(CODESET) retorna o nome da codificação  selecionada.  Bibliotecas  de  funções  como
       wctomb(3)  e  mbsrtowcs(3)  podem ser usadas para transformar os caracteres wchar_t e strings internas na
       codificação de caracteres do sistema, e vice-versa, e wcwidth(3) informa quantas posições (0–2) o  cursor
       avança pela saída de um caractere.

   Área de Uso Privativo (PUA)
       No  Plano Multilíngue Básico, a faixa de 0xe000 até 0xf8ff nunca será atribuída a qualquer caractere pelo
       padrão, e é reservada para uso privativo. Para a comunidade Linux, esta área privativa  foi  dividida  na
       faixa de x0e000 até 0xefff, que pode ser usada individualmente por algum usuário final, e a zona Linux na
       faixa  de  0xf000 até 0xf8ff, onde as extensões são coordenadas entre todos os usuários Linux. O registro
       dos  caracteres  atribuídos  à  zona  Linux   é   mantido   por   LANANA   e   o   registro   em   si   é
       Documentation/admin-guide/unicode.rst no código-fonte do kernel Linux (ou Documentation/unicode.txt antes
       do Linux 4.10).

       Dois  outros  planos  estão reservados para uso privativo: plano 15 (Área-A de Uso Privativo Suplementar,
       faixa de 0xf0000 até 0xffffd) e plano 16 (Área-B de Uso Privativo  Suplementar,  faixa  de  0x100000  até
       0x10fffd).

   Literatura
       *  Information technology — Universal Multiple-Octet Coded Character Set (UCS) — Part 1: Architecture and
          Basic  Multilingual  Plane.   International  Standard  ISO/IEC 10646-1, International Organization for
          Standardization, Genebra, 2000.

          Esta é a especificação oficial do UCS. Disponível em http://www.iso.ch/.

       *  The Unicode Standard, Version 3.0.  The Unicode Consortium, Addison-Wesley, Reading,  MA,  2000,  ISBN
          0-201-61633-5.

       *  S.  Harbison,  G.  Steele. C: Um Manual de Referência. Quarta edição, Prentice Hall, Englewood Cliffs,
          1995, ISBN 0-13-326224-3.

          Um bom livro de referência sobre a linguagem de programação C. A quarta edição agora  cobre  também  a
          Emenda  de  1994  para  o  padrão  ISO  do  C  90, que acrescenta um grande número de novas funções da
          biblioteca C para manipulação de conjuntos de caracteres largos e multi-bytes, mas ele não cobre a ISO
          C 99, que aprimora o suporte a caracteres largos e multi-bytes.

       *  Relatórios técnicos Unicode.
          http://www.unicode.org/reports/

       *  Markus Kuhn: UTF-8 e Unicode FAQ para UNIX/Linux.
          http://www.cl.cam.ac.uk/~mgk25/unicode.html

       *  Bruno Haible: Unicode HOWTO.
          http://www.tldp.org/HOWTO/Unicode-HOWTO.html

VEJA TAMBÉM

       locale(1), setlocale(3), charsets(7), utf-8(7)

COLOFÃO

       Esta página faz parte da versão 5.10 do projeto Linux man-pages. Uma descrição  do  projeto,  informações
       sobre   relatórios   de   bugs   e   a  versão  mais  recente  desta  página  podem  ser  encontradas  em
       https://www.kernel.org/doc/man-pages/.

TRADUÇÃO

       A tradução para  português  brasileiro  desta  página  man  foi  criada  por  Rubens  de  Jesus  Nogueira
       <darkseid99@usa.net>,    André    Luiz    Fassone    <lonely_wolf@ig.com.br>    e    Rafael    Fontenelle
       <rafaelff@gnome.org>.

       Esta tradução é uma documentação livre; leia a Licença Pública Geral GNU Versão 3 ou  posterior  para  as
       condições de direitos autorais.  Nenhuma responsabilidade é aceita.

       Se  você  encontrar  algum  erro  na  tradução  desta  página  de manual, envie um e-mail para a lista de
       discussão de tradutores.

GNU                                              13 agosto 2020                                       UNICODE(7)