How to configure Linux for use with the Portuguese characterset
- --- BEGIN Linux Portuguese HOWTO part 1/1 --- Linux Portuguese-HOWTO João Carlos Rodrigues Pereira, jcrp@caravela.di.fc.ul.pt v1.0, 14 September 1995 Este documento pretende ser um guia de referência de configuração do Linux e seus programas para utilização com o Teclado e Página de Código Portugueses. 1. Introdução À semelhança de outras linguas faladas na europa, a lingua portuguesa reveste-se de algumas características especiais, tais como a utilização de caracteres acentuados, que tornam o seu suporte dificil, pouco intuitivo ou até mesmo impossivel, por parte do software utilizado nos nossos computadores. As dificuldades encontradas centram-se essencialmente em torno de dois pontos fundamentais: 1. A introdução de caracteres acentuados através do teclado, como seja a escrita de jo~ao em vez da sua forma correcta. 2. A exibição dos mesmos no ecran do computador, o suporte resume-se normalmente à correcta localização das teclas, nada mais. O presente HOWTO pretende, pois, ajudar o utilizador do sistema Linux a configurar o mesmo, de modo a que dentro do possivel(1), tanto o sistema operativo, como os programas nele utilizados, venham a suportar o teclado português. (1) uma vez que existem alguns programas que não foram desenhados com vista a suportar os caracteres acentuados. 2. A package KBD O Linux foi desenhado internamente de modo a facilitar a sua facil configuração e extenção em tempo de execução, não constituindo o tratamento do teclado e fontes de caracteres excepção. A configuração do teclado é conseguida através da possibilidade de redefinição das tabelas de tradução de caracteres e do carregamento de fontes de caracteres de ecran. Para tal foi desenvolvida a package KBD, que disponibiliza todo um conjunto de comandos para o efeito. 2.1. Comandos da package KBD Segue-se a descrição de alguns dos comandos disponibilizados pela package KBD. 2.1.1. Loadkeys O comando loadkeys permite especificar a equivalencia entre a tecla que se pressiona no teclado e o código (keycode) que os programas recebem. Isto é conseguido atraves do carregamento de um mapa de teclado. Por exemplo o comando loadkeys /usr/lib/kbd/keytables/portuguese.map carrega o mapa do teclado portugues. O que e um mapa de teclado ? Bem, um mapa de teclado é um ficheiro de texto onde se colocam as correspondencias entre o scancode de uma tecla e o seu código de tecla, ou keycode. Por exemplo : // atribuição da tecla '-' do teclado numerico a' tecla com co'digo 74 keycode 74 = KP_Subtract // atribuição da tecla '4' do teclado numerico a tecla com código 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 2.1.2. Mapscr Alem do comando anterior que opera no sentido teclado <-> aplicação, temos o comando mapscrn que opera no sentido aplicação <-> ecran. Ou seja, uma aplicação envia o caracter com o código 123 para o ecran, e o caracter com o código 200 será mostrado. isto, é claro, se existir no ficheiro de tradução de caracteres a seguinte linha: 123 200 Este assunto será desenvolvido mais a frente. 2.1.3. Setfont O comando setfont permite o carregamento de uma fonte de caracteres de ecran, possibilitando a alteração das fontes utilizadas em modo de texto. Voltarei a este assunto mais tarde. 3. Configuração do sistema operativo Linux Feitas as primeiras apresentações vamos agora ver como se procede á configuração do Linux, tanto em modo de terminal como no Sistema de Janelas X. 3.1. Modo texto Primeiro de tudo há que dizer ao Linux qual a localização das várias teclas segundo a disposição do teclado português. Tal é conseguido através da utilização do comando loadkeys. O comando a executar é: loadkeys portugal.map Experimente algumas teclas como ",.|!"#$%&/()=?", etc... OK, agora já temos as teclas no sitio certo (incluindo !#$%&/()=?'{} etc) mas, e os c-cedilhados, a com til e outros caracteres acentuados ? Bem, felizmente para nós, o ficheiro de mapa de teclado permite também especificar teclas especiais chamadas "deadkeys". Deadkeys são teclas, que, quando presionadas não tem como resultado o aparecimento de um caracter no ecran, limitando-se a alterar o comportamento da tecla pressionada a seguir. Exemplo: O equivalente a (em MSDOS) pressionar a tecla til seguida da tecla a, o que provoca o aparecimento de um a-com-til (ã) !!! Eis a linha do ficheiro "portugal.map" responsável pela definição da tecla c-cedilhado: // atribuição da tecla <tt/c-cedilhado/ á tecla com código 39 keycode 39 = +ccedilla Ccedilla Antes de prosseguir peco-lhe que introduza o seguinte comando: echo -n -e "\\033(K" Este comando limita-se a pedir ao terminal que entre em modo de "8 bits", modo este necessário a exibição de caracteres especiais tais como o c-cedilhado, a-com-til etc. Experimente pressionar a tecla c-cedilhado. Em principio deverá ter aparecido um c-cedilhado ou um caracter estranho. No segundo caso, tente não se preocupar com isso, este assunto será tratado mais á frente. Experimente outras teclas com acentos. Sim, é possivel que tenham aparecido alguns caracteres estranhos ... deixemos isso de lado... OK, agora vamos ... aos caracteres estranhos. Provavelmente alguns dos caracteres que apareceram no passo anterior não eram exactamente o que estaria á espera. O que acontece, é que, a fonte de caracteres corrente poderá não possuir todos os caracteres de que necessitamos. Vamos entao mudar a fonte de caracteres activa, executando o comando: setfont latin1u-16 E eis que aparecem os caracteres que todos nos esperavamos. Mas, e se alguns dos caracteres continuassem a não aparecer ? Bem, neste caso, teriamos de convencer o ecran a mostrar os caracteres certos em cada caso. Expliquemos, o que se passaria neste caso, era que a fonte de caracteres não possuia a imagem certa de alguns dos caracteres que desejavamos exibir (o que alias acontecia com a fonte anterior). Neste caso poderiamos recorrer ao comando mapscrn. Como foi descrito atrás, o referido comando permite especificar qual o caracter X a ser exibido no ecran, quando um programa deseja exibir um caracter Y. Desta forma, poderiamos fazer com que , ao escrever o caracter c- cedilhado no ecran, fosse na realidade exibido um outro caracter cuja imagem na nossa fonte de caracteres correspondesse a imagem de um c- cedilhado. O comando a ser executado seria : mapscrn <nome do ficheiro de tabela de tradução> O ficheiro com a tabela de tradução teria no entanto de ser criado por nos, segindo um processo moroso de tentativa e erro ate encontrar o caracter cuja "imagem" nos pretendiamos. Ou, de uma forma mais facil, poderiamos usar o comando showfont. No entanto nas versões de software por mim testado, o uso deste ultimo comando revelou-se desnecessário. 3.2. O Sistema de Janelas X (X-Window) O Sistema de Janelas X vem equipado com um utilitário destinado à configuração do teclado, chamado xmodmap. O comando xmodmap cumpre uma função identica ao comando loadkeys, ou seja, lê um ficheiro de mapa de teclado de X, expecificando as equivalencias entre os scancodes e respectivos keycodes. Eis um excerto deste ficheiro: keycode 47 = Ccedilla keycode 48 = masculine ordfeminine keycode 51 = Dtilde Dcircumflex_accent De notar que, a configuração do Sistema de Janelas X não interfere de forma alguma com a configuração do Modo de Texto. De facto, é possivel ter o seu X bem configurado, e no entatanto não ter realizado qualquer tipo de configuração ao Modo de Texto, e vice-versa. Nota : Na versão XFree 3.1.x não é possivel a utilização de dead-keys ao contrario da versão XFree86 2.1.x. Isto deve-se so facto de o "X Consortium" ter chegado à conclusão de que o sistema actual de mapeamento de teclas não tratava de forma satisfatória toda a imensa variedade de linguas escritas nas várias partes do mundo. Deste modo, decidiu-se que o "peso" relativo à gestão do teclado fosse transferido para as aplicações X. Desta forma o suporte ou não de dead-keys numa aplicação depende apenas dela, podendo assumir vários aspectos : · A aplicação não implementa a função desejada · A opção correcta não esta ligada no seu ficheiro de configuração · A aplicação não foi compilada com o referido suporte · Outras ... 3.3. Os ficheiros de configuração Até aqui tudo bem, mas decerto que não teremos de executar todos estes comandos no inicio de cada sessão de trabalho, pois não ? A resposta é obviamente: Não ! Para nos poupar este trabalho existem uma série de ficheiros de configuração onde deveremos colocar a descrição dos comandos a executar. Os ficheiro são : /etc/rc.d/rc.keymap - Ficheiro lido quando do boot do sistema operativo, servindo para especificar os comandos de inicialização das várias consolas de modo texto. Segue-se a descrição das linhas que deveram ser incluidas neste (se não tiverem sido incluidas pela instalação base do sistema). -------- INICIO --------- # Inicializacao das consolas # INITTY=/dev/tty[1-9]* # activacao do modo de mapeamento de 8-bits # for tty in $INITTY do echo -n -e "\\033(K" > $tty done # carregamento da tabela de mapeamento de caracteres # loadkeys portugal.map # retirar o comentario do proximo comando se tiver de usar o mapscrn # # mapscrn /usr/liv/kbd/ <qualquer coisa> ---------- FIM --------- /etc/rc.d/rc.font - Neste ficheiro deveram ser especificados os comandos relativos ao carregamento das fontes de modo texto. -------- INICIO -------- #!/bin/sh # especificacao da fonte a carregar # setfont /usr/lib/kbd/consolefonts/lat1u-16 ---------- FIM --------- Alem das alterações a executar nos ficheiros de configuração atrás mencionados, terá também de copiar o ficheiro Janelas X fique correctamente configurado. 4. Configuração dos vários programas 4.1. bash Crie um ficheiro chamado .inputrc na sua directoria HOME contendo as seguintes linhas : -------- INICIO -------- set meta-flag on set convert-meta off set output-meta on ---------- FIM --------- Esta alteração irá também afectar todos os programas que utilizem a biblioteca readline da GNU. 4.2. csh / tcsh (versão 6.04 ou superior) Inclua as seguintes linhas no ficheiro /etc/profile : export LANG=C export LC_CTYPE=iso_8859_1 ou inclua as seguintes linhas no ficheiro .login : setenv LANG=C setenv LC_CTYPE=iso_8859_1 4.3. Joe Acrescente a seguinte linha ao ficheiro /etc/profile : alias joe='joe -asis' 4.4. less Acrescente a seguinte linha ao ficheiro /etc/profile : export LESSCHARSET=latin1 4.5. ls Acrescente a seguinte linha ao ficheiro /etc/profile : alias ls="ls -N" ou alias ls="ls -8" 4.6. mc No menu "Options" sub-menu "Configuration" ligue a opção "8 bit clean". 4.7. nn Acrescente a seguinte linha ao ficheiro ~/.nn/init : set data-bits 8 4.8. nroff / groff Ao invocar o comando nroff ou groff acrescente a opção -Tlatin1 Por exemplo : groff -Tlatin1 -mandoc $1 | less 4.9. emacs Coloque no seu /.emacs as linhas : (standard-display-european t) (require 'iso-syntax) 4.10. lemacs (lucid emacs) Coloque no seu /.emacs as linhas : (load-file "/usr/lib/lemacs-19.27.1/lisp/x11/x-iso8859-1.el") (load-file "/usr/lib/lemacs-19.27.1/lisp/x11/x-compose.el") 4.11. flex Especifique a opção -8 se o parser a gerar necessitar de ler dados de 8 bit. 4.12. FTP (File Transfer Protocol Cuidados a ter quando se enviam ficheiros através de FTP. Como sabemos, o modo de transferencia de ficheiros binarios é o binary, sendo o modo ascii utilizado para textos. No entanto, o modo de tranfêrencia ascii remove o oitavo bit de cada caracter transmitido, o que terá como consequencia a perda de todos os caracteres acentuados. Desta forma é aconselhado o envio de documentação em modo binary de forma a manter a integridade da mesma. 4.13. E-MAIL O mesmo(*) tipo de restrições se aplica ao envio de documentos contendo caracteres acentuados, através de E-MAIL. Para tal deverá utilizar um programa de mail, que suporte o formato MIME (Multipurpose Internet Mail Extensions), formato este que permite o envio de documentação em modo 8 bits. Exemplos de programas de correio eletronico com suporte para MIME, são o Eudora e o Pine. (*) Embora isto não aconteça en todos os sistemas op. em uso na internet, bastará que o correio enviado passe no seu trajecto por um sistema que não suporte 8 bits de informação para que o nosso documento seja deturpado. 5. Ficheiros necessários 5.1. xmodmap ( ~/.xmodmap) -------------------------------------------------------------------------- clear shift clear lock clear control clear mod1 clear mod2 clear mod3 clear mod4 clear mod5 ! charset "latin-1" keycode 9 = Escape Escape keycode 10 = 1 exclam atilde keycode 11 = 2 quotedbl at keycode 12 = 3 numbersign otilde keycode 13 = 4 dollar acircumflex keycode 14 = 5 percent ocircumflex keycode 15 = 6 ampersand ecircumflex keycode 16 = 7 slash braceleft keycode 17 = 8 parenleft bracketleft keycode 18 = 9 parenright bracketright keycode 19 = 0 equal braceright keycode 20 = apostrophe question backslash keycode 21 = braceleft braceright keycode 22 = BackSpace BackSpace BackSpace keycode 23 = Tab Tab keycode 24 = q Q atilde keycode 25 = w W otilde keycode 26 = e E eacute keycode 27 = r R ecircumflex keycode 28 = t T keycode 29 = y Y keycode 30 = u U uacute keycode 31 = i I iacute keycode 32 = o O oacute keycode 33 = p P otilde keycode 34 = plus asterisk ocircumflex ! keycode 35 = acute grave keycode 35 = Dacute_accent Dgrave_accent acute grave keycode 36 = Return keycode 37 = Control_L keycode 38 = a A aacute keycode 39 = s S agrave keycode 40 = d D atilde keycode 41 = f F acircumflex keycode 42 = g G keycode 43 = h H keycode 44 = j J keycode 45 = k K keycode 46 = l L keycode 47 = ccedilla Ccedilla keycode 48 = slash at keycode 49 = backslash bar keycode 50 = Shift_L ! keycode 51 = asciitilde asciicircum keycode 51 = Dtilde Dcircumflex_accent asciitilde asciicircum keycode 52 = z Z keycode 53 = x X keycode 54 = c C keycode 55 = v V keycode 56 = b B keycode 57 = n N keycode 58 = m M keycode 59 = comma semicolon keycode 60 = period colon keycode 61 = minus underscore keycode 62 = Shift_R keycode 63 = KP_Multiply keycode 64 = Alt_L Meta_L keycode 65 = space space keycode 66 = Caps_Lock keycode 67 = F1 F11 keycode 68 = F2 F12 keycode 69 = F3 F13 keycode 70 = F4 F14 keycode 71 = F5 F15 keycode 72 = F6 F16 keycode 73 = F7 F17 keycode 74 = F8 F18 keycode 75 = F9 F19 keycode 76 = F10 F20 keycode 77 = Num_Lock ! keycode 78 = Scroll_Lock keycode 78 = Multi_key keycode 79 = KP_7 keycode 80 = KP_8 keycode 81 = KP_9 keycode 82 = KP_Subtract keycode 83 = KP_4 keycode 84 = KP_5 keycode 85 = KP_6 keycode 86 = KP_Add keycode 87 = KP_1 keycode 88 = KP_2 keycode 89 = KP_3 keycode 90 = KP_0 ! keycode 92 = X386Sys_Req keycode 94 = less greater bar keycode 95 = F11 F11 keycode 96 = F12 F12 keycode 108 = KP_Enter keycode 109 = Control_R keycode 112 = KP_Divide keycode 113 = Mode_switch keycode 114 = Break keycode 110 = Find keycode 98 = Up keycode 99 = Prior keycode 100 = Left keycode 102 = Right keycode 104 = Down keycode 105 = Next keycode 106 = Insert keycode 136 = KP_7 keycode 137 = KP_8 keycode 138 = KP_9 keycode 139 = KP_4 keycode 140 = KP_5 keycode 141 = KP_6 keycode 142 = KP_1 keycode 143 = KP_2 keycode 144 = KP_3 keycode 145 = KP_0 keycode 146 = KP_Decimal keycode 147 = Home keycode 148 = Up keycode 149 = Prior keycode 150 = Left keycode 151 = Begin keycode 152 = Right keycode 153 = End keycode 154 = Down keycode 155 = Next keycode 156 = Insert keycode 157 = Delete ! add Mod1 = Alt_L ! add Mod2 = Mode_switch add shift = Shift_L Shift_R add lock = Caps_Lock add control = Control_L Control_R add mod1 = Alt_L add mod2 = Mode_switch ----------------------------------------------------------------------------- 5.2. port.map ------------------------------------------------------------------------------ charset "latin-1" keycode 0 = keycode 1 = Escape Escape alt keycode 1 = Meta_Escape keycode 2 = one exclam alt keycode 2 = Meta_one keycode 3 = two quotedbl at control keycode 3 = nul alt keycode 3 = Meta_two keycode 4 = three numbersign control keycode 4 = Escape alt keycode 4 = Meta_three keycode 5 = four dollar dollar control keycode 5 = Control_backslash alt keycode 5 = Meta_four keycode 6 = five percent control keycode 6 = Control_bracketright alt keycode 6 = Meta_five keycode 7 = six ampersand control keycode 7 = Control_asciicircum alt keycode 7 = Meta_six keycode 8 = seven slash braceleft control keycode 8 = Control_underscore alt keycode 8 = Meta_seven keycode 9 = eight parenleft bracketleft control keycode 9 = Delete alt keycode 9 = Meta_eight keycode 10 = nine parenright bracketright alt keycode 10 = Meta_nine keycode 11 = zero equal braceright alt keycode 11 = Meta_zero keycode 12 = apostrophe question backslash control keycode 12 = Control_underscore alt keycode 12 = Meta_minus keycode 13 = braceleft braceright alt keycode 13 = Meta_equal keycode 14 = Delete Delete Delete alt keycode 14 = Meta_Delete keycode 15 = Tab Tab alt keycode 15 = Meta_Tab keycode 16 = +q Q control keycode 16 = Control_q alt keycode 16 = Meta_q keycode 17 = +w W control keycode 17 = Control_w alt keycode 17 = Meta_w keycode 18 = +e E control keycode 18 = Control_e alt keycode 18 = Meta_e keycode 19 = +r R control keycode 19 = Control_r alt keycode 19 = Meta_r keycode 20 = +t T control keycode 20 = Control_t alt keycode 20 = Meta_t keycode 21 = +y Y control keycode 21 = Control_y alt keycode 21 = Meta_y keycode 22 = +u U control keycode 22 = Control_u alt keycode 22 = Meta_u keycode 23 = +i I control keycode 23 = Tab alt keycode 23 = Meta_i keycode 24 = +o O control keycode 24 = Control_o alt keycode 24 = Meta_o keycode 25 = +p P control keycode 25 = Control_p alt keycode 25 = Meta_p keycode 26 = plus asterisk control keycode 26 = Escape alt keycode 26 = Meta_bracketleft keycode 27 = dead_acute dead_grave control keycode 27 = Control_bracketright alt keycode 27 = Meta_bracketright keycode 28 = Return alt keycode 28 = Meta_Control_m keycode 29 = Control keycode 30 = +a A control keycode 30 = Control_a alt keycode 30 = Meta_a keycode 31 = +s S control keycode 31 = Control_s alt keycode 31 = Meta_s keycode 32 = +d D control keycode 32 = Control_d alt keycode 32 = Meta_d keycode 33 = +f F control keycode 33 = Control_f alt keycode 33 = Meta_f keycode 34 = +g G control keycode 34 = Control_g alt keycode 34 = Meta_g keycode 35 = +h H control keycode 35 = BackSpace alt keycode 35 = Meta_h keycode 36 = +j J control keycode 36 = Linefeed alt keycode 36 = Meta_j keycode 37 = +k K control keycode 37 = Control_k alt keycode 37 = Meta_k keycode 38 = +l L control keycode 38 = Control_l alt keycode 38 = Meta_l keycode 39 = +ccedilla Ccedilla alt keycode 39 = Meta_semicolon keycode 40 = slash at control keycode 40 = Control_g alt keycode 40 = Meta_apostrophe keycode 41 = backslash bar control keycode 41 = nul alt keycode 41 = Meta_grave keycode 42 = Shift keycode 43 = dead_tilde dead_circumflex control keycode 43 = Control_backslash alt keycode 43 = Meta_backslash keycode 44 = +z Z control keycode 44 = Control_z alt keycode 44 = Meta_z keycode 45 = +x X control keycode 45 = Control_x alt keycode 45 = Meta_x keycode 46 = +c C control keycode 46 = Control_c alt keycode 46 = Meta_c keycode 47 = +v V control keycode 47 = Control_v alt keycode 47 = Meta_v keycode 48 = +b B control keycode 48 = Control_b alt keycode 48 = Meta_b keycode 49 = +n N control keycode 49 = Control_n alt keycode 49 = Meta_n keycode 50 = +m M control keycode 50 = Control_m alt keycode 50 = Meta_m keycode 51 = comma semicolon alt keycode 51 = Meta_comma keycode 52 = period colon alt keycode 52 = Meta_period keycode 53 = minus underscore control keycode 53 = Delete alt keycode 53 = Meta_slash keycode 54 = Shift keycode 55 = KP_Multiply keycode 56 = Alt keycode 57 = space space control keycode 57 = nul alt keycode 57 = Meta_space keycode 58 = Caps_Lock keycode 59 = F1 F11 Console_13 control keycode 59 = F1 alt keycode 59 = Console_1 keycode 60 = F2 F12 Console_14 control keycode 60 = F2 alt keycode 60 = Console_2 keycode 61 = F3 F13 Console_15 control keycode 61 = F3 alt keycode 61 = Console_3 keycode 62 = F4 F14 Console_16 control keycode 62 = F4 alt keycode 62 = Console_4 keycode 63 = F5 F15 Console_17 control keycode 63 = F5 alt keycode 63 = Console_5 keycode 64 = F6 F16 Console_18 control keycode 64 = F6 alt keycode 64 = Console_6 keycode 65 = F7 F17 Console_19 control keycode 65 = F7 alt keycode 65 = Console_7 keycode 66 = F8 F18 Console_20 control keycode 66 = F8 alt keycode 66 = Console_8 keycode 67 = F9 F19 Console_21 control keycode 67 = F9 alt keycode 67 = Console_9 keycode 68 = F10 F20 Console_22 control keycode 68 = F10 alt keycode 68 = Console_10 keycode 69 = Num_Lock keycode 70 = Scroll_Lock Show_Memory Show_Registers control keycode 70 = Show_State alt keycode 70 = Scroll_Lock keycode 71 = KP_7 alt keycode 71 = Ascii_7 keycode 72 = KP_8 alt keycode 72 = Ascii_8 keycode 73 = KP_9 alt keycode 73 = Ascii_9 keycode 74 = KP_Subtract keycode 75 = KP_4 alt keycode 75 = Ascii_4 keycode 76 = KP_5 alt keycode 76 = Ascii_5 keycode 77 = KP_6 alt keycode 77 = Ascii_6 keycode 78 = KP_Add keycode 79 = KP_1 alt keycode 79 = Ascii_1 keycode 80 = KP_2 alt keycode 80 = Ascii_2 keycode 81 = KP_3 alt keycode 81 = Ascii_3 keycode 82 = KP_0 alt keycode 82 = Ascii_0 keycode 83 = KP_Period altgr control keycode 83 = Boot control alt keycode 83 = Boot keycode 84 = Last_Console keycode 85 = keycode 86 = less greater bar alt keycode 86 = Meta_less keycode 87 = F11 F11 Console_23 control keycode 87 = F11 alt keycode 87 = Console_11 keycode 88 = F12 F12 Console_24 control keycode 88 = F12 alt keycode 88 = Console_12 keycode 89 = keycode 90 = keycode 91 = keycode 92 = keycode 93 = keycode 94 = keycode 95 = keycode 96 = KP_Enter keycode 97 = Control keycode 98 = KP_Divide keycode 99 = Control_backslash control keycode 99 = Control_backslash alt keycode 99 = Control_backslash keycode 100 = AltGr keycode 101 = Break keycode 102 = Find keycode 103 = Up keycode 104 = Prior shift keycode 104 = Scroll_Backward keycode 105 = Left keycode 106 = Right keycode 107 = Select keycode 108 = Down keycode 109 = Next shift keycode 109 = Scroll_Forward keycode 110 = Insert keycode 111 = Remove altgr control keycode 111 = Boot control alt keycode 111 = Boot keycode 112 = keycode 113 = keycode 114 = keycode 115 = keycode 116 = keycode 117 = keycode 118 = keycode 119 = keycode 120 = keycode 121 = keycode 122 = keycode 123 = keycode 124 = keycode 125 = keycode 126 = keycode 127 = string F1 = "\033[[A" string F2 = "\033[[B" string F3 = "\033[[C" string F4 = "\033[[D" string F5 = "\033[[E" string F6 = "\033[17~" string F7 = "\033[18~" string F8 = "\033[19~" string F9 = "\033[20~" string F10 = "\033[21~" string F11 = "\033[23~" string F12 = "\033[24~" string F13 = "\033[25~" string F14 = "\033[26~" string F15 = "\033[28~" string F16 = "\033[29~" string F17 = "\033[31~" string F18 = "\033[32~" string F19 = "\033[33~" string F20 = "\033[34~" string Find = "\033[1~" string Insert = "\033[2~" string Remove = "\033[3~" string Select = "\033[4~" string Prior = "\033[5~" string Next = "\033[6~" string F21 = "" string F22 = "" string F23 = "" string F24 = "" string F25 = "" string F26 = "" ----------------------------------------------------------------------------- 6. Informações Adicionais 6.1. Packages Necessárias KBD - Package de manipulação de teclado e fontes de caracteres do Linux. Esta package vem normalmente com o Linux, mas para o caso de a sua distribuição não a possuir eis os endereços onde a poderá obter. Máquina : sunsite.unc.edu por ftp no directorio /pub/Linux/system/Keyboards ou Máquina : tsx-11.mit.edu por ftp no directorio /pub/linux/sources/system o nome do ficheiro a obter será : kbd-0.XX.tar.gz o simbolo XX significa a versão, por exemplo : kbd-0.90.tar.gz será a versão 0.90. 6.2. Versões de software testadas Todas as informacões presentes neste documento foram testadas nas seguintes versões de software: Distribuição Slackware 2.2.0 Linux 1.2.8 Emacs 19.27.1 Xfree 3.1.0 KBD 0.90 (kbd-0.90.tar.gz) 6.3. Termos Especiais: BOOT Processo de arranque da máquina. HOWTO Possiveis traduções seram : "Como é que ...?", "O que é ..." Diréctoria HOME a que se obtem executando "cd <ENTER>". Package ou pacote Conjunto de programas, ficheiros de dados e/ou documentação reunidos segundo um fim e designação comuns. Página de Código Normalmente designada em MSDOS como sendo o binómio FONTES - POSIÇÕES DE CARACTER, sendo por exemplo a Página de código 850 caracterizada por um certo tipo de caracteres (diferentes dos exibidos pela placa gráfica no momento do "boot") e suas posições no teclado (o "c-cedilhado" no sitio certo bem como os "<,- etc"). No Linux o mesmo é obtido através dos comandos setfont e mapscrn. 6.4. Bibliografia Aconselhada Para uma obter uma perspectiva mais geral do que aqui foi discutido, refira-se aos seguintes documentos : · A Página Portuguesa (http://lila.dei.uc.pt/~cjrf/po/) · A Portuguese.FAQ, José Bandeira (http://caravela.di.fc.ul.pt/~jcrp/projectos/port/PortugueseFAQ.html) · Keystroke-HOWTO, Zenon Fortuna (zenon@netcom.com) · The Linux Danish/International HOWTO, Thomas Petersen (petersen@risoe.dk) · German-HOWTO, Thomas Ploss (plossts@cip.mathematik.uni-stuttgart.de · Linux Keyboard Setup Mini-Howto, Stephen Lee (sl14@cornell.edu) · ISO 8859-1 National Character Set FAQ, Andries Brouwer (aeb@cwi.nl) A ultima versão deste documento poderá sempre ser encontrada no URL: http://caravela.di.fc.ul.pt/~jcrp/projectos/port/PORTUGUESE-HOWTO.html 6.5. Futuro Futuras adições a este documento : · Melhorar a configuração do Emacs e LEmacs · Adicionar informações sobre o sistema de janela X · Adicionar a analise do pacote RECODE 7. Agradecimentos, Nota de Direitos de Autor e Responsabilidade Este HOWTO tem como autor João Carlos Rodrigues Pereira e é baseado em documentação escrita por José Bandeira além dos restantes HOWTO's do Linux. Sendo distribuído de acordo com as condições cumuns a todos os restantes HOWTO's. 7.1. Termos e Condições: Os documentos HOWTO do Linux podem ser reproduzidos e distribuídos em todo ou em parte, segundo qualquer meio físico ou electrónico, desde que, esta Nota de Direitos de Autor se mantenha intacta em todas as cópias dos mesmos. A distribuição comercial é autorizada e encorajada, no entanto, o autor gostaria de ser notificado de tais ocorrências. Todas as traduções, trabalhos derivados, ou trabalhos agregando qualquer dos documentos HOWTO do Linux deverá estar abrangido por esta Nota de Direitos de Autor. Ou seja, não poderá ser imposta qualquer restrição adicional a trabalhos efectuados a partir de um dos documentos HOWTO do Linux nomeadamente no que diz respeito á sua distribuição. Excepções a estas regras poderam ser obtidas. Para tal, deverá contactar o coordenador dos documentos HOWTO do Linux no endereço abaixo indicado. Greg Hankins, greg.hankins@cc.gatech.edu 7.2. Nota de responsabilidade Embora se tenha tomado o maior cuidadeo, para que as informações contidas neste documento sejam o mais correctas possivel, nem o Autor nem qualquer dos seus colaboradores é responsável pela utilização das informações contidas neste documento.: 7.3. Agradecimentos Deixo aqui os meus agradecimentos a todos os que de alguma forma me ajudaram quer através das suas sugestões quer através de contribuições de outro tipo. Em special a: Carlos Ferreira Pela luta que trava pela defesa da lingua portuguesa, bem patente na sua Página Portuguesa disponivel no URL: http://lila.dei.uc.pt/~cjrf/po/ João C. Silva Pelo apoio e incentivo e criticas (bem como por me deixar testar os meus conhecimentos no SEU computador). José Bandeira Autor dos ficheiros port.map e xmodmap. Pelo seu apoio e por ter escrito alguma da documentação mais elucidativa que eu já li sobre o assunto. EOT. - --- END Linux Portuguese HOWTO part 1/1 ---