Linux Portuguese-HOWTO
 Configuraes do Linux para a Lngua Portuguesa
 Carlos A. M. dos Santos <[email protected]>
 CPMet/UFPEL -- Pelotas, RS, Brasil
 v3.2, 24 May 1999

 Este documento pretende ser um guia de referncia de configurao do
 LLiinnuuxx e seus programas, teclados e fontes de caracteres, permitindo
 sua utilizao mais confortvel por pessoas que falem a Lngua Portuguesa.
 ______________________________________________________________________

 Table of Contents






















































 1. Introduo

    1.1 Finalidades deste HOWTO
    1.2 Onde encontrar a verso mais atual
    1.3 Pgina oficial na WWW
    1.4 Como enviar colaboraes

 2. Informaes gerais

    2.1 Conjuntos de caracteres
    2.2 Modo texto versus Sistema de Janelas X

 3. Configurao do console (modo texto)

    3.1 Mapas de teclado
    3.2 Mapas de traduo de tela
    3.3 Comandos do pacote KBD
    3.4 Carregamento de uma fonte de caracteres
       3.4.1 Slackware
       3.4.2 Debian
       3.4.3 Red Hat
       3.4.4 Conectiva Red Hat Linux
       3.4.5 S.u.S.E.
       3.4.6 Testando a fonte
    3.5 Carregando um mapa de teclado
       3.5.1 Slackware.
       3.5.2 Debian.
       3.5.3 Red Hat.
       3.5.4 Conectiva Red Hat Linux.
       3.5.5 S.u.S.E..
       3.5.6 Testando o teclado
    3.6 Verificando erros

 4. Biblioteca de funes libc e aplicativos GNU

    4.1 Configurando o suporte internacional
    4.2 Problemas com a libc 5

 5. Configurao do X

    5.1 Configurao do xinit
    5.2 Configurao do XDM
    5.3 Compose
    5.4 Locale
    5.5 Gerao de mapas com o XKeyCaps
    5.6 Contornando os limites do X
       5.6.1 Alterao da biblioteca Xlib
       5.6.2 Alterao no kernel do Linux
       5.6.3 Comparao entre as duas solues

 6. Configurao dos vrios programas

    6.1 Aplicativos
       6.1.1 Bash (biblioteca GNU readline)
       6.1.2 Emacs
       6.1.3 flex
       6.1.4 Fortune
       6.1.5 Ispell
       6.1.6 JDK (inclui ICQJava)
       6.1.7 Joe
       6.1.8 Less
       6.1.9 ls
       6.1.10 LyX
       6.1.11 Man, groff, troff
       6.1.12 Midnight Comander (mc)
       6.1.13 Minicom
       6.1.14 Netscape Communicator
       6.1.15 nn
       6.1.16 Pine e Pico
       6.1.17 tcsh
       6.1.18 TeX e LaTeX
          6.1.18.1 O pacote Babel
          6.1.18.2 Separao silbica
          6.1.18.3 Uso de Font Encoding T1
          6.1.18.4 Edio de documentos
          6.1.18.5 Teste da configurao do LaTeX
          6.1.18.6 Problemas com alguns pacotes do teTeX
          6.1.18.7 Lista TeX-BR
          6.1.18.8 LaTeX-demo
       6.1.19 WordPerfect
       6.1.20 Xemacs (antigo lucid emacs)
    6.2 Rede local e Internet
       6.2.1 FTP (File Transfer Protocol)
       6.2.2 Correio eletrnico

 7. Ficheiros necessrios

 8. Informaes Adicionais

    8.1 Fontes de informao sobre Linux em Portugus
    8.2 Free Translation Project
    8.3 LIE-BR
    8.4 Verses de software testadas

 9. Observaes finais

    9.1 Futuras adies a este documento
    9.2 Nota de Direitos de Autor
    9.3 Garantia (inexistncia de) e nota de responsabilidade
    9.4 Agradecimentos

 10. Bibliografia comentada



 ______________________________________________________________________

 11..  IInnttrroodduuoo

  semelhana de outras lnguas faladas na Europa, a Lngua Portuguesa tem
 caractersticas especiais, como a utilizao de caracteres acentuados,
 que tornam o seu suporte difcil, pouco intuitivo ou at mesmo
 impossvel, por parte do software utilizado nos nossos computadores.

 Nossa lngua assume particularidades em cada um dos pases em que
 falada e mesmo dentro de um nico pas como o Brasil, de dimenses
 continentais e com influncias culturais de muitos outros povos. Este
 documento foi originalmente escrito por um portugus, mas agora
 mantido por um brasileiro. H uma mistura de sotaques que deve se
 manter por um bom tempo, pois no h razo para alterar o texto original
 seno para fazer de adies e correes, at por respeito ao primeiro autor.
 Termos ``estrangeiros'' desnecessrios foram substitudos por
 correspondentes da Lngua Portuguesa, preservando-se apenas os que j
 fazem parte do jargo da informtica.


 11..11..  FFiinnaalliiddaaddeess ddeessttee HHOOWWTTOO

 Este HOWTO  um guia de referncia de configurao do sistema operativo
 Linux e seus programas, teclados e fontes de caracteres, permitindo
 sua utilizao mais confortvel por pessoas que falem a Lngua Portuguesa.
 Como os programas mais antigos no foram desenhados com suporte a
 caracteres acentuados ou internacionalizao, s vezes  preciso usar
 algum artifcio que permita contornar o problema, mas o resultado nem
 sempre  totalmente satisfatrio e em alguns casos chega ser frustrante.
 As dificuldades encontradas centram-se essencialmente em torno de
 quatro pontos:


 +o  a introduo de caracteres acentuados atravs do teclado, como seja a
    escrita de jo~ao em vez da sua forma correcta: joo;

 +o  a exibio dos mesmos na tela do computador. O suporte resume-se
    normalmente  correcta localizao das teclas, nada mais;

 +o  o correto tratamento de convenes nacionais de formato de datas,
    horas e valores monetrios;

 +o  a exibio de mensagens, ttulos e demais informaes dos programas em
    outra lngua que no o Ingls, que  a lngua original da maioria desses
    programas.

 Verses anteriores do Portuguese HOWTO concentravam-se em contornar as
 duas primeiras dificuldades mencionadas, de forma a fazer que, dentro
 do possvel, tanto o sistema operativo como os programas nele
 utilizados aceitassem os caracteres acentuados e usassem os teclados
 com suporte para o Portugus.  Embora esse objetivo ainda seja
 perseguido, os problemas de teclado e caracteres j tm solues
 satisfatrias, pelo menos para as aplicaes mais usadas. As prximas
 verses devero se dedicar mais aos dois ltimos problemas.

 O texto contm uma j no to breve discusso sobre o tratamento do teclado
 e das fontes de caracteres do console pelo Linux, bem como do suporte
 a vrias lnguas nacionais. O Sistema de Janelas X tambm  discutido,
 fazendo-se uma comparao entre ele e o modo de texto. Por fim, so
 fornecidas instrues para a configurao do sistema operativo e de
 diversos aplicativos importantes.

 O documento tem se tornado menos _s_l_a_c_k_w_a_r_i_a_n_o, incluindo cada vez mais
 informaes relativas a outras distribuies. Slackware e Caldera ainda se
 baseiam na verso 5 da biblioteca de funes do sistema para Linux
 (_l_i_b_c), enquanto Debian, Red Hat, TurboLinux, S.u.S.E e Stampede j
 suportam a verso 6 (que na verdade  a glibc verso 2). Esta nova verso
 da biblioteca est um passo adiante no suporte a internacionalizao e
 localizao.  A partir da verso 3.2 do Portuguese-HOWTO as
 particularidades de cada distribuio sero destacadas quando houver
 necessidade. A tentativa de tornar Debian uma distribuio ``de
 referncia'' a partir da verso 3.0 do HOWTO fracassou miseravelmente
 porque o nmero de diferenas entre as distribuies  muito grande.

 A inteno original de no tentar concentrar toda a informao em um nico
 texto, tratando apenas de alguns temas essenciais e fornecendo
 referncias para outras fontes, tambm fracassou. O HOWTO em sua verso
 3.1 j alcanava 38 pginas impressas em formato A4, o que est longe de
 poder ser chamado de sucinto. As principais razes para tal gigantismo
 so a necessidade de discutir diferenas entre as distribuies e a
 necessidade de fornecer informaes mais detalhadas sobre aplicativos.

 Excetuando-se aspectos muito especficos do Linux, como a configurao do
 modo texto e do _k_e_r_n_e_l, a maioria das informaes contidas neste
 documento pode ser aplicada a outros sistemas Unix. Exemplos so as
 configuraes do Sistema de Janelas X e de vrios aplicativos, que foram
 aplicadas em Solaris 2.{5,6,7} e Digital UNIX 3.2. Os mapas de teclado
 para terminais X e estaes de trabalho Sun foram criados e so usados em
 mquinas que rodam Solaris. O documento poder um dia se tornar o ``Unix
 Portuguese HOWTO'', embora no momento no se tenha inteno ou meios de
 faz-lo.

 11..22..  OOnnddee eennccoonnttrraarr aa vveerrssoo mmaaiiss aattuuaall

 Os Linux HOWTO fazem parte do Projeto de Documentao Linux (Linux
 Documentation Project -- LDP). Os documentos do LDP so mantidos em
 servidores da Universidade da Carolina do Norte (UNC) e do Instituto
 de Tecnologia de Massachusetts (MIT), nos Estados Unidos da Amrica, e
 podem ser obtidos via FTP annimo nos seguintes endereos:

 +o  <ftp://metalab.unc.edu/pub/Linux/docs/HOWTO> (conhecida
    anteriormente como sunsite.unc.edu).

 +o  <ftp://tsx-11.mit.edu/pub/linux/docs/HOWTO>

 Pode-se tambm folhear os documentos HOWTO em formato HTML no endereo

 +o  <http://metalab.unc.edu/LDP/HOWTO>

 Muitas localidades mantm cpias desses documentos. Deve-se dar
 preferncia ao acesso  cpia mais prxima, para economizar o precioso
 trfego internacional na Internet e tambm evitar a sobrecarga da mquina
 metalab.unc.edu. Uma lista completa dessas localidades pode ser obtida
 em

 +o  <http://metalab.unc.edu/LDP/mirrors.html>

 Eis uma lista dos endereos recomendados:

 Brasil

 +o  <http://linusp.usp.br/LDP/>

 +o  <http://www.conectiva.com.br/LDP/>

 +o  <http://www.opensite.com.br/linux/>

 +o  <http://taubate.valley-bbs.com.br/LDP/>

 +o  <http://linux.unicamp.br/docs/>

 Portugal

 +o  <http://gil.di.uminho.pt/mirrors/LDP/>

 +o  <http://deneb.cec.pt/LDP/>

 +o  <http://ftp.dei.uc.pt/LDP/>

 +o  <http://www.sc.uevora.pt/LDP/>

 +o  <http://lwp.ualg.pt/docs/LDP/>

 +o  <http://linux.global-one.pt/LDP/>

 +o  <http://linux.ispgaya.pt/LDP/>

 +o  <http://ae.fe.up.pt/LDP/>

 Os Linux HOWTO esto disponveis em diversos formatos: texto simples,
 PostScript, DVI, HTML, RTF e Lyx. O formato original  SGML e os demais
 so gerados usando o SGMLtools (maiores informaes em
 <http://www.sgmltools.org/>).





 11..33..  PPggiinnaa ooffiicciiaall nnaa WWWWWW

 A pgina oficial do Linux Portuguese-HOWTO, assim como os diversos
 arquivos de configurao do sistema e programas aplicativos mencionados
 no texto, podem ser encontrados nos seguintes endereos:


 +o  Brasil:  <http://linusp.usp.br/~casantos/>

 +o  Portugal:  <http://linux.fe.up.pt/howto/>


 11..44..  CCoommoo eennvviiaarr ccoollaabboorraaeess

 Toda a formatao deste HOWTO, incluindo a numerao das sees  feita pelo
 SGMLtools. Por isso, ao enviar sugestes ou correes, mencione ooss ttttuullooss
 ddaass sseeeess onde as alteraes sugeridas devem ocorrer e no os nmeros.
 Nunca refira-se a um pargrafo como sendo ``o terceiro da seo 3.1'';
 cite as palavras inicias do trecho a ser modificado.

 Envie sugestes e correes via correio eletrnico em texto simples,
 opcionalmente com acentuao no cdigo ISO-8859-1.  Se o texto no for
 composto em um sistema *NIX, certifique-se de usar a codificao
 correta.  Todas as mensagens recebidas sero lidas, mas nem todas
 recebero resposta direta, devido  falta de tempo para tanto.

 No envie documentos no formato proprietrio de processadores de texto
 nem em formato HTML (o que infelizmente parece ser o comportamento
 normal do Netscape Communicator e do Microsoft Outlook).

 Mensagens perguntando como configurar seu modem, placa de vdeo ou rede
 no sero respondidas. Para esse tipo de consulta  aconselhvel procurar
 uma lista de discusso sobre Linux em Portugus ou acompanhar os grupos
 de discusso de Linux na USENET comp.os.linux.*.

 ``Flames'' tero o destino costumeiro: /dev/null.


 22..  IInnffoorrmmaaeess ggeerraaiiss

 22..11..  CCoonnjjuunnttooss ddee ccaarraacctteerreess

 Um conjunto de caracteres  definido de acordo com os smbolos
 constantes no alfabeto utilizado para escrita em uma ou mais lnguas. A
 Organizao Internacional de Normas (_I_n_t_e_r_n_a_t_i_o_n_a_l _S_t_a_n_d_a_r_d_s
 _O_r_g_a_n_i_z_a_t_i_o_n - ISO) padronizou atravs da norma ISO-8859 vrios desses
 conjuntos, identificados por ISO-8859-_x onde o _x corresponde a um
 determinado alfabeto. O conjunto ISO-8859 utiliza 8 bits para
 representar cada caracter, o que permite uma gama de 256 sinais
 (valores de zero a 255). Em cada um dos conjuntos, os cdigos zero a
 127 correspondem ao conjunto ASCII (_A_m_e_r_i_c_a_n _S_t_a_n_d_a_r_d _C_o_d_e _f_o_r
 _I_n_f_o_r_m_a_t_i_o_n _I_n_t_e_r_c_h_a_n_g_e) e os cdigos 160 a 255 so usados para
 caracteres nacionais.

 Para a lngua portuguesa, recomenda-se o uso do conjunto ISO-8859-1,
 que compreende o alfabeto latino e letras acentuadas usadas pelas
 lnguas do oeste da Europa e Amrica. Este conjunto de caracteres tambm
 frequentemente chamado de Latin-1 ou ISO Latin-1.

 Um padro mais recente  o Unicode, definido pela norma ISO-10646, que
 permite definir caracteres cuja representao interna no computador
 utiliza mais de um byte (ou _o_c_t_e_t_o na nomenclatura ISO). Todas as
 verses mais recentes de sistemas Unix suportam Unicode (ou pelo menos
 seus fabricantes alegam suportar).


 Alm dos caracteres alfanumricos e sinais de acentuao,  possvel tambm
 gerar sinais _s_e_m_i_g_r_f_i_c_o_s para desenho de linhas e bordas.  Esses
 sinais podem aproveitar cdigos no utilizados pelo conjunto oficial,
 tornando-os no portveis.

 O LLiinnuuxx foi desenhado internamente de modo a facilitar a sua fcil
 configurao e extenso em tempo de execuo, no constituindo o tratamento
 do teclado e fontes de caracteres excepo. Ele possui uma implementao
 ``nvel 1'' do padro Unicode. Maiores detalhes podem ser encontrados
 nos manuais do Linux, que podem ser lido com os comandos

     man unicode
     man utf-8
     man iso_8859_1
     man ascii


 mas antes disso certifique-se de que o _m_a_n est configurado correta-
 mente, conforme mostrado na seo ``Man, groff, troff''.


 22..22..  MMooddoo tteexxttoo vveerrssuuss SSiisstteemmaa ddee JJaanneellaass XX

 Alguns sistemas operativos, tais como MacOS, Microsoft Windows e NeXT,
 possuem interfaces grficas prprias. No Linux, assim como na maioria
 dos sistemas compatveis com Unix,  de uso corrente um ambiente grfico
 criado para ser ``multiplataforma'': o X Window System, que tambm foi
 projetado para suportar diversos conjuntos de caracteres, idiomas e
 formatos de teclado, mas ainda nnoo suporta totalmente o padro Unicode e
 sim uma extenso do ISO-8859.


      A rigor o X Window System nnoo  uma interface grfica com o
      usurio, mas a combinao de um protocolo de comunicao com uma
      interface com programas aplicativos (API) _s_o_b_r_e _a _q_u_a_l se
      construram vrias interfaces grficas.  Tanto o protocolo
      quanto o Sistema de Janelas definem um conjunto de _m_e_c_a_n_i_s_-
      _m_o_s e no _p_o_l_t_i_c_a_s (elementos caractersticos da poltica de
      uma Interface Grfica com o Usurio so menus, botes e caixas
      de dilogo).  O uso do termo ``XWindows''  incorreto e deve
      ser evitado, dando-se preferncia ao nome genrico ``X''.


 Existem muitas semelhanas entre os dois ambientes.  Ambos se baseiam
 em padres internacionais para definio de conjuntos de caracteres.
 Tanto no X quanto no console do Linux pode-se definir uma tecla
 chamada _C_o_m_p_o_s_e cujo pressionamento seguido de duas outras gerar o
 caracter correspondente.  Assim sendo, o pressionamento da seqncia
 ccoommppoossee--,,--cc gerar um c cedilhado.

 O tratamento do console  feito diretamente pelo sistema operativo e
 aplicaes comuns no se envolvem com o processamento dos cdigos de
 varredura do teclado, recebendo um caracter ou uma seqncia deles ao
 ser pressionada cada tecla, de tal sorte que tendo sido corretamente
 configurados o teclado e a fonte de caracteres pouco mais se tem a
 fazer.

 O X possui uma arquitetura muito diferente: tanto o teclado quanto
 a(s) tela(s) -- pode haver mais de uma tela -- so controlados por uma
 aplicao especial chamada _s_e_r_v_i_d_o_r _X. O pressionamento de uma tecla
 gera uma mensagem (chamada de _e_v_e_n_t_o) que  passada pelo servidor X
 aplicao _c_l_i_e_n_t_e. H um programa muito til chamado _x_e_v que permite
 observar cada evento a ele transmitido. Cliente e servidor se
 comunicam via rede usando um conjunto de regras chamado _p_r_o_t_o_c_o_l_o _X e
 podem rodar em mquinas diferentes. A mquina onde roda o servidor
 chamada _e_s_t_a_o _d_e _t_r_a_b_a_l_h_o ou _t_e_r_m_i_n_a_l _X e a mquina onde roda a aplicao
 (programa cliente) tambm  chamada de _c_l_i_e_n_t_e.

 Foge ao escopo deste texto a discusso mais profunda do tratamento de
 eventos no X. Para maiores informaes, sugere-se a consulta aos
 documentos mencionados na seo ``Leituras recomendadas'', mas
 importante esclarecer que o evento enviado pelo servidor ao cliente no
 contm o cdigo numrico da tecla, chamado _k_e_y_c_o_d_e na terminologia do X.
 Ao invs disso,  enviado um smbolo, chamado _k_e_y_s_y_m_b_o_l ou _k_e_y_s_y_m, obtido
 pela consulta a uma tabela de converso mantida na memria do servidor.
 Esta tabela pode ser modificada total ou parcialmente a qualquer
 momento por meio de requisies definidas no protocolo X.

 Existe um programa chamado _x_m_o_d_m_a_p capaz de ler um arquivo contendo
 uma tabela de converso _k_e_y_c_o_d_e-->_k_e_y_s_y_m e envi-la, tambm na forma de
 mensagens no protocolo X, ao servidor.  responsabilidade do cliente e
 no do servidor interpretar o _k_e_y_s_y_m, o que significa que a aplicao
 deve saber esperar mais um caracter ao receber uma ``tecla morta''
 para compor uma letra acentuada.

 Desde a reviso 5 do X existe na bibliotaca de funes (_X_l_i_b) um
 mecanismo sofisticado de suporte  gerao de caracteres em diversos
 cdigos.  A funo de tratamento de entrada de texto que j existia nas
 verses anteriores, chamada XXLLooookkuuppSSttrriinngg, entretanto,  no processa as
 seqncias de acentos e letras de modo transparente s aplicaes. Ao invs
 disso foi includo um mtodo de composio usando _c_o_n_t_e_x_t_o_s _d_e _e_n_t_r_a_d_a
 (_i_n_p_u_t _c_o_n_t_e_x_t_s) por meio das funes XXmmbbLLooookkuuppSSttrriinngg e XXwwccLLooookkuuppSSttrriinngg,
 cujo uso  responsabilidade da aplicao -- ou do seu programador, melhor
 dizendo -- mesmo no caso da tecla _C_o_m_p_o_s_e.  Isto deve-se so fato de o
 _X _C_o_n_s_o_r_t_i_u_m ter chegado  concluso de que o sistema de mapeamento de
 teclas no tratava de forma satisfatria toda a imensa variedade de
 lnguas escritas nas vrias partes do mundo. Deste modo, decidiu-se que
 o ``peso'' relativo  gesto do teclado fosse transferido para as
 aplicaes X, o que cria uma dificuldade quando usamos aquelas mais
 antigas, que no usam o novo mtodo de tratar a entrada.

 Por essas razes  normalmente mais difcil conseguir acrescentar suporte
 gerao de caracteres acentuados em aplicativos que rodam sob o X,
 principalmente quando no se possui o cdigo fonte. Aplicativos feitos
 para rodar apenas em modo texto, tais como vvii e mmiinniiccoomm dependero
 totalmente dos recursos do emulador de terminal em uso quando rodando
 em uma janela do X. Se for usada uma verso atual do _x_t_e_r_m ou _r_x_v_t o
 emulador far o tratamento correto dos acentos.

 O francs Thomas Quinot, cansado de esperar uma soluo melhor para o
 problema da acentuao no X, resolveu implementar uma modificao para a
 Xlib proposta por Andr D. Balsa, que adiciona suporte  acentuao direta
 conforme mostrado na seo ``Contornando os limites do X''. Isso permite
 usar aplicaes como _x_f_i_g ou _x_e_d_i_t sem que seja necessrio alter-las. O
 truque parece funcionar apenas para caracteres do cdigo ISO-8859-1 mas
 suficiente para o Portugus e outras lnguas. Como bem observa Balsa, a
 longo prazo todos os programas devero ser modificados para usar os
 novos recursos do X, mas como a longo prazo estaremos todos mortos a
 soluo de curto prazo de Quinot torna-se bastante atraente...


 33..  CCoonnffiigguurraaoo ddoo ccoonnssoollee ((mmooddoo tteexxttoo))

 O documento de referncia sobre a configurao do console do Linux  o
 Keyboard and Console HOWTO, de Andries Brouwer, que pode ser
 encontrado nos repositrios do LDP. Conforme l descrito, a configurao
 da fonte de caracteres e mapa de teclado  feita usando o pacote KBD,
 encontrado em todas as distribuies de Linux.




 33..11..  MMaappaass ddee tteeccllaaddoo

 Cada tecla do PC possui um cdigo numrico. Ao pressionarmos uma delas o
 processador controlador do teclado envia ao computador esse cdigo _d_e
 _v_a_r_r_e_d_u_r_a, tambm conhecido como _s_c_a_n_c_o_d_e, junto com um sinal de que a
 tecla foi pressionada ou solta. As seqncias de eventos so ento
 processadas pelo _d_r_i_v_e_r de teclado e armazenadas em uma fila de
 caracteres que  lida pelas aplicaes por meio da chamada de funes do
 sistema operativo.

 Um mapa de teclado  um arquivo de texto que estabelace as
 correspondncias entre o _s_c_a_n_c_o_d_e de tecla e o caracter (ou seqncia de
 caracteres) a gerar quando ela for pressionada, chamado _k_e_y_c_o_d_e. Por
 exemplo:

     # atribuio da tecla '-' do teclado numrico  tecla com cdigo 74
     keycode  74 = KP_Subtract

     # atribuio da tecla '4' do teclado numrico  tecla com cdigo 75
     keycode  75 = KP_4

     # etc...

     keycode  76 = KP_5            # tecla 5
     keycode  77 = KP_6            # tecla 6
     keycode  78 = KP_Add          # soma
     keycode  79 = KP_1            # tecla 1
     keycode  80 = KP_2            # tecla 2



 Alm das teclas alfabticas, numricas e de smbolos, existem outras
 chamadas _m_o_d_i_f_i_c_a_d_o_r_a_s que permitem gerar cdigos que no correspondem a
 nenhum sinal grfico: _S_h_i_f_t _C_o_n_t_r_o_l _A_l_t e _M_e_t_a. Esta ltima normalmente
 no  encontrada em teclados de PCs, apenas em estaes de trabalho de
 fabricantes como Sun, SGI, HP e Digital (eles no gostam de ser
 chamados de ``DEC''). O editor de texto Emacs usa muito a tecla _M_e_t_a.

 O arquivo de mapa permite tambm especificar teclas especiais chamadas
 ``teclas mortas'' (_d_e_a_d_k_e_y_s). Quando pressionadas elas no resultam no
 aparecimento de um caracter na tela, limitando-se a alterar o
 comportamento da tecla pressionada a seguir para que, por exemplo, ao
 se digitar um ~~ seguida de um aa, seja gerado um `'.


 33..22..  MMaappaass ddee ttrraadduuoo ddee tteellaa

 Um mapa de traduo de tela permite especificar qual o caracter X a ser
 exibido na tela, quando um programa deseja exibir um caracter Y.
 Desta forma, poderamos fazer com que ao escrever o caracter com o
 cdigo do c-cedilhado na tela, fosse na realidade exibido um outro
 caracter de cdigo diferente mas cuja _i_m_a_g_e_m na nossa fonte de
 caracteres correspondesse  imagem de um c-cedilhado.

 Este mapeamento  necessrio apenas quando queremos usar uma fonte cujos
 caracteres no possuem cdigos diretamente correspondentes aos do
 conjunto usado no mapa de teclado.



 33..33..  CCoommaannddooss ddoo ppaaccoottee KKBBDD


    LLooaaddkkeeyyss
       Permite carregar um mapa de teclado. Por exemplo, o comando a
       seguir carrega o mapa armazenado no arquivo portugal.map.
           loadkeys /usr/lib/kbd/keytables/portugal.map



    SSeettffoonntt
       Permite o carregamento de uma fonte de caracteres de tela,
       possibilitando a alterao das fontes utilizadas em modo de texto.
       O comando a seguir, por exemplo, ir carregar uma fonte com o
       conjunto Latin-1:

           setfont lat1u-16.psf



    SShhoowwffoonntt
       mostra todos os caracteres existentes na fonte que est
       atualmente em uso no console. O X tambm tem um comanto chamado
       showfont, que serve para mostrar as caractersticas de uma
       determinada fonte, mas no os caracteres em si. Para esta ltima
       finalidade se usa o comando _x_f_d. Se o programa showfont do
       pacote KBD for invocado em um emulador de terminal X, como
       _x_t_e_r_m, ele gerar um erro ``GIO_SCRNMAP: Invalid argument'', mas
       no provocar nenhum dano.

    MMaappssccrr
       Permite carregar um mapa de traduo de tela. Suponhamos que
       exista o arquivo /etc/portugal.trad. Se executarmos o comando

           mapscrn /etc/portugal.trad


    ento a partir deste momento as tradues l definidas sero usadas.

    LLooaadduunniimmaapp
       Carrega um mapa de traduo de Unicode para a fonte de tela. O
       mapa padro, chamado ``def.uni'' considera que estamos usando a
       fonte normal do IBM-PC.  Este comando nnoo  necessrio quando
       usamos uma fonte com caracteres definidos no padro Unicode, pois
       o programa setfont carrega automaticamente a tabela de
       mapeamento adequada. O comando a seguir carregar o mapa de
       traduo para as fontes latin-1:

           loadunimap lat1





 33..44..  CCaarrrreeggaammeennttoo ddee uummaa ffoonnttee ddee ccaarraacctteerreess

 O pacote KBD contm dois tipos de fontes com codificao latin-1:

 +o  as que j possuem uma tabela de mapeamento unicode, carregada
    automaticamente pelo programa setfont. Estas fontes tm nomes
    lat1u-*.psf;

 +o  as que no possuem tabela de mapeamento. Neste caso  preciso
    carregar uma com o programa loadunimap. Estas tm nomes lat1-*.psf
    (o ``u'' indica Unicode).

 Nas verses mais novas do KBD os arquivos so comprimidos com gzip.
 preciso carregar uma fonte que tenha os caractres latinos acentuados
 no padro ISO 8859-1 e _t_a_m_b_m os smbolos semigrficos. As fontes de nome
 iso01.* no possuem esses smbolos. A fonte mais recomendada  a
 lat1u-16.psf.

 As verses mais antigas do pacote KBD mantinham essas fontes no
 diretrio /usr/lib/kbd/consolefonts, que foi trocado depois da verso
 0.92 por /usr/share/consolefonts. Dependendo da sua distribuio e do
 quanto ela esteja atualizada o diretrio poder ser um ou outro.


 33..44..11..  SSllaacckkwwaarree

 Foi criado o script /etc/rc.d/rc.font, contendo o seguinte:


     #!/bin/sh
     #
     # /etc/rc.d/rc.font
     #
     # Seleciona uma das fontes de caracteres disponiveis em
     # /usr/lib/kbd/consolefonts.
     #
     setfont lat1u-16.psf

     # O comando a seguir  totalmente desnecessrio
     # com a fonte lat1u-16.psf.
     # loadunimap lat1u

     # Remova o comentrio da linha abaixo se estiver usando uma fonte sem
     # tabela de mapeamento de Unicode para tela:
     # loadunimap lat1




 33..44..22..  DDeebbiiaann

 Edite o arquivo /etc/kbd/config e coloque uma linha contendo

     CONSOLE_FONT=lat1u-16.psf


 esse arquivo  processado pelo script /etc/rc.boot/kbd. Execute-o para
 ativar a nova fonte sem ter que dar ``reboot''. Lembre-se sempre:
 Linux nnoo  Windows!


 33..44..33..  RReedd HHaatt

 Edite o arquivo /etc/sysconfig/i18n e veja se contm o seguinte:

     LANG=pt_BR
     LINGUAS=pt_BR
     LC_CTYPE=ISO-8859-1
     LC_ALL=pt_BR
     SYSFONT=lat1u-16
     SYSTERM=linux-lat




 33..44..44..  CCoonneeccttiivvaa RReedd HHaatt LLiinnuuxx

 Se voc selecionar a lngua correta durante a instalao no h nada mais a
 fazer. A configurao  feita extatamente como do Red Hat.





 33..44..55..  SS..uu..SS..EE..

 Edite o arquivo /etc/rc.config e procure uma linha que comea com
 ``FONT='' (linha 64, em minha mquina com S.u.S.E. vero 5.6) e coloque

     FONT=lat1u-16.psf



 Edite os scripts boot.setup e single contidos no diretrio /etc/rc.d.
 Procure a linha contendo o comando /usr/bin/loadunimap e remova-a ou
 ponha no seu incio um ``#'' para deix-la como comentrio. Veja
 comentrios sobre este comando na seo ``Carregamento de uma fonte de
 caracteres''.


 33..44..66..  TTeessttaannddoo aa ffoonnttee

 Experimente algumas teclas como ``,.|!"#$%&/()=?'', etc. e use o
 comando showfont para mostrar a fonte em uso.


 33..55..  CCaarrrreeggaannddoo uumm mmaappaa ddee tteeccllaaddoo

 A seguir  necessrio carregar o mapa de teclado adequado. At a verso
 0.92 do pacote KBD esses mapas ficavam no diretrio
 /usr/lib/kbd/keytables passando mais tarde para /usr/share/keytables.
 Dependendo da distribuio voc ter um diretrio ou outro. Os mapas para
 diversos tipos de teclados so apresentados mais adiante.


 33..55..11..  SSllaacckkwwaarree..

 Foi criado o script /etc/rc.d/rc.keyboard, contendo o seguinte:

     #!/bin/sh
     #
     # /etc/rc.d/rc.keyboard
     #
     # Seleciona um dos mapas de teclado disponveis no diretrio
     # /usr/lib/kbd/keytables
     #
     loadkeys abnt2


 e acrescentei as seguintes linhas ao /etc/rc.d/rc.S, imediatamente
 antes do tratamento do /etc/rc.d/rc.keyboard:

     # Carrega uma fonte de caracteres se existe um script rc.font.
     if [ -x /etc/rc.d/rc.font ]; then
       /etc/rc.d/rc.font start
     fi

     # Carrega um mapa de teclado se existe um script rc.keyboard.
     if [ -x /etc/rc.d/rc.keyboard ]; then
       /etc/rc.d/rc.keyboard start
     fi




 33..55..22..  DDeebbiiaann..

 Certifique-se de ter instalado o pacote _k_b_d e depois faa o seguinte:


 +o  copie os arquivos com os mapas de teclado fornecidos (veja a seo
    ``Ficheiros necessrios'') para o diretrio /usr/share/keytables/. No
    necessrio descomprimi-los;

 +o  copie o mapa correspondente ao seu teclado para o arquivo
    /etc/kbd/default.map.gz.

 +o  rode o script /etc/init.d/keymaps.sh.


 33..55..33..  RReedd HHaatt..

 Certifique-se de ter instalado o pacote _k_b_d. Copie os arquivos com os
 mapas de teclado fornecidos (veja a seo ``Ficheiros necessrios'') para
 o diretrio /usr/lib/kbd/keytables/ (ou
 /usr/lib/kbd/keymaps/i386/qwerty/, a pertir do Red Hat 5.2). No
 necessrio descomprimi-los.

 Edite o arquivo /etc/sysconfig/keyboard e coloque o nome do mapa a
 usar na varivel KEYTABLE, como por exemplo

     KEYTABLE="abnt2"




 33..55..44..  CCoonneeccttiivvaa RReedd HHaatt LLiinnuuxx..

 O CRHL j vem com os mapas de teclado para Portugus. Se voc selecionou
 o teclado correto durante a instalao, no h mais nada a fazer. Caso
 contrrio, edite o arquivo /etc/sysconfig/keyboard e coloque

     KEYTABLE="nome"


 Onde ``nome''  _b_r_-_a_b_n_t_2, _p_t ou _u_s_-_a_c_e_n_t_o_s caso o desenho do seu
 teclado seja ABNT-2, portugus ou americano.



 33..55..55..  SS..uu..SS..EE....

 Certifique-se de ter instalado o pacote _k_b_d. Copie os arquivos com os
 mapas de teclado fornecidos (veja a seo ``Ficheiros necessrios'') para
 o diretrio /usr/lib/kbd/keytables/. No  necessrio descomprimi-los.

 Descomprima o mapa de teclado adequado, copiando para o arquivo
 /etc/default.keytab, usando por exemplo um comando como

     zcat /usr/lib/kbd/keytables/pt.map.gz > /etc/default.keytab




 33..55..66..  TTeessttaannddoo oo tteeccllaaddoo

 Experimente pressionar a tecla cc--cceeddiillhhaaddoo (se o teclado no tem esta
 tecla, digite 'c). Verifique se todas as letras acentuadas, maisculas
 e minsculas so geradas corretamente e aparecem na tela. Se aparecer
 algum caracter estranho verifique se carregou o mapa de teclado e a
 fonte de caracteres corretos, pois provavelmente uma dessas operaes
 foi mal sucedida.

 Se ao invs de c-cedilha minsculo aparecer um maisculo  provvel que uma
 tabela de mapeamento Unicode incorreta esteja a ser carregada. Este
 problema ocorrer na distribuio S.u.S.E. se no se fizerem as alteraes
 nos scripts do sistema mencionadas anteriormente.

 33..66..  VVeerriiffiiccaannddoo eerrrrooss

 Mas, e se alguns dos caracteres continuarem a no aparecer? Bem, antes
 de mais nada verifique se a fonte e o mapa de teclado adequados foram
 carregados. Um caso especial  quando queremos usar uma fonte que no
 segue a codificao ISO Latin-1 ( o caso da fonte padro do console do
 PC). Teramos ento de _c_o_n_v_e_n_c_e_r a tela a mostrar os caracteres certos
 em cada caso.

 Poderamos recorrer ao comando _m_a_p_s_c_r_n.  O arquivo com a tabela de
 traduo teria no entanto de ser criado por ns, seguindo um processo
 moroso de tentativa e erro at encontrar o caracter cuja imagem
 desejvamos. Ou, de uma forma mais fcil, poderamos usar o comando
 _s_h_o_w_f_o_n_t.

 Se usarmos a fonte de caracteres correta, o uso deste ltimo comando
 ser desnecessrio.  at recomendvel que no se use tal recurso, pois
 embora ele permita criar uma tabela de caracteres ``personalizada'' em
 um computador, ser difcil que um documento acentuado produzido nessa
 mquina possa ser lido em outra que no tenha a mesma configurao.


 44..  BBiibblliiootteeccaa ddee ffuunneess lliibbcc ee aapplliiccaattiivvooss GGNNUU

 A biblioteca padro de funes do Linux suporta Internacionalizao e
 Localizao segundo o padro POSIX (Portable Operating System Interface).
 Trata-se de uma norma estabelecida pelo IEEE (Institute of Electrical
 and Electronics Engineers) para intercomunicao entre diferentes
 sistemas operativos. Existe tambm um padro estabelecido pelo ANSI
 (American National Standards Institute) para a linguagem de programao
 C que permite escrever programas com suporte internacional.


 44..11..  CCoonnffiigguurraannddoo oo ssuuppoorrttee iinntteerrnnaacciioonnaall

 Resumidamente, podemos dizer que as funes que tratam informaes
 dependentes da lngua ou do pas podem ter seu comportamento modificado,
 bastando para tanto estabelecer algumas variveis de ambiente. E que
 funes so essas?  Podemos citar as de formatao de datas, valores
 monetrios e mensagens de erro do sistema. Se voc no sabe o que  uma
 varivel de ambiente, sugiro que leia o manual com o comando

     man environ



 O padro POSIX permite usar diversas variveis de configurao, cada uma
 delas definindo o tratamento dado a um tipo de informao, a saber

    LLCC__CCOOLLLLAATTEE
       Define regras para comparao entre caracteres no alfabeto local.
       Por exemplo, a letra `' deve ser tratada como idntica ao `a' no
       Portugus quando ordenamos alfabeticamente.


    LLCC__CCTTYYPPEE
       Define regras para comparao entre caracteres maisculos e
       minsculos. Se estivermos trabalhando com o cdigo ASCII, sabemos
       que o cdigo numrico de uma letra minscula  32 a mais do que a
       maiscula correspondente, mas para uma letra acentuada esta regra
       no  vlida!



    LLCC__MMOONNEETTAARRYY
       Muda o comportamento das funes de formatao de valores monetrios
       e permite descobrir, por exemplo, o smbolo da moeda local, ou se
       usa ponto ou vrgula como separador de milhares e de casas
       decimais.


    LLCC__MMEESSSSAAGGEESS
       Estabelece a lngua em que as mensagens sero apresentadas e como
       uma resposta afirmativa ou negativa (S/N).


    LLCC__NNUUMMEERRIICC
       Estabelece o comportamento das funes de leitura/escrita de
       valores numricos permitindo, por exemplo que usemos a vrgula
       decimal.


    LLCC__TTIIMMEE
       Define a formatao de datas e horas.


    LLCC__AALLLL
       Define de uma s vez todas as categorias. Se usarmos LC_ALL, no
       precisaremos definir nenhuma das outras, a no ser que queiramos
       um comportamento diferente para aquele tem especfico.


    LLAANNGG
       Define de uma s vez todas as categorias, se LC_ALL no estiver
       definida.  Tambm  usada pelo comando man para compor os caminhos
       pelos quais ele procurar as pginas do manual. Veja as observaes
       a respeito desta varivel nas sees ``Locale'', ``Locale'' e
       ``Locale''.

 Maiores informaes podem ser obtidas no manual do sistema com o comando

     man 7 locale


 O `7' no comando anterior  necessrio para evitar confuso com uma funo
 homnima da linguagem Perl. Note que as configuraes acima afetam, em
 princpio, apenas as funes disponveis na biblioteca de funes da lin-
 guagem C. Na prtica, todos os programas que rodam em Linux usam aquela
 biblioteca, mas o sistema operativo no prov, catlogos de mensagens em
 diversas lnguas para todos os programas.

 A identificao da lngua e do local  feita por dois cdigos de duas
 letras, separados por um sinal ``_''. Se omitirmos o cdigo de pas,
 assume-se o pas padro para a lngua informada, mas deve haver um
 catlogo correspondente.  Deste modo, o cdigo ``pt_PT'' significa
 Portugus de Portugal, enquanto ``pt_BR'' significa Portugus do Brasil.
 Escolher uma combinao lngua/local basta ento colocar em seu arquivo
 /etc/profile uma linha contendo

     LC_ALL="pt_PT"
     export LC_ALL


 Usurios brasileiros devem usar ``pt_BR'' ao invs de ``pt_PT''. Teste o
 resultado com os comandos a seguir (/inexistente  o nome de um arquivo
 que nnoo existe):




     echo  | tr '[:upper:]' '[:lower:]'
     tar tf /inexistente
     ls -l /
     date
     cal 1 1999


 O resultado do primeiro dever ser ``''. Os comandos tar e ls devem
 retornar mensagens em Portugus e cal deve mostrar um calendrio de
 janeiro de 1999, com _d_o _s_e _t_e _q_u _q_u _s_e _s no cabealho dos dias da sem-
 ana.

 Na distribuio Debian, certifique-se de ter instalado o pacote
 ``locales'', que pertence ao grupo ``admin''. O nome do arquivo que
 contm o pacote (na verso 2.0 da distribuio)  locales_2.0.7t-1.deb e em
 meu CD est no diretrio debian/main/binary-i386/admin.

 44..22..  PPrroobblleemmaass ccoomm aa lliibbcc 55

 At meados de 1997 todas as distribuies de Linux usavam a mesma
 biblioteca _l_i_b_c, que estava na verso 5, desenvolvida a partir de uma
 verso mais antiga da libc do projeto GNU. Esta biblioteca possuia
 suporte muito limitado  internacionalizao e normalmente nenhum dos
 catlogos de locais era includo na distribuio, ficando o ingls como
 lngua padro.

 A verso 6 da libc do Linux baseia-se na verso 2 da libc do projeto
 GNU. O suporte  internacionalizao foi muito melhorado, alm de incluir
 outros atributos que no interessam para os fins deste HOWTO. Se sua
 distribuio for a Debian verso 2, Red Hat verso 5 ou qualquer outra que
 use a nova libc, ento no h mais nada a fazer alm do descrito na seo
 anterior.

 Mas se voc usa uma distribuio ainda baseada na libc 5 (Slackware,
 Caldera 1.x ou uma verso mais antiga de Debian ou Red Hat)  preciso
 instalar a coleo de locais. No tente copiar a coleo de uma distribuio
 mais recente, pois os formatos dos arquivos so incompatveis. Pegue na
 pgina do Portuguese HOWTO o arquivo locales-pt.tgz. Para instal-lo na
 distribuio Slackware, basta (como usurio rroooott) usar o comando

     installpkg locales-pt.tgz


 e para outras distribuies use o comando

     tar xzf locales-pt.tgz -C /



 Verifique se h dois subdiretrios do /usr/share/locale chamados pt_BR e
 pt_PT. Basta ento configurar a varivel de ambiente LC_ALL, como j
 descrito.


 55..  CCoonnffiigguurraaoo ddoo XX

 Quando o servidor X est ativo, ele coloca o teclado do computador em
 um modo de operao chamado _r_a_w (cru), em oposio ao modo normal, chamado
 _c_o_o_k_e_d (isto mesmo: cozido). No modo raw o sistema operativo no
 processa seqncias acento-letra. O servidor X  uma daquelas raras
 aplicaes que, por dever de ofcio, tem que tratar o teclado ``em baixo
 nvel''.

 O X vem equipado com um utilitrio destinado  configurao do teclado,
 chamado _x_m_o_d_m_a_p, que cumpre uma funo correspondente  do comando
 _l_o_a_d_k_e_y_s, ou seja, l um arquivo de mapa de teclado do X, expecificando
 as equivalncias entre os _k_e_y_c_o_d_e_s e respectivos _k_e_y_s_y_m_b_o_l_s.

 Eis um excerto deste arquivo:

     keycode 47 = ccedilla Ccedilla dead_acute dead_doubleacute
     keycode 48 = masculine ordfeminine dead_circumflex dead_caron
     keycode 49 = backslash bar notsign
     keycode 50 = Shift_L
     keycode 51 = dead_tilde dead_circumflex dead_grave dead_breve


 Observem que, ao contrrio do loadkeys, o xmodmap no possui um diretrio
 padro onde o arquivo  procurado.

 A configurao do X no interfere de forma alguma com a configurao do
 modo de texto.  De facto,  possvel ter o seu X bem configurado, e no
 entanto no ter realizado qualquer tipo de configurao ao modo de texto,
 e vice-versa.  Outro ponto importante de se observar  que os cdigos
 numricos das teclas no X no correspondem aos do console. A tecla
 BBaacckkssppaaccee, por exemplo, tem o nmero 14 no console, e 22 no X (em um
 computador do tipo IBM-PC).

 As verses 3.2 e posteriores do XFree86 permitam definir _d_e_a_d_-_k_e_y_s, mas
 o seu tratamento  responsabilidade da aplicao, conforme visto na
 seo ``Modo texto versus Sistema de Janelas X''. H modos de contornar
 esta limitao e tornar o tratamento de _d_e_a_d_-_k_e_y_s transparente s
 aplicaes, conforme mostrado na seo ``Contornando os limites do X''.

 Dividimos a configurao em duas partes: Uma que deve ser feita antes do
 _l_o_g_i_n do usurio e outra depois.


 55..11..  CCoonnffiigguurraaoo ddoo xxiinniitt

 Junto com este documento so fornecidos vrios mapas de teclado para uso
 no X. Para automatizar o processo de configurao do teclado basta
 copiar o arquivo adequado para o diretrio /usr/X11R6/lib/X11/xinit,
 onde normalmente ficam os arquivos de incio da seo de trabalho no X.
 Na distribuio Slackware esse diretrio  um link simblico para
 /var/X11R6/lib/xinit e na Debian e na Red Hat para /etc/X11/xinit.

 Nas distribuies Slackware e Red Hat, verifique se no referido diretrio
 existe um arquivo chamado .Xmodmap. Se existir, copie o
 Xmodmap.<alguma-coisa>  para ele, ou faa um link.  Normalmente o
 arquivo de configurao xinitrc possui os comandos para carreg-lo
 automaticamente. Veja o seguinte trecho:


     #!/bin/sh
     # $XConsortium: xinitrc.cpp,v 1.4 91/08/22 11:41:34 rws Exp $

     userresources=$HOME/.Xresources
     usermodmap=$HOME/.Xmodmap
     sysresources=/usr/X11R6/lib/X11/xinit/.Xresources
     sysmodmap=/usr/X11R6/lib/X11/xinit/.Xmodmap

     # merge in defaults and keymaps

     if [ -f $sysresources ]; then
         xrdb -merge $sysresources
     fi

     if [ -f $sysmodmap ]; then
         xmodmap $sysmodmap
     fi

 Na distribuio Debian o mapa de teclado padro do X /etc/X11/Xmodmap,
 basta copiar o mapa desejado para aquele arquivo.  Ele ser carregado
 pelo xinitrc, que por sua vez  um link simblico para
 /etc/X11/Xsession, sempre que iniciar a seo de trabalho do usurio.


 55..22..  CCoonnffiigguurraaoo ddoo XXDDMM

 Existe ainda um pequeno problema: no meu computador, por exemplo, o
 sistema carrega diretamente o X ao dar boot e o login  feito pelo X
 Display Manager (xdm). Como o xdm faz o login aanntteess de iniciar a seo
 de trabalho, o mapa de teclado no ser carregado, o que pode criar
 problemas se o usurio usa caracteres como ``['' ou ``]'' em sua senha,
 pois nos teclados ABNT-2 e portugus esses smbolos so gerados por
 teclas cujos cdigos numricos no so os mesmos do teclado americano.

  preciso fazer uma pequena alterao no arquivo de configurao Xsetup_0.
 Esse arquivo deve estar no diretrio /usr/X11R6/lib/X11/xdm, que na
 Slackware  um link simblico para /var/X11R6/lib/xdm e /etc/X11/xdm na
 Debian e -- sujeito a confirmao -- RedHat. Eis o contedo completo
 desse arquivo:

     #!/bin/sh
     #
     # /usr/X11R6/lib/X11/xdm/Xsetup_0
     #

     sysresources=/usr/X11R6/lib/X11/xinit/.Xresources
     sysmodmap=/usr/X11R6/lib/X11/xinit/.Xmodmap

     # merge in defaults and keymaps

     if [ -r $sysresources ]; then
         xrdb -merge $sysresources
     fi

     if [ -r $sysmodmap ]; then
         xmodmap $sysmodmap
     fi

     xconsole -geometry 480x130-0-0 -daemon -notify -verbose -exitOnFail



 A distribuio Debian tem um Xsetup_0 um pouco diferente, em
 /etc/X11/xdm/Xsetup_0, mas basta acrescentar-lhe o seguinte:


     sysmodmap=/etc/X11/Xmodmap
     sysresources=/etc/X11/Xresources

     if [ -f $sysresources ]; then
       xrdb -merge $sysresources
     fi

     if [ -f $sysmodmap ]; then
       xmodmap $sysmodmap
     fi



 Se no seu computador o login do usurio tambm for feito sempre via xdm,
 no necessrio mexer no xinitrc, como mostrado na seo anterior, j que o
 mapa de teclado ser carregado antes do incio na seo do usurio.


 55..33..  CCoommppoossee

 Uma das coisas mais importantes a definir quando vamos utilizar
 acentuao por meio de _d_e_a_d_-_k_e_y_s  o conjunto de _r_e_g_r_a_s _d_e _c_o_m_p_o_s_i_o.
 Essas regras determinam, por exemplo que a composio do caracter '' com
 a letra ee gerar um .

 Ao contrrio do console, no qual podemos definir as regras de composio
 no prprio mapa de teclado, no X essas regras so colocadas no arquivo
 /usr/X11R6/lib/X11/locale/???/Compose, onde ???  a codificao em uso
 (no nosso caso, iso8859-1).

 Para facilitar o uso dos mapas para teclados que no tm o c-cedilhado,
 como o US+ (veja adiante)  conveniente definirmos uma nova regra de
 composio, permitindo que o  seja gerado pela seqncia 'C. Se no
 fizermos isso, seremos obrigados a digitar <dead_cedilla-C>, sedo o
 _d_e_a_d___c_e_d_i_l_l_a produzido pela combinao AltGR-=, o que no  nada
 confortvel. Alm disso, no teclado americano somos obrigados a usar as
 aspas duplas para gerar o trema.

 O arquivo Compose fornecido foi feito procurando imitar ao mximo o
 comportamento do console e possui as seguintes facilidades para gerao
 de caracteres:

 +o  C-cedilha: tecla  ou seqncia <acento-agudo>-C

 +o  Apstrofo: tecla ' ou seqncias <acento-agudo>-<acento-agudo> e
    <acento-agudo>-<espao>

 +o  Acento grave: seqncias <acento-grave>-<acento-grave> e <acento-
    grave>-<espao>

 +o  Aspas: tecla " ou seqncia <trema>-<trema>

 +o  Trema: seqncia <trema>-<espao>

 +o  Til: seqncias <til>-<espao> e <til>-<til>

 +o  Circumflexo: seqncias <circumflexo>-<espao> e
    <circumflexo>-<circumflexo>

 Para incluirmos as novas regras, basta aplicar uma alterao  definio
 original. O arquivo Compose.patch pode ser obtido via WWW na pgina do
 Portuguese HOWTO. Para aplicar a atualizao, copie-o para o diretrio
 /usr/X11R6/lib/X11/locale/iso8859-1/, faa uma cpia de reserva do
 Compose original e invoque o utilitrio _p_a_t_c_h:

     cp -p Compose Compose.backup
     patch < Compose.patch



 Caso voc prefira no aplicar o ``patch'', um arquivo Compose pronto
 tambm  fornecido. Lembre-se de fazer cpia do original aanntteess de
 substitu-lo!

 55..44..  LLooccaallee

 Para os usurios brasileiros, pode haver mais uma alterao a fazer no X.
 Conforme vimos na seo ``Biblioteca libc'', uma varivel de ambiente
 (LANG ou LC_ALL) configura o suporte internacional existente na
 biblioteca de funes padro do sistema (_l_i_b_c). A biblioteca de funes do
 X (_X_l_i_b) usa a varivel LANG para identificar a lngua em uso mas at a
 reviso 6.3, na qual  baseado o XFree86, no era includa a combinao
 ``pt_BR'', correspondente a Portugus/Brasil. Como resultado, cada vez
 que executarmos um aplicativo X com LC_ALL definido como ``pt_BR'' ele
 emitir a mensagem ``Warning: locale not supported by Xlib, locale set
 to C''.

 Para incluir o local pt_BR no X11R6.3 basta alterar trs arquivos
 existentes no diretrio /usr/X11R6/lib/X11/locale. Pegue o arquivo
 Xlocale.patch via WWW na pgina do Portuguese HOWTO. Para aplicar a
 atualizao, copie-o para o diretrio /usr/X11R6/lib/X11/locale, faa uma
 cpia de reserva dos arquivos a serem alterados e invoque o utilitrio
 _p_a_t_c_h:

     cp -p compose.dir compose.dir.backup
     cp -p locale.alias locale.alias.backup
     cp -p locale.dir locale.dir.backup
     patch < Xlocale.patch



 Caso voc prefira no aplicar o ``patch'', arquivos prontos tambm so
 fornecidos. Lembre-se de fazer cpias dos originais aanntteess de substitu-
 los!

 Em setembro de 1998 o fix-2 da reviso 6.4 do X Window System incluiu
 oficialmente o suporte ao local pt_BR. Infelizmente neste mesmo fix-2
 foi introduzida uma falha em uma das funes de tratamento de _i_n_p_u_t
 _c_o_n_t_e_x_t_s da Xlib que provoca violaes de acesso  memria. Uma das
 aplicaes afetadas  o processador de textos LyX. Uma correo
 provavelmente ser includa no fix-4. O X11R6.4 dever ser a base para a
 verso 4 do XFree86.


 55..55..  GGeerraaoo ddee mmaappaass ccoomm oo XXKKeeyyCCaappss

 O programa XKeyCaps, criado por Jamie Zawinski  uma interface grfica
 para o xmodmap, que mostra na tela o desenho de um teclado e permite
 modificar interativamente os smbolos gerados por cada tecla e gerar
 automaticamente o arquivo .Xmodmap correspondente.

 Ele pode ser obtido via WWW em  <http://www.jwz.org/xkeycaps/> e, a
 partir da verso 2.43, j incoropra tambm suporte para o desenho
 brasileiro (ABNT2), uma contribuio de Andre Gerhard.


 55..66..  CCoonnttoorrnnaannddoo ooss lliimmiitteess ddoo XX

 Conforme foi explicado na seo ``Modo texto versus Sistema de Janelas
 X'', o tratamento de acentos deve ser feito pela aplicao, mas ainda h
 muitos programas que no levam isto em considerao, tais como Netscape
 Navigator/Communicator e Nedit. Como no  possvel modificar muitos
 deles,  preciso encontrar outro tipo de soluo.


 55..66..11..  AAlltteerraaoo ddaa bbiibblliiootteeccaa XXlliibb

 Linux, assim como a maioria dos sistemas operacionais modernos, usa um
 sistema de vnculo de programas a bibliotecas de funes chamado ``ligao
 dinmica'' (_d_y_n_a_m_i_c _b_i_n_d_i_n_g). Deste modo, podemos modificar o
 comportamento de um programa alterando uma dessas bibliotecas. Maiores
 informaes sobre este tema pode ser obtida nos manuais do Linux com os
 comandos

     man ld.so
     man ldconfig
     man ldd
     man dlopen


 Thomas Quinot criou uma alterao para a biblioteca de funes do X (_X_l_i_b)
 introduzindo o tratamento de acentos na funo XXLLooookkuuppSSttrriinngg, Tudo que
 se tem a fazer  substituir o arquivo contendo esta biblioteca por
 outro, que pode ser obtido via internet no endereo


      <http://web.fdn.fr/~tquinot/dead-keys.en.html>


 Existem duas verses do arquivo, uma para sistemas onde as bibliotecas
 do X suportam o uso seguro de _t_h_r_e_a_d_s (Debian 2.x, Red Hat 5.x, etc.)
 e outra para os sistemas que no possuem tal atributo (Slackware,
 Caldera 1.x). Se voc no sabe o que so threads no se preocupe com isso,
 mas saiba que eles permitem criar um programa capaz de se dividir em
 sub-processos que rodam concorrentemente em um computador. Para
 analisar sua _X_l_i_b rode o seguinte comando:


      nm --dynamic /usr/X11R6/lib/libXext.so.6|grep _Xglobal_lock


 Se aparecer ``U _Xglobal_lock'' seu sistema suporta threads e o
 arquivo a obter  libX11-XF3.3.1-TS.tar.gz. Se no aparecer, seu sistema
 no suporta threads e o arquivo a obter  libX11-XF3.3.1.tar.gz. Tendo
 obtido o arquivo, copie-o para um diretrio temporrio e extraia seu
 contedo.  Mova o arquivo /usr/X11R6/libX11.so.6.1 para outro diretrio,
 para preserv-lo. No  suficiente renome-lo! Remova-o para um diretrio
 cujo nome nnoo esteja contido no arquivo /etc/ld.so.conf. Depois, mova o
 novo arquivo para o lugar do antigo e rode o programa _l_d_c_o_n_f_i_g (isto
 deve ser feito pelo usurio rroooott):

     cp libX11-XF3.3.1-TS.tar.gz /tmp
     cd /tmp
     tar xzf libX11-XF3.3.1-TS.tar.gz
     mkdir /usr/X11R6/oldlib
     mv /usr/X11R6/lib/libX11.so.6.1 /usr/X11R6/oldlib
     mv libX11.so.6.1 /usr/X11R6/lib
     chown root:root /usr/X11R6/lib/libX11.so.6.1
     chmod 755 /usr/X11R6/lib/libX11.so.6.1
     /sbin/ldconfig



  aconselhvel que a operao seja realizada quando nenhuma aplicao X
 estiver rodando. A seguir, edite o arquivo de configurao do servidor
 X, chamado XF86Config. Este arquivo fica no diretrio /etc (Slackware)
 ou /etc/X11 (Debian, Red Hat). Procure a seo ``Keyboard'' e inclua a
 opo ``XkbDisable'', conforme mostrado a seguir:

     Section "Keyboard"
        Protocol        "Standard"
        XkbDisable
     EndSection



 A opo XkbDisable inabilita a extenso XKEYBOARD do servidor X, o que
 neste caso serve para sinalizar  funo XXLLooookkuuppSSttrriinngg que ela deve
 tratar os acentos. Se quisermos voltar ao comportamento normal, basta
 retirar a opo do XF86Config.

 Configure o mapa de teclado do X conforme explicado nas sees
 anteriores deste documento. Para testar o resultado, rode o programa
 _x_e_d_i_t e digite alguns caracteres acentuados.


 55..66..22..  AAlltteerraaoo nnoo kkeerrnneell ddoo LLiinnuuxx


      Esta seo  baseada em contribuio enviada por Bruno Barberi
      Gnecco e na documentao do diacrd. Podem haver ainda alguns
      erros e se algum os detectar, por favor avise-me.


 Seguindo a regra geral do mundo *nix, existe sempre mais de um modo se
 resolver o mesmo problema. Conforme vimos anteriormente, existem dois
 modos de operao do teclado, chamados _r_a_w e _c_o_o_k_e_d. Estes modos de
 operao podem ser mudados com o programa kkbbdd__mmooddee, integrante do pacote
 kbd, o que no  recomendvel fazer a no ser para restaurar o estado do
 console aps um desastre com o servidor X, por exemplo. No modo raw o
 kernel no processa os diacrticos (acentos).

 Cedric Adjih criou uma alterao para o kernel que permitia tratar os
 acentos mesmo em modo raw, inicialmente voltada para o teclado de
 desenho francs.  Enas Queiroz, Andr D. Balsa e Claudemir Todo Bom
 fizeram melhorias e o adaptaram para os teclados internacional,
 portugus e ABNT. O tratemanto de acentos  feito parte pelo kernel,
 parte por um processo que roda em retaguarda (_d_a_e_m_o_n) chamado ddiiaaccrrdd,
 conforme descrito a seguir:

 +o  Uma modificao no kernel faz que todos os dados lidos do teclado
    sejam redirecionados para um dispositivo especial do sistema
    chamado /dev/rawkbd quando o teclado estiver em modo _r_a_w.

 +o  Os dados que o kernel grava no /dev/rawkbd so lidos pelo programa
    diacrd, que processa as seqncias acento-letra e reescreve no
    /dev/rawkbd os caracteres acentuados na forma de cdigos de
    varredura (_s_c_a_n_c_o_d_e_s) que normalmente no existem no teclado.

 +o  O kernel l no /dev/rawkbd os cdigos gravados pelo diacrd e os passa
    aplicao, que no caso  o servidor X.

 +o  O servidor X mapeia os cdigos de varredura para caracteres. Um mapa
    de teclado especial permite ento gerar as letras acentuadas.

 O diacrd pode ser obtido via FTP annimo no endereo

      <ftp://metalab.unc.edu/pub/Linux/system/keyboards>


 H verses diferentes, de acordo com o tipo de teclado e, pelo menos por
 enquanto, no se pode reconfigur-lo sem recompilar. Para fazer a insta-
 lao, de acordo com o arquivo ``README'', deve-se fazer o seguinte
 (pelo usurio rroooott):

 +o  Obtenha o arquivo -.tar.gz correspondente a seu teclado. Extraia
    seu contedo, o que dever criar um diretrio chamado diacrd-<verso>.

 +o  Edite o arquivo diacrd.c e remova os comentrios desejados, de
    acordo com suas preferncias. Pode-se incluir capacidade de rodar o
    programa xxmmooddmmaapp e ejetar o CD-ROM sob controle do pressionamento
    de uma combinao de teclas.

 +o  Aplique a modificao no kernel. Para isto, execute o comando
    ``make patch-usr-src''.

 +o  Crie o dispositivo /dev/rawkbd executando o comando
    ``make rawkbd''.

 +o  Compile o diacrd e instale-o executando os comandos ``make'' e
    ``make install''.

 +o  Compile e instale o kernel, com os comandos

        cd /usr/src/linux
        make config
        make zlilo


 Para maiores informaes sobre compilao/instalao do kernel, leia o Ker-
 nel-HOWTO, disponvel via Internet nos repositrios do LDP mencionados
 na seo ``Onde encontrar a verso mais atual''.

 +o  D um ``reboot'' no computador. Verifique se o suporte ao
    dispositivo rawkbd foi instalado com sucesso com o comando

        dmesg | grep RAWKBD


 Deve aparecer

     RAWKBD interface for diacriticals translation enabled...


 e teste o dispositivo /dev/rawkbd com o comando

     printf "### TESTANDO ###" >> /dev/rawkbd


 Veja na seo ``Configurao do console'' como carregar um mapa com
 suporte  acentuao. O pacote diacrd vem com um arquivo chamada
 usintl.map, que corresponde ao nosso us+.map. Se seu teclado no for do
 tipo americano, use o pt.map ou abnt-2.map.

 +o  Substitua o arquivo /usr/X11R6/lib/X11/xkb/keycodes/xfree86 pelo
    arquivo fornecido junto com o diacrd.

 +o  Se tudo correr bem, rode o programa ddiiaaccrrdd. Depois ative o X e use
    o xxmmooddmmaapp para carregar o mapa xmodmap.diacrd.

 Se a gerao de acentos funcionar,  preciso tornar permanentes as
 alteraes necessrias. Pode-se faz-lo incluindo a carga do diacrd no
 arquivo /etc/rc.d/rc.local (Slackware).

      Se algum dos leitores tiver criado um script de ativao do
      diacrd para a distribuio Debian ou Red Hat, por favor envie-
      o para que seja includo aqui.


 Mais informaes sobre o diacrd podem ser encontradas no ``Dead keys
 Mini-HOWTO'' de Claudemir Todo Bom, disponvel em  <http://linux.uni-
 camp.br/docs/diversos/deadkeys.html>.


 55..66..33..  CCoommppaarraaoo eennttrree aass dduuaass ssoolluueess

 Em termos de resultados prticos, a Xlib modificada e o diacrd so
 equivalentes. H porm algumas diferenas entre as duas solues que
 merecem ateno.

 Diacrd exige uma alterao no kernel do Linux para resolver um problema
 que o kernel j resolve, o que no deixa de parecer um tanto redundante.
 A dependncia de um processo de usurio (o _d_a_e_m_o_n kerneld)  uma
 desvantagem, pois se esse programa deixar de funcionar perde-se o
 suporte acentuao no X. Trata-se de uma soluo ainda em desenvolvimento
 e, segundo o contedo da documentao que o acompanha, o ideal seria que
 todo o tratamento fosse feito pelo kernel, sem depender de outro
 programa.
 At o momento da publicao deste HOWTO, o diacrd ainda no era compatvel
 com a verso 2.2 do kernel do Linux.

 A soluo via Xlib , pelo menos em teoria, totalmente transparente s
 aplicaes e permite reconfigurao em tempo de execuo, bastando alterar o
 mapa de teclado do X e as regras de composio. J o diacrd precisa ser
 recompilado se quisermos trocar o tipo de teclado, mas  possvel que
 novas verses incorporem algum recurso de reconfigurao.

 O diacrd s funciona no teclado do prprio computador. Se quisermos usar
 um _d_i_s_p_l_a_y remoto, seja um terminal X, seja um outro computador, no
 teremos suporte  acentuao. A troca da Xlib, por outro lado, enquadra-
 se plenamente na filosofia do X de que o servidor prov _m_e_c_a_n_i_s_m_o,
 deixando a cargo da aplicao a definio de _p_o_l_t_i_c_a_s. Exemplo da vantagem
 deste paradigma poder usar as tcnicas descritas na seo ``Configurao do
 X'' em outros sistemas operativos e com terminais X.

 A soluo via Xlib parece-me mais ``limpa'' e  minha predileta, mas,
 como sempre, fica a critrio do usurio ou do administrador do sistema
 qual alternativa escolher. De qualquer modo, sempre  bom lembrar qua
 ambas as solues so remendos. Considerando-se a rpida evoluo que est a
 ocorrer no campo do software livre, com o desenvolvimendo de ambientes
 de trabalho como KDE, GNOME e GNUStep, podemos supor que em breve
 nenhum desses remendos ser mais necessrio.


 66..  CCoonnffiigguurraaoo ddooss vvrriiooss pprrooggrraammaass


 66..11..  AApplliiccaattiivvooss

 A maioria das aplicaes que rodam no Unix usa algum tipo de arquivo de
 configurao que o usurio coloca em seu diretrio de trabalho (home) e
 cujo nome normalmente  .alguma-coisarc. Tanto quanto possvel, tentei
 evitar que isso fosse necessrio, pois alm de dar mais trabalho ao
 usurio (e ao administrador da rede ;-) pode dificultar um pouco as
 coisas. Por exemplo, aqui no CPMet temos o diretrio _h_o_m_e compartilhado
 entre um servidor Alpha rodando DEC UNIX com os PCs rodando Linux via
 NFS (at a maior parte do Linux est instalada no Alpha, os PCs s tm a
 partio raiz e uma rea de swap). Os arquivos podem necessitar algum
 ajuste dependendo da plataforma e nem todos os programas possuem
 flexibilidade bastante para isso.

 Uma opo que muitos programas tambm oferecem  especificar em uma
 varivel de ambiente o nome do arquivo de configurao ou o uso de
 arquivos padro que normalmente ficam em um diretrio /usr/lib/alguma-
 coisa ou /etc/alguma-coisa.


 66..11..11..  BBaasshh ((bbiibblliiootteeccaa GGNNUU rreeaaddlliinnee))

 Os programas que utilizam a biblioteca GNU readline para ler a linha
 de comando procuram por um arquivo chamado .inputrc no diretrio
 ``HOME'' do usurio caso no exista uma varivel de ambiente INPUTRC
 contendo o caminho para um arquivo de configurao.

 Coloque uma linha no seu arquivo /etc/profile contendo

     INPUTRC="/etc/inputrc"
     export INPUTRC


 e crie um arquivo /etc/inputrc contendo



     set meta-flag on
     set convert-meta off
     set output-meta on


 Outra alternativa  criar um arquivo .inputrc no diretrio _h_o_m_e do usu-
 rio com o contedo acima, mas  muito difcil manter atualizados os
 arquivos de todos os usurios, principalmente quando eles so muitos.
 Um inputrc mais completo pode ser obtido via WWW na pgina do Por-
 tuguese HOWTO. Ele contm opes para vrios tipos de terminal e permite
 usar as teclas de movimento de cursor para percorrer o histrico de
 comandos (setas para cima e para baixo); ir para o primeiro e para o
 ltimo comandos do histrico (teclas PageUp e PageDown); posicionar o
 cursor na linha (setas para a esquerda e direita) e posicionar o cur-
 sor no incio e no fim da linha (teclas Home e End).

 Para maiores informaes leia os manuais do bbaasshh e da biblioteca
 rreeaaddlliinnee com os comandos

     man bash
     man readline




 66..11..22..  EEmmaaccss

 O pai de todos os editores pode ser configurado criando-se um arquivo
 chamado .emacs no diretrio do usurio, contendo as seguintes linhas:

     (set-input-mode nil nil 1)
     (standard-display-european t)
     (require 'iso-syntax)



 Para tornar esta configurao global, na distribuio Slackware coloque os
 comandos no arquivo /usr/lib/emacs/site-lisp/site-start.el. Na
 distribuio Debian o emacs executa todos os scripts contidos no
 diretrio /etc/emacs/site-start.d ao ser carregado. Tudo que se tem a
 fazer  colocar esses comandos em um arquivo chamado, por exemplo,
 01portugues-emacs.el.

 Se o estimado leitor, assim como eu, no se agrada do tratamento dado
 pelo Emacs s teclas de _D_e_l_e_t_e, _H_o_m_e e _E_n_d, aproveite a oportunidade e
 acrescente ao mesmo arquivo o seguinte:

     (global-unset-key [backspace] )
     (global-set-key [backspace] 'delete-backward-char)
     (global-unset-key [delete] )
     (global-set-key [delete] 'delete-char)
     (define-key global-map [home] 'beginning-of-line)
     (define-key global-map [C-home] 'beginning-of-buffer)
     (define-key global-map [end] 'end-of-line)
     (define-key global-map [C-end] 'end-of-buffer)



 Arquivos de configurao prontos podem ser obtidos via WWW na pgina do
 Portuguese HOWTO. Para Slackware, h um site-start-emacs.el, que deve
 ser copiado para o diretrio /usr/lib/emacs/site-lisp com o nome de
 site-start.el. Para Debian, h um 01portugues-emacs.el que deve ser
 copiado para o diretrio /etc/emacs/site-start.d.

 Certifique-se de estar usando a verso 24-out-1998 ou mais recente do
 arquivo de mapa de teclado para o X, pois ela possui uma correo no
 tratamento das teclas modificadoras Alt e Meta, que so muito usadas
 pelo Emacs.


 66..11..33..  fflleexx

 Especifique a opo --88 se o _p_a_r_s_e_r a gerar necessitar de ler dados de 8
 bit.


 66..11..44..  FFoorrttuunnee

 Fortune  aquele programa que toda vez que  invocado apresenta uma
 pequena mensagem, geralmente bem humorada. Ele  inspirado nos
 biscoitos da fortuna chineses (em ingls _f_o_r_t_u_n_e _c_o_o_k_i_e_s, da o nome).
 Eis algumas mensagens tpicas:

     dROGA!!oNDE ESTA O cAPSLOCK??

     Mouse no encontrado, bater no gato? (S/N)

     Que fio  ess<=V++088.../NO CARRIER

     Quem ri por ltimo est conectado a 2400Bit/s.


 Tudo que o programa faz  escolher aleatoriamente uma mensagem em um
 repositrio mantido no diretrio /usr/games/fortunes (Slackware) ou
 /usr/share/games/fortunes (Debian). Neste diretrio existem diversos
 arquivos com as ``fortunas'' e um arquivo ndice para cada um deles,
 que possui a extenso .dat. O formato dos arquivos  muito simples: cada
 fortuna  composta de uma srie de linhas de texto. As fortunas so sepa-
 radas umas das outras por linhas contendo apenas um caracter %%. Veja o
 trecho a seguir:

     O que so quatro pontos na parede? Four migas. Ugh!
     %
     Errar  humano, botar a culpa no computador  mais humano ainda.
     %
     A ela me disse: Ou eu ou o modem! Sinto muitas saudades dela...


 Tudo que temos a fazer  criar um arquivo com as fortunas chamado, dig-
 amos fortunes com o formato descrito acima. Depois basta usar o pro-
 grama strfile para gerar o ndice:

     strfile fortunes


 e um arquivo chamado fortunes.dat ser criado. Claro que se quisermos
 que o fortune mostre apenas mensagens em Portugus, teremos que remover
 os arquivos existentes no diretrio original. Sugiro simplesmente
 renome-lo para fortunes-en (de _E_nglish) e criar outro vazio.  Eu
 coletei algumas fortunas e as coloquei no arquivo fortunes-pt.tar.gz
 que pode ser obtido via WWW na pgina do Portuguese HOWTO. No esquea de
 colocar no seu /etc/profile algumas linhas contendo uma chamada ao
 fortune, por exemplo

     if [ -x /usr/games/fortune -a ! -e $HOME/.hushlogin ]; then
        echo
        /usr/games/fortune
        echo
     fi



 Uma ltima informao: se o nome de um arquivo termina com o sufixo -o o
 fortune s o consulta se for chamado com a opo -o. Esses arquivos so os
 que contm mensagens cujo contedo pode ser considerado ofensivo por
 algumas pessoas, tais como

     S no mando a sogra pro inferno, com pena do Diabo.


 Claro que existem coisas muito mais ofensivas por a, mas este  um
 Linux HOWTO e no queremos realmente ofender ningum, certo?


 66..11..55..  IIssppeellll

 Dicionrios para o Portugus de Portugal podem ser obtidos via WWW na
 pgina do _P_r_o_j_e_c_t_o _N_a_t_u_r_a em
 <http://www.di.uminho.pt/~jj/pln/pln.html>. Para o Brasil, h uma verso
 compilada pelo Ueda: <http://www.ime.usp.br/~ueda/>.


      Eu gostaria de poder colocar maiores informaes, mas ainda no
      tenho conhecimento suficiente sobre o Ispell e no posso
      ensinar o que no sei. Preciso de ajuda aqui.



 66..11..66..  JJDDKK ((iinncclluuii IICCQQJJaavvaa))


      Esta informao  baseada em uma mensagem da qual guardei o
      contedo mas no o remetente. Peo desculpas e espero que per-
      doe a falha. No testei pessoalmente a informao e peo que me
      escrevam confirmando tanto a correo quanto, se possvel, a
      identidade do autor.


 O JDK utiliza fontes padro que no suportam acentos. Isto quer dizer
 que letras com acentos so ignoradas e, geralmente, confundem o resto
 do texto.  Resolver isto  extremamente fcil:

 +o  entre no diretrio jdk1.1.5/lib (no meu caso, /jdk1.1.5/lib);

 +o  copie o arquivo font.properties.hu sobrescrevendo o font.properties
    atual (lembre-se de fazer backups!);

 +o  entre no jdk e divirta-se! Fazendo isto, seu ICQ e todos os
    aplicativos que usem o jdk estaro aptos a lerem acentos! (fcil,
    no?)


 66..11..77..  JJooee

 Invoque o joe com a opo -asis na linha de comando ou altere os
 arquivos de configurao para ativar tal opo. Na Slackware eles esto no
 diretrio /usr/lib/joe. Tudo que se tem a fazer  remover o espao em
 branco existente no incio de cada linha. Outra alternativa acrescentar
 a seguinte linha ao arquivo /etc/profile:

     alias joe='joe -asis'



 Joe pode emular os editores Pico, emacs e WordStar. Um arquivo _j_o_e_r_c
 est disponvel via WWW na pgina do Portuguese HOWTO, contendo
 configuraes que permitem usar as teclas _H_o_m_e e _E_n_d para movimentar o
 cursor para o incio e fim da linha.
 66..11..88..  LLeessss

 Coloque as seguintes linhas no seu arquivo /etc/profile:

     LESS="-MM -i"
     LESSCHARSET="latin1"
     LESSKEY="/etc/lesskey"
     LESSOPEN='|lesspipe.sh "%s"'
     export LESS LESSCHARSET LESSKEY LESSOPEN


 LESSKEY informa o nome de um arquivo contendo uma tabela de seqncias
 de caracteres geradas por cada tecla e as aes a serem tomadas pelo
 less.  Para criar o arquivo /etc/lesskey, crie primeiro o arquivo
 /etc/lesskey.in contendo as seguintes linhas:

     # Termianl ANSI (console do Linux, XTerm, etc)
     \e[1~      goto-line
     \e[4~      goto-end
     \e[5~      back-screen
     \e[6~      forw-screen
     \e[7~      goto-line
     \e[8~      goto-end
     \e[A       back-line
     \e[B       forw-line
     # XTerm
     \eOH       goto-line
     \eOF       goto-end
     \e[H       goto-line
     \e[F       goto-end
     # Console Sun (testado com teclados Type 4/5)
     \e[214z    goto-line
     \e[220z    goto-end
     \e[216z    back-screen
     \e[222z    forw-screen
     # Arquivo seguinte/anterior
     :n  next-file
     :N  next-file
     :p  prev-file


 Depois ``compile-o'' usando o comando

     # lesskey -o /etc/lesskey /etc/lesskey.in


 Crie o arquivo /usr/bin/lesspipe.sh contendo



















     #!/bin/sh
     # This is a preprocessor for 'less'.  It is used when this environment
     # variable is set:   LESSOPEN="|lesspipe.sh %s"

     case "$1" in
       *.rpm) rpm -qilp "$1" 2>/dev/null ;;
       *.tar) tar tvvf "$1" 2>/dev/null ;;
       *.tgz | *.tar.gz | *.taz | *.tar.Z | *.tar.z)
         tar tzvvf "$1" 2>/dev/null ;;
       *.tbz2 | *.tar.bz2)
         bzip2 -dc "$1" | tar tvvf - 2>/dev/null ;;
       *.Z) gzip -dc "$1"  2>/dev/null ;;
       *.z) gzip -dc "$1"  2>/dev/null ;;
       *.[1-9].gz | *.n.gz | *.man.gz)
         FILE=`file -Lz "$1" | cut -d ' ' -f 2`
         if [ "$FILE" = "troff" ]; then
           gzip -dc "$1" | groff -s -p -t -e -Tlatin1 -mandoc
         fi ;;
       *.gz) gzip -dc "$1"  2>/dev/null ;;
       *.zip) unzip -l "$1" 2>/dev/null ;;
       *.[1-9] | *.n | *.man)
         FILE=`file -L "$1" | cut -d ' ' -f 2`
         if [ "$FILE" = "troff" ]; then
           groff -s -p -t -e -Tlatin1 -mandoc "$1"
         fi ;;
     esac


 No esquea de torn-lo executvel:

     chmod 755 /usr/bin/lesspipe.sh



 Na distribuio Debian j existe um script /usr/bin/lesspipe (note a
 ausncia da extenso .sh). Para os curiosos a respeito da referncia a
 ``*.rpm'', embora na mquina em questo se use Slackware,  possvel ter o
 utilitrio RPM instalado tambm, o que facilita tomar ``emprestados''
 pacotes do Red Hat, Caldera e S.u.S.E.. Existe um _R_P_M_+_S_l_a_c_k_w_a_r_e _M_i_n_i_-
 _H_O_W_T_O que explica como fazer isso.


 66..11..99..  llss

 Acrescente a seguinte linha ao arquivo /etc/profile :

     alias ls="ls -N"


 ou

     alias ls="ls -b"


 Se a sua distribuio de Linux usa o GNU ls (todas as que eu conheo
 usam) basta acrescentar ao arquivo /etc/profile ou .profile as
 seguintes linhas:









     # -----------------------------------------
     # Set up the color-ls environment variables
     # -----------------------------------------
     if [   "$SHELL" = "/bin/bash" -o \
            "$SHELL" = "/bin/sh" ]; then
        eval `dircolors -b`
     elif [ "$SHELL" = "/bin/zsh" ]; then
        eval `dircolors -z`
     elif [ "$SHELL" = "/bin/ash" ]; then
        eval `dircolors -s`
     elif [ "$SHELL" = "/bin/ksh" -o \
            "$SHELL" = "/bin/pdksh" ]; then
        eval `dircolors -k`
     elif [ "$SHELL" = "/bin/csh" -o \
            "$SHELL" = "/bin/tcsh" ]; then
        eval `dircolors -c`
     else
        eval `dircolors -b`
     fi


 Se o seu shell  o csh ou tcsh, acrescente a seguinte linha ao arquivo
 /etc/csh.login ou ~/.login:

     alias ls 'ls --color'




 66..11..1100..  LLyyXX

 Para aqueles que acham trabalhoso escrever documentos para o LaTeX
 usando um simples editor de texto (e realmente ) LyX  uma excelente
 opo.  Este programa cria uma interface grfica atravs da qual editamos
 os documentos que sero depois formatados pelo LaTeX. O ambiente
 quase-WYSIWYG (What You See Is What You Get - O que tu vs  o que tu
 obtns). LyX no roda apenas em Linux, mas em qualquer Unix. Maiores
 informaes podem ser obtidas em


      <http://www.lyx.org>


 A partir da verso 1.0.1 do LyX j tem a interface com o usurio em
 Portugus, traduzida por Pedro Krger, que tambm est traduzindo os
 manuais, junto com Roberto Mello. Estas tradues j fazem parte da
 distribuio oficial do LyX.

 Tendo o LyX instalado,  muito fcil criar documentos com acentuao em
 Portugus. Seguindo as seguintes regras:


 +o  Se o teclado foi configurado para ter _d_e_a_d _k_e_y_s usando um dos mapas
    aqui fornecidos, no  necessrio fazer mais nada. Basta digitar o
    texto normalmente usando as seqncias de acentuao. A nica exceo o c-
    cedilha que no pode ser gerado usando a seqncia 'c, pois o LyX gera
    um c com acento. Temos que usar a seqncia Compose-vrgula-c.

 +o  Se o teclado nnoo foi configurado para ter _d_e_a_d _k_e_y_s ainda assim
    possvel acentuar no LyX. Selecione o _m_e_n_u Options/Keyboard. Na
    caixa de dilogo ``Key Mappings'', selecione no tem Language/Primary
    a opo ``American''.  Com isto o LyX far a composio dos caracteres
    acentuados usando regras semelhantes s das _d_e_a_d _k_e_y_s.

 +o  A vrgula ser tratada como cedilha. Para obter um `'digite ,C e para
    obter uma vrgula digite ,,. Cuidado! A seqncia ,<espao> gerar uma
    cedilha isolada e no uma vrgula!

 +o  ~ ^ ' e ` sero tratados como acentos. Vale a mesma regra anterior:
    para obter apenas o acento, pressione a tecla duas vezes
    consecutivas.

 +o  : ; . / ? e - tambm sero tratados como acentos. ?a gerar um `aa' e
    assim por diante.

 Para o LyX imprimir corretamente,  necessrio que, ao criar um novo
 documento, sejam selecionados a lngua e a codificao de caracteres
 adequadas. Crie um documento selecionando o _m_e_n_u File/New.  Depois
 selecione o _m_e_n_u Layout/Document. Na caixa de dilogo ``Document
 Layout'' selecione no tem Language a opo ``brazil'' ou ``portuges''
 (sem o _u mesmo); no tem Encoding selecione ``latin1''.

 Veja a observao sobre o pacote _a_l_g_o_r_i_t_h_m na seo ``TeX e LaTeX''

 Uma observao final sobre o LyX: a verso atual (1.0.x) utiliza a
 biblioteca XForms para construir a interface com o usurio. Como essa
 biblioteca no tem suporte para acentuao, no  possvel digitar letras
 acentuadas nas caixas de dilogo, somente no corpo do documento
 editado. Segundo os desenvolvedores, nas novas verses do LyX ser
 possvel escolher o tipo de interface ao compilar o programa, o que
 permitir o uso de _t_o_o_l_k_i_t_s mais flexveis. J existe uma verso de LyX
 portada para o toolkit Qt, usado no KDE, chamada KLyX. Os autores so
 Matthias Ettrich -- autor original do LyX -- e Kalle Dalheimer. Para
 maiores informaes, consulte via WWW:  <http://www-pu.informatik.uni-
 tuebingen.de/users/ettrich/>.


 66..11..1111..  MMaann,, ggrrooffff,, ttrrooffff

 Pode-se usar a opo de linha de comando -Tlatin1 para o groff, mas
 mais simples colocar uma linha no seu arquivo /etc/profile contendo

     GROFF_TYPESETTER="latin1"
     export GROFF_TYPESETTER


 Para maiores informaes leia o manual do groff com o comando

     man groff



 No Linux, o comando _m_a_n usa o _g_r_o_f_f para formatar os manuais e deve
 ser configurado para usar o conjunto Latin 1, ou no ser possvel
 formatar satisfatoriamente manuais que contenham caracteres no
 pertencentes ao conjunto ASCII, como  o caso do ``man iso_8859_1''. Na
 distribuio Slackware,  preciso editar o arquivo /usr/lib/man.config e
 alterar as definies NROFF e NEQN, trocando a opo ``-Tascii'' para
 ``-Tlatin1'':

     NROFF           /usr/bin/groff -Tlatin1 -mandoc
     NEQN            /usr/bin/geqn -Tlatin1


 ou, se usarmos a varivel de ambiente GROFF_TYPESETTER, podemos sim-
 plesmente eliminar a opo -Tascii. Na distribuio Debian no  necessrio
 fazer nenhuma configurao para o man, bastando configurar GROFF_TYPE-
 SETTER e na Red Hat (incluindo Conectiva) o arquivo  /etc/man.config

 Groff tambm pode ser configurado para fazer a separao silbica em
 portugus, o que  muito til se tivermos pginas de manual em Portugus.
 Isto  bastante simples, porque quando James Clarck ps suporte a
 hifenizao no groff ele usou o mesmo algoritmo de hifenizao do TeX.
 Para ter hifenizao em portugus, basta copiar o arquivo de regras do
 TeX e fazer o groff us-lo. O arquivo hyphen.pt pode ser obtido junto
 com os demais na pgina do HOWTO. Trata-se do arquivo pt8hyph.tex (ver
 seo ``TeX e LaTeX'') ao qual foi adicionado apenas um comentrio.

 Ele deve ser copiado para o diretrio /usr/share/groff/tmac/ ou
 /usr/lib/groff/tmac/, dependendo da distribuio.  conveniente criar um
 ``link'' simblico para hyphen.br. Para usar esse arquivo, basta
 colocar no incio do seu documento troff/groff as linhas a seguir:

     .if \n(.g \{\
     .hla pt
     .hpf hyphen.pt
     .\}


 O .if no  necessrio para a acentuao, mas ele testa se o processador
 usado  o groff. Deste modo pode-se usar o mesmo documento em outros
 UNIX nos quais se use o troff normal sem que ele gere mensagens de
 erro sobre comandos desconhecidos.


 66..11..1122..  MMiiddnniigghhtt CCoommaannddeerr ((mmcc))

 No menu Options sub-menu Display bits... ligue a opo ``Full 8 bits''
 ou ``ISO 8859-1''. Na verso 3.2.11 isso permite que sejam mostrados
 nomes de arquivos contendo caracteres acentuados, mas no foi possvel
 digitar tais caracteres na linha de comando ou nas caixas de dilogo.


 66..11..1133..  MMiinniiccoomm

 Coloque uma linha no seu arquivo /etc/profile contendo

     MINICOM="-m -c on"
     export MINICOM


 Isso permitir usar a tecla Alt para ativar os comandos (exatamente
 como o Telix) e tambm usar cores. Para maiores informaes, leia o man-
 ual do Minicom usando o comando

     man minicom


 Mais uma dica sobre o Minicom: para faz-lo usar usar corretamante a
 tecla _M_e_t_a para ativao dos comandos rodando dentro de um _x_t_e_r_m, deve-
 se invoc-lo com a opo ``-m'' e passar a opo ``-xrm "*eightBitInput:
 false"'' para o xterm. Se usarmos o _r_x_v_t ento o minicom deve ser
 chamado com a opo ``-m'' e a tecla de ativao dos comandos ser _A_l_t. Fiz
 uma adaptao no script xminicom que pode ser obtido via WWW na pgina do
 Portuguese HOWTO.

 Segundo Arnaldo Carvalho de Melo, as verses mais recentes do Minicom
 suportam internacionalizao. Suporte para o Portugus foi acrescentado
 pelo pessoal da Conectiva. O cdigo fonte pode ser obtido na pgina do
 Jukka (atual mantenedor do Minicom) em

      <http://www.clinet.fi/~walker/minicom.html>






 66..11..1144..  NNeettssccaappee CCoommmmuunniiccaattoorr

 O Communicator, assim como muitas aplicaes que utilizam _t_o_o_l_k_i_t_s
 baseados no X Toolkit (Xt), permite que se modifiquem muitas de suas
 caractersticas por meio de arquivos de configurao (X Resources). No
 caso especfico do Communicator, pode-se criar um arquivo chamado
 Netscape no diretrio /usr/X11R6/lib/X11/app-defaults contendo estas
 opes.

 Na distribuio brasileira Conectiva, o pacote do Communicator vem com
 um arquivo /usr/lib/netscape/i18n/Netscape.ad.pt_BR e um script
 /usr/bin/netscape que executa o Communicator fazendo-o ler este
 arquivo. Uma cpia do Netscape.ad.pt_BR pode ser obtida na pgina
 oficial do Portuguese-HOWTO. Para us-lo, simplesmente copie-o para
 /usr/X11R6/lib/X11/app-defaults/Netscape, se sua distribuio no o
 possuir, mas fique atento que seu uso pode criar problemas com novas
 verses do programa.

 Maiores informaes sobre ``X Resources'' podem ser obtidas em [GET94],
 [McC94] e no manual do programa xrdb, com o comando


     man xrdb




 66..11..1155..  nnnn


      Al, al, algum usa nn? Informao mais atualizada ser bem rece-
      bida.


 Acrescente a seguinte linha ao arquivo ~/.nn/init:

     set data-bits 8




 66..11..1166..  PPiinnee ee PPiiccoo

 Para o Pine utilizar o conjunto de caracteres Latin 1, coloque uma
 linha no arquivo .pinerc, no diretrio do usurio, contendo

     character-set=ISO-8859-1


 ou crie um arquivo geral de configurao contendo tal linha. Esse
 arquivo normalmente  /usr/local/lib/pine.conf ou /usr/lib/pine.conf

 A configurao tambm pode ser feita usando o prprio programa. No _m_e_n_u de
 entrada selecione as opes Setup/Configuration. V at o tem ``character-
 set'' e preencha-o com ``ISO-8859-1''. Para maiores informaes leia o
 manual do pine com o comando

     man pine




 66..11..1177..  ttccsshh

 Nenhuma medida especial  necessria se for feita a correta configurao
 das variveis de ambiente ``LANG'' e ``LC_ALL'', conforme mostrado
 mostrado na seo ``Biblioteca libc''.

 Tcsh tem suporte a internacionalizao e na distribuio Debian h um
 pacote chamado tcsh-i18n com suporte para French, German, Greek and
 Spanish.


 66..11..1188..  TTeeXX ee LLaaTTeeXX


      Esta seo foi escrita com ajuda de Klaus Steding-Jessen.



 66..11..1188..11..  OO ppaaccoottee BBaabbeell

 O pacote _B_a_b_e_l, criado por Johannes Braams prov suporte a um grande
 nmero de idiomas para o LaTeX. De acordo com o idioma selecionado ele
 define muitas coisa como, por exemplo, os ttulos dos captulos
 (Chapter, Captulo, Kapitel) e o ttulo das tabelas (Tabela, Table,
 Tabelle). Para usar o pacote, basta incluir no prembulo de seu
 documento LaTeX o comando


     \usepackage[portuges]{babel}

     ou

     \usepackage[brazil]{babel}



 H diferenas sutis entre o Portugues do Brasil e o de Portugal, tais
 como as normas para escrita de datas e nomes de meses com a primeira
 letra maiscula ou minscula.

 Pode-se misturar mais de um idioma no mesmo documento. Para Alemo e
 Portugus ficaria:


     \usepackage[german,brazil]{babel}



 Nesse caso a ltima opo (brazil) fica sendo o idioma corrente. Para
 mudar ao longo do texto, entre um e outro, use:


     \selectlanguage{german}

     [...]

     \selectlanguage{brazil}



 Isto  muito til tambm quando queremos que uma palavra no seja
 separada.  Basta definir um novo idioma e us-lo nas palavras que no
 podem ser separadas. Coloque no prembulo:


     \newlanguage\nohyphen
     \newcommand\nh[1]{{\language\nohyphen #1}}



 E use com \nh{FOO BAR}.  melhor do que usar \mbox, que impede quebra
 no espaco em \mbox{FOO BAR}.


 66..11..1188..22..  SSeeppaarraaoo ssiillbbiiccaa

 Normalmente apenas os suportes a separao silbica para Ingls e Alemo so
 carregados.  Para configurar hifenizao no tteeTTeeXX, execute o utilitrio
 _t_e_x_c_o_n_f_i_g, que na distribuio Slackware deve ser o programa
 /usr/lib/teTeX/bin/texconfig e na Debian /usr/bin/texconfig.  Digite o
 comando


     texconfig hyphen



 O editor usado normalmente  o vvii. Se o seu editor predileto for outro,
 crie uma varivel de ambiente chamada EEDDIITTOORR contendo o nome desse
 programa, como no exemplo a seguir:


     EDITOR=pico
     export EDITOR



 O editor de texto ser carregado, para editar o arquivo language.dat.
 Procure uma linha que comea por %%ppoorrttuuggeess e remova o %%. Grave o
 arquivo e saia do editor. O texconfig atualizar diversos arquivos de
 configurao (no se assuste com a quantidade de mensagens que aparecem
 na tela).

 Se o nome da tabela de hifenizao que consta no seu language.dat
 pthyph.tex ento provavelmente trata-se da verso 1.0, de 1987. A verso
 1.2, de 1996, pode ser obtida via FTP annimo em

      <ftp://ftp.tex.ac.uk/tex-archive/language/por-
      tuguese/pt8hyph.tex>


 Copie-o para o mesmo diretrio onde se encontra o pthyph.tex, que
 dependendo de sua distribuio pode ser
 /usr/lib/texmf/tex/generic/hyphen /usr/share/texmf/tex/generic/hyphen
 ou /usr/lib/teTeX/texmf/tex/generic/hyphen. Execute o comando texcon-
 fig~hash e na mesma linha mencionada anteriormente insira um `8' no
 nome do arquivo, de modo que fique pt8hyph.tex.


 66..11..1188..33..  UUssoo ddee FFoonntt EEnnccooddiinngg TT11

 Se o conjunto de caracteres (_e_n_c_o_d_i_n_g) de uma fonte no prov acesso
 direto a caracteres acentuados, (como  o caso do OT1, padro do LaTeX)
 ento o TeX gera estes caracteres sobrepondo o caracter base mais o
 acento. O algoritmo de hifenizao, contudo, no hifeniza palavras
 formadas dessa forma.

 Se uma fonte j prov acesso direto a caracteres acentuados, como as de
 codificao T1, estes caracteres so usados diretamente sem prejuzo do
 algoritmo de hifenizao.  O uso de _e_n_c_o_d_i_n_g T1  fundamental para a
 correta hifenizao em Portugus.

 Note que trata-se da mesma fonte, por falta a Computer Modern, apenas
 o que muda  o seu _e_n_c_o_d_i_n_g, isto , a ordem/disponibilidade dos
 caracteres dentro da mesma. Para selecionar estas fontes, inclua no
 prembulo do seu documento o comando
     \usepackage[T1]{fontenc}



 O antigo pacote t1enc no deve mais ser usado e existe hoje apenas por
 questes de compatibilidade com documentos antigos. O fontenc  mais
 atual, continua a ser mantido e  de uso mais geral, portanto
 prefervel.


 66..11..1188..44..  EEddiioo ddee ddooccuummeennttooss

 Normalmente a introduo de caracteres acentuados no texto exige o uso
 de _s_e_q_n_c_i_a_s _d_e _e_s_c_a_p_e bastante trabalhosas. Para gerar um ``'' deve-se
 digitar \"o. Com _b_a_b_e_l pode-se digitar apenas "o, o que no deixa de
 ser inconveniente para ler o fonte do documento. H um pacote chamado
 iinnppuutteenncc que permite especificar a codificao em que esto os caracteres
 de um documento. Lembre-se porm que se o seu documento for enviado
 para outro usurio que no possua o iinnppuutteenncc ele poder no conseguir
 process-lo, mas esse recurso j est disponvel desde a liberao do
 LaTeX2e em dezembro 1994. Todas as distribuies de Linux atuais o
 incluem.

 Sugesto: uma configurao do GNU Emacs para gerar caracteres acentuados,
 prpria para o uso com o pacote inputenc:


     (add-hook 'LaTeX-mode-hook
               (lambda ()
                 (standard-display-european 1)
                 (load-library "iso-acc")
                 (iso-accents-mode 1)
                 (iso-accents-customize "portuguese")
                 (auto-fill-mode 1)
                 ))



 E outra que no requer o inputenc.  O uso da biblioteca `iso-cvt' faz a
 transformao de ISO-8859-1 (no buffer do Emacs) para o padro do LaTeX
 (no arquivo).


     (add-hook 'LaTeX-mode-hook
               (lambda ()
                 (standard-display-european 1)
                 (load-library "iso-cvt")
                 (load-library "iso-acc")
                 (iso-accents-mode 1)
                 (iso-accents-customize "portuguese")
                 (auto-fill-mode 1)
                 ))



 Muitas vezes o usuario j possui muitos arquivos num formato de acento
 do LaTeX e gostaria de passar tudo para o formato ISO, prprio para uso
 do pacote inputenc. Uma boa opo para isto  usar o programa recode. Se
 voc possui arquivos .tex e deseja converte-lo para formato ISO-8859-1
 pode usar:


     recode -d LaTeX:l1 file.tex



 O cdigo-fonte do GNU recode pode ser obtido via FTP annimo em
 <ftp://prep.ai.mit.edu/pub/gnu/recode/recode-3.4.tar.gz> e em muitos
 espelhos do GNU mundo afora. A distribuio Debian tem um pacote pronto
 e outras tambm devem ter.


 66..11..1188..55..  TTeessttee ddaa ccoonnffiigguurraaoo ddoo LLaaTTeeXX

 Para testar a nova configurao copie o seguinte trecho para um arquivo
 chamado, digamos, exemplo.tex:


     \documentclass[a4paper]{article}
     \usepackage[latin1]{inputenc}
     \usepackage[T1]{fontenc}
     \usepackage[portuges]{babel}
     %%
     %% ou \usepackage[brazil]{babel}
     %%

     \begin{document}
     \title{Linux Portuguese-HOWTO}
     \author{Carlos Augusto Moreira dos Santos}
     \date{\today}

     \maketitle

     \section{Introduo}

     Este documento pretende ser um guia de referncia de configurao
     do \textbf{Linux} e seus programas, teclados e fontes de
     caracteres, permitindo sua internacionalizao/utilizao confortvel
     por pessoas que falem a Lngua Portuguesa.

     \end{document}



 Esse texto contm de propsito uma ``palavra'' bastante longa para forar
 a separao silbica. Ele est disponvel via WWW no arquivo exemplo.tex na
 pgina do Portuguese HOWTO. Para process-lo, use o comando latex,
 conforme mostrado a seguir:

     bash$ latex exemplo.tex
     This is TeX, Version 3.14159 (C version 6.1)
     (exemplo.tex
     LaTeX2e <1996/06/01>
     Hyphenation patterns for english, german, portuges, loaded.
     (/usr/lib/teTeX/texmf/tex/latex/base/article.cls
     Document Class: article 1996/05/26 v1.3r Standard LaTeX document class
     (/usr/lib/teTeX/texmf/tex/latex/base/size10.clo))
     (/usr/lib/teTeX/texmf/tex/latex/base/inputenc.sty beta test version
     (/usr/lib/teTeX/texmf/tex/latex/base/latin1.def))
     (/usr/lib/teTeX/texmf/tex/latex/base/fontenc.sty
     (/usr/lib/teTeX/texmf/tex/latex/base/T1enc.def))
     (/usr/lib/teTeX/texmf/tex/generic/babel/babel.sty (portuges.ldf
     (/usr/lib/teTeX/texmf/tex/generic/babel/babel.def))) (exemplo.aux) [1]
     (exemplo.aux) )
     (see the transcript file for additional information)
     Output written on exemplo.dvi (1 page, 812 bytes).
     Transcript written on exemplo.log.


 A mensagem ``Hyphenation patterns for english, german, ppoorrttuuggeess,
 loaded.'' indica que a configurao foi bem sucedida. Se o seu computa-
 dor est rodando o X o documento formatado poder ser visto com o
 comando

     xdvi exemplo.dvi



 Observe que o ``\today'' gera a data corrente. No ``portugues'' seria
 ``17 de Julho de 1998'' mas no ``brazil'' seria ``17 de julho de
 1998''.


 66..11..1188..66..  PPrroobblleemmaass ccoomm aallgguunnss ppaaccootteess ddoo tteeTTeeXX

 H um problema com o pacote _a_l_g_o_r_i_t_h_m do LaTeX, que no  suportado pelo
 babel, fazendo com que a lista de algoritmos saia com o ttulo ``List
 of Algorithms'' e o ttulo de cada um deles seja impresso como
 ``Algorithm #''.  Para evitar esse problema, coloque no prembulo de
 seu documento LaTeX, aps o comando ``\usepackage{algorithm}'' o
 seguinte:


     \makeatletter
     \renewcommand{\ALG@name}}{Algoritmo}}
     \makeatother
     \renewcommand{\listalgorithmname}}{Lista de Algoritmos}}



 No teTeX 0.4 (verso 1.2h do portuges.ldf) o ttulo do ambiente _p_r_o_o_f,
 encontrado nas classes _a_m_s_b_o_o_k, _a_m_s_a_r_t, etc., sai como ``Proof.''.
 Para corrigir isso, coloque no prembulo de seu documento o comando


     \renewcommand{\proofname}}{Demonstra\c{c}\~ao}



 mas o mais recomendvel  que se atualize a verso do teTeX.

 Usurios do LyX podem incluir esses comandos no prembulo do documento
 usando o menu Layout/LaTeX Preamble. Pode-se resolver o problema
 alterando o arquivo portuges.ldf que contm as definies necessrias ao
 Portugus, mas esta soluo no  portvel, pois exigir que tal arquivo seja
 alterado em todas os computadores em que o documento deva ser
 processado.

 A licena do Babel no me permite distribuir o portuges.ldf separado do
 resto do pacote, mas para os interessados, coloquei  disposio na pgina
 do HOWTO um arquivo chamado portuges.ldf.patch que criei para o meu
 teTeX antigo (Slackware 3.4).  Para aplicar a atualizao, copie-o para
 o diretrio /usr/lib/teTeX/texmf/tex/generic/babel (Slackware), faa uma
 cpia de reserva do portuges.ldf original e invoque o utilitrio patch:


     cp -p portuges.ldf portuges.ldf.backup
     patch < portuges.ldf.patch



 Use o patch por sua conta e risco! Se voc deixar o backup no diretrio
 original ele ser includo no arquivo ls-R da prxima vez que o programa
 _t_e_x_h_a_s_h for executado.  Isso no far mal algum, mas pode-se mover o
 backup para algum lugar seguro (eu uso /usr/backup).



 66..11..1188..77..  LLiissttaa TTeeXX--BBRR

 H uma lista de discusso brasileira de usurios de TeX/LaTeX, chamada
 TeX-BR, que roda no servidor de listas da FURG. Para entrar da lista
 mande um mail contendo apenas a palavra ``subscribe'' no corpo para
 <[email protected]>. Esta lista  administrada por Rafael
 Rodrigues Obelheiro.

 H uma pgina na WWW em  <http://biquinho.furg.br/tex-br/> por meio da
 qual se pode ler o histrico de mensagens. Tambm h referncias para
 muitos documentos sobre LaTeX, alguns em Portugus e outros em Ingls.


 66..11..1188..88..  LLaaTTeeXX--ddeemmoo

 Pode ser til tambm um documento de exemplo para ter onde comear.
 Pensando nisso, Klaus Steding-Jessen preparou um pequeno documento em
 Portugus com o objetivo de ser um guia ``by example'' para o usurio de
 LaTeX iniciante e intermedirio, que pode ser obtido via WWW em
 <http://biquinho.furg.br/doc/LaTeX-demo/>.

 Klaus ecreveu tambm uma srie trs artigos destinados a ``descrever o
 sistema LaTeX como uma alternativa mais eficiente aos processadores de
 texto WYSIWYG'' que podem ser lidos via WWW em
 <http://biquinho.furg.br/tex-br/doc/artigo-1-jessen/>.



 66..11..1199..  WWoorrddPPeerrffeecctt

 O Corel Wordperfect para Linux verso 8 suporta a acentuao por teclas
 mortas. No  necessrio nenhum procedimento especial. Como um entusiasta
 de software livre, entretanto, recomendo enfaticamente que se use o
 LyX, que j foi inclusive traduzido para nossa lngua, conforme
 mencionado na seo ``LyX''.


 66..11..2200..  XXeemmaaccss ((aannttiiggoo lluucciidd eemmaaccss))


      Agradeo a colaborao de Judson Santos Santiago e Goedson
      Teixeira Paixo que ajudaram a identificar os problemas com o
      Xemacs.


 O Xemacs j tem suporte acentuao direta no teclado usando ``dead
 keys'', mas h um erro na configurao original que o impede de
 reconhecer o acento circunflexo.  Este problema no ocorre se for usada
 a biblioteca _X_l_i_b aterada por Thomas Quinot, mencionada na
 seo ``Contornando os limites do X'', mas mesmo que no a usemos, basta
 colocar os seguintes comandos no seu arquivo de configurao .emacs:

     ;; Ajuste para fazer o acento circunflexo funcionar
     ;; Contribuio de Goedson Teixeira Paixao <[email protected]>
     (require 'x-compose)
     (define-key global-map 'dead-circumflex compose-circumflex-map)



 Na distribuio Debian 2.0 o Xemacs 20.4 executa todos os scripts
 contidos no diretrio /etc/xemacs20/site-start.d ao ser carregado. Tudo
 que se tem a fazer  colocar esses comandos em um arquivo chamado, por
 exemplo, 01portugues-xemacs.el. No  necessrio instalar o
 _x_e_m_a_c_s_2_0_-_m_u_l_e, que possui extenses para lnguas que no usam o alfabeto
 romano. Os pacotes a instalar so os seguintes:

 +o  xemacs20-bin

 +o  xemacs20-nomule

 +o  xemacs20-support

 +o  xemacs20-supportel

 Se voc instalou o Xemacs no Slackware ou outro Unix,  moda antiga
 (dowload, compilao, instao), ento o arquivo a alterar  o site-
 start.el, que deve estar no diretrio /usr/lib/xemacs/site-lisp ou
 /usr/local/lib/xemacs/site-lisp, dependendo de sua instalao.

 Observe que a partir da verso 20.3 o Xemacs usa uma varivel especial
 para controlar o comportamento da tecla ``Delete'', no existente nos
 outros emacs chamada ddeelleettee--kkeeyy--ddeelleetteess--ffoorrwwaarrdd. Para ativar este
 comportamento coloque no seu arquivo .emacs uma linha contendo


     (setq delete-key-deletes-forward t)



 Arquivos de configurao prontos podem ser obtidos via WWW na pgina do
 Portuguese HOWTO. Para Slackware, h um site-start-xemacs.el, que deve
 ser copiado para o diretrio correto com o nome de site-start.el. Para
 Debian, h um 01portugues-xemacs.el que deve ser copiado para o
 diretrio /etc/xemacs20/site-start.d.

 Certifique-se de estar usando a verso 24-out-1998 ou mais recente do
 arquivo de ``mapa de teclado'' para o X, pois ela possui uma correo no
 tratamento das teclas modificadoras Alt e Meta, que so muito usadas
 pelo Xemacs.



 66..22..  RReeddee llooccaall ee IInntteerrnneett


 66..22..11..  FFTTPP ((FFiillee TTrraannssffeerr PPrroottooccooll))

 Existem dois modos de transferncia de arquivos: _b_i_n_a_r_y e _A_S_C_I_I, sendo
 este  utilizado para textos.  Deve-se tomar cuidado ao transferir um
 arquivo, pois o modo de transfrencia ASCII remove o oitavo bit de cada
 caracter transmitido, o que ter como conseqncia a perda de todos os
 caracteres acentuados. Desta forma aconselhado o envio de documentao
 em modo binary de forma a manter a integridade da mesma.

 Cuidado! Algumas verses mais antigas do pacote net-tools do Linux tm
 um cliente FTP que no reconhece corretamente quando o servidor remoto
 roda Unix. Deste modo ele no comutar o modo de transferncia para
 binrio automaticamente. Alm disso, alguns servidores FTP tambm no
 fornecem a informao corretamente.  Certifique-se de digitar o comando
 bin antes de um get quando quiser que a transferncia seja binria!


 66..22..22..  CCoorrrreeiioo eelleettrrnniiccoo

 O mesmo tipo de restries do FTP se aplica ao envio de documentos
 contendo caracteres acentuados atravs de correio eletrnico. Embora
 isto no acontea em todos os sistemas em uso na internet, bastar que o
 correio enviado passe no seu trajecto por um sistema que no suporte 8
 bits de informao para que o nosso documento seja deturpado.

 Para que no hajam problemas, deve-se utilizar um programa de emeil,
 que suporte o formato MIME (Multipurpose Internet Mail Extensions),
 formato este que permite o envio de documentao em modo 8 bits.
 Exemplos de programas de correio eletrnico com suporte para MIME, so o
 Eudora e o Pine.

 Se o destinatrio da mensagem no usa um agente com suporte para MIME,
 existe a opo de codificar os documentos com o utilitrio UUENCODE. Para
 maiores informaes a esse respeito, leia a documentao usando os
 comandos


     man uuencode
     man uudecode




 77..  FFiicchheeiirrooss nneecceessssrriiooss

 AAtteennoo!! Os mapas de teclado para o X fornecidos mapeiam a funo das
 teclas segundo a lista a seguir:

 +o  Alt esquerdo: Alt

 +o  Alt direito: AltGr

 +o  Control esquerdo: Control

 +o  Control direito: Control

 +o  ScrollLock: ScrollLock

 +o  Janela esquerda: Meta

 +o  Janela direita: Compose

 +o  Menu: Menu

 Se o seu teclado no possuir as teclas _p_a_r_a _W_i_n_d_o_w_s _9_5 ento pode ser
 melhor restabelecer a distribuio padro: edite o mapa e coloque um
 ponto de exclamao no incio das linhas que definem os _k_e_y_c_o_d_e_s 64, 113,
 115, 116 e 117.

 Foram elaborados mapas com suporte  acentuao para seis modelos de
 teclado, tanto para uso no console quanto para o X. Eles podem ser
 obtidos via WWW em um dos repositrios da pgina do Portuguese HOWTO:


 +o  <http://linusp.usp.br/~casantos/>

 Ao instalar um dos mapas fornecidos, lembre-se de ler os comentrios
 contidos neles, pois h informaes importantes sobre opes de configurao
 e aproveitamento das teclas adicionais dos teclados padro _W_i_n_d_o_w_s _9_5.
 As instrues para instalao esto nas sees ``Configurao do console'' e
 ``Configurao do X''.



    OO mmaappaa UUSS++ ((uuss++..mmaapp ee XXmmooddmmaapp..uuss++))
       Mapas para os teclados que seguem o padro americano. Como no
       existem teclas especiais para gerar o c-cedilhado nem o trema,
       foi usado um pequeno truque: o c-cedilhado  gerado pela seqncia
       'C.  No console pode-se faz-lo com a seqncia AltGR-C.  O trema
       gerado pela tecla ". Para gerar as aspas duplas  necessrio
       digitar a seqncia "<espao> e no console pode-se usar "";
       opcionalmente pode-se usar AltGR-", o que no  uma soluo muito
       confortvel, mas funciona...
       Testados com teclados de vrias marcas (e alguns sem marca :-).


    OO mmaappaa PPoorrttuuggaall ((pptt..mmaapp ee XXmmooddmmaapp..pptt))
       Mapas para teclados com desenho portugus. Esses teclados so os
       que possuem uma tecla com os caracteres  e . No so muito
       confortveis, porque para gerar o smbolos @@ [[ ]] {{ }} e o trema
       necessrio usar a tecla AAlltt--GGRR.

       Testado com um teclado da marca Key Tronic.


    OO mmaappaa AABBNNTT--22 ((aabbnntt--22..mmaapp ee XXmmooddmmaapp..aabbnntt22))
       Os computadores vendidos no Brasil fabricados pela IBM, Compaq e
       Itautec, entre outros, vm com esses teclados. Eles tambm pode
       ser adquiridos avulsos e so fabricados pela UIS e Keytec (no
       confundir com Key Tronic).  Este desenho  o mais confortvel de
       todos, pois tem a mesma distribuio dos acentos encontrada nas
       mquinas de escrever.

       Testado com teclados das marcas UIS e IBM.


    SSuunn TTyyppee 44 ee TTyyppee 55 ((XXmmooddmmaapp..SSuunn44++ ee XXmmooddmmaapp..SSuunn55cc++))
       Encontrados nas mquinas fabricadas pela Sun.  Estes mapas foram
       testados em SPARCstations modelos 1, 4, IPC e Classic rodando
       SunOS 4.1, Solaris 2.5.1 e Linux 2.0.33 (Red Hat 4.2). Como
       esses teclados no possuem o c-cedilhado, foi usado o mesmo
       truque do mapa US+. Apenas o mapa para o X  fornecido.


    NNCCDD++ ((XXmmooddmmaapp..NNCCDD++))
       Este mapa  para o teclado modelo N107 e foi testado em terminais
       X modelo 16r fabricados pela Network Computing Devices
       Inc. (NCD).  Embora a distribuio de teclas seja idntica  do Sun
       _T_y_p_e _4, os _k_e_y_c_o_d_e_s das teclas so diferentes. Esses teclados
       tambm no possuem o c-cedilhado, por isso foi usado o mesmo
       truque do mapa US+.  Apenas o mapa para o X  fornecido.

 A gerao dos caracteres acentuados  feita de acordo com a tabela a
 seguir:


     Para gerar              Digitar
     -------------------------------------------------
                            'c ou compose-,-c
                        'a 'e 'i 'o 'u
                        `a `e `i `o `u
                           ~a ~o
                        ^a ^e ^i ^o ^u
                        "a "e "i "o "u
     " (aspas)               "" ou AltGR-" no mapa US+
      (trema)               "-espao
     ' (apstrofo)           '' ou AltGR-' no mapa US+
     ` (grave)               `` ou AltGR-` no mapa US+
                            compose-O-R
                            compose-O-C
     -------------------------------------------------




 88..  IInnffoorrmmaaeess AAddiicciioonnaaiiss



 88..11..  FFoonntteess ddee iinnffoorrmmaaoo ssoobbrree LLiinnuuxx eemm PPoorrttuugguuss


    GGrruuppoo ddee IInnvveessttiiggaaoo LLiinnuuxx
       Grupo de usurios de linux da Universidade do Minho, em Portugal
       que pode ser visitado em  <http://gil.di.uminho.pt>.

    GGrruuppoo ddee UUttiilliizzaaddoorreess ddee LLiinnuuxx ddoo IISSCCTTEE
       Pode ser visitado em
       <http://www.students.iscte.pt/~a12593/gul.html>.

    LLiinnuuxx BBrraassiill
       Servidor da Universidade Estadual de Campinas, Brasil, contendo
       informaes sobre Linux no Brasil, que absorveu o antigo projeto
       LDP-br.  Pode ser visitado em  <http://linux.unicamp.br>.

    PPrroojjeettoo LLiinnUUSSPP
       Desenvolvido na Universidade de So Paulo, Brasil, coordenado por
       Jorge L.  deLyra. Pode ser visitado em  <http://linusp.usp.br/>.


 88..22..  FFrreeee TTrraannssllaattiioonn PPrroojjeecctt

 Programadores que quiserem desenvolver aplicaes com suporte a mais de
 uma lngua devem usar algum mtodo de definir mensagens em tempo de
 execuo, possivelmente usando uma biblioteca de funes para este fim. O
 projeto GNU criou o ``Free Translation Project'', com esta finalidade.
 Muitos aplicativos GNU j permitem que se troquem as mensagens bastando
 criar um catlogo que  lido pelo programa ao iniciar. H equipes de
 traduo responsveis por cada lngua.

 H uma lista de discusso via emeil para cada equipe de traduo, rodando
 em um servidor provido pela <Linux International>. Para fazer contato
 com a equipe de traduo para Portugus, envie um emeil para <[email protected]>
 e para assinar a lista envie emeil para <[email protected]> contendo
 apenas a palavra ``subscribe''. Assine a lista somente se voc quiser
 fazer parte da equipe de tradutores, pois ela nnoo se destina ao
 esclarecimento de dvidas de usurios!

 Mais informaes podem ser encontradas na documentao do pacote _g_e_t_t_e_x_t
 disponvel via FTP annimo em qualquer repositrio de software do GNU.
 Provavelmente sua distribuio j tem um pacote pronto para ser
 instalado, mas se voc desejar, os fontes da verso mais recentes podem
 ser encontrados em

      <ftp://ftp.gnu.org/pub/gnu/>


 e o nome do arquivo a copiar  ``gettext-<verso>.tar.gz''.


 88..33..  LLIIEE--BBRR


      A informao a seguir  baseada no contedo da pgina de apresen-
      tao da lie-br, escrita por Jorge Godoy.


 A lie-br foi criada com o intuito de auxiliar a comunidade Linux
 brasileira a obter softwares e documentao em sua lngua nativa: o por-
 tugus.  Essa lista  uma ramificao de outra maior, a LIE que visa a
 internacionalizao do Linux e sua posterior traduo para todos os
 idiomas (portugus incluso).

 Resumo dos objetivos da lie-br:

 +o  contribuir para o projeto de internacionalizao do Linux fazendo a
    parte relativa ao portugus para o Brasil;

 +o  internacionalizar programas, de modo a poderem ser usados nas
    lnguas nativas de cada pas, e no ficar preso ao idioma original ou
    ao ingls;

 +o  disponibilizar (sic) material em portugus para consulta e
    documentao;

 +o  aumentar o acervo de documentao disponvel e, indiretamente,
    auxiliar no desenvolvimento iniciado pelo projeto LDP-BR.

 Mais informaes podem ser encontradas na pgina WWW da lie-br, no
 endereo

      <http://lie-br.conectiva.com.br/>


 Ainda h uma quantidade enorme de documentos por traduzir. Se voc tem
 bom domnio do Ingls e deseja colaborar, ento pprriimmeeiirroo leia as instrues
 na pgina mencionada e assine a lista ``lie-br'', enviando um emeil
 para <[email protected]>. No  preciso especi-
 ficar o assunto (subject) nem colocar nada no corpo da mensagem.


 88..44..  VVeerrsseess ddee ssooffttwwaarree tteessttaaddaass

 Todas as informaes presentes neste documento foram testadas nas
 seguintes verses de software:


 +o  Distribuies Slackware 3.2 (muito modificada), Debian 2.0, Red Hat
    5.2, Conectiva 3.0 (Guarani) e S.u.S.E. 5.6

 +o  XFree86 verses 3.3 a 3.3.3.1

 +o  Fvwm 2.0.46

 +o  Rxvt verso 2.4.5

 +o  Kernel verses 2.0.33 a 2.0.36

 +o  Kbd verses 0.92 a 0.96

 +o  GNU emacs verses 19.34 a 20.3

 +o  Less verses 321 e 332

 +o  GNU Bash verses 1.14.7 a 2.01.1

 +o  tcsh verses 6.07.02 e 6.07.06

 +o  LyX 0.12.0 a 1.0.0pre6

 +o  XForms 0.88

 +o  Joe 2.8

 +o  Pine 3.96 e 4.0

 +o  Pico 2.9

 +o  teTeX verses 0.4 e 0.9-9


 +o  XEmacs verses 20.3 e 20.4




 99..  OObbsseerrvvaaeess ffiinnaaiiss

 99..11..  FFuuttuurraass aaddiieess aa eessttee ddooccuummeennttoo

 As prximas verses do HOWTO devero conter, entre outros assuntos, os
 seguintes:

 +o  suporte  distribuio Caldera;

 +o  informaes sobre compartilhamento de arquivos em rede usando NFS,
    SAMBA e Mars-NWE;

 +o  configurao de _t_o_o_l_k_i_t_s de interface grfica: Qt, GTK, XForms, Tk
    (Tcl) e os baseados em Xt, como Motif, Lesstif, Xaw (*international
    ainda no est funcionando);

 +o  uma seo sobre desenvolvimento de programas;

 +o  referncias ao Ispell (us-lo para corrigir o prprio HOWTO :-);

 +o  informaes sobre X/Open, XPG4 e POSIX, ou pelo menos ponteiros para
    elas.

    Aceitam-se voluntrios para qualquer uma destas tarefas.

 Parece cada vez mais claro que as informaes sobre configurao de
 aplicativos devem ser movidas para outro documento, independente do
 HOWTO. Na forma como ele est hoje j chega a quase quarenta pginas
 impressas e com a adio de outras distribuies e aplicaes em breve
 chegar s 50. Um documento to grande foge ao esprito de um HOWTO, que
 deve ser sucinto e concentrado em um assunto especfico.


 99..22..  NNoottaa ddee DDiirreeiittooss ddee AAuuttoorr

 Este HOWTO teve como autor Joo Carlos Rodrigues Pereira, baseado em
 documentao escrita por Jos Bandeira alm dos restantes HOWTO's do
 Linux.  Atualmente ele  mantido por Carlos Augusto Moreira dos Santos,
 com a colaborao de muitos outros.

 Os documentos HOWTO do Linux podem ser reproduzidos e distribudos em
 todo ou em parte, segundo qualquer meio fsico ou electrnico, desde que
 esta Nota de Direitos de Autor se mantenha intacta em todas as cpias
 dos mesmos.  A distribuio comercial  autorizada e encorajada, no
 entanto, o autor gostaria de ser notificado de tais ocorrncias.

 Todas as tradues, trabalhos derivados, ou trabalhos agregando qualquer
 dos documentos HOWTO do Linux devero estar abrangidos por esta Nota de
 Direitos de Autor, ou seja, no poder ser imposta qualquer restrio
 adicional a trabalhos efectuados a partir de um dos documentos HOWTO
 do Linux nomeadamente no que diz respeito  sua distribuio.

 Excees a estas regras poderam ser obtidas. Para tal, dever-se-
 contactar o coordenador dos documentos HOWTO do Linux no endereo
 <[email protected]>.


 99..33..  GGaarraannttiiaa ((iinneexxiissttnncciiaa ddee)) ee nnoottaa ddee rreessppoonnssaabbiilliiddaaddee

 Apesar de ter sido feito o mximo esforo possvel para que o contedo
 deste documento esteja correto, no h nenhuma garantia de que ele no
 possua erros, nem de que tenha algum tipo de utilidade ou aplicao
 comercial, tcnica, educacional ou medicinal.  O autor no se
 responsabiliza por prejuzos decorrentes do seu uso. Em resumo: se a
 informao aqui contida quebrar seu computador em mil pedacinhos, junte
 tudo e cole, mas nnoo rreeccllaammee ppaarraa mmiimm!

 Documentos escritos por terceiros so de responsabilidade exclusiva
 deles e sua referncia neste HOWTO no representa nenhum tipo de
 recomendao, abono ou garantia de suporte.


 99..44..  AAggrraaddeecciimmeennttooss

 Deixo aqui os meus agradecimentos a todos os que de alguma forma me
 ajudaram quer atravs das suas sugestes quer atravs de contribuies de
 outro tipo, em especial a


    JJoooo CCaarrllooss RRooddrriigguueess PPeerreeiirraa
       Autor original deste documento que agora mantenho. Nunca tive
       contato com ele, nem sei por onde andar.  Sua pgina no
       Departamento de Informtica da Faculdade de Cincias da
       Universidade de Lisboa (http://caravela.di.fc.ul.pt/~jcrp/) no
       existe mais. Lembro-me de t-la visto, anos atrs.

    GGrreegg HHaannkkiinnss
       Ex-coordenador dos LLiinnuuxx HHOOWWTTOO, por me permitir assumir a
       manuteno deste documento e fornecer as primeiras dicas sobre
       autoria de documentos SGML.

 As pessoas listadas a seguir enviaram mensagens diretamente para mim
 ou para as listas Linux-BR da UNICAMP e TeX-BR com informaes, sugestes
 ou comentrios que foram includas neste texto. Se algum foi esquecido,
 por favor desculpe a falha.


      Andre Gerhard <[email protected]>
      Arnaldo Carvalho de Melo <[email protected]>
      Bruno Barberi Gnecco <[email protected]>
      Cees de Groot <[email protected]>
      Francisco Semeraro <[email protected]>
      Goedson Teixeira Paixao <[email protected]>
      Joao Carvalho <[email protected]>
      Jorge Carvalho Pinto <[email protected]>
      Judson S Santiago <[email protected]>
      Ken MacLeod <[email protected]>
      Klaus Steding-Jessen <[email protected]>
      Lamarque Vieira Souza <[email protected]>
      Marcelo Malheiros <[email protected]>
      Marcos Vinicius Lannes dos Santos <[email protected]>
      Pedro Krger <[email protected]>
      Rafael Caetano dos Santos <[email protected]>
      Rafael Rodrigues Obelheiro <[email protected]>
      Ramiro Morales <[email protected]>
      Raul Carvalho <[email protected]>
      Ricardo Y. Igarashi <[email protected]>
      Roberto Mello <[email protected]>
      Wanderlei Antonio Cavassin <[email protected]>


 Os seguintes agradecimentos so do primeiro autor:

    CCaarrllooss FFeerrrreeiirraa
       Pela luta que trava pela defesa da lingua portuguesa, bem
       patente na sua _P_g_i_n_a _P_o_r_t_u_g_u_e_s_a disponvel no URL:
       http://lila.dei.uc.pt/~cjrf/po/ [Nota do mantenedor atual: esta
       pgina no existe]

    JJoooo CC.. SSiillvvaa
       Pelo apoio e incentivo e criticas (bem como por me deixar testar
       os meus conhecimentos no SEU computador).

    JJooss BBaannddeeiirraa
       Autor dos ficheiros port.map e xmodmap.  Pelo seu apoio e por
       ter escrito alguma da documentao mais elucidativa que eu j li
       sobre o assunto.


 1100..  BBiibblliiooggrraaffiiaa ccoommeennttaaddaa

 Esta seo ainda est incompleta e deve ser melhorada nas prximas verses.
 Os HOWTOs mencionados aqui geralmente so distribudos nos CDs de
 instalao e todas as distribuies possuem pelo menos alguns deles em
 pacotes prontos para instalar.  Na Slackwre esses pacotes so os da
 srie F e os documentos ficam instalados no diretrio /usr/doc/faq/howto
 e na Debian o diretrio  /usr/doc/HOWTO. Eles tambm podem ser obtidos
 via WWW em  <http://metalab.unc.edu/LDP/HOWTO/>.


    [[BBAALL9977]] BBAALLSSAA,, AAnnddrr DD.. LLiinnuuxx aanndd XX1111 iinntteerrnnaattiioonnaalliizzaattiioonn
       Disponvel via WWW em
       <http://wauug.erols.com/~balsa/linux/deadkeys/>

       Uma discusso sobre o problema da acentuao no X. Tambm contm
       referncias para outros documentos que tratam de
       internacionalizao.

    [[BBRROO9988]] BBrroowweerr AAnnddrriieess.. TThhee LLiinnuuxx KKeeyybbooaarrdd aanndd CCoonnssoollee HHOOWWTTOO
       Disponvel via WWW em
       <http://metalab.unc.edu/LDP/HOWTO/Keyboard-and-Console-
       HOWTO.html>.

       Descreve o tratamento teclado e console no Linux (kernel verso
       2.0) e tem vrias referncias ao X. Leitura obrigatria para quem
       quer entender a base do assunto.

    [[GGEETT9944]] GGeettttyyss,, JJaammeess eett aall.. XXlliibb -- CC LLaanngguuaaggee XX IInntteerrffaaccee
       Cambridge, X Consortium, Inc., 1994. 473p.

       Referncia definitiva sobre programao com Xlib.

    [[JJOONN8899]] JJoonneess,, OOlliivveerr.. IInnttrroodduuccttiioonn ttoo tthhee XX WWiinnddooww SSyysstteemm
       Englewood Cliffs, Prentice Hall, 1990.

       Um livro bastante antigo, mas contendo uma excelente e didtica
       introduo ao X e  programao com Xlib.

    [[MMccCC9944]] MMccCCoorrmmaacckk,, JJooeell eett aall..XX TToooollkkiitt IInnttrriinnssiiccss -- CC LLaanngguuaaggee
       IInntteerrffaaccee
       Digital Equipment Corporation/X Consortium, 1994.

       A referncia bsica para programadores interessados em usar Xt.

    [[OOSSSS9922]] OOssssaannaa,, JJoosseepphh && KKeerrnniigghhaann,, BBrriiaann.. TTrrooffff uusseerr''ss mmaannuuaall
       Computer Science Technical Report No. 54. Murray Hill, AT&T Bell
       Laboratories, 1992.

       Descrio detalhada de como usar o Troff para formatao de
       documentos.

    [[KKEERR8822]] KKeerrnniigghhaann,, BBrriiaann.. AA TTyyppeesseetttteerr--iinnddeeppeennddeenntt TTRROOFFFF
       Murray Hill, AT&T Bell Laboratories, 1982.
       O artigo de um dos pais do UNIX sobre o Troff.

    [[QQUUII9988]] QQuuiinnoott,, TThhoommaass.. DDeeaadd kkeeyyss uunnddeerr XX1111
       Disponvel via WWW em  <http://www.fdn.fr/~tquinot/index.en.html>

       A verso em ingls do artigo sobre a modificao da _X_l_i_b para dar
       suporte  acentuao independente da aplicao.

    [[RRAAYY9988]] RRaayymmoonndd,, EErriicc SS.. TThhee LLiinnuuxx XXFFrreeee8866 HHOOWWTTOO
       Disponvel via WWW em
       <http://metalab.unc.edu/LDP/HOWTO/XFree86-HOWTO.html>.

       Descreve como obter, instalar e configurar o XFree86. Todas as
       distribuies de Linux j vm com pacotes do XFree86 prontos para
       instalar, mas as informaes sobre configurao podem ser muito
       teis.

    [[SSCCHH8866]] SScchheeiifflleerr,, RRoobbeerrtt;; GGeettttyyss,, JJaammeess.. TThhee XX WWiinnddooww SSyysstteemm
       _A_C_M _T_r_a_n_s_a_c_t_i_o_n_s _o_n _G_r_a_p_h_i_c_s, New York, ACM, _5 (2): 79-109,
       april, 1986.

       O artigo seminal de Scheifler e Gettys descrevendo o X Window
       System.

    [[SSUUNN9900aa]] SSuunn MMiiccrroossyysstteemmss.. UUssiinngg NNRROOFFFF && TTRROOFFFF..
       Sun Microsystems, 1990.

       Parte da documentao que acompanhava as estaes de trabalho Sun e
       o sistema SunOS, no tempo em que os fabricantes de computadores
       distribuiam documentao de verdade.

    [[SSUUNN9900bb]] SSuunn MMiiccrroossyysstteemmss.. FFoorrmmaattttiinngg ddooccuummeennttss
       Sun Microsystems, 1990.

       Veja o tem anterior.

 Arquivos cuja leitura pode ser til:


    /usr/src/linux/Documentation/unicode.txt
       Explica como ativar os diversos tipos de fontes no console.
       Tambm explica onde obter fontes para o alfabeto Klingon, o que
       pode ser muito til se o leitor for um habitante daquele Imprio
       ou admirador de Jornada nas Estrelas.  Depois das recentes
       aventuras espaciais do Linux, no duvido de mais nada...

       A respeito deste assunto  de fundamental importncia saber que,
       segundo nosso consultor interestrelar Klaus Steding-Jessen,
       ``Klingon  o nome da raa e do seu idioma.  Kling  o nome do
       planeta.  Mas note que o Imprio Klingon  formado no apenas por
       esse planeta, mas por vrias colnias, teoricamente todas falando
       Klingon''. Tenho certeza de que sua vida nunca mais ser a mesma
       depois de saber disto.

    /usr/src/linux/include/linux/keyboard.h
       Contm as definies de constantes, funes e macros utilizadas por
       programas que fazem tratamento de teclado sob Linux.
       Normalmente esse arquivo  instalado com o pacote que contm o
       cdigo fonte do kernel. As distribuies geralmente possuem um
       pacote apenas com os arquivos _i_n_c_l_u_d_e e outros com o resto dos
       programas-fonte do kernel.

    /usr/X11R6/include/X11/keysymdef.h
       Contm as definies de constantes, funes e macros utilizadas por
       programas que fazem tratamento de teclado sob o X Window System.
       Normalmente esse arquivo  instalado com o pacote que contm as
       bibliotecas de desenvolvimento de aplicaes para X.