sexta-feira, 16 de janeiro de 2009

Como escrever em japonês no linux

Assim como muitos, (na verdade, acho que são poucos) eu ando aprendendo japonês devagarinho através da Internet, catando um material aqui, outro acolá e tal. Conseguir digital japonês no computador é uma coisa que ajuda bastante. No Windows Xp, acho que boa parte do pessoal consegue. Mas eu sempre tive uma dorzinha de cabeça em fazer isso funcionar no Linux, porque, como sabemos, no linux as coisas são um pouco mais complicadas por conta de que não temos um sistema com tudo unificado como é no Windows. Cada coisa no sistema é um programa e não ta tudo exatamente interligado. Daí tem que se caçar direitinho como se funcionam as coisas, mas com um pouco de fé tudo se resolve.
Pra se digitar japonês em linux, precisa-se de:

  • Um X Input Method, ou xim para os íntimos. Como sabemos, o X é o servidor gráfico dos unixes, ou seja, o programa responsável por fazer com que o ambiente gráfico exista. O input method, é um programa responsável por fazer a "injeção" de caracteres dentro do servidor X, assim como temos o IME pra Windows.
  • Uma engine (um backend) de conversão para o xim. Pode-se instalar alguns ao invés de um, e trocar entre um e outro durante a digitação.
  • Tabelas de conversão de caracteres para o(s) backends de conversão.
  • Um "switch engine" pra trocar entre os backends.
Em geral, usando-se os gerenciadores de pacotes de sua distro preferida, isto implica em escolher uns três ou quatro pacotes e o resto vem sozinho como dependencias. Existem uma meia dúzia de xim's disponíveis por aí, tais quais: Nicolatter, kinput2, xcin, scim. Utilizarei aqui o Scim. Ele tem a vantagem de suportar vários backends e/ou vários idiomas de entrada. O kinput2 por exemplo só serve pra japonês. Com o Scim, pode-se escrever em japones, coreano, chines e mais outros tantos idiomas. O melhor backend de conversão pra japonês que eu achei foi o Anthy. Muito embora eu tenha instalado aqui o Anthy e mais o Canna e SKK e você pode conviver harmoniosamente com todos eles. Instalei ainda as tabelas que tem o nome de scim-tables-ja. Existem ainda outras tabelas pra outros idiomas. Em resumo, pra conseguir uma instalação funcional pra Kde e Gnome, é suficiente instalar:

  • scim
  • scim-anthy
  • anthy
  • scim-tables-ja
  • im-switch
  • skim
O scim instala por padrão um frontend para gnome afim de realizar suas configurações. Ele fica como um icone no tray do sistema.O skim, é o frontend para Kde equivalente. Taí o iconezinho do gnome

Ele muda para o icone do backend asssim que vc ativar a escrita pelo scim, coisa que normalmente é feita pelo atalho ctrl+space. Mas isso será exposto depois, porque agora vem a parte chata.


Para que funcione a contento, é necessário dizer ao X que ele deve usar um xim. Isto é feito normalmente adicionando-se algumas linhas a algum arquivo de configuração de inicialização do X. Eu tive a oportunidade de fazê-lo em duas distribuições. Usando opensuse 11.1 (acho que a partir da versão 9 em diante já é assim) bastou-me editar o arquivo ~/.profile e adicionar a seguinte linha

export INPUT_METHOD=scim

já no debian e outros, esse arquivo de configuração muda e em geral devem ser adicionadas mais linhas. Aqui por exemplo diz como se faz a configuração no ubuntu. Este outro link dá instruções para o mandriva. Mas a página em si é bastante interessante pra qualquer um por indicar o processo de forma meio genérica, em especial nesta parte de "environmental variables" que tem as variáveis de ambiente que a maioria das distros usa. Pra fazer o sistema funcionar no debian, devo dizer que não pude muito me c
onfiar no google. Foi difícil saber como é que era e foi mais por fuçação e experimentação. Mas descobri que no debian existia já as linhas que eu queria em determinado arquivo que fica em /etc/X11/xinit/xinput.d/ja_JP. O problema é que o debian não lia isso porque ele sempre lê um arquivo deste mesmo diretório, só que chamado "default". Então, o mais prático neste caso é renomear o arquivo default pra um outro nome qualquer, e depois copiar o arquivo ja_JP pra default. Isso se resume a essas poucas linhas no terminal

># cd /etc/X11/xinit/xinput.d/
>#mv default default.bak

>#cp ja_JP default

Obviamente, deves estar como root pra fazer isso. Depois disso, basta reiniciar o X e se tudo deu certo, o incone que postei ai em cima deve aparecer em seu icon tray. Daí agora, podes experimentar abrir um gedit ou kwrite e pressionar ctrl+espaço e digitar seus primeiros hiraganas. Clicando com o botao esquerdo do mouse sobre o ícone do scim, pode-se escolher entre os vários idiomas de entrada ou backends de conversão. Clicando-se com o botão direito, pode-se configurar dentre outras coisas, os atalhos de teclado
para as funções do scim. Pode-se por exemplo mudar as teclas de ativação (em trigger) e o que faz mudar de engine (Next input Method).
Usando-se o anthy, pode-se ainda criar atalhos para trocar de katakana pra hiragana e vice-versa (indo naquela aba alí do anthy). E como no windows, digitando qualquer coisa e pressionando a barra de espaço, ele faz a conversão dos caracteres em kanjis, com direito a escolha de candidatos. A entrada default e em hiragana, mas pressionando-se F7 muda-se o que ta escrito pra katakana.
Bem, é isso aí! Espero que tenha sido de alguma valia. Para maiores detalhes:
  • http://www.h4.dion.ne.jp/~apricots/scim-anthy/howto.html
  • http://www.scim-im.org/
  • www.google.com.br