hoje senti a necessidade de traduzir textos de inglês para português rapidamente pois toda vez que eu precisava completar essa tarefa eu tinha que seguir essa receita de bolo:
Abrir o navegador -> Abrir a página do Google Tradutor -> Copiar o texto que quero traduzir lá
Criei um pequeno script que "automatiza" essa tarefa, na verdade ele traduz o texto que está salvo na área de transferência (clipboard) do seu sistema, ou seja, para traduzir um texto basta copiá-lo com o atalho de teclado ctrl+c e logo em seguida chamar meu script, que também pode ter algum atalho de teclado configurado para acesso rápido.
O script na verdade é bem simples, ele usa três ferramentas externas:
- xclip
- translate-shell
- zenity
A primeira ferramenta, xclip, é um programa que manipula a área de transferência do sistema, é com ele que envio o texto que está armazenado na área de transferência para ser traduzido. Para instalar:
- Código: Selecionar todos
sudo pacman -S xclip
A segunda ferramenta, translate-shell, precisa ser instalada pelo AUR, essa ferramenta se comunica com a API da Google para usar o Google Tradutor.:
- Código: Selecionar todos
yaourt -S translate-shell
A terceira ferramenta, zenity, é usada para criar caixas de diálogo no sistema. Para instalar:
- Código: Selecionar todos
sudo pacman -S zenity
O script:
- Código: Selecionar todos
#!/bin/bash
(
echo "# Translating..." ;
trans=$(xclip -o | trans -brief :pt)
echo "100" ;
zenity --title="Result" --info --text "$trans"
) |
zenity --progress \
--title="Clipboard to Google Translate" \
--auto-close \
--pulsate
Para acessar esse script rapidamente copie o conteúdo dele para um arquivo de script localizado em /usr/bin/translateToEN.sh, dê permissão de execução para esse arquivo:
- Código: Selecionar todos
sudo chmod +x /usr/bin/translateToEN.sh
E por último, crie um atalho de teclado para ativar esse script, dessa forma ao pressionar o atalho do teclado o script será ativado e o conteúdo que estiver armazenado na área de transferência será traduzido e a tradução será exibida na tela.
Criei um vídeo ilustrando o uso do script:
https://vimeo.com/204827769
@edit
Fiz algumas modificações no script para permitir que ele seja usado em qualquer desktop environment.
Adicionei uma barra de progresso que oferece ao usuário um feedback de que a tradução está acontecendo em segundo plano.
@edit2
Dica do superstarmitsuru:
superstarmitsuru escreveu:Vale notar que se quiserem editar para traduzir para outros idiomas basta abrir o terminal e digitar:
- Código: Selecionar todos
trans -T
para ver a lista de idiomas.