Як перекладати тексти в Linux за допомогою комбінації клавіш та сповіщень

У мене була проблема з Переклад Google Chrome на Linux, Мені вдалося вдосконалити його деякими змінами, але мені це не зовсім подобається. Ось чому я намагався знайти альтернативу, яка дозволяє мені перекладати слова чи деякі тексти, яких я не знаю.

Щоб вирішити цю проблему, ми збираємось викладати як перекладати тексти в Linux за допомогою комбінацій клавіш та сповіщень, для цього я буду використовувати путівник Андрій (Алін Андрій) Це проходить чудово, і я сподіваюся, що це вам буде добре. Посібник складається з декількох сценаріїв, зроблених Ендрю, та виправлення сценарію, датованого 2012 роком, який був використаний як основа.

Цей метод дозволяє нам перекладати будь-який текст, який можна вибрати (тексти на веб-сторінках, pdf, txt, додатки тощо), тому його використання може бути різним.

Як перекладати тексти в Linux

Як перекладати тексти в Linux

Переваги та недоліки цього рішення

Серед переваг цього методу можна виділити:

  • Це дозволяє перекладати будь-який текст, який можна вибрати (PDF, веб-сторінки, журнали, libreoffice, тексти в програмі та ін.
  • Це дозволяє швидко перекладати тексти завдяки використанню комбінацій клавіш.
  • Дозволяє переглядати переклади із системних сповіщень.
  • Дозволяє перекладати з різних мов-джерел.
  • Мова перекладу може бути параметризована.
  • Він ідеально підходить для перекладу малих слів та фраз.
  • Це легко встановити та налаштувати.

Основними недоліками цього методу є:

  • Ви не можете перекладати цілі веб-сторінки.
  • Якщо Google не може визначити вихідну мову, він видасть помилку і, отже, не перекладе текст.
  • Щоб цей метод працював, потрібне з’єднання з Інтернетом.

Налаштування сценарію для перекладу текстів у Linux

Для налаштування та запуску сценарію для перекладу вибраних текстів за допомогою комбінації клавіш та сповіщень ми повинні виконати такі дії:

  • Instalar las dependencias necesarias, en primer lugar instalar libnotify-bin (para enviar notificaciones de escritorio), wget (para recuperar la traducción de Google) y XSEL (que se utiliza para obtener el texto resaltado en ese momento). En Ubuntu y derivados puedes instalarlo usando el siguiente comando:
sudo apt-get install libnotify-bin wget xsel
  • Скопіюйте наступний код на консоль:
#!/usr/bin/env bash
notify-send --icon=info "$(xsel -o)" "$(wget -U "Mozilla/5.0" -qO - "http://translate.googleapis.com/translate_a/single?client=gtx&sl=auto&tl=es&dt=t&q=$(xsel -o | sed "s/[\"'<>]//g")" | sed "s/,,,0]],,.*//g" | awk -F'"' '{print $2, $6}')"

а потім створити файл із назвою "notitrans" (Ви можете називати це як завгодно, у цьому випадку це буде називатися так, як це називав оригінальний автор), який міститиме попередній код.

Якщо ви хочете перекласти на іншу мову, крім іспанської, ви повинні замінити «tl = es» на мову, яку вам сподобалося, наприклад «tl = ru» на російську, «tl = fr» на французьку тощо.

  • Ми повинні дати дозвіл на виконання файлу, створеного за допомогою такої команди:
chmod +x ~/notitrans
  • Ми додаємо скрипт до нашого $ PATH наступною командою
sudo mv ~/notitrans /usr/local/bin/
  • Наш сценарій готовий, тепер ми повинні його активувати, коли ми використовуємо комбінацію клавіш, для цього ми повинні створити власний доступ.

Для Cinnamon, GNOME та Unity ви можете створити власний ярлик клавіатури, відкривши доступ  Системні налаштування> Клавіатура> Комбінації клавіш> Спеціальні комбінації клавіш, де ми повинні натиснути на додати власний ярлик - -. Там, де ми вводимо назву ярлика, в моєму випадку я помістив переводити і в наказі розміщуємо «нотитранс»Або ім’я, яке ми дали своєму сценарію:

додати комбінацію клавіш -

додати комбінацію клавіш -

Варіанти сценарію для перекладу текстів у Linux

Es muy fácil modificar el script para adaptarlo mejor a sus necesidades. A continuación encontrará un par de variaciones que ha creado  Andrew. Para usar estos script, simplemente siga los mismos pasos que anteriormente (incluyendo cambiar «es» al idioma en el que desea traducir el texto), pero no copie el código de script anterior sino que utilice el que corresponda:

Візуалізація перекладу за допомогою Zenity

перекласти текст в Linux

Для того, щоб переглянути наш переклад у Zenity Ми повинні виконати наступні кроки:

  • Встановіть Zenity у свою систему. В Ubuntu та похідних ви можете встановити його за допомогою наступної команди:
sudo apt-get install zenity
  • Виконайте всі дії в оригінальному сценарії, але використовуйте наступний код
#!/usr/bin/env bash
text="$(xsel -o)"
translate="$(wget -U "Mozilla/5.0" -qO - "http://translate.googleapis.com/translate_a/single?client=gtx&sl=auto&tl=es&dt=t&q=$(echo $text | sed "s/[\"'<>]//g")" | sed "s/,,,0]],,.*//g" | awk -F'"' '{print $2, $6}')"
echo -e "Original text:" "$text"'\n' > /tmp/notitrans
echo "Translation:" "$translate" >> /tmp/notitrans
zenity --text-info --title="Translation" --filename=/tmp/notitrans

Перегляд перекладу в сповіщеннях та автоматичне копіювання в наш буфер обміну

Щоб мати варіацію, де переклад відображається системними сповіщеннями і автоматично копіюється в наш буфер обміну, ми повинні виконати такі дії:

  • Встановіть xclip у свою систему. В Ubuntu та похідних ви можете це зробити, використовуючи таку команду:
sudo apt-get install xclip
  • Виконайте всі дії в оригінальному сценарії, але використовуйте наступний код
#!/usr/bin/env bash
text="$(xsel -o)"
translate="$(wget -U "Mozilla/5.0" -qO - "http://translate.googleapis.com/translate_a/single?client=gtx&sl=auto&tl=en&dt=t&q=$(echo $text | sed "s/[\"'<>]//g")" | sed "s/,,,0]],,.*//g" | awk -F'"' '{print $2, $6}')"
echo "$translate" | xclip -selection clipboard
notify-send --icon=info "$text" "$translate"

Уже кульмінація, Сподіваюсь, ця стаття дозволяє вам робити переклади слів або текстів, які вам потрібні, так само, якщо хтось із вас сумнівається чи змінює сценарій, не соромтеся залишати свої коментарі.

Фуенте: webupd8


Залиште свій коментар

Ваша електронна адреса не буде опублікований. Обов'язкові для заповнення поля позначені *

*

*

  1. Відповідальний за дані: Мігель Анхель Гатон
  2. Призначення даних: Контроль спаму, управління коментарями.
  3. Легітимація: Ваша згода
  4. Передача даних: Дані не передаватимуться третім особам, за винятком юридичних зобов’язань.
  5. Зберігання даних: База даних, розміщена в мережі Occentus Networks (ЄС)
  6. Права: Ви можете будь-коли обмежити, відновити та видалити свою інформацію.

  1.   r - сказав він

    Щиро дякую за сценарій; Це дуже корисно, і велике спасибі за переклад та статтю, адже це справді справжні статті, які змушують вас зростати у знаннях щодо поля GNU Linux.

    Пропоную вам більше перекладів та більше статей ...

    Привітання і приємного дня.

  2.   Manuel - сказав він

    Відмінно + 5, дякую! Виправлення: "Скопіюйте наступний код на консоль:", він знаходиться не в консолі, а у створеному текстовому файлі.

  3.   Куажуноте - сказав він

    Великий внесок, це було для мене дуже добре. Я хотів би пояснити питання, чи можна збільшити текст для перекладу? Тобто, з Zenity я вибираю абзац, і він не перекладає все, лише пару речень, а власна система сповіщень Ubuntu перекладає лише перше речення. Чи є спосіб його розширити?

    З повагою та велике спасибі заздалегідь.

  4.   Міллер Сільва - сказав він

    Дуже хороший внесок!

  5.   Оскар Крус - сказав він

    Що я шукав!
    Ну, насправді, я шукав спосіб зробити це лише в okular-документах (з якимось плагіном), оскільки зазвичай я працюю з великою кількістю PDF-файлів. Але це допомагає мені перекласти слово за межами okular. Це чудовий внесок

    Я дякую вам !!!

  6.   Ерсантіл - сказав він

    Відмінно - це мало. Дякую