Cómo montar un diccionario inglés→español que funcione sin internet, directo desde la terminal con dict. Ligero (~5MB), sin procesos pesados, y con la lógica de “grep una palabra y te tira el significado” que buscabas.
Quería traducir palabras sueltas sin internet. Se me ocurrió instalar un traductor neuronal offline (argos-translate + torch) pero resultó excesivo: descarga ~1.5GB+ de dependencias (torch + CUDA de NVIDIA) solo por el bundle de traducción de frases. Para un simple diccionario palabra-por-palabra es un desperdicio enorme.
La solución clásica y minimalista: dictd + un diccionario FreeDict en→es.
dictd es el servidor/Cliente de diccionario de la RFC 2229, el estándar UNIX clásico. Trae:
dict — cliente de terminaldictd — el daemon/servidordictfmt — herramientas para construir diccionariosSistema: Arch Linux (pacman).
sudo pacman -S dictd --noconfirm
Esto instala dictd, dict, dict_lookup, dictfmt, etc.
Los diccionarios bilingües (~64.000 entradas) vienen de FreeDict en formato dictd. En Arch oficial no hay paquete para el en-es (solo correctores aspell/hunspell, que no traducen), así que se descarga manualmente.
# Crear dir con permisos de escritura para tu usuario
# (yo uso /mnt/arch porque es donde tengo espacio)
sudo mkdir -p /mnt/arch/dicts && sudo chown $USER:users /mnt/arch/dicts
cd /mnt/arch/dicts
curl -LO "https://download.freedict.org/dictionaries/eng-spa/2025.11.23/freedict-eng-spa-2025.11.23.dictd.tar.xz"
tar -xJf freedict-eng-spa-2025.11.23.dictd.tar.xz
Esto deja dos archivos clave en eng-spa/:
eng-spa.dict.dz — los artículos comprimidoseng-spa.index — índice palabra→offsetAgregá la base de datos al config (/etc/dict/dictd.conf), antes de #LASTLINE:
sudo cp /etc/dict/dictd.conf /etc/dict/dictd.conf.bak # backup
sudo sed -i 's|#LASTLINE|database eng-spa { data "/mnt/arch/dicts/eng-spa/eng-spa.dict.dz" index "/mnt/arch/dicts/eng-spa/eng-spa.index" }\n#LASTLINE|' /etc/dict/dictd.conf
sudo systemctl start dictd
sudo systemctl enable dictd # para que arranque solo al boot
dict hello
# 1. hola, buenas tardes, buenos días, qué tal
dict dog
# 1. perro, can, pichicho, tuso
dict house
# 1. casalicio, casa
Devuelve la pronunciación, la categoría gramatical y todas las traducciones con contexto. Todo local, cero internet, cero telemetría.
Si no querés correr un servicio, el .index ya es un archivo de texto plano con el formato palabra\toffset\tlongitud:
grep -i "^hello" /mnt/arch/dicts/eng-spa/eng-spa.index
El diccionario de texto descomprimido se puede extraer con dictunformat para hacer grep directo sobre las definiciones. Pero dict es más cómodo.
Para traducir frases completas con gramática sí amerita un modelo tipo marian/argos. Para mirar el significado de una palabra suelta:
| Opción | Tamaño | Sirve para |
|---|---|---|
| dictd + FreeDict | ~5MB | Palabras sueltas, grep |
| argos-translate + torch | ~1.5GB+ | Frases, gramática |
Si tu uso es “¿qué significa esta palabra?”, quedate con dictd. Es la filosofía Unix: una herramienta chica que hace una sola cosa bien.