Mis chrome extensions: traductor y otras más

Veo con tristeza que llevo mucho tiempo sin escribir en serio en este blog. Supongo que puedo poner mil excusas, pero aunque algunas sean ciertas, lo bien claro es que ninguna es lo suficientemente buena.

A veces me cuesta distinguir entre mi hobby y mi trabajo, porque prácticamente son lo mismo. Lo bueno es que trabajar en tu hobby es la leche. Lo malo es que decidir cambiar de hobby es algo dramático. Pero que no cunda el pánico, de momento mi hobby sigue igual.

La última "ramificación" de mi hobby ha sido la de hacer Chrome extensions. Empiezan a ocurrírseme y no puedo parar. A día de hoy he publicado 4 extensiones de Chrome propias y otra en Avanzis (de momento en fase de test).


Subgurim Translator
De todas esas extensiones, hay una en la que he invertido un poco más de tiempo e interés. La he llamado "Subgurim translator" y he procurado que fuera una herramienta de traducción tan potente como me ha sido posible. Si usais chrome y os es relativamente frecuente traducir, no puedo dejar de recomendárosla. Básicamente he cogido todo lo que hacían otras extensiones, lo he procurado mejorar y he añadido cosas nuevas que ninguna tenía.

Algunas de sus características:
  • Traducción instanténea.
  • Detecta el lenguage de tu navegador y lo guarda.
  • Si cambias el lenguaje origen o el lenguaje destino te los guarda para que no tengas que volver a seleccionarlos. Esto es así porque la mayor parte de las veces solemos traducir siempre entre los mismos idiomas.
  • Si no tienes claro cuál es el lenguaje origen, el botón de "detectar idioma" está muy a mano.
  • Una de las cosas que más me gusta: si eliges un texto en la página en la que estás y haces clic sobre la extensión, ésta te traduce el texto de inmediato. De hecho no importa ni si conoces el texto que has seleccionado. Lamentablemente, por cuestiones de seguridad de javascript, en las páginas HTTPS esta funcionalidad no está activada.
  • Una vez está el texto traducido, copiarlo al portapapeles es un único clic.
  • Por defecto está activada la opción de si se te cierra la extensión puedas mantener el texto original en el que estabas trabajando.
  • Por supuesto tienes un botón para traducir la página entera en un nuevo tab.
Os dejo un vídeo para que le echéis un vistazo.



Enlace del subgurim translator: https://chrome.google.com/webstore/detail/cdalmddifklficcbjgppcibjglmpbjjm

Lo que más me gusta de esta extensión es la arquitectura javascript que le he aplicado. Me encanta como lo he hecho. Es el código javascript más limpio que he hecho nunca.


Otras extensiones
Antes del Subgurim translator he estado trabajando en otras tres extensiones.

Una de ellas es poco útil se trata del Duplicate Tab, que te duplica el tab actual en un único clic. Algo que, como sabéis, se puede hacer clicando con el botón central sobre "recargar" o haciendo botón de la derecha --> duplicar al tab en cuestión... pero yo lo hice porque me apetecía... y para probar mi velocidad de creación de extensiones, jejeje. La verdad no me costó más de un cuarto de hora desde que se me ocurrió hasta que lo publiqué con vídeo incluído.

Las otras dos extensiones son "tab back" y "tab foward". Éstas si me gustan más y son bastante más útiles. Internamente guardan el historial de las pestañas/tabs que vas activando, de forma que navegar sobre ellas es muy fácil. A mí me pasa muchas veces que tengo un montón de pestañas abiertas, voy abriendo una y otra y en un momento dado quiero volver a la anterior pero no sé ni dónde está... pues con estas extensiones se resuelve. Por cierto, la segunda (la tab foward) es inútil por si misma (requiere la tab back). Y de paso aprendí cómo comunicarme entre extensiones.


¿Cómo aprender a hacer extensiones?
Pues la premisa es tener un conocimiento javascript ágil. Una extensión al final no es más que páginas html sobre las que realizas acciones javascript usando la API/librería que Chrome te ofrece. Es un resumen un poco malo, pero es poco más que eso: javascript + html.

Podría dar más explicaciones, pero es que el tutorial de la api es sencillo, breve y directo.