Posteado por: Javi Domínguez | 16/09/2014

Chapucillas de perezoso

Soy bastante perezoso. Me fastidian las tareas monótonas y repetitivas, prefiero automatizarlas siempre que puedo. Y una de las tareas que hago a menudo es convertir libros de un formato a otro. Me hice un archivo .bat hace un tiempo pero seguía siendo un coñazo porque hay que escribir la ruta completa de los archivos tanto de entrada como de salida. y en Windows las rutas son un poco largas. Así que hoy que tenía un poco de tiempo me he entretenido haciendo algo más cómodo: crear unos accesos directos en el menú contextual del explorador de Windows. Ahora cuando quiero convertir un libro sólo tengo que pulsar botón derecho sobre él, darle a “Calibre” y en el submenú elegir la opción que me interesa: convertir a rtf, convertir a epub, etc. Intro, tictac, tictac, un par de segundos y listo.

Voy a explicar como lo he hecho, más que nada para acordarme la próxima vez que tenga que hacerlo. Y si a alguien le sirve, mejor que mejor.

La primera condición es tener instalado el programa Calibre. Ya sabeis que no es accesible, pero podemos usar el archivo ebook-convert.exe en línea de comando.

Yo he hecho un sencillo script de Python para sustituir la extensión del archivo original por la nueva y llamar a ebook-convert.exe. No es estrictamente necesario pero yo soy así de pijotero.

Es este:

#———-inicio del script———-#

import sys, subprocess

archivo = sys.argv[1]
extension = sys.argv[2]
fragmentos = archivo.split(‘.’)
fragmentos[len(fragmentos)-1] = extension
salida = r’.’.join(fragmentos)
ebook_converter = ‘\”C:\Program Files (x86)\Calibre2\ebook-convert.exe\”‘
comando = ‘ ‘.join((ebook_converter,
r'”‘+archivo+r'”‘,
r'”‘+salida+r'”‘))
subprocess.call(comando)

#———-fin del script———-#

Ahora para modificar el menú contextual hay que tocar el registro de Windows. Creo que no hace falta decir que cuidadito,¿no?

Sigue estas instrucciones:

Accede a la clave

HKEY_CLASSES_ROOT\*\shell

Haz clic derecho en Shell y crea una nueva clave con un nombre cualquiera, por ejemplo ConvertirLibros

En el panel de la derecha necesitas crear cuatro valores de cadena llamados:
– Icon
– Position
– MUIVerb
– SubCommands

Los valores Icon y Position son opcionales, puedes prescindir de ellos si quieres, pero si los utilizas en Icon escribe la ruta al icono, lo más sencillo es poner explorer.exe.

Position indica la posición del botón en el Menú, si no indicas ninguno Windows lo sitúa en el centro, pero puedes especificar Top o Bottom (Encima o abajo).

En el valor MUIVerb escribe el nombre del botón, yo le he puesto Calibre

En el valor SubCommands escribe una lista de las opciones que vas a poner en el submenú separadas por punto y coma (;) sin espacios. Por ejemplo:

toRTF;toTXT;toEPUB;toPDF

A continuación accede a la siguiente clave:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\ShellHKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\Shell

En esa clave tienes que crear tantas subclaves como opciones va a tener el submenú. El nombre debe ser igual al que has escrito antes en el valor SubCommands.

Veremos un ejemplo solo con el primero. La clave se llamará toRTF.

En el panel derecho modifica la clave por defecto y escribe el texto que aparecerá en el botón: “Convertir a .rtf”

Añade una subclave a toRTF llamada command y en su valor por defecto escribe:

c:\python27\python.exe “C:\Program Files (x86)\convertir-ebook.py” “%1” rtf

y así con las otras tres, toTXT, toEPUB y toPDF, sustituyendo el último parámetro de la línea de comando por la extensión correspondiente.

Si lo has hecho todo bien tendrás tu flamante menú contextual, si no tu Windows nunca más volverá a arrancar… No, es broma, no será para tanto.

Fíjate en las rutas de los archivos. He puesto las que yo tengo, que no necesariamente tienen que ser las tuyas.

Y eso es todo. Hasta la próxima tarde libre.

Anuncios

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s

Categorías

A %d blogueros les gusta esto: