Script para traducir textos desde la linea de comandos

Script para traducir textos desde linea de comandos
Script para traducir textos desde linea de comandos

Un script muy sencillo que nos permitira si queremos utilizar traducción instantaneo en nuestros pequeños programas de bash. Basicamente se hace uso de Google Translate Ajax API y de “curl” para hacer una petición HTTP con los parametros adecuados y se analiza la respuesta recibida, los parametros son el idioma “origen”, el idioma “destino” y el string que queremos traducir.

#!/usr/bin/env bash
#  gtranslate.sh
#  Translate using Google Translate Ajax API:
#  http://ajax.googleapis.com/ajax/services/language/translate?v=1.0 \
#  &langpair=en|es&q=hello+world
#  More Info: http://code.google.com/apis/ajaxlanguage/documentation/
#  ksaver (at identi.ca), March 2010.
#  Licence: Public Domain Code.

progname=$(basename $0)

if [ -z "$3" ]
then
	echo -e "Usage:   $progname lang1 lang2 'string of words to translate...'"
	echo -e "Example: $progname en es 'Hello World!'\n"
	exit
fi

FROM="$1"
TO="$2"

# Google Translate Ajax API Url
TRANSURL='http://ajax.googleapis.com/ajax/services/language/translate?v=1.0'
LANGPAIR="$FROM|$TO"
shift 2

# Parse string to translate, change ' ' to '+'
# STRING: String to translate.
STRING="$@"
PSTRING=$(echo "$STRING" |tr ' ' '+')

# Get translation
RESPONSE=$(/usr/bin/env curl -s -A Mozilla \
		$TRANSURL'&langpair='$LANGPAIR'&q='$PSTRING)

echo -n "$progname> "
# Parse and clean response, to show only translation.
echo "$RESPONSE" |cut -d ':' -f 3 |cut -d '}' -f 1

GoogleCL – Accede a los servicios de datos de Google por consola/terminal

De Google podemos decir cualquier cosa, excepto que sea predecible con sus nuevos servicios y aplicaciones. Y este es el caso de GoogleCL, una aplicación para acceder a los servicios de datos de la empresa desde la línea de comandos. Fue presentado con bombo y platillo hace no más de una semana y no es sino un gran script Python que usa las bibliotecas gdata (Google Data Protocol). Les presentaré unos ejemplos para comenzar a aprovecharlo.

Por ahora, GoogleCL soporta estos servicios:

Docs

  google docs edit --title "Comandos Linux"

Blogger

  google blogger post --title "Frase" "Si no te equivocas de vez en cuando, es que no lo intentas"

Calendar

  google calendar add "Desayuno en Tiffany"

Contacts

  google contacts list name,email > contactos-respaldo.csv

