Hogyan lehet lefordítani bármilyen szöveget az Ubuntuban

ubuntu-fordítás

Ma, amikor ennyi eszköz csatlakozik az internethez, és annyi webhely látogat el az internetre, nagyon normális, hogy a keresett információt olyan nyelven találjuk meg, amelyet nem beszélünk. Még olyan nyelvet is találhatunk, amelyet úgy gondolunk, hogy jól ismerünk, és elolvashatunk egy szót, amelyet nem tudunk, mit jelent. Ezekben az esetekben mit tegyünk? Nos, a normális dolog az, hogy megkeressük egy fordító oldalát, például a Bing vagy a Google oldalán, de nem lenne jobb, ha gyorsabb és kényelmesebb módszerünk lenne rá? Nos, mint gyakorlatilag minden a Linux-alapú operációs rendszerekben, ennek elérésére is többféle mód van, és ebben a cikkben megtanítjuk hogyan lehet bármilyen szöveget lefordítani az Ubuntuban, mindaddig, amíg a nyelv szerepel a Google Translator alkalmazásban.

Lehetséges, hogy az alábbi útmutató némi tiszteletet fog adni azoknak a felhasználóknak, akik nem szeretik nagyon megérinteni a terminált, de ez nem magyaráz meg mást, mint amikor azt mondjuk, hogyan kell hozzáadni egy lerakatot és telepíteni egy olyan csomagot, amely nincs a hivatalosban azok. A különbség az hozzunk létre egy forgatókönyv ez lehetővé teszi számunkra az Ubuntuban elérhető komponensek elindítását. Az alábbiakban az Ubuntu bármely szövegének lefordításához kövesse a lépéseket.

Hogyan lehet szövegeket lefordítani az Ubuntuval

A forgatókönyv Notitrans

  1. A forgatókönyv, három telepítést kell végrehajtanunk:
    1. libnotify-bin asztali értesítések fogadása érdekében.
    2. wget hogy megkapja a Google fordítását.
    3. xsell hogy elolvassuk az általunk megjelölt szöveget.

Ehhez megnyitunk egy terminált, és a következőket írjuk:

sudo apt-get install libnotify-bin wget xsel
  1. Ezután létrehozunk egy új szöveges fájlt (kattintson jobb gombbal az asztalra, és válassza az Új dokumentum / Üres dokumentum lehetőséget).

új dokumentum

  1. A dokumentum belsejébe be kell illesztenünk a következőket:
#!/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}')"
  • mentés-notitrans
  • Megjegyzés: a forgatókönyv fent van egy sor, amely azt mondja: "tl = es". Ha nem akar spanyolra fordítani, akkor csak azt a nyelvet kell megváltoztatnia, amely az egyenlő szimbólum (=) mögött van.
  1. Elmentjük az előző fájlt és "notitrans" -nak hívjuk (idézőjelek nélkül).
  2. Ezután át kell alakítanunk az előző dokumentumot futtatható fájlra. Ehhez átmásoljuk a személyes mappánkba, és a következőket írjuk egy terminálba:
chmod +x ~/notitrans
  1. A következő lépés a létrehozott fájl áthelyezése a mappába / usr / local / bin / a következő paranccsal:
sudo mv ~/notitrans /usr/local/bin/
  1. Még nem fejeztük be. Szükségünk van még (legalább) két lépésre: most létre kell hoznunk egy billentyűparancsot. Ehhez lépjen a Rendszerbeállítások / Billentyűzet / Parancsikonok elemre, és kattintson a plusz szimbólumra (+). Megjelenik egy olyan ablak, mint a következő:

shortcut-notitrans

  1. Az ablakba tesszük a kívánt nevet (Notitrans-t adtam neki) és a "notitrans" parancsot (idézőjelek nélkül). Feladhatunk egy másik parancsot is, de ugyanazt a nevet kellene használnunk, amellyel a forgatókönyv.
  2. Most csak létre kell hoznia a billentyűkombinációt. Ehhez rákattintunk a Disabled feliratú szövegre, és beírjuk a kívánt kombinációt. A Control + időszakot (.) Használtam, mivel tudom, hogy nincs olyan billentyűkombináció, amely ezt a parancsikont használja.

változatok

Ha nem tetszik, ahogy a fordítás megmutatja nekünk a forgatókönyv fenti, amely valójában nem képes nagyon hosszú fordításokat megjeleníteni, mert az értesítés mérete korlátozza, használhatunk néhány változatot is. Ezen változatok használatához ugyanazt a folyamatot kell elvégeznünk, mint az előzőt (ha akarjuk, módosítsuk a nyelvet is), de a megfelelő kódot használjuk a 2. lépésben.

Az Xclip használatával

Ha azt akarjuk, hogy az értesítés mellett másoljuk a fordítást a vágólapra, akkor azt is használni fogjuk xclip. Először ellenőrizzük, hogy telepítve van-e a következő paranccsal:

sudo apt-get install xclip

És a forgatókönyv hogy létrehozunk, a következőket írjuk:

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

A Zenity használata

zenitás

És ha azt akarjuk, hogy az előző képként (a kedvencemként) jelenjen meg, akkor a parancs beírásával ellenőrizzük, hogy a Zenity telepítve van-e:

sudo apt-get install zenity

És a dokumentumba a következőket írjuk:

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

Kipróbáltad ezeket szkriptek? Mit gondolsz?

 


A cikk tartalma betartja a szerkesztői etika. A hiba bejelentéséhez kattintson a gombra itt.

19 hozzászólás, hagyd a tiedet

Hagyja megjegyzését

E-mail címed nem kerül nyilvánosságra.

*

*

  1. Az adatokért felelős: Miguel Ángel Gatón
  2. Az adatok célja: A SPAM ellenőrzése, a megjegyzések kezelése.
  3. Legitimáció: Az Ön beleegyezése
  4. Az adatok közlése: Az adatokat csak jogi kötelezettség alapján továbbítjuk harmadik felekkel.
  5. Adattárolás: Az Occentus Networks (EU) által üzemeltetett adatbázis
  6. Jogok: Bármikor korlátozhatja, helyreállíthatja és törölheti adatait.

  1.   aimarcongeti dijo

    Megváltoztathatta volna a fogásokat, ez egy kicsit énekel

  2.   Az elfoglalt dijo

    Milyen nagyszerű ... milyen gyorsan ...

    1.    aimarcongeti dijo

      Legalább linkeltél az eredeti xD-re

  3.   aimarcongeti dijo

    Kiváló, és működni fog-e más fordítókkal, mint például a Yandex vagy a Bing?

  4.   tanuló dijo

    És ha ezt a sort hozzáadod a végén
    spd-mondás "$ translate"
    azzal a romantikus hangon elénekli neked
    Nyilvánvaló, hogy telepíteni kell az SPD-say szót

  5.   Jimmy Olano dijo

    Azért vagyunk itt, hogy megtanuljuk:

    —Nem tudtam az xselről, annak ellenére, hogy 2001-ben Conrad Parker hozta létre:
    http p: / / linux.die .net / man / 1 / xsel <- (Távolítsa el a szóközöket, és navigálni fog).
    Így írhatjuk az "xsel -o" szót, és a parancssorra kinyomtatja, amit kiválasztottunk és tároltunk az Ubuntu vágólapjára.

    - Mi a helyzet az értesítés-küldéssel, mert én sem tudtam róla (a legutóbbi frissítés 2008-ból származik)
    de beolvassa:
    ht tp: // manpages.ubu ntu.com/man pages / gutsy / man1 / notification-send.1.html
    gyakorolhatunk bármilyen üzenet grafikus küldését az Ubuntunak:
    értesít-küld –ikon = info "HELLÓ VILÁG!"
    Küldhetünk címet és üzenetet az értesítéshez, próbáld meg:
    értesítés-küldés –ikon = info Dátum "" dátum ""
    {Vigyázzon azokra az egyetlen idézetekre, amelyek a kettősekben vannak, az ASCII kód ​​239}

    - A tiszteletreméltó wgetről nem is beszélve, csak arra emlékszik, milyen erős ez a weblink:
    ht tp: // blog.phen obarbital.info/ 2015/02 / tudtál-e-letölteni-egy teljes-web-wget-t /

    –A sed parancs SEMMI nem tudta ("Csak tudom, hogy nem tudok semmit"), de vizsgálva láthatjuk, mennyire hasznos, nagyon tetszettek ezek a példák (angolul):
    http: // ww w.folkstal k.com/2012 /01/sed-command-in-unix-examples.html
    "Futtattam" a példákat, és ezek jól működnek az ubuntumon.

    ITT ELÉRTÜK AZ "Érkezést":
    a fordítás nem működik, ezért "boncoltam" a komponens parancsokat, hogy lássam, melyik működik jól és melyik rosszul.

    Ezért kértem a kacsát, aki mindent tud a DUCKDUCKGO-tól, és megtaláltam:

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

    "Az eredeti, 2012-re visszanyúló szkript azonban már nem működik, sikerült kijavítanom, és úgy döntöttem, hogy megosztom veled."

    ÉS azt hiszem, hogy nem működik, mert:

    "A Google Fordító API fizetős szolgáltatás. A webhelyfordításokhoz javasoljuk, hogy használja a Google Webhelyfordító modult."

    https: // felhő. Google. com / translate / v2 / using_rest

    Tehát ha van néhány dollár tartalék, több millió levélért fizetnek:
    https: // felhő. Google. com / translate / v2 / pricing

    —EZ AZ ELMÉLETEM, MIÉRT NEM MŰKÖDIK, ha valaki tudja, hogyan kell bemutató módba helyezni és didaktikai célokra, akkor "tegye fel" a válaszát, köszönöm a figyelmet!

  6.   Jimmy Olano dijo

    ESETÉN visszaléptem lépésről lépésre (és egy másik IP-címmel a Google-hoz való csatlakozáshoz, mert "rövid ideig blokkolt a szokatlan forgalom miatt" - szokatlan, hogy GNU / Linux wgetet használunk fejléc nélkül ha ha ha) orosz állampolgár írja le
    http ps: // lesz ahabr.ru/ post / 137215 / és ez sem működik, nagyon rossz. 8- (

    Érvek és ellenérvek

    + Возможность переводить фрагменты текста.
    + Требуется минимальное количество действий для получения перевода.
    + Поддержка практически всех языков.
    + Отсутствие необходимости в установке отдельных словарей.

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

    "Érvek és ellenérvek

    + Képes lefordítani a szövegtöredékeket.
    + A fordítás megszerzéséhez minimális számú művelet szükséges.
    + Támogatás gyakorlatilag az összes nyelvhez.
    + Nincs szükség speciális szótárak telepítésére.

    - Internetkapcsolat nélkül nem működik.
    - Nem lehet lefordított szöveget rendelni.
    * A Unity, a Gnome2, az Xfce4, a KDE4 tesztelt. »

    FORDÍTÁS OROSZBÓL SPANYOL KÖZÖTT A «Google Fordítónak».

    1.    Jimmy Olano dijo

      Az angol nyelvű bejegyzés szerzője kedvesen válaszolt nekem, és megerősítette a gyanúmat: tesztjeimmel visszaéltem a Google szolgáltatással:
      https://twitter.com/ks7000/status/708398151351341058

      Hat nappal később próbáltam újra nagyon óvatosan, nehogy hibázzak, és megpróbáltam angolról franciára fordítani a «tl = fr» megváltoztatásával, és itt van az eredmény:
      https://twitter.com/ks7000/status/708397624890662915

      Nagyon köszönöm, ma tanultam valami újat! * -)

  7.   Mauricio dijo

    rohadtul sokáig akartam telepíteni a fordítót ... Volt néhány problémám, és amikor terminálon keresztül akartam eltávolítani, már nem tudtam csatlakozni az internethez, sem a vezetékes, sem a wifi-hez, azt hiszem, eltávolítottam a hálózati kártya illesztőprogramját vagy valami hasonlót . Hogyan telepíthetem ezeket a dolgokat offline állapotba? Üdvözlettel

  8.   Manuel Arnulfo Plata Espinosa dijo

    Kiváló. Ezzel a bejegyzéssel oldottad meg az életemet. Szerettem volna egy könnyen használható fordítót, anélkül, hogy belépnék a böngészőbe vagy bármilyen programba. Nagyon köszönöm.

  9.   New_Savage dijo

    Imádtam, és nagyon hasznosnak találom, de ... Tudja valaki, miért adok hozzá egy "en" -t az összes fordítás végén ???

    1.    Carlos dijo

      Jó!

      A vonalon:

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

      eltávolít (, $ 6), így néz ki:

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

      és kész !! a végén a "be" nélkül.

      Üdvözlet!

  10.   Carlos dijo

    Jó.

    Távolítsa el (, $ 6) és voila.

    Üdvözlet.

  11.   Angyal dijo

    Nagyon köszönöm a hozzájárulást és a «Quita (, $ 6)» ;-P

  12.   ruben gutierrez dijo

    Nagyon köszönöm a hozzájárulást, nekem ez az / usr / bin elérési útján működött

  13.   ruben gutierrez dijo

    A végén megjelenő "en en" eltávolításához változtassa meg a kódot az alábbiak szerint

    #! / usr / bin / env bash
    szöveg = »$ (xsel -o)»
    fordítás = »$ (wget -U« Mozilla / 5.0 »-qO -« http://translate.googleapis.com/trans$
    fordítás2 = $ {fordítás% ??????}
    echo "$ translate2" | xclip -selection vágólap
    értesít-küld –ikon = info "$ text" "$ translate2"

    és készen áll

  14.   r dijo

    Az in in in eltávolításához

    ehhez módosítsa az utolsó sort

    Értesítés-küldés –icon = info "$ text" "$ {translate: 0: -17}"

  15.   Matthias dijo

    Helló

    Amikor chmod + x ~ / notitrans-t adok, azt mondja, hogy a fájl nem található
    Idáig eljutottam ...

  16.   caesar althieri dijo

    Helló, amikor fordításra teszek egy bekezdést, az csak az első mondatot fordítja le, amennyiben van egy pont, nem fordítja le teljesen, és pontról pontra kell lennem, hogy lefordítsam az egész bekezdést, hogyan tudom megoldani ?

bool (igaz)