Greetings habrazhitel!
Quite a long time ago there was a need for a multilingual online translator with a closed browser.
No, I don’t disdain to use the dictionary in “especially difficult” cases, but sometimes I have to read a rather big text, and not all words I know how the context is lost.

At the beginning there was a translate-shell ...
The Translate-shell thing is quite convenient, especially if you write, say, in Vi / vim . Switch to the next console and translate.
The keys are simple and easy to remember.
$ trans -b -e yandex -t en " ." Simple keys. $ echo -e "\n .\n"|trans -b -e yandex -t en With redirection.
But this, as usual, was not enough. I wanted graphics.
Working in SublimeText and Zeal is somewhat more convenient than a bare console.

Hmm ... Thought, thought, and decided to fasten the translator to a hot key.
The choice fell on gxmessage . Zenity did not suit me, I don’t remember why.
The code was written:
And assigned to Ctrl + 1. In IceWm, this is easy. Edit $ HOME / .icewm / keys
key "Ctrl+1" $HOME/progs/trans.sh
It suited me for a while. To "control + 1" from English, "control + 2" to English. Good...

But then the translate-shell started to fail.

I don’t know what happened to the developers, but it really upset me.
I decided it’s time, I haven’t written in python for a long time.
A short Google search led me to Yandex.API , Python, and GTK + 3 in the form of a gi module.
Why gi , because you usually wrote in PyQt5 ? It works much faster on my car. The machine is not new, memory, too (by modern standards) is not so hot.

The GTK + 3 module for python was new to me. I spent a whole evening sorting out the syntax on sites once , twice, and three .
As a result, I have an auto-translator on a hot key.
Thank you all for your attention.
The project is completely on github .
PS: I will be glad to criticize the code.