miércoles, 13 de abril de 2016

I just created a small project in GitHub, with code to generate a background with blinking stars, using Javascript and CSS3 gradients and animations.



This was developed for Night Earth (where the effect is currently disabled).

jueves, 7 de marzo de 2013

Script for translating comments in source files

I just created a script in order to translate the C-style comments (//) of a source file, with the aid from an external translation service, like Google Translate.

Steps to translate the comments of a source file:
  1. Translate the file in Google Translate or other translation service
  2. Copy the result of the translation to a new file
  3. Check that there are no extra or removed lines. If so, align the original and translated files
  4. Only one-line comments are supported. If there are blocks with C-style comments, preceed the comments in these lines with //
  5. Execute:
    translate_comments.sh original_file translated_file
This will keep the code and everything as in the original file, and only the comments from the translated file.

The script is:
#!/bin/ksh

TMP1=`mktemp`
TMP2=`mktemp`

cat $1 | awk -F"//" '{print $1;}' > $TMP1
cat $2 | awk -F"//" '{if (NF > 1) print "//"$2; else print "";}' > $TMP2

awk -F"//" '{
while ((getline code < ARGV[1]) > 0)
{
getline comment < ARGV[2];
print code""comment;
}
}' $TMP1 $TMP2

rm $TMP1 $TMP2
The script is available for download at:

https://github.com/jmgomezpoveda/Tools/tree/master/TranslateComments

martes, 24 de mayo de 2011

Instalar Pràctic2 en Ubuntu

La Junta Qualificadora de Coneixements de Valencià (JQCV) es el organismo dependiente de la Conselleria de Educación de la Generalitat Valenciana responsable de efectuar las pruebas de conocimientos de valenciano.

Entre el material que la JQCV proporciona en su página web para el estudio del valenciano, se encuentra el Pràctic2, que es un programa de autoaprendizaje mediante tests que simulan las pruebas de certificación.


Por desgracia, sólo hay disponible una versión para Windows. Por suerte, siguiendo unos pocos pasos podremos hacerlo funcionar en Ubuntu:

1. Si no tenemos instalado Wine, hay instalarlo, mediante cualquier método: Synaptic Package Manager, Ubuntu Software Center, o escribiendo en la línea de comandos:

apt-get install wine1.3

2. Descargar de la página web de la JQCV el programa Pràctic2, y descomprimir el fichero practic2.zip.

3. Ejecutar el fichero extraido "instal.exe"

4. Si no lo tenemos ya instalado, instalar winetricks, bien desde su página web, bien desde el Synaptic Package Manager, o escribiendo en la línea de comandos:

apt-get install winetricks

5. Ejecutar en un terminal "winetricks mdac28" y tras finalizar la descarga, seguid los pasos en pantalla.

6. Ejecutar en un terminal "winetricks jet40" y tras finalizar la descarga, seguid los pasos en pantalla.

Tras finalizar estos pasos, el programa funcionará perfectamente. Podemos ejecutarlo sencillamente haciendo doble click en el icono que se habrá creado en el escritorio (si hemos elegido esa opción), o mediante el menú Applications --> Wine.

¡Mucha suerte con el estudio!


Posible problema 1. Si se intenta ejecutar el programa inmediatamente después de la instalación, dará el siguiente error:

Error creating object. Please verify that the Microsoft Data Access Components 2.1 (or later) have been properly installed

La aplicación arranca, pero no puede acceder a sus datos internos, por lo que nada funcionará. Salimos de la aplicación.

Ejecutando el programa desde una terminal, probablemente veamos un mensaje como:

fixme:ole:CoResumeClassObjects stub
fixme:win:LockWindowUpdate (0x1009a), partial stub!
fixme:win:LockWindowUpdate ((nil)), partial stub!
err:ole:CoGetClassObject class {00000514-0000-0010-8000-00aa006d2ea4} not registered
err:ole:create_server class {00000514-0000-0010-8000-00aa006d2ea4} not registered
err:ole:CoGetClassObject no class object {00000514-0000-0010-8000-00aa006d2ea4} could be created for context 0x5

En este caso, tenemos que ejecutar "winetricks mdac28" para instalar la librería correspondiente.

Posible problema 2. Si se intenta ejecutar con las MDAC instaladas, pero sin las JET, dará el siguiente error:

Provider cannot be found. It may not be properly installed.

Ejecutando el programa desde una terminal, probablemente veamos un mensaje como:

fixme:ole:CoResumeClassObjects stub
fixme:win:LockWindowUpdate (0x1009a), partial stub!
fixme:win:LockWindowUpdate ((nil)), partial stub!
err:ole:CoGetClassObject class {6c736db1-bd94-11d0-8a23-00aa00b58e10} not registered
err:ole:CoGetClassObject no class object {6c736db1-bd94-11d0-8a23-00aa00b58e10} could be created for context 0x1

En este caso, tenemos que ejecutar "winetricks jet40" para instalar la librería correspondiente.

martes, 17 de mayo de 2011

Descargar páginas creadas con Google Sites

Para descargar al disco duro páginas creadas con Google Sites, se puede utilizar una herramienta llamada Google Sites Liberation.

Se trata de una herramienta desarrollada en Java, que se puede ejecutar en cualquier ordenador, independientemente del Sistema Operativo que tenga instalado, con tan sólo hacer doble click sobre el fichero .jar descargado.

Encontramos un ejemplo de utilización en la siguiente captura de pantalla:


Los principales parámetros a cambiar son:

- Webspace: url de la página a descargar. Ej: Para la página http://sites.google.com/site/siteadescargar/ se pone en esta casilla "siteadescargar".
- Username / password: cuenta de Google.
- Target directory: Ubicación en el disco duro de los ficheros a exportar o importar

Una vez introducidos los datos, pulsamos en "Export", y descargará la web a nuestro disco duro. La opción "Import" puede servirnos para restaurar copias de seguridad.

También es compatible gon Google Apps, introduciendo los parámetros correspondientes.

jueves, 17 de marzo de 2011

Organizar automáticamente el correo

¿Quieres darle tu dirección de correo a un grupo de gente, pero quieres tener automáticamente organizado el correo de esa gente?

Si usas Hotmail o GMail, y tienes una dirección del tipo "[email protected]" puedes dar tu dirección como "[email protected]" (usuario signo-más sufijo @gmail.com)

Los correos que se envien a "[email protected]" llegarán en tu cuenta de "[email protected]", donde puedes crear un filtro para que automáticamente se almacenen en una carpeta o se les asigne una etiqueta.

Por ejemplo, un profesor que tenga la cuenta "[email protected]" puede dar a sus alumnos las direcciones "[email protected]ail.com" y "[email protected]", sin necesidad de crear cuentas nuevas para cada grupo.

miércoles, 16 de marzo de 2011

Firefox: Enlaces mailto usando webmail (GMail, Yahoo, Hotmail...)

Si queremos que desde Firefox los enlaces que apuntan a direcciones del correo, del estilo de "mailto:[email protected]", se abra nuestro programa o cliente de webmail favorito, sólo hemos de seguir los siguientes pasos:

Vamos a Edición --> Preferencias --> Aplicaciones. Allí buscamos la línea donde dice "mailto" y cambiamos su valor a nuestro cliente de correo instalado, o nuestro proveedor de correo webmail:

Para que Hotmail aparezca seleccionable, habrá antes que haber seguido los siguientes:

1. Poner en la barra de direcciones del navegador "about:config" y buscar la línea "gecko.handlerService.allowRegisterFromDifferentHost". Cambiar el valor a "true":

2. Pegar en el navegador la siguiente línea:

javascript:window.navigator.registerProtocolHandler("mailto","http://hotmail.msn.com/secure/start?action=compose&to=%s","Hotmail")

Aparecerá una barra en la que pulsaremos en el botón "Añadir Aplicación".

3. De nuevo, poner en la barra de direcciones del navegador "about:config" y buscar la línea "gecko.handlerService.allowRegisterFromDifferentHost". Cambiar el valor a "false", como estaba al principio.

Y ya nos aparecerá Hotmail en la lista de proveedores en el menú Edición --> Preferencias --> Aplicaciones.