Ako preložiť akýkoľvek text v Ubuntu

ubuntu-preklad

Dnes, keď je toľko zariadení pripojených k internetu a toľko stránok, ktoré je možné navštíviť na internete, je veľmi bežné, že hľadané informácie nájdeme v jazyku, ktorým nehovoríme. Nájdeme dokonca text v jazyku, o ktorom si myslíme, že ho dobre poznáme, a prečítame slovo, ktoré nevieme, čo to znamená. Čo v takom prípade urobíme? Normálna vec je obrátiť sa na stránku prekladateľa, ako je Bing alebo Google, ale nebolo by lepšie, keby sme na to mali rýchlejší a pohodlnejší spôsob? Rovnako ako prakticky všetko v operačných systémoch založených na systéme Linux, aj tu existuje niekoľko spôsobov, ako to dosiahnuť, a v tomto článku vás naučíme ako preložiť akýkoľvek text v Ubuntu, pokiaľ je jazyk v Google Translatore.

Je možné, že nasledujúci sprievodca trochu rešpektuje používateľov, ktorí sa terminálu veľmi nechcú dotknúť, ale nevysvetľuje nič iné, ako keď povieme, ako pridať úložisko a nainštalovať balík, ktorý nie je v oficiálnych . Rozdiel je v tom vytvorme a scenár ktorý nám umožní spustiť komponenty dostupné v Ubuntu. To znamená, že nižšie máte kroky, ktoré musíte dodržať, aby ste preložili akýkoľvek text v Ubuntu.

Ako prekladať texty pomocou Ubuntu

Vytvára sa scenár notitrans

  1. Aby bolo možné použiť scenár, musíme urobiť tri inštalácie:
    1. libnotify-bin aby ste mohli dostávať upozornenia na pracovnej ploche.
    2. wget pre získanie google prekladu.
    3. xsell prečítať text, ktorý sme označili.

Za týmto účelom otvoríme terminál a napíšeme nasledovné:

sudo apt-get install libnotify-bin wget xsel
  1. Ďalej vytvoríme nový textový súbor (stačí kliknúť pravým tlačidlom myši na plochu a zvoliť Nový dokument / Prázdny dokument).

nový dokument

  1. Do dokumentu musíme vložiť nasledovné:
#!/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}')"
  • save-notitrans
  • Poznámka: v scenár hore je riadok, ktorý hovorí „tl = es“. Ak nechcete prekladať do španielčiny, stačí zmeniť jazyk, v ktorom sa nachádzate za symbolom rovnosti (=).
  1. Uložíme predchádzajúci súbor a nazveme ho „notitrans“ (bez úvodzoviek).
  2. Ďalej musíme previesť predchádzajúci dokument do spustiteľného súboru. Za týmto účelom ho skopírujeme do nášho osobného priečinka a do terminálu napíšeme nasledovné:
chmod +x ~/notitrans
  1. V ďalšom kroku presuniete vytvorený súbor do priečinka / Usr / local / bin / pomocou nasledujúceho príkazu:
sudo mv ~/notitrans /usr/local/bin/
  1. Ešte sme neskončili. Potrebujeme (minimálne) ďalšie dva kroky: teraz musíme vytvoriť klávesovú skratku. Za týmto účelom ideme do Nastavenia systému / Klávesnica / Skratky a klikneme na symbol plus (+). Zobrazí sa okno podobné tomuto:

skratka-notitrans

  1. Do okna vložíme meno, ktoré chceme (dal som mu Notitrans) a príkaz „notitrans“ (bez úvodzoviek). Môžeme dať ďalší príkaz, ale museli by sme použiť rovnaký názov, pod ktorým sme uložili scenár.
  2. Teraz stačí vytvoriť kombináciu klávesov. Za týmto účelom klikneme na text s textom Zakázané a zadáme požadovanú kombináciu. Použil som obdobie Control + (.), Pretože viem, že neexistuje žiadna kombinácia klávesov, ktorá by túto skratku používala.

varianty

Ak sa vám nepáči, ako nám preklad ukazuje scenár vyššie, ktorý v skutočnosti nemôže zobraziť veľmi dlhé preklady, pretože je obmedzený veľkosťou oznámenia, môžeme tiež použiť niektoré varianty. Aby sme mohli použiť tieto varianty, budeme musieť urobiť rovnaký postup ako predchádzajúci (ak chceme, tiež zmeniť jazyk), ale s použitím zodpovedajúceho kódu v kroku 2.

Pomocou Xclip

Ak chceme, aby sme okrem upozornenia skopírovali preklad do schránky, použijeme aj XCLIP. Najskôr sa ubezpečíme, že ho máme nainštalovaný pomocou príkazu:

sudo apt-get install xclip

A v scenár ktoré vytvoríme, napíšeme nasledovné:

#!/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 "$translate" | xclip -selection clipboard
notify-send --icon=info "$text" "$translate"

Používanie Zenity

zenita

A ak sa to, čo chceme, má zobraziť ako predchádzajúci obrázok (môj obľúbený), zadaním príkazu skontrolujeme, či máme nainštalovanú Zenity:

sudo apt-get install zenity

A do dokumentu napíšeme toto:

#!/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

Skúšali ste niektorú z týchto možností skripty? Co si myslis?


Zanechajte svoj komentár

Vaša e-mailová adresa nebude zverejnená. Povinné položky sú označené *

*

*

  1. Zodpovedný za údaje: Miguel Ángel Gatón
  2. Účel údajov: Kontrolný SPAM, správa komentárov.
  3. Legitimácia: Váš súhlas
  4. Oznamovanie údajov: Údaje nebudú poskytnuté tretím stranám, iba ak to vyplýva zo zákona.
  5. Ukladanie dát: Databáza hostená spoločnosťou Occentus Networks (EU)
  6. Práva: Svoje údaje môžete kedykoľvek obmedziť, obnoviť a vymazať.

  1.   aimarcongeti dijo

    Mohli ste zmeniť úlovky, to trochu spieva

  2.   Rušno dijo

    Aké skvelé ... aké rýchle ...

    1.    aimarcongeti dijo

      Aspoň ste odkazovali na pôvodné xD

  3.   aimarcongeti dijo

    Vynikajúce a bude to fungovať s inými prekladateľmi ako Yandex alebo Bing?

  4.   študent dijo

    A ak tento riadok pridáte na koniec
    spd-say "$ translate"
    spieva ti to tým romantickým hlasom
    Je samozrejme potrebné mať nainštalovaný program spd-say

  5.   Jimmy olano dijo

    Sme tu, aby sme sa dozvedeli:

    —Nevedel som o xsel, aj keď ho vytvoril v roku 2001 Conrad Parker:
    http: / / linux.die .net / man / 1 / xsel <- (Odstráňte medzery a budete navigovať).
    Takto môžeme napísať „xsel -o“ a do príkazového riadku vytlačí to, čo sme vybrali a uložili do schránky Ubuntu.

    —Čo s oznámením o odoslaní, pretože som o tom tiež nevedel (posledná aktualizácia sa datuje od roku 2008)
    ale čítanie v:
    ht tp: // manpages.ubu ntu.com/man pages / gutsy / man1 / notify-send.1.html
    môžeme trénovať grafické zasielanie ľubovoľných správ na Ubuntu:
    notify-send –icon = info "AHOJ SVET!"
    Môžeme poslať nadpis a správu k oznámeniu, skúste:
    notify-send –icon = info Dátum "" dátum ""
    {POZOR na tie jednoduché úvodzovky vo vnútri dvojitých úvodzoviek, kód ASCII je 239}

    —Nehovoriac o ctihodnom wgetovi, iba si budete pamätať, aký silný je tento webový odkaz:
    ht tp: // blog.phen obarbital.info/ 2015/02 / vedeli ste, ako-na-stiahnutie-kompletnej-webovej stránky-wget /

    –Príkaz sed NIKDY to nevedel („Len viem, že nič neviem“), ale pri vyšetrovaní vidíme, aké užitočné to je, tieto príklady (v angličtine) sa mi veľmi páčili:
    http: // ww w.folkstal k.com/2012 / 01/sed-command-in-unix-examples.html
    „Spustil“ som príklady a na mojom ubuntu fungujú dobre.

    TU sme DOSIAHLI „PRÍCHOD“:
    preklad nefunguje, tak som "rozobral" komponované príkazy, aby som zistil, ktorý z nich funguje dobre a ktorý zle.

    Preto som požiadal o pomoc kačicu, ktorá vie všetko o DUCKDUCKGO, a našiel som:

    ht tp: // w ww. webupd8.or g / 20 16/03 / translate-any-text-you-select-on-your.html

    „Pôvodný skript z roku 2012 už nefunguje, podarilo sa mi ho opraviť a rozhodol som sa ho s vami zdieľať.“

    A MYSLÍM SI, ŽE TO NEFUNGUJE, pretože

    „Google Translate API je platená služba. Pri prekladoch webových stránok vám odporúčame použiť modul gadget Prekladač webových stránok Google.“

    https: // cloud. Google. com / translate / v2 / using_rest

    Takže ak máte pár dolárov nazvyš, účtujú si milióny listov:
    https: // cloud. Google. com / translate / v2 / ceny

    —JA JE TEÓRIA, PREČO TO NEFunguje, ak niekto vie, ako to uviesť do demonštratívneho režimu a na didaktické účely, potom svoju odpoveď „zverejnite“, ďakujeme za vašu pozornosť!

  6.   Jimmy olano dijo

    V PRÍPADE som sa vrátil späť a nasledoval krok za krokom (a s inou IP adresou na pripojenie k Google, pretože ma „nakrátko zablokoval pre neobvyklý prenos“ - neobvyklé, že používame GNU / Linux wget bez hlavičky ha ha ha) kroky opísal občan Rus
    http ps: // bude ahabr.ru/ post / 137215 / a ani to nefunguje, škoda. 8- (

    Klady a zápory

    + Возможность переводить фрагMENTы текста.
    + Требуется минимльное количество действий для получения перевода.
    + Podderzhka praktické vs yazykov.
    + Ďalšie informácie

    - Не работает без подключения к интернету.
    - Нет возможности выделить текст перевода.
    * Проверенно в Unity, GNOME2, Xfce4, KDE4.

    "Klady a zápory

    + Schopnosť preložiť fragmenty textu.
    + Na získanie prekladu je potrebný minimálny počet akcií.
    + Podpora prakticky vo všetkých jazykoch.
    + Nie je potrebné inštalovať konkrétne slovníky.

    - Bez pripojenia na internet to nefunguje.
    - Nie je možné priradiť preložený text.
    * Testované na jednotách, Gnome2, Xfce4, KDE4. »

    PREKLAD Z RUSKA DO ŠPANIELSKA VĎAKA «TLAČIČKU Google».

    1.    Jimmy olano dijo

      Autor príspevku v angličtine mi láskavo odpovedal a potvrdil moje podozrenie: Svojimi testami som zneužil službu google:
      https://twitter.com/ks7000/status/708398151351341058

      Teraz, o šesť dní neskôr, som sa pokúsil znova veľmi opatrne, aby som neurobil chyby, a tiež som sa pokúsil preložiť z angličtiny do francúzštiny zmenou «tl = fr» a tu je výsledok:
      https://twitter.com/ks7000/status/708397624890662915

      Dakujem pekne, dnes som sa dozvedela nieco nove! * -)

  7.   Mauricio dijo

    sakra čas, keď som chcel nainštalovať prekladač ... Mal som nejaké problémy a keď som ho chcel odinštalovať cez terminál, nemohol som sa už pripojiť na internet alebo na káblové alebo wifi, myslím, že som odinštaloval ovládač sieťovej karty alebo niečo podobné. . Ako nainštalujem tieto veci offline? S pozdravom

  8.   Manuel Arnulfo Plata Espinosa dijo

    Vynikajúci Týmto príspevkom ste vyriešili môj život. Chcel som mať ľahko použiteľný prekladač bez toho, aby som musel ísť do prehliadača alebo do iného programu. Mnohokrat dakujem.

  9.   Novinka_Savage dijo

    Miloval som to a považujem to za veľmi užitočné, ale ... Vie niekto, prečo na koniec všetkých prekladov pridám „en“ ???

    1.    Carlos dijo

      Dobrý!

      Na riadku:

      | sed «s / ,,, 0]] ,,. * // g» | awk -F '»' '{tlačiť 2 $, 6 $}')»

      remove (, 6 $), takže to vyzerá takto:

      | sed «s / ,,, 0]] ,,. * // g» | awk -F '»' '{print $ 2}')»

      a pripravený !! bez „in“ na konci.

      Zdravím !!

  10.   Carlos dijo

    Dobre.

    Odstrániť (, 6 dolárov) a voila.

    Zdravím.

  11.   Anjel dijo

    Ďakujem pekne za príspevok a za «Quita (, $ 6)» ;-P

  12.   ruben gutierrez dijo

    Veľmi pekne ďakujem za príspevok, pracoval mi v ceste / usr / bin

  13.   ruben gutierrez dijo

    Ak chcete odstrániť text „en en“, ktorý sa zobrazuje na konci, zmeňte kód nasledovne

    #! / usr / bin / env bash
    text = »$ (xsel -o)»
    translate = »$ (wget -U« Mozilla / 5.0 »-qO -« http://translate.googleapis.com/trans$
    translate2 = $ {preložiť% ??????}
    echo "$ translate2" | xclip - výber schránky
    notify-send –icon = info "$ text" "$ translate2"

    a pripravené

  14.   r dijo

    Ak chcete odstrániť vstup v

    upravte pre to posledný riadok

    notify-send –icon = info "$ text" "$ {preložiť: 0: -17}"

  15.   Matthias dijo

    Ahoj

    Keď dám chmod + x ~ / notitrans, hovorí mi, že súbor sa nedá nájsť
    Došiel som tak ďaleko ...

  16.   cézar althieri dijo

    Dobrý deň, keď vložím odsek na preklad, preloží sa iba prvá veta, pokiaľ je tam bod, nepreloží to úplne a musím byť z bodu do bodu, aby som preložil celý odsek, ako to môžem vyriešiť ?