Jan 18, 2011

Escribiendo en Japones en ArchLinux y KDE

En este tutorial vamos a ver como habilitar la escritura en japones en Archlinux, tanto en aplicaciones Qt como GTK.
Aclaro antes que nada que este tutorial es pura y exclusivamente para KDE, ya que aplicaremos algunas optimizaciones especiales para una mejor integración con el escritorio, como diálogos de configuración en Qt y un plasmoide que nos indica el sistema de escritura que estamos utilizando.
No me pregunten como sería para otros entornos porque no tengo NPI :/
Este tutorial es una pequeña variante del tutorial que figura en la Wiki de Arch.
Primero comenzamos instalando las fuentes para ver correctamente los caracteres japoneses, y el ABS (Arch Build System), si o si necesitan tener previamente instalado y configurado yaourt.
yaourt -S otf-ipafont otf-takao ttf-vlgothic ttf-umeplus ttf-ipa-mona ttf-monapo abs
Luego actualizamos ABS, y copiamos la carpeta que contiene los PKGBUILD de UIM a nuestro home.
sudo abs
cp -R /var/abs/extra/uim ~/sources/
Luego, abrimos el archivo, ~/sources/PKGBUILD, y veremos algo como esto:
# $Id: PKGBUILD 105166 2011-01-07 10:28:07Z bisson $
# Maintainer: damir <damir@archlinux.org>

pkgname=uim
pkgver=1.6.1
pkgrel=1
pkgdesc='Multilingual input method library'
arch=('i686' 'x86_64')
url='http://code.google.com/p/uim/'
license=('custom')
depends=('m17n-lib' 'ncurses' 'gtk2')
makedepends=('pkg-config' 'gettext' 'intltool' 'gnome-panel' 'anthy')
optdepends=('gnome-panel: for using the GNOME applet')
options=('!libtool')
install=uim.install
source=("http://uim.googlecode.com/files/${pkgname}-${pkgver}.tar.bz2"
        'uim-home.patch')
sha1sums=('412bb2df6041185084e2f64fb73357389bf992b5'
          'dbcf90f3ea246c5723d715e0935072baa9364cd2')

build() {
  cd "${srcdir}/${pkgname}-${pkgver}"

  # makechrootpkg runs build() as "nobody", which has HOME=/
  # However, UIM's make needs $HOME to be writable.
  patch -p0 < ../uim-home.patch
  export HOME="`pwd`"

  ./configure --prefix=/usr --libexecdir=/usr/lib/uim \
    --with-anthy-utf8
  make
}

package() {
  cd "${srcdir}/${pkgname}-${pkgver}"
  make DESTDIR="${pkgdir}" install
  install -D -m644 COPYING "${pkgdir}/usr/share/licenses/${pkgname}/COPYING"
}
Y modificamos:
depends=('m17n-lib' 'ncurses' 'gtk2')
makedepends=('pkg-config' 'gettext' 'intltool' 'gnome-panel' 'anthy')
optdepends=('gnome-panel: for using the GNOME applet')
Por:
depends=('m17n-lib' 'ncurses')
makedepends=('pkg-config' 'gettext' 'intltool' 'anthy' 'cmake' 'automoc4')
optdepends=()
Y:
  ./configure --prefix=/usr --libexecdir=/usr/lib/uim \
    --with-anthy-utf8
Por:
  ./configure --prefix=/usr --libexecdir=/usr/lib/uim \
    --with-anthy-utf8 \
    --disable-gnome-applet \
    --with-qt4 \
    --with-qt4-immodule \
    --enable-kde4-applet
Con lo que habremos eliminado todas las dependencias con GTK.
Lo que nos quedaría:
# $Id: PKGBUILD 90257 2010-09-09 23:38:53Z bisson $
# Maintainer: damir <damir@archlinux.org>

pkgname=uim
pkgver=1.6.0
pkgrel=2
pkgdesc='Multilingual input method library (compiled with KDE 4 plasmoid enabled and no GTK)'
arch=('i686' 'x86_64')
url='http://code.google.com/p/uim/'
license=('custom')
depends=('m17n-lib' 'ncurses')
makedepends=('pkg-config' 'gettext' 'intltool' 'anthy' 'cmake' 'automoc4')
optdepends=()
options=('!libtool')
install=uim.install
source=("http://uim.googlecode.com/files/${pkgname}-${pkgver}.tar.bz2"
        'uim-home.patch')
sha1sums=('d27f2ca8136da0702c82f0522911d06b2b8f8ea7'
          'dbcf90f3ea246c5723d715e0935072baa9364cd2')

build() {
  cd "${srcdir}/${pkgname}-${pkgver}"

  # makechrootpkg runs build() as "nobody", which has HOME=/
  # However, UIM's make needs $HOME to be writable.
  patch -p0 < ../uim-home.patch
  export HOME="`pwd`"

  ./configure --prefix=/usr --libexecdir=/usr/lib/uim \
    --with-anthy-utf8 \
    --disable-gnome-applet \
    --with-qt4 \
    --with-qt4-immodule \
    --enable-kde4-applet
  make
}

package() {
  cd "${srcdir}/${pkgname}-${pkgver}"
  make DESTDIR="${pkgdir}" install
  install -D -m644 COPYING "${pkgdir}/usr/share/licenses/${pkgname}/COPYING"
}
finalmente instalamos el paquete modificado de UIM, y actualizamos los plasmoides.
cd ~/sources
makepkg -s -i
kbuildsycoca4
Ahora debemos crear el archivo ~/.xprofile y dentro debemos colocar esto:
export GTK_IM_MODULE='uim'
export QT_IM_MODULE='uim'
export QT4_IM_MODULE='uim'
uim-xim &
export XMODIFIERS=@im='uim'

export OOO_FORCE_DESKTOP=kde
Con esto ya tenemos configurado el método de entrada para escribir en japones, recuerden reiniciar las X's después de esto. Ahora tenemos que agregar el idioma japones a nuestro sistema, y otra vez recurrimos a la Wiki de Arch.
Para habilitar el idioma japones, editamos el archivo /etc/locale.gen y descomentamos la linea que dice ja_JP.UTF-8 UTF-8, quedando algo así:
...
#iu_CA UTF-8
#iw_IL.UTF-8 UTF-8
#iw_IL ISO-8859-8
#ja_JP.EUC-JP EUC-JP
ja_JP.UTF-8 UTF-8
#ka_GE.UTF-8 UTF-8
#ka_GE GEORGIAN-PS
#kk_KZ.UTF-8 UTF-8
#kk_KZ PT154
...
Ahora ejecutamos el comando:
sudo locale-gen
Ahora solo nos queda agregar el idioma japones a KDE y LibreOffice, para eso podemos instalar los siguientes paquetes:
yaourt -S kde-l10n-ja libreoffice-ja
Luego vamos a systemsettings->Local->País/región e idioma->Configuraciones locales->Agregar idioma japones.
Si queremos cambiar el idioma de nuestro sistema, vamos al mismo lugar, seleccionamos japones, lo subimos al primer lugar y Aplicar, y editamos el archivo /etc/rc.conf, veremos algo como esto:
...
LOCALE="es_AR.UTF-8"
HARDWARECLOCK="localtime"
TIMEZONE="America/Argentina/Cordoba"
KEYMAP="la-latin1"
CONSOLEFONT="lat9w-16"
CONSOLEMAP=
USECOLOR="yes"
...
Y lo cambiamos por:
...
LOCALE="ja_JP.UTF-8"
HARDWARECLOCK="localtime"
TIMEZONE="America/Argentina/Cordoba"
KEYMAP="la-latin1"
CONSOLEFONT="lat9w-16"
CONSOLEMAP=
USECOLOR="yes"
...
Y ejecutamos el comando sudo locale-gen y reiniciamos el equipo.
Si queremos ver que sistema de escritura estamos utilizando, Vamos al icono de Plasma->Desbloquear elementos gráficos->Añadir elementos graficos->Buscamos y agregamos el plasmoide uim.


Para activar y desactivar la escritura en japones basta con hacer click en cualquier caja de texto y luego presionamos SHIFT+ESPACIO, cuando estemos editando la palabra, aparecera subrayada y al presionar una sola vez la tecla espacio se transformara automaticamente a la conbinación de kanjis y kanas mas cercana, si precionamos nuevamente ESPACIO podremos elegir dentro de una lista de conbinaciones posibles.

Para terminar de editar la palabra presionamos ENTER. Para escribir el Chouon (alargue de vocal en katakana) se usa el signo - (menos).
Lo mejor de todo es que funciona perfectamente tanto para aplicaciones Qt como GTK.


Y aquí la info para que se note que es Arch ;)


Y un ultimo tip, si quieren buscar algo en japones y obtener exactamente los mismos resultados que si estubieran parados en Japon, pueden usar Google Japan ;).
Listo, con todo esto ya pueden disfrutar de una maquina digna de todo otaku, ガンバレ!!! ;)

2 comments: