Captura de zonas de la pantalla en Ubuntu (2)

En la entrada anterior explique como crear un botón en la barra de navegación de GNOME para realizar capturas de zonas de la pantalla utilizando ImageMagick.

Ahora os voy a enseñar a como hacer esto usando una combinación de teclas o key-bindings y un script para mejorar un poco el resultado general y facilitar mejoras futuras.

Antes ya vimos como instalar ImageMagick y crear el botón. Ahora lo primero que vamos a hacer es el script:
#!/bin/bash
#Simple Screen capture script

filename=/home/$USER/Desktop/screen;
counter=1;
FOUT=$filename;

function checkFile(){
if [ -f $FOUT.png ]
then
FOUT=$filename'_'$counter;
let counter=counter+1;
checkFile;
fi
}

checkFile;

import $FOUT.png

#View the image.
display
$FOUT.png
Es un script muy sencillo que simplemente verifica que la imagen no exista y en caso contrario, intenta con otro nombre. Podéis cambiar el nombre o la ruta de los ficheros modificando la variable FILENAME. Tambien podeis cambiar la codificación del fichero cambiando PNG por JPG o BMP o GIF o lo que acepte ImageMagick... pero ¿para qué? PNG es el mejor para estos menesteres.

Le damos permisos de ejecución al script y lo guardamos en algún lugar accesible para todos los usuarios, como por ejemplo /usr/bin/
$sudo chown root.root screenshot.sh
$sudo chmod 755 screenshot.sh
$sudo mv screenshot.sh /usr/bin/
Ahora tendremos que crear la combinación de teclas que hará que toda la magia funcione. Para ello utilizaremos el gconf-editor. Asi que desde una shell del usuario ejecutamos lo siguiente:
$gconf-editor
Primero, buscamos la ruta APPS/Metacity/keybinding_commands donde editamos command_1 con el siguiente valor: /usr/bin/screenshot.sh


Segundo, vamos a la ruta global_keybindings, buscamos command_1 y añadimos la combinación de teclas que queramos, yo utilizo Control+P. Mirad las otras combinaciones para que os hagáis una idea de como va el asunto.


Ahora cada vez que pulsamos Control+P aparecerá la cruz, seleccionamos el area y se creará el fichero en la ruta que hayamos específicado en FILENAME, en éste caso, en el escritorio y sin preocuparnos de se sobre escriban.