Cómo Crear un Diccionario Online con Dico en Linux

Un diccionario online es un servicio que proporciona definiciones de palabras a través de Internet.

A diferencia de los diccionarios web, los servidores DICT (protocolo de diccionario) son ligeros, flexibles y se pueden personalizar, lo que los hace perfectos para quienes desean alojar su propio servidor de diccionario en casa.

Además, son fáciles de configurar y puedes integrarlos con editores de texto como GNU Emacs, ¡lo que te permite consultar definiciones directamente desde tu entorno de trabajo! ️

Instalando GNU Dico ️

Para comenzar con tu servidor de diccionario usando Dico, primero debes instalar las dependencias necesarias. Abre una terminal y ejecuta:

sudo apt install wget gcc make m4 m4-doc python3 libltdl-dev libdico2 zlib1g-dev

Una vez que tengas las dependencias, descarga el código fuente de GNU Dico:

wget https://ftp.gnu.org/gnu/dico/dico-2.11.tar.xz

Extrae el archivo descargado:

tar xvJf ./dico-2.11.tar.xz

Entra en el directorio extraído:

cd ./dico-2.11

Ejecuta el script de configuración:

./configure

Compila e instala Dico:

make
sudo make install

¡Ya tienes la base de tu servidor de diccionario instalada!

Obteniendo una Base de Datos de Diccionario Online

Ahora que tienes Dico instalado, necesitas una base de datos de diccionario. Una opción excelente es el GNU Collaborative International Dictionary of English (GCIDE).

Es gratis, de código abierto y tiene definiciones que datan de 1913. Puedes descargarlo con:

wget ftp://ftp.gnu.org/gnu/gcide/gcide-0.53.tar.xz

Extrae el archivo:

tar xvJf ./gcide-0.53.tar.xz

Cópialo a tu sistema:

sudo cp -rv ./gcide-0.53 /usr/local/share/

¡Ya tienes la base de datos lista para tu servidor!

Configurando y Ejecutando GNU Dico ⚙️

En este punto, puedes ejecutar el comando básico de Dico para verificar si todo funciona:

dico

Pero antes de que funcione correctamente, necesitas ajustar algunas configuraciones. Ve a:

cd /usr/local/etc/

Crea un archivo de configuración:

sudo touch ./dicod.conf

Ábrelo con un editor de texto:

sudo nano ./dicod.conf

Añade el siguiente contenido para configurar el servidor (usando la base de datos GCIDE que acabas de descargar):

capability (mime,xversion);
timing yes;
pidfile /var/run/dicod/dicod.pid;
module-load-path ("/usr/local/lib/dico");

load-module gcide;
database {
   name "gcide";
   handler "gcide dbdir=/usr/local/share/gcide-0.53 suppress-pr";
   languages-from "en";
   languages-to "en";
}

user dicod;
max-children 18;
inactivity-timeout 5;

server-info <<EOT
Este es un servidor Dico.
EOT;

Guarda y cierra el archivo (Ctrl + O, luego Ctrl + X). Ahora, ejecuta el servidor Dico:

sudo dicod --foreground

En una nueva terminal, prueba el servidor escribiendo:

dico

Luego escribe .open localhost para conectarte a tu servidor. ¡Prueba buscando cualquier palabra para ver las definiciones!

Configurar GNU Dico para Iniciar Automáticamente al Arrancar ⚡

Si quieres que tu servidor Dico se inicie automáticamente cuando arranque tu sistema, crea un servicio de systemd:

touch personal-dicod.service

Edita el archivo:

nano personal-dicod.service

Añade la siguiente configuración:

[Unit]
Description=Un servicio básico de GNU Dico Daemon

[Service]
ExecStart=/usr/local/bin/dicod -f --stderr

[Install]
WantedBy=multi-user.target

Copia el archivo del servicio al directorio de systemd:

sudo cp ./personal-dicod.service /etc/systemd/system/

Crea el directorio necesario para Dico:

sudo mkdir /run/dicod
sudo chown -R dicod:dicod /run/dicod

Recarga systemd:

sudo systemctl daemon-reload

Habilita y arranca el servicio:

sudo systemctl enable personal-dicod.service
sudo systemctl start personal-dicod.service

¡Ahora tu servidor Dico se iniciará automáticamente al arrancar!

Vinculando GNU Dico a GNU Emacs

Si prefieres integrar el diccionario en tu editor de texto, puedes vincular Dico a GNU Emacs usando el paquete dictionary.el.

En Emacs, presiona Alt + X y luego escribe:

package-install

Busca “dictionary” e instálalo. Luego, personaliza la configuración del diccionario escribiendo:

customize-variable

Busca dictionary-server y ponlo como localhost.

Después de guardar los cambios, ahora podrás buscar palabras directamente en Emacs usando Alt + X y dictionary-search. ️


¡Ahora tienes un servidor de diccionario completamente funcional y autoalojado!

Bien sea para uso personal o como integración con herramientas como Emacs, Dico ofrece una solución flexible y poderosa, ¡Disfruta de tu nuevo diccionario en Linux!