Last active
March 14, 2021 18:56
-
-
Save haltaction/7a12647ae6db6593a4f7 to your computer and use it in GitHub Desktop.
Linux translate text in buffer
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
1 - Устанавливаем обёртку над гугл транслейт | |
https://github.com/soimort/translate-shell | |
2 - Устанавливаем необходимые пакеты: | |
sudo apt-get install libnotify-bin xsel | |
3 - Создаём файл с именем sel-transl и копируем в него | |
#!/usr/bin/env bash | |
notify-send -u critical "$(xsel -o)" "$(xsel -o | trans -no-ansi -b :ru)" | |
4 - Делаем этот файл исполняемым и перемещаем его в /usr/bin/: | |
sudo chmod 777 ./seltr && sudo mv ./seltr /usr/bin/ | |
5 - Создаем хоткей System settings->Keyboard->Shortcuts->Custom Shortcuts В поле команды вводить имя файла в /usr/bin/ (команда терминала) |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Обновление для возможности перевода в обе стороны(ru-en).
Также уведомление с переведенным текстом исчезает через некоторое время.
Добавляется зависимость на python и на пакет langdetect в нем:
pip install langdetect --user
Обновленный скрипт sel-transl:
#!/usr/bin/env bash
in_text=$(xsel -o)
in_lang=$(eval "python3 -c'from langdetect import detect; print(detect("$in_text"));'")
if [ $in_lang = "ru" ]
then
to_lang="en"
else
to_lang="ru"
fi
expire_time="$((1000+1000*${#in_text}/30))"
notify-send -t $expire_time "$in_text" "$(echo $in_text | trans -no-ansi -b :$to_lang)"