Picasa

  google picasa create --title "Fotos vergonzosas" ~/fotos/familia/*.png

Youtube

  google youtube post --category Education aprendiendo_navi.mp4

Instalación enUbuntu/Debian

Descarga el código fuente o bien el DEB para sistemas de la familia Debian. Elige tu favorita del sitio de descargas. La versión más reciente a la fecha es la 0.9.7. Desde Debian/Ubuntu ejecuta:

  sudo dpkg -i googlecl_0.9.7-1_all.deb

Uso

Hay muchos ejemplos en el sitio de GoogleCL. Aquí me concentraré en mostrar cómo configurar el acceso a Google Docs desde la línea de comandos. Antes de eso debes saber que ejecutado sin argumentos, GoogleCL inicia una sesión interactiva a través del comando google, con el carácter “>” como prompt.

  google
  > help
  Welcome to the Google CL tool!
    Commands are broken into several parts: service, task, options, and arguments.
    For example, in the command

    [...más salida...]

    Enter "> help <service>" for more information on a service.
    Or, just "quit" to quit.

   > help docs
   Available tasks for service docs: 'edit', 'delete', 'list', 'upload', 'get'
    edit: Edit a document
     Requires: title Optional: format, editor

    delete: Delete documents
     Requires: none Optional: title

    list: List documents
     Requires: delimiter Optional: title, folder

    upload: Upload a document
     Requires: none Optional: title, folder, no-convert Arguments: PATH_TO_FILE

    get: Download a document
     Requires: (title OR folder) Arguments: LOCATION

  > quit

Usaré la sesión interactiva en todos los ejemplos.

Es importante configurar el navegador que utilizaremos con GoogleCL para realizar ciertas tareas. Hay dos opciones: exportar una variable de ambiente BROWSER o editar el archivo de configuración de la aplicación. Te recomiendo esta última.

  echo auth_browser=firefox >> ~./google/config

Desde el shell de GoogleCL y con ayuda de la documentación haremos unas sencillas tareas. Comencemos por obtener una lista de nuestros documentos. La primera vez te solicitará un usuario y luego que aceptes desde el navegador que GoogleCL pueda acceder a tu cuenta en el futuro.

  google
  > docs list
  Please specify user: *****
  Please log in and/or grant access via your browser at https://www.google.com
  ***** then hit enter.

El navegador que elegiste se abre y debes dar clic en “Grant access”. Un archivo access_tok_tu_usuario se crea bajo el directorio ~./google.

De ahora en adelante ya no será necesario autorizar nada para ese usuario. Después de aceptar, en el shell de google aparece un listado de tus archivos. Aquí muestro una vista parcial de la salida porque es extensa.

  Lista de ejemplos,http://docs.google.com/Doc?docid=*****
  Reporte 10-P,http://spreadsheets.google.com/ccc?key=*****
  [... más salida ...]

Ahora edito un documento de texto con Vim.

 docs edit --title "In the beginning was the command line" --editor vim

Y aquí lo descargo

 docs get --title "In the beginning was the command line"
 Downloading In the beginning was the command line to /home/eli/In the [...] .txt

Conclusiones

Como sucede con cualquier herramienta, GoogleCL puede ser tan poderoso como lo quieras. Sobre todo si lo incluyes en tus scripts personales. Además notarás que algunas opciones tienen bugs, pero ten paciencia y espera la versión 1.0 estable. Si eres frecuente usuario del shell y de los servicios de Google, encontrarás en GoogleCL un importante aliado para tu productividad.

Google permite poner una imagen de fondo en su buscador

Una de las cosas que caracteriza la página de entrada de Google es su fondo de color blanco. Pero si somos de los que nos gusta tener todo personalizado, a partir de hoy tenemos la posibilidad de colocar de fondo una imagen a nuestro gusto por medio de una opción que seestá empezando a implementar prácticamente desde ya.

google-personalizar-fondo
Google permite poner una imagen de fondo en su buscador

Por ahora, la característica sólo está disponible para los usuarios de EEUU, aunque si quieres probarla todo lo que tienes que hacer es ingresar con tu cuenta de Google y dirigirte a la dirección norteamericana del buscador (si no te aparece, vuelve más tarde). Allí, en la esquina inferior izquierda, tendrás el enlace para cambiar el fondo. Puedes elegir entre imágenes de galerías públicas de Picasa, las de tus propias galerías en el servicio o subir una desde tu ordenador. Eso sí, las imágenes tienen que tener un tamaño superior a 800×600.

Según dicen, esta opción estará accesible para el resto de países dentro unos días. Por cierto, animan a que si has personalizado tu página, lo hagas saber por Twitter incluyendo una captura con el hashtag #myGooglepage. Un pequeño detalle para aquellos que pasan todo el día usando su servicio y que gusten de personalizar al máximo sus herramientas. O, visto de otra forma, una manera de colocar un wallpaper en Chrome OS. ¿Por qué me da a mí que van por ahí los tiros?

Vía | Official Google Blog

Google pagará 500 dólares por vulnerabilidad encontrada en Chrome

Google ha lanzado un programa experimental para animar a los expertos en seguridad externos a su empresa a encontrar y reportar vulnerabilidades en su navegador. Siguiendo la estela del programa de la Fundación Mozilla «Security  Bug Bounty», Google pagará 500 dolares por vulnerabilidad encontrada. En casos especiales, un comité decidirá si incrementa dicha cantidad hasta un máximo de 1.337 dólares, aunque este último caso será para vulnerabilidades especialmente críticas o aquellas que acompañen informes sobre su explotación.

Según Google, no importa si la vulnerabilidad está en la versión open source Chromium o en la versión «normal» de Chrome. De todas formas, las dos versiones se diferencian escasamente: Chrome incorpora GoogleUpdater y envía un parámetro RLZ, que es seguido por Google, cuando se introduce una búsqueda en la barra de direcciones de Chrome. La empresa no dará premios a los que encuentren fallos en plug-ins de terceros.

Google espera que esta campaña mejore la seguridad de su navegador y, por extensión, la de sus usuarios. Cualquier bug encontrado puede ser notificado a través del sistema de seguimiento de fallos. Podéis encontrar más información y una lista de en la entrada del blog de Google que anuncia el programa.

Disponible la versión beta de Google Chrome para Linux

Aqui os dejo el email que me acaba de llegar de Google anunciando la salida de la version beta de Google Chrome para Linux

Hola a todos los usuarios de Linux:

Google Chrome ha lanzado una versión beta para Linux. Nos gustaría dar las gracias a todos los desarrolladores de Chromium y de WebKit que nos han ayudado a convertir Google Chrome en un navegador rápido y estable. A continuación incluimos algunos datos interesantes sobre el trabajo del equipo de Google Chrome:

60.000 líneas de código escritas para Linux
23 compilaciones de desarrolladores
2.713 bugs corregidos para Linux
12 colaboradores y editores de bugs externos para la base de código de Google Chrome para Linux y 48 colaboradores externos de código

Gracias por la espera. Esperamos que disfrutéis de Google Chrome.

El equipo de Google Chrome

http://www.google.com/chrome/intl/es/w00t.html

——–

(c) 2009 Google www.google.com 1600 Amphitheatre Parkway, Mountain
View CA 94043 Estados Unidos de América