Soporte plurilingüe

De Guía Ubuntu
Saltar a: navegación, buscar

En esta página se explica cómo activar soporte plurilingüe en Ubuntu con el fin de conseguir introducir texto en idiomás con diferente distribución de teclado, alfabeto o sistema de escritura.

Activar distribuciones de teclado

Podemos configurar Ubuntu para que cambie el teclado en uso con un par de clics. Este método es útil para lenguas con diferentes distribuciones de teclado (francés, noruego, etc.) o diferentes alfabetos (cirílico, griego, etc.)

  1. Ir a Sistema > Preferencias > Teclado, en la pestaña Distribuciones hacemos clic en Añadir y elegimos la distribución que más nos convenga para la lengua que necesitemos. Desafortunadamente, la previsualización de distribuciones de teclados de este diálogo está rota en Edgy, por lo que deberemos conocer de antemano las disposición de las teclas o buscar una referencia graáfica en internet.
  2. Hacer clic con el botón derecho en cualquiera de los paneles de Ubuntu y seleccionar Añadir al panel..., en el apartado Utilidades hemos de seleccionar el Indicador del teclado. Esto nos creará un icono en el panel que nos informará del idioma del teclado en uso y nos permitirá cambiar entre las distribuciones instaladas.

Crear distribuciones de teclado personalizadas

En algunas ocasiones podemos encontrarnos en la tesitura de querer utilizar regularmente ciertos símbolos que no están en nuestro teclado sin tener que cambiar totalmente de teclado, por ejemplo añadiendo signos diacríticos para escribir el pinyin chino (ǎ,ā,ě...) o ciertas letras de algunos alfabetos latinos (æ, ø, å...). Esto podemos hacerlo modificando un teclado ya existente según nos convenga. Modificar esta parte del sistema se recomienda sólo a usuarios que no tengan miedo a equivocarse.

Los mapas de los teclados se almacenan en /etc/X11/xkb/symbols/. Como no parece haber una manera de crear nuevas distribuciones hemos de elegir entre modificar la predeterminada (en nuestro caso, probablemente, 'es' de español) o modificar alguna otra distribución de teclado que no vayamos a usar (por ejemplo 'fr', de francés). En el ejemplo siguiente modificaremos la estructura del mapa 'es' para conseguir introducir los símbolos del pinyin:

1. Desde el Navegador de archivos (Aplicaciones > Accesorios > Navegador de archivos), hacemos una copia de /etc/X11/xkb/symbols/es y la guardamos en un lugar seguro por si tuvieramos problemas. Así podremos restaurar los valores predeterminados simplemente recolocando este archivo en su lugar.

2. Abrimos /etc/X11/xkb/symbols/es con el siguiente comando:

sudo gedit /etc/X11/xkb/symbols/es

3. Vamos a la sección adecuada, en este caso, probablemente la sección 'basic'. Pondrá algo así (y muchas cosas más):

