Construir un diccionario de nombres científicos para LibreOffice

LibreOffice solamente conoce como se escriben unos pocos nombres científicos, y mientras más nombres científicos se usen en un documento de Writer, más páginas se llenan de serpenteante subrayado rojo – indicando palabras mal escritas o no reconocidas. Es posible agregar nombres científicos al revisor ortográfico de LibreOffice usando el diálogo de revisión de la aplicación, pero solamente una palabra a la vez.

Nombres no reconocidos

¿Hay una manera más sencilla? Sí. Este artículo explica como ahorrar mucho tiempo y esfuerzo agregando cientos de nombres científicos al revisor gramatical de una sola vez.

Agregando palabras, la manera lenta

El revisor gramatical en LibreOffice es un módulo llamado hunspell. Cuando hunspell halla una palabra que no conoce brinda la opción de agregarla a un diccionario especial definido por el usuario (imagen 2) en su directorio home. En mi Debian tengo LibreOffice 3.6.1 y las palabras se almacenan en ~/.config/libreoffice/3/user/wordbook/standard.dic.

Sin embargo, LibreOffice también permite construir diccionarios personalizados. En cualquier ventana de  LibreOffice, basta con ir a Herramientas » Opciones » Configuración de idioma » Asistencia a la escritura y hacer clic en el botón ‘Nuevo’ a la derecha de ‘Diccionarios definidos por el usuario’. Una ventana se abre (imagen 3) donde es posible dar un nombre al nuevo diccionario, luego hacer clic en ‘Aceptar’ para crearlo (imagen 4).

He llamado a mi diccionario de nombres científicos ‘nombres’ (no muy original!). El archivo se denomina nombres.dic y está alojado en ~/.config/libreoffice/3/user/wordbook/, junto al diccionario definido por el usuario, standard.dic.

Agregando palabras, la manera rápida

Los nombres científicos que quería en mi diccionario nombres ya estaban en una hoja de cálculo, un nombre por celda. Los copie directamente a un archivo de texto plano, nombres.txt, de modo que cada nombre ocupaba una linea (imagen 6). Había muchos duplicados, pero esto desaparecería pronto (ver abajo).

A hunspell en LibreOffice le gustan listas de palabras en orden alfabético, aquellas en mayúsculas primero, y sin duplicados. Para mantener contento a hunspell, abrí una terminal, navegué a la carpeta donde estaba  nombres.txt e ingresé los siguientes comandos:

export LC_ALL=C
sort nombres.txt | uniq > nombres_final.txt

La primer sentencia evita un problema relacionado al comando sort que mezcla lineas en mayúsculas y minúsculas. Con la variable de entorno LC_ALL establecida a ‘C’, el comando sort ordena nombres en mayúsculas primero, luego los que están en minúsculas. El resultado de la ordenación fue ‘entubado’ al comando uniq, que se encargó de remover cualquier duplicado y escribir la lista de 600+ nombres científicos únicos en nombres_final.txt (imagen 7).

Pensamientos finales

Aún agrego nombres científicos al revisor ortográfico de LibreOffice, pero lo hago de cuando en cuando a través del diálogo de Revisión ortográfica. Cuando hago clic en el botón ‘Agregar’ (imagen 1) la lista desplegable de diccionarios incluye ‘nombres’, y agrego el nombre allí. Luego LibreOffice inteligentemente inserta el nuevo nombre en su correcta posición alfabética en nombres.dic. También puedo modificar un nombre científico de mi diccionario ‘nombres’ usando la función ‘Editar’, eliminando y volviendo a ingresarlo.

Si construye un diccionario de palabras especiales como lo he hecho y lo coloca en su directorio, no estará disponible para otro usuario. Para disponibilizar su diccionario de manera más amplia, considere crear y subir una extensión de diccionario para LibreOffice; las instrucciones para hacer esto se encuentran en el repositorio oficial de extensiónes.

Adaptado a partir del artículo publicado en Free Software Magazine por Bob Mesibov