Semoga masih segar dalam ingatan Anda tulisan saya tentang Menggunakan Google Search, Google Site Search, dan Google News dari Dalam Terminal. Kini, saya akan mengupas layanan yang umumnya hanya bisa diakses melalui peramban; penerjemah.
Setidaknya ada tiga layanan penerjemah besar yang saya ketahui; Google Translate, Bing Translator dan Yandex.Translate. Sejauh yang saya ketahui, ketiganya memerlukan akses menggunakan peramban. Mungkin ada juka aplikasi untuk Android-nya, namun umumnya berupa wrapper untuk versi web-nya.
Nah, kini kita akan mempelajari bagaimana mengakses layanan-layanan tersebut menggunakan baris perintah.
What with you and this command line obsessions?
Ini bukan obsesi sih, cuma memang dalam banyak kesempatan saya lebih memilih menggunakan perkakas yang berjalan dalam terminal dibandingkan menggunakan perkakas berantar-muka grafis (GUI). Terlebih, tren aplikasi GUI sekarang semakin tidak memuaskan. Ya, misalnya saja aplikasi berdasar electron. Untuk menulis teks saja kini butuh ratusan megabyte RAM dan prosesor berinti banyak. Jika menilik perkembangan yang seperti ini, jangan kaget jika di masa depan walau prosesor komputer 12GHz berinti 17 dan RAM 1TB namun pengalaman berkomputasinya tidak lebih baik dari keadaan sekarang. Ya karena nanti muncul electron-electron lain yang lebih rakus.
Yeah, that's my personal opinion. Jadi kita pinggirkan dulu sebentar dan mulai membahas cara mengakses layanan penerjemah Google, Bing dan Yandex menggunakan baris perintah.
Bagaimana caranya? Yaitu dengan menggunakan piranti lunak bernama translate-shell.
Translate-shell
(sebelumnya bernama Google Translate CLI) adalah sebuah perangkat lunak berantarmuka baris perintah (command line interface) yang berguna sebagai penerjemah dengan memanfaatkan layanan dari Google, Bing, Yandex dan Apertium.
Bagaimana memasang translate-shell?
Ada banyak cara untuk memasang translate-shell
, untuk selengkapnya silakan rujuk reponya di GitHub. Yang paling mudah tentunya dengan memeriksa apakah ia telah masuk ke dalam repo distro yang kita gunakan. Jika sudah ada dalam repo, tinggal install menggunakan penata paket yang ada.
Berikut cara pemasangan di distro yang diketahui telah memiliki translate-shell
dalam reponya. Daftar selengkapnya bisa dilihat di sini.
- Debian/Ubuntu
apt-get install translate-shell aptitude install translate-shell apt install translate-shell
- Mageia
urpmi translate-shell
- Gentoo
emerge --ask app-i18n/translate-shell
- Arch
yaourt -S translate-shell
- Source Mage GNU/Linux
cast translate-shell
- Fedora
dnf install translate-shell
Jika ternyata translate-shell
belum masuk repo distro yang Anda gunakan, jangan berkecil hati. Gunakan saja cara tradisional:
- Clone repo GitHub-nya.
git clone https://github.com/soimort/translate-shell cd translate-shell/ make sudo make install
- Unduh skrip
translate-shell
dan jadikan executable.wget git.io/trans chmod +x ./trans sudo mv trans /usr/bin/
Jika telah terpasang, translate-shell
dapat dijalankan dengan menggunakan perintah trans
.
Bagaimana menggunakan translate-shell?
Seperti umumnya perangkat lunak CLI, dokumentasi dan cara penggunaan translate-shell
bisa dibaca di manual (man trans
) atau parameter help (trans --help
).
Berikut akan diberikan contoh-contoh mendasar, sisanya bisa Anda coba-coba sendiri.
Secara asali, translate-shell
menggunakan Google sebagai mesin penerjemahnya. Daftar mesin penerjemah yang didukung translate-shell
dapat dilihat menggunakan parameter -S
.
$ trans -S * google bing apertium yandex
Gunakan parameter -e
untuk menggunakan mesin lain. Misal untuk menggunakan mesin bing:
trans -e bing terjemah
Dan agar tidak terus-menerus mengetik parameter -e
, Anda bisa menetapkannya di berkas konfigurasi.
Jika tidak diberikan bahasa tujuan terjemah, translate-shell
akan menerjemahkan kata ke dalam bahasa sesuai pengaturan locale
di sistem Linux yang kita pakai. Gunakan perintah echo $LANG
untuk mengetahui locale
pada sistem.
Misal, locale
pada Debian saya adalah en_US.UTF-8
:
$ echo $LANG en_US.UTF-8
Jadi, jika saya hanya mengetikkan kata, maka kata tersebut akan diterjemahkan ke dalam bahasa Inggris versi Amerika Serikat.
$ trans bahasa bahasa (null) language /null/ Definitions of bahasa [ Bahasa Indonesia -> English ] noun language bahasa, cara menulis tongue lidah, bahasa, kayu penarik, cara bicara, cara berbicara, cara bercakap speech pidato, bahasa, kemampuan berbicara, cara bicara, cara berbicara, logat terms bahasa, haid parlance bahasa, cara bercakap, cara bicara, cara berbicara argot dialek, bahasa good manners basa-basi, kesantunan, bahasa
Seperti yang Anda lihat di atas, keluaran translate-shell
begitu terperinci. jika hanya ingin mengetahui padanan katanya saja, gunakan parameter -b
.
$ trans -b bahasa language
Atau gunakan -d
untuk tampilan berbentuk layaknya kamus.
$ trans -d bahasa bahasa (null) language /null/ Definitions of bahasa [ Bahasa Indonesia -> English ] Synonyms noun - percakapan - peristilahan, istilah See also bahasa daerah, bahasa pengantar, bahasa isyarat, bahasa Indonesia, bahasa ibu, gaya bahasa, bahasa sehari-hari, ahli bahasa, bahasa kasar, bahasa Jerman
Dan jika ternyata kita ingin menerjemahkan ke dalam bahasa selain yang telah diatur di locale
, kita bisa menggunakan kode negara. Misal jika hendak menerjemahkan ke dalam bahasa belanda:
$ trans :nl bahasa bahasa (null) taal (null) Translations of bahasa [ Bahasa Indonesia -> Nederlands ] bahasa taal, de taal, taal voorhanden, language, taal wijzigen
nl
adalah kode negara untuk Belanda. Daftar kode negara yang didukung bisa dilihat menggunakan parameter -R
.
$ trans -R ┌───────────────────────┬───────────────────────┬───────────────────────┐ │ Afrikaans - af | Hindi - hi | Punjabi - pa | │ Albanian - sq | Hmong - hmn | Querétaro Otomi- otq | │ Amharic - am | Hmong Daw - mww | Romanian - ro | │ Arabic - ar | Hungarian - hu | Russian - ru | │ Armenian - hy | Icelandic - is | Samoan - sm | │ Azerbaijani - az | Igbo - ig | Scots Gaelic - gd | │ Basque - eu | Indonesian - id | Serbian (Cyr...-sr-Cyrl │ Belarusian - be | Irish - ga | Serbian (Latin)-sr-Latn │ Bengali - bn | Italian - it | Sesotho - st | │ Bosnian - bs | Japanese - ja | Shona - sn | │ Bulgarian - bg | Javanese - jv | Sindhi - sd | │ Cantonese - yue | Kannada - kn | Sinhala - si | │ Catalan - ca | Kazakh - kk | Slovak - sk | │ Cebuano - ceb | Khmer - km | Slovenian - sl | │ Chichewa - ny | Klingon - tlh | Somali - so | │ Chinese Simp...- zh-CN| Klingon (pIqaD)tlh-Qaak Spanish - es | │ Chinese Trad...- zh-TW| Korean - ko | Sundanese - su | │ Corsican - co | Kurdish - ku | Swahili - sw | │ Croatian - hr | Kyrgyz - ky | Swedish - sv | │ Czech - cs | Lao - lo | Tahitian - ty | │ Danish - da | Latin - la | Tajik - tg | │ Dutch - nl | Latvian - lv | Tamil - ta | │ English - en | Lithuanian - lt | Tatar - tt | │ Esperanto - eo | Luxembourgish - lb | Telugu - te | │ Estonian - et | Macedonian - mk | Thai - th | │ Fijian - fj | Malagasy - mg | Tongan - to | │ Filipino - tl | Malay - ms | Turkish - tr | │ Finnish - fi | Malayalam - ml | Udmurt - udm | │ French - fr | Maltese - mt | Ukrainian - uk | │ Frisian - fy | Maori - mi | Urdu - ur | │ Galician - gl | Marathi - mr | Uzbek - uz | │ Georgian - ka | Mongolian - mn | Vietnamese - vi | │ German - de | Myanmar - my | Welsh - cy | │ Greek - el | Nepali - ne | Xhosa - xh | │ Gujarati - gu | Norwegian - no | Yiddish - yi | │ Haitian Creole - ht | Pashto - ps | Yoruba - yo | │ Hausa - ha | Persian - fa | Yucatec Maya - yua | │ Hawaiian - haw | Polish - pl | Zulu - zu | │ Hebrew - he | Portuguese - pt | │ └───────────────────────┴───────────────────────┴───────────────────────┘
Wah, Basa Sunda pun telah didukung. Mari kita coba.
$ trans :su gadis gadis (null) mojang (null) Translations of gadis [ Bahasa Indonesia -> Basa Sunda ] gadis mojang, awéwé, gadis, gede, arek
Mengagumkan.
Ada kalanya mesin penerjemah gagal mendeteksi bahasa sumber. Misalnya:
$ trans mojang mojang (null) mojang /null/ Translations of mojang [ Bahasa Indonesia -> English ] mojang mojang
Bisa dilihat mesin penerjemah salah mendeteksi kata mojang yang aslinya adalah bahasa Sunda. Kita bisa gunakan kode negara lagi untuk memberi tahu mesin penerjemah mengenai asal kata. Bedanya dengan penggunaan kode negara di atas adalah; kode negara untuk bahasa tujuan penulisannya diawali titik dua, sementara kode negara untuk menunjukkan sumber penulisannya diakhiri titik dua.
$ trans su: mojang mojang (null) girl /null/ Definitions of mojang [ Basa Sunda -> English ] noun girl mojang
Kini mesin penerjemah pun bisa menerjemahkan dengan tepat.
Translate-shell
dapat menerjemahkan banyak kata sekaligus. Misalnya kata terima dan kasih.
$ trans terima kasih terima (null) accept /null/ Definitions of terima [ Bahasa Indonesia -> English ] noun acceptance penerimaan, terima, dukungan, sambutan kasih (null) love /null/ Definitions of kasih [ Bahasa Indonesia -> English ] noun love cinta, kasih, cinta kasih, sayang, kasih sayang, kecintaan affection kasih sayang, sayang, kasih attachment lampiran, cinta, kasih sayang, kasih, alat tambahan, alat pelengkap
Untuk menerjemahkan kalimat, apit kalimat menggunakan tanda kutip.
$ trans 'terima kasih' terima kasih (null) thank you /null/ Definitions of terima kasih [ Bahasa Indonesia -> English ] noun gratitude terima kasih, perasaan bersyukur gratefulness terima kasih
Jika misalnya ketika sedang berbincang di Telegram, Anda menemukan huruf atau bahasa yang tidak dikenali, translate-shell
bisa membantu untuk menemukan muasal kata atau huruf tersebut.
$ trans -id 言葉 日本語 Name Japanese Family Japonic Writing system Japanese (Han + Hiragana + Katakana) Code ja ISO 639-3 jpn SIL http://www-01.sil.org/iso639-3/documentation.asp?id=jpn Glottolog http://glottolog.org/resource/languoid/id/nucl1643 Wikipedia http://en.wikipedia.org/wiki/Japanese_language
Banyak bahasa yang memiliki sistem pelafalan kata yang berbeda dengan Bahasa Indonesia. Misalnya, bagaimana kita menyuarakan queue atau cache?.
$ trans -sp "queue"
Atau jika ingin mendengarkan bunyi terjemahan kata, misalnya terima kasih dalam bahasa Jepang.
$ trans -b -p :ja 'terima kasih' ありがとう null
Cuma memang masih ada embel-embel null
yang mengganggu.
O ya, Anda ingin menerjemahkan tulisan ke dalam bahasa Inggris? Tidak perlu repot untuk copy-paste, cukup beritahu translate-shell
di mana berkas tulisan yang akan diterjemahkan berada. Misal hendak menerjemahkan tulisan dalam berkas draft.txt
yang terletak di /tmp
ke dalam bahasa Inggris:
trans :en file://tmp/draft.txt
Dan yang pamungkas, translate-shell
juga bisa menerjemahkan laman web. Well, yang ini tidak terlalu istimewa karena dasarnya hanya tautan untuk membuka laman penerjemah.
trans --browser firefox :en http://www.rizaumami.com/2017/09/membuat-bot-telegram-selamat-datang.html
Perintah di atas akan menjalankan Firefox yang kemudian membuka laman http://www.rizaumami.com/2017/09/membuat-bot-telegram-selamat-datang.html untuk diterjemahkan ke dalam bahasa Inggris.
Seperti yang Anda lihat dari sekelumit contoh-contoh di atas, translate-shell
ini lumayan mengagumkan. Kini kita tidak perlu lagi memasang piranti lunak kamus atau sengaja membuka peramban web hanya untuk menerjemahkan kata atau kalimat.
Jika Anda juga memiliki piranti lunak CLI favorit atau bahkan andalan yang berdayaguna, silakan bagikan di kolom komentar.
Happy translating...
Tidak ada komentar:
Posting Komentar