partial alphanumeric_keys
xkb_symbols "basic" {

4. Añadimos o modificamos una línea especificando el código de tecla (nombre de la tecla) y los símbolos (el resultado de pulsar la tecla). Es posible especificar hasta cuatro símbolos por tecla:

  1. Tecla
  2. Shift + tecla
  3. AltGr + tecla
  4. AltGr + Shift + tecla

Más abajo se puede encontrar un enlace a archivos con listas de códigos y símbolos de un hilo de ubuntuforums.org, referenciado al final de esta página. En ese mismo mensaje se pueden ver imágenes de teclados con los nombres de teclas más comunes.

Ejemplo de línea:

key <BKSL> { [dead_acute, dead_grave, dead_macron, dead_caron] };

Esto hace que la tecla llamada 'BKSL' produzca:

Tecla + vocal: ´ áéíóú (primera posición en la línea: 'dead_acute')
Tecla + Shift + vocal: ` àèìòù (segunda posición en la línea: 'dead_gave')
AltGr + tecla + vocal: ¯ āēīōū (tercera posición en la línea: 'dead_macron')
AltGr + Shift + tecla + vocal: ˇ ǎěǐǒǔ (cuarta posición en la línea: 'dead_caron')

Así tenemos los cuatro tonos del pinyin en una sola tecla, sintético, pero no muy útil. Cada símbolo puede distribuirse como sea más cómodo para cada usuario, distribuyendo los tonos en diferentes teclas con diferentes modificadores (los modificadores son las diferentes teclas que modifican el resultado: Shift, AltGr y Shift + AltGr).

La u con diéresis (ü) se consigue con el símbolo 'udiaeresis', también se puede usar una dead_key (las que se pueden aplicar a varias letas añadiendo acentos u otros diacríticos, como los acentos y la diéresis del teclado español) con la que se podrán producir: äëïöüẅTẗÿḧẍ...

Como acabamos de señalar los acentos agudos y graves, así como la diéresis ya están disponibles en el teclado español, por lo que no tendremos que reasignarlos (a menos que queramos).

Activar sistemas de escritura compleja (CJK)

Para escribir en idiomas con sistemas de escritura compleja necesitaremos algo más que un simple cambio de teclado, necesitaremos hacer uso de SCIM (Método de entrada común inteligente), un programa que nos permitirá introducir los caracteres de origen chino, los kanas japoneses y el hangul koreano.

1. Activar repositorios siguiendo las instrucciones para activar repositorios extra.

2. Usando Synaptic instalamos los siguientes paquetes:

anthy
ipafont
ipamonafont
msttcorefonts
scim
scim-chewing
scim-pinyin
scim-config-socket
scim-frontend-socket
scim-gtk2-immodule
scim-server-socket
scim-tables-zh 
scim-anthy 
scim-hangul 
scim-tables-ja 
scim-tables-ko
scim-tables-zh 
scim-uim 
ttf-arphic-ukai
ttf-arphic-uming
ttf-arphic-gbsn00lp
ttf-arphic-gkai00mp
ttf-arphic-bkai00mp
ttf-arphic-bsmi00lp
ttf-dejavu
uim
xfonts-intl-chinese
xfonts-intl-chinese-big

3. Creamos y abrimos el archivo /etc/X11/Xsession.d/75custom-scim_init escribiendo el siguiente comando en una terminal (Aplicaciones > Accesorios > Terminal):

sudo gedit /etc/X11/Xsession.d/75custom-scim_init

Pegamos el siguiente contenido en el archivo y guardamos:

export XMODIFIERS="@im=SCIM"
export GTK_IM_MODULE="scim"
export XIM_PROGRAM="scim -d"
export QT_IM_MODULE="scim"

NOTA: Este paso puede ser omitido en algunos casos añadiendo el comando 'scim -d' a los programas de inicio de sesión en Sistema > Preferencias > Sesiones, en la pestaña Programas de inicio. Si se encuentran problemas se recomienda eliminar el comando de Programas de inicio e intentar el paso número 2.

4. Al reiniciar GNOME, presionando Ctrl + Alt + Retroceso, encontraremos un icono nuevo en el área de notificación. Haciendo clic sobre él aparecerá un menú donde podremos elegir de entre los módulos instalados en el paso 1, el método de entrada deseado. SCIM debería ya ser capaz de introducir texto en chino, japonés y coreano.

En Sistema > Preferencias > Configuración del método de entrada SCIM, podremos establecer ciertas opciones generales (usar el mismo método en todas las ventanas, establecer atajos de teclado para activar, comportamiento de la barra de herramientas de SCIM, etc.), así como opciones de los diferentes módulos (Smart Pinyin, para diferentes tipos de pinyin; Chewing, para Bopomofo, etc.) y la posibilidad de deshabilitar los métodos de entrada que no nos interesen.

Fuentes

En general, al instalar el soporte plurilingüe para Ubuntu suele suceder que no todos los caracteres aparecen en el mismo tipo de letra, o tienen tamaños distintos. Para evitar estos problemas es necesario establecer las preferencias de tipografía manualmente, esto se consigue creando un archivo ~/.fonts.conf . A continuación se muestran archivos de ejemplo para el soporte de chino, japonés y koreano. Los ejemplos provienen de ubuntuforums.org y la wiki oficial de Ubuntu. Cambiando el orden de las líneas se pueden establecer otras preferencias, quizás más adecuadas al gusto del usuario, pero éstas parecen funcionar bastante bien.

NOTA: Es necesario tener instaladas las fuentes listadas para poder hacer uso de ellas. Al final de esta página se puede encontrar una lista con enlaces a fuentes y el modo de instalarlas.

1. Para crear el archivo de configuración hay que ejecutar el siguiente comando en una terminal (Aplicaciones > Accesorios > Terminal):

sudo gedit ~/.fonts.conf

2. A continuación pegaremos en el archivo una de las configuraciones de los apartados siguientes, dependiendo del idioma que más nos interese, y guardaremos el archivo.

3. Reiniciamos GNOME (Ctrl + Alt + Retroceso).

Chino

Contenido de ~/.fonts.conf:

<?xml version="1.0"?>
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<fontconfig>
<match target="font">
<test qual="any" name="family" compare="eq">
<string>AR PL Mingti2L Big5</string>
<string>AR PL SungtiL Big5</string>
<string>AR PL New Sung</string>
<string>AR PL ShanHeiSun Uni</string>
<string>Ming(ISO10646)</string>
<string>MingLiu</string>
<string>PMingLiu</string>
<string>Kochi Mincho</string>
<string>Baekmuk Dotum</string>
</test>
<test name="pixelsize" compare="less_eq">
<double>16</double>
</test>
<edit name="antialias">
<bool>false</bool>
</edit>
<edit name="hinting">
<bool>true</bool>
</edit>
</match>
<alias>
<family>serif</family>
<prefer>
<family>Bitstream Vera Serif</family>
<family>Times New Roman</family>
<family>Times</family>
<family>AR PL New Sung</family>
<family>AR PL ShanHeiSun Uni</family>
<family>AR PL Mingti2L Big5</family>
<family>AR PL SungtiL GB</family>
<family>SimSun</family>
</prefer>
</alias>
<alias>
<family>sans-serif</family>
<prefer>
<family>Bitstream Vera Sans</family>
<family>Arial</family>
<family>Verdana</family>
<family>Helvetica</family>
<family>AR PL New Sung</family>
<family>AR PL ShanHeiSun Uni</family>
<family>AR PL kaitiM Big5</family>
<family>AR PL kaitiM GB</family>
</prefer>
</alias>
<alias>
<family>monospace</family>
<prefer>
<family>Bitstream Vera Sans Mono</family>
<family>Courier New</family>
<family>Courier</family>
<family>AR PL New Sung</family>
<family>AR PL ShanHeiSun Uni</family>
</prefer>
</alias>
</fontconfig>

Japonés

Contenido de ~/.fonts.conf:

<?xml version="1.0"?>
<fontconfig>
<alias>
<family>serif</family>
<prefer>
<family>Times New Roman</family>
<family>MS 明朝</family>
<family>IPAPMincho</family>
<family>Sazanami Mincho</family>
<family>Kochi Mincho</family>
<family>DejaVu Serif</family>
<family>Bitstream Vera Serif</family>
<family>Thorndale AMT</family>
<family>Luxi Serif</family>
<family>Nimbus Roman No9 L</family>
<family>Times</family>
<family>Frank Ruehl</family>
<family>MgOpen Canonica</family>
<family>AR PL SungtiL GB</family>
<family>AR PL Mingti2L Big5</family>
<family>FreeSerif</family>
<family>Baekmuk Batang</family>
</prefer>
</alias>
<alias>
<family>sans-serif</family>
<prefer>
<family>Verdana</family>
<family>MS ゴシック</family>
<family>IPAPGothic</family>
<family>Sazanami Gothic</family>
<family>Kochi Gothic</family>
<family>DejaVu Sans</family>
<family>Bitstream Vera Sans</family>
<family>Arial</family>
<family>Albany AMT</family>
<family>Luxi Sans</family>
<family>Nimbus Sans L</family>
<family>Helvetica</family>
<family>Nachlieli</family>
<family>MgOpen Moderna</family>
<family>AR PL KaitiM GB</family>
<family>AR PL KaitiM Big5</family>
<family>FreeSans</family>
<family>Baekmuk Dotum</family>
<family>SimSun</family>
</prefer>
</alias>
<alias>
<family>monospace</family>
<prefer>
<family>Courier New</family>
<family>MS ゴシック</family>
<family>IPAGothic</family>
<family>Sazanami Gothic</family>
<family>Kochi Gothic</family>
<family>DejaVu Sans Mono</family>
<family>Bitstream Vera Sans Mono</family>
<family>Andale Mono</family>
<family>Cumberland AMT</family>
<family>Luxi Mono</family>
<family>Nimbus Mono L</family>
<family>Courier</family>
<family>Miriam Mono</family>
<family>FreeMono</family>
<family>AR PL KaitiM GB</family>
<family>Baekmuk Dotum</family>
</prefer>
</alias>
<match target="font" >
<edit mode="assign" name="embeddedbitmap" >
<bool>false</bool>
</edit>
</match>
<match target="font" >
<edit mode="assign" name="autohint" >
<bool>true</bool>
</edit>
</match>
</fontconfig>

Coreano

Contenido de ~/.fonts.conf:

<?xml version="1.0"?>
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<fontconfig>
<match target="font">
<test qual="any" name="family">
<string>Gulim</string>
<string>GulimChe</string>
<string>Batang</string>
<string>BatangChe</string>
<string>Dotum</string>
<string>DotumChe</string>
<string>Gungsuh</string>
<string>GungsuhChe</string>
<string>Baekmuk Batang</string>
<string>Baekmuk Dotum</string>
<string>Baekmuk Gulim</string>
<string>Baekmuk Headline</string>
</test>
<test name="pixelsize" compare="more_eq"><int>8</int></test>
<test name="pixelsize" compare="less_eq"><int>14</int></test>
<edit name="antialias" mode="assign"><bool>false</bool></edit>
<edit name="globaladvance"><bool>false</bool></edit>
<edit name="spacing"><int>0</int></edit>
</match>
<alias>
<family>Bitstream Vera Serif</family>
<family>Times</family>
<family>Times New Roman</family>
<family>Nimbus Roman No9 L</family>
<family>Luxi Serif</family>
<family>Kochi Mincho</family>
<family>AR PL SungtiL GB</family>
<family>AR PL Mingti2L Big5</family>
<family>BatangChe</family>
<family>FreeSerif</family>
<default><family>serif</family></default>
</alias>
<alias>
<family>Bitstream Vera Sans</family>
<family>Helvetica</family>
<family>Arial</family>
<family>Verdana</family>
<family>Nimbus Sans L</family>
<family>Luxi Sans</family>
<family>Kochi Gothic</family>
<family>AR PL KaitiM GB</family>
<family>AR PL KaitiM Big5</family>
<family>Gulim</family>
<family>SimSun</family>
<family>FreeSans</family>
<default><family>sans-serif</family></default>
</alias>
<alias>
<family>serif</family>
<prefer>
<family>Bitstream Vera Serif</family>
<family>Times New Roman</family>
<family>Nimbus Roman No9 L</family>
<family>Luxi Serif</family>
<family>Times</family>
<family>Frank Ruehl</family>
<family>Kochi Mincho</family>
<family>AR PL SungtiL GB</family>
<family>AR PL Mingti2L Big5</family>
<family>BatangChe</family>
<family>FreeSerif</family>
</prefer>
</alias>
<alias>
<family>sans-serif</family>
<prefer>
<family>Bitstream Vera Sans</family>
<family>Verdana</family>
<family>Nimbus Sans L</family>
<family>Luxi Sans</family>
<family>Arial</family>
<family>Helvetica</family>
<family>Nachlieli</family>
<family>Kochi Gothic</family>
<family>AR PL KaitiM GB</family>
<family>AR PL KaitiM Big5</family>
<family>Gulim</family>
<family>SimSun</family>
<family>FreeSans</family>
</prefer>
</alias>
<alias>
<family>monospace</family>
<prefer>
<family>Bitstream Vera Sans Mono</family>
<family>Andale Mono</family>
<family>Courier New</family>
<family>Luxi Mono</family>
<family>Nimbus Mono L</family>
<family>Miriam Mono</family>
<family>Kochi Gothic</family>
<family>AR PL KaitiM GB</family>
<family>GulimChe</family>
<family>FreeMono</family>
</prefer>
</alias>
</fontconfig>

Referencias

Fuentes

Las fuentes de Windows se puenden encontrar en los sistemas Windows. También es posible encontrarlas en internet, por ejemplo:

Una vez descargadas es necesario instalarlas, para ello abrimos una terminal (Aplicaciones > Accesorios > Terminal) e introducimos lo siguiente:

sudo nautilus --browser

Esto abrirá el navegador de archivos con permisos de administrador. Ahora copiamos las tipografías descargadas en la carpeta /usr/share/fonts/truetype/msttcorefonts, cerramos el navegador de archivos y, de vuelta en la terminal, actualizamos las tipografías del sistema introduciendo este comando:

sudo fc-cache -f -v