Menginstal Aplikasi Translator
Latar Belakang
Aku mulai belajar untuk mencoba menulis apapun itu. Karena masih awal dan memang jarang
menulis tentu aku sangat bingung apa yang harus aku tulis. Lalu aku mencoba menggunakan Chat GPT
untuk memberikan beberapa konten dalam bahasa inggris. Kenapa dalam bahasa inggris? karena aku
ingin melatih kosa kataku yang dulu pernah aku hafalkan dan ternyata banyak yang terlupakan.
Aku menggunakan translator yang sudah terinstal, untuk menerjemahkan kalimat-kalimat yang tidak aku ketahui terjemahannya. Tetapi aplikasi Translator yang aku pakai membutukan koneksi internet yang mana kadang koneksi internetku tidak stabil.
Mencoba Aplikasi Baru
Lalu aku mencari di google aplikasi translator yang bisa berjalan secara Offline. Aku menemukannya di github yaitu Argos-Translate. Kemudian aku coba menginstalnya karena setelah baca tutorialnya terlihat mudah. Aku memilih cara untuk menginstal ke dalam virtualenv. Setelah selesai instalasi aku tinggal mendownload paket bahasa yang akun gunakan dengan perintah :
argospm install translate-en_id
argospm install translate-id_en
Setelah selesai aku bisa menggunakannya secara offline, dengan perintah:
argos-translate --from id --to en "siapa namamu?"
argos-translate --from en --to id "How are you?"
Tetapi ada sedikit delay ketika menjalankan perintah tersebut, entah karena Spesifikasi komputerku yang jadul atau karna memang hal lain. Bagiku tidak jadi masalah selama aplikasi berjalan lancar.
Mengintegrasikan ke Neovim
Karena aku menggunakan neovim aku mencoba menambahkan fungsi translator itu supaya bisa jalan
ketika aku sedang menulis. Karena penginstalan menggunakan virtualenv tentu perintah
argos-translate tidak bisa di akses secara global. Jadi aku harus membuat symlink binary file
tersebut ke ~/.local/bin/.
ln -sf /home/hudamnhd/Documents/argos-translate/env/bin/argos-translate ~/.local/bin/argos-translate
Sekarang aku tinggal bisa memanggil perintah argos-translate secara global. Di konfigurasi
neovimku aku menulis function untuk memanggil perintah argos-translate.
vim.api.nvim_create_user_command("Translate", function(opts)
if #opts.fargs < 3 then
vim.api.nvim_echo({
{
"Too few arguments ("
.. #opts.fargs
.. "): 'translate <source language> <target language> <text>'",
"WarningMsg",
},
}, false, {})
return
end
if vim.fn.executable("argos-translate") == 0 then
vim.api.nvim_echo({
{ "'argos-translate' was not found in path!", "warningmsg" },
}, false, {})
return
end
local source, target = unpack(opts.fargs)
local text = string.sub(opts.args, #(source .. " " .. target .. " ") + 1)
local command = "read !argos-translate --from " .. source .. " --to " .. target .. ' "' .. text .. '"'
create_floating_window(command)
end, {
nargs = "*",
complete = function(lead, line, _)
local arg = #vim.split(line, " ", {}) - 1
if arg < 3 then
return vim.tbl_filter(function(e)
return e:sub(1, #lead) == lead
end, { "en", "id" })
end
return {}
end,
desc = "translate",
})
local feedkeys = require("utils.keymap").feedkeys
local function enter_translate_cmd(text)
feedkeys("<esc>", "n")
local go_left = vim.api.nvim_replace_termcodes("<left>", true, false, true)
vim.api.nvim_feedkeys(
":Translate " .. text .. string.rep(go_left, vim.str_utfindex(text) + 1),
"n",
true
)
end
Sekarang aku bisa menerjemahkan kata atau kalimat, ketika aku sedang menggunakan neovim. Aku cukup menyeleksi kata atau kalimat dan hasil terjemahan muncul pop up.
Kesimpulan
Pendapatku mengenai Argos-Translate:
- Sangat bagus karena berjalan Offline.
- Sangat mudah dalam proses penginstalan dan pengguaan.
- Sedikit delay sekitar beberapa detik.
Tags: