lunes, 30 de septiembre de 2013

Parecía una tontería, pero me costó encontrar el modo de averiguar cuanto tiempo lleva el escritorio innactivo, básicamente lo que hacen los salvapantallas para lanzarse.
La instalación standard (hasta donde sé) de openSuse no dispone de ninguna aplicación que directamente indique los segundos ó milisegundos que el escritorio (KDE ó GNOME) llevan sin recibir actividad por el teclado ó el ratón. Hay modos indirectos, a traves del comando WHO (who -a) ó consultado /proc/interrupts (cat /proc/interrupts).
Al final opté por compilar una mini-applicación que encontré naufragando por internet y que hace eso mismo: imprimir el tiempo de inactividad en el escritorio gracias a las librerías de salvapantallas (cambié un par de líneas).

Copia estas líneas a un archivo:#include <X11/extensions/scrnsaver.h>
#include <stdio.h>
main() {
XScreenSaverInfo *info = XScreenSaverAllocInfo();
Display *display = XOpenDisplay(0);
if (display != NULL) {
XScreenSaverQueryInfo(display, DefaultRootWindow(display), info);
printf("%u\n", info->idle); }
}
y guardalo como innactivo.c.
Ahora compilalo haciendo gcc -o innactivo innactivo.c -lXss
Copia el binario a /usr/bin y hazlo ejecutablesudo cp innactivo /usr/bin/innactivo
sudo chmod +x /usr/bin/innactivo

Listo. Ahora en cualquier consola al escribir innactivo se imprimen los milisegundos que lleva el sistema innactivo. En mi caso son siempre 8-9 los milisegundos que transcurren entre que ejecuto la orden y se imprime en pantalla.

sábado, 21 de septiembre de 2013 (Hoy)

Desde ya se puede navegar por los apuntes del blog y por las galerías de fotografía, vídeo y panorámicas usando las teclas IZQUIERDA y DERECHA de las flechas de cursor (las cuatro teclas con flechas que tiene prácticamente el 99% de los teclados modernos).
De este modo la tecla izquierda retrocede al apunte/fotografía/video/panorámica anterior y la tecla derecha avanza al siguiente apunte/fotografía/vídeo/panorámica. En la galería además sirve para avanzar de página de los álbumes. En breve lo incluiré también en los apuntes.

Lo único que tuve que hacer es incluir en las cabeceras de estas páginas la cabecera<link rel="prev" href="....."/>
<link rel="next" href="....."/>
y en javascript una función que lee estos valores y los asigna a dos teclas$(function() {
$(document).keyup(function(e) {
switch(e.keyCode) {
case 37 : window.location = $("head link[rel=prev]")[0].href; break;//left
case 39 : window.location = $("head link[rel=next]")[0].href; break;//right
} }); });

Inicialmente incluí las teclas PGDOWN y PGUP (33,34) pero entorpecía hacer scroll en la página de los apuntes más largos.

jueves, 5 de septiembre de 2013 (Hace más de 2 semanas)

Desde que actualicé a KDE4 creo que he puesto el plasmoid «Marco de imágenes» (Frame) varias veces en el escritorio y siempre lo acabo quitando unos días después, tiene un problema: lleva fatal que la imagen mostrada se actualice/cambie a intervalos, al hacer esto el plasmoid sobreimprime sobre la imagen (mala decisión) una advertencia avisando y aunque la imagen exista e incluso se esté mostrando correctamente debajo de la advertencia este aviso ya no desaparece del widget.
Esto obviamente inutiliza el widget para, por ejemplo, mostrar una imagen de cualquier de mis cámaras u otras webcams, imágenes de satélite, etc. Es muy molesto así es que lo acaba quitando.

Hace unos días lo volví a poner en el escritorio olvidando el fallo, excepto que esta vez al verlo de nuevo me decidí a corregirlo ¿van viendo las ventajas del software open-source?.

Plasmoid FRAME antes y despuésPlasmoid FRAME antes y después

El arreglo es una chorrada ya que básicamente consiste en editar el código fuente del plasmoid ( archivo: picture.cpp ) y cambiar la función que comprueba que la imagen ha sido cargada, en la línea 156 pone:
if ( newImage.isNull()) {
emit pictureLoaded(defaultPicture(i18n("Error loading image. Image was probably deleted.")));
} else {
emit pictureLoaded(newImage);
}

que ponga solo
emit pictureLoaded(newImage);

Una vez hecho el cambio se recompila el plasmoid y se obtiene el archivo plasma_applet_frame.so. Este archivo debería reemplazar al archivo /usr/lib/kde4/plasma_applet_frame.so (obviamente haciendo una copia de seguridad antes).
Si no queréis/sabéis compilar podéis descargar este widget «Marco de imágenes» modificado desde este enlace: plasma_applet_frame.so. No tiene ninguna modificación más y está probado en openSuse 11.4/KDE 4.6 pero casi con seguridad funcionará igualmente en KDE4 posteriores.

domingo, 1 de septiembre de 2013 (Hace más de 2 semanas)

Hace tiempo puse un método para la comparación de números decimales en Bash. Aunque funciona perfectamente no deja de ser algo chapuza multiplicar por 100000 para eliminar los decimales. Ignoraba que la misma orden que se usa para hacer las operaciones aritméticas, BC, admite también las comparaciones (< menor que, > mayor que) con ó sin decimales con lo cual además de elegante se acorta la tarea ya que la comparación se hace al mismo tiempo que la operación aritmética. Infinitamente más elegante es hacer esto:
a=12.2
b=24.4
if [ 1 -eq $(echo "($a - $b) > 0" | bc) ]; then
echo "A es mayor que B"
else
echo "B es mayor que A"
fi

sábado, 17 de agosto de 2013 (Hace más de 1 mes)

Hice unas modificaciones al código Javascript a aquel Explorador de Flickr que ya comenté por aquí. Es casi idéntico al anterior, es decir un HMTL+javascript que permite navegar desde una sola página por las últimas 100 fotos de cualquier usuario Flickr (siempre que sean fotos públicas) solamente indicando su número de usuario ó userid.
He mejorado algunas líneas, he incorporado alguna animación y ahora la pulsación sobre la imagen no dirige a la página de Flickr sino que amplia/reduce la imagen.

La idea era tener un código pequeño que se pueda insertar/reutilizar en otra aplicación/página y fácil de personalizar (pocas líneas de CSS/Javascript) y que al mismo tiempo puede ser utilizado en un ordenador cualquier simplemente descargando el HTML y desde el cual enseñar nuestro álbum de fotos (idealmente debería ejecutarse a pantalla completa – F11).

El documento está en http://www.trebol-a.com/publicar/flickrExplorer_v2.html, el antíguo (y todavía más sencillo) está en http://www.trebol-a.com/publicar/flickrExplorer_v1.html

martes, 16 de julio de 2013 (Hace más de 2 meses)

Aunque el servicio de vídeo de Instagram no creo que alcance la popularidad de su original servicio de fotografía ya se pueden multitud de vídeos con el sello característico de las imágenes manipuladas por este popular programa para smartphones: virado, saturación, contraste, viñeteo y formato 1:1 han marcado estilo y han conseguido algo aparentemente absurdo: que nos gastemos un paston en un movil de última generación para conseguir hacer que graben una escena como lo haría una caja de zapatos, y de las malas.
Pero mira, el servicio está ahí, funciona bien y tiene éxito, y ciertamente hay efectos y fotos que lucen bonitos cuando al modo tradicional probablemente no sobresaldrían de entre las «normalitas». Ahora el efecto se extiende al vídeo.

Si os gusta el efecto tipo «instagram«, desde una consola de GNU/Linux y teniendo MELT/MTL instalado podéis probar la siguente orden:melt video.3gp -filter vignette radius=0,6 smooth=1 mode=1 -filter gamma:0,9 -filter frei0r.coloradj_RGB R=1,2 G=1,6 B=1,2 -filter frei0r.levels "White output=2.0" Channel=3 "Show histogram=0" -consumer avformat:video_salida.avi

A la izquierda un vídeo tal y como lo graba el movil HTC Wildfire y a la derecha tras aplicarle el filtrado.

Cuaderno de campo es un blog desarrollado y mantenido por Trebol-a y en el que escriben Trebol-a, Miguel, Merche y Mónica
Si quieres saber algo más sobre los autores acude a la página acerca-de, si quieres contactar con alguno de nosotros hazlo a través de contactar ó de Google+

Creative Commons: Todo el contenido de la web (imágenes, textos, vídeos, a excepción de aquellas obras de otros autores enlazados por Cuaderno de Campo) se acoge a los términos expresados en la licencia Creative Commons