Como traducir cualquier texto en Ubuntu

traducci%C3%B3n ubuntu 830x400 Como traducir cualquier texto en Ubuntu

 

Hoy en día, con tanto dispositivo conectado a Internet y tantos sitios que visitar en la red, es de lo más normal que encontremos la información que estamos buscando en un idioma que no dominamos. Incluso podemos encontrar un texto en un idioma que creemos que conocemos bien y leer alguna palabra que no sabemos lo que significa. En esos casos ¿qué hacemos? Pues lo normal es consultar la página de algún traductor, como los de Bing o Google, pero ¿no sería mejor si tuviéramos una manera más rápida y cómoda de hacerlo? Pues como prácticamente todo en los sistemas operativos basados en Linux, hay varias maneras de conseguirlo y en este artículo os enseñaremos cómo traducir cualquier texto en Ubuntu, siempre y cuando el idioma esté incluido en Google Translator.

Es posible que la siguiente guía le de un poco de respeto a los usuarios que no les gusta mucho tocar el terminal, pero no se explica nada diferente a cuando decimos cómo añadir un repositorio e instalar algún paquete que no está en los oficiales. La diferencia es que vamos a crear un script que nos permitirá lanzar componentes disponibles en Ubuntu. Dicho esto, a continuación tenéis los pasos a seguir para traducir cualquier texto en Ubuntu.

Índice

  • 1 Cómo traducir textos con Ubuntu
    • 1.1 Creando el script Notitrans
  • 2 Variantes
    • 2.1 Usando Xclip
    • 2.2 Usando Zenity

Cómo traducir textos con Ubuntu

Creando el script Notitrans

  1. Para poder usar el script, tenemos que hacer tres instalaciones:
    1. libnotify-bin para poder recibir notificaciones de escritorio.
    2. wget para conseguir la traducción de Google.
    3. xsel para leer el texto que tenemos marcado.

Para ello, abrimos un terminal y escribimos lo siguiente:

1
sudo apt-get install libnotify-bin wget xsel
  1. A continuación, creamos un nuevo archivo de texto (basta con hacer clic derecho sobre el escritorio y seleccionar Documento nuevo/Documento vacío).

documento nuevo 830x467 Como traducir cualquier texto en Ubuntu

  1. Dentro del documento tenemos que pegar lo siguiente:
1
2
#!/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}')"
  • guardar-notitrans
  • Nota: en el script anterior hay una linea que pone “tl=es”. Si no queréis traducir al español, sólo tenéis que cambiar el idioma que tenéis detrás del símbolo igual (=).
  1. Guardamos el archivo anterior y lo llamamos “notitrans” (sin las comillas).
  2. A continuación tenemos que convertir el documento anterior a archivo ejecutable. Para ello, lo copiamos en nuestra carpeta personal y escribimos en un terminal lo siguiente:
1
chmod +x ~/notitrans
  1. El siguiente paso mover el archivo creado a la carpeta /usr/local/bin/ con el siguiente comando:
1
sudo mv ~/notitrans /usr/local/bin/
  1. Aún no habremos terminado. Nos falta (por lo menos) dos pasos más: ahora tenemos que crear un atajo del teclado. Para ello vamos a Configuración del sistema/Teclado/Atajos y hacemos clic sobre el símbolo de suma (+). Veréis una ventana como la siguiente:

atajo-notitrans

  1. En la ventana, ponemos de nombre lo que queramos (yo le he puesto Notitrans) y de comando “notitrans” (sin las comillas). Podemos poner otro comando, pero tendríamos que usar el mismo nombre con el que guardamos el script.
  2. Ahora sólo falta crear la combinación de teclas. Para ello hacemos clic sobre el texto que pone Desactivado e introducimos la combinación deseada. Yo he usado Control+punto (.), puesto que sé que no hay ninguna combinación de teclas que use ese atajo.

Variantes

Si no os gusta la manera en la que nos muestra la traducción con el script anterior, que de hecho no puede mostrar traducciones muy largas porque está limitado por el tamaño de la notificación, también podemos usar algunas variantes. Para usar estas variantes tendremos que hacer el mismo proceso que el anterior (también cambiar el idioma si lo deseamos), pero usando el código correspondiente en el paso 2.

Usando Xclip

Si queremos que además de la notificación nos copie la traducción en el cortapapeles, usaremos también xclip. Primero nos aseguramos de que lo tenemos instalado con el comando:

1
sudo apt-get install xclip

Y en el script que crearemos escribimos lo siguiente:

1
2
3
4
5
#!/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"

Usando Zenity

zenity

Y si lo que queremos es que se nos muestre como la imagen anterior (mi preferida), nos aseguraremos de que tenemos Zenity instalado escribiendo el comando:

1
sudo apt-get install zenity

Y en el documento escribiremos los siguiente:

1
2
3
4
5
6
#!/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

¿Habéis probado alguno de estos scripts? ¿Qué os parecen?

Fuente: http://ubunlog.com/como-traducir-cualquier-texto-en-ubuntu/

Tags: ,

Facebook Tetradotoxina Developers

Donativos

Estadísticas

  • Total de Usuarios:2254
  • Último Miembro:emperor
  • Total de Menajes:579
  • Total de Temas:501
  • Total de Secciones:5
  • Total de Categorías:78
  • Abiertos hoy:0
  • Abiertos Ayer:0
  • Respuestas de Hoy:0
  • Respuestas de Ayer:0

Fan Page Oficial

Referidos

Últimos Temas

  • No hay mensajes para mostrar.
© 2017 Tetradotoxina. All Rights Reserved. Designed By JoomLead