Saludos habrazhitel!
Hace mucho tiempo, se necesitaba un traductor multilingüe en línea con un navegador cerrado.
No, no desdeño usar el diccionario en casos "especialmente difíciles", pero a veces tengo que leer un texto bastante grande y no sé todas las palabras, como resultado el contexto se pierde.

Al principio había un traductor-shell ...
La cosa de Traducir-shell es bastante conveniente, especialmente si escribe, por ejemplo, en Vi / vim . Cambie a la siguiente consola y traduzca.
Las teclas son simples y fáciles de recordar.
$ trans -b -e yandex -t en " ." Simple keys. $ echo -e "\n .\n"|trans -b -e yandex -t en With redirection.
Pero esto, como siempre, no fue suficiente. Yo quería gráficos.
Trabajar en SublimeText y Zeal es algo más conveniente que una consola simple .

Hmm ... Pensé, pensé, y decidí fijar el traductor a una tecla de acceso rápido.
La elección recayó en gxmessage . Zenity no me convenía, no recuerdo por qué.
El código fue escrito:
Y asignado a Ctrl + 1. En IceWm, esto es fácil. Editar $ HOME / .icewm / keys
key "Ctrl+1" $HOME/progs/trans.sh
Me convino por un tiempo. Para "controlar + 1" del inglés, "controlar + 2" al inglés. Esta bien ...

Pero entonces el traductor comenzó a fallar.

No sé qué pasó con los desarrolladores, pero realmente me molestó.
Decidí, tiempo, no he escrito en Python por mucho tiempo.
Una breve búsqueda en Google me llevó a Yandex.API , Python y GTK + 3 como módulo gi .
¿Por qué gi , porque generalmente escribía en PyQt5 ? Funciona mucho más rápido en mi auto. La máquina no es nueva, la memoria tampoco (según los estándares modernos) no está tan caliente.

El módulo python GTK + 3 era nuevo para mí. Pasé toda una noche clasificando la sintaxis en los sitios una , dos y tres .
Como resultado, tengo un traductor automático en una tecla de acceso rápido.
Gracias a todos por su atención.
El proyecto está completamente en github .
PD: Estaré encantado de criticar el código.