Manual de Calibre | Page 191

Manual de usuario de calibre, Publicación 2.73.0 Anatomía de un complemento de calibre Un complemento de calibre es muy sencillo, no es más que un archivo zip que contiene algo de código python y otros recursos, como archivos de imagen, que necesite el complemento. Sin más preámbulos, vamos a ver un ejemplo básico. Supongamos que está usando una instalación de calibre publicar sus propios documentos electrónicos en formatos EPUB y MOBI. Le gustaría que todos los archivos generados por calibre establecieran la editorial como «Hello World», he aquí cómo hacerlo. Cree un archivo llamado __init __.py (éste es un nombre especial y siempre debe ser el del archivo principal del complemento) e introduzca el siguiente código Python en él: import os from calibre.customize import FileTypePlugin class HelloWorld(FileTypePlugin): name = 'Hello World Plugin' # Name of the plugin description = 'Set the publisher to Hello World for all new conversions' supported_platforms = ['windows', 'osx', 'linux'] # Platforms this plugin will ˓→run on author = 'Acme Inc.' # The author of this plugin version = (1, 0, 0) # The version number of this plugin file_types = set(['epub', 'mobi']) # The file types that this plugin ˓→will be applied to on_postprocess = True # Run this plugin after conversion is complete minimum_calibre_version = (0, 7, 53) def run(self, path_to_ebook): from calibre.ebooks.metadata.meta import get_metadata, set_metadata file = open(path_to_ebook, 'r+b') ext = os.path.splitext(path_to_ebook)[-1][1:].lower() mi = get_metadata(file, ext) mi.publisher = 'Hello World' set_metadata(file, mi, ext) return path_to_ebook Eso es todo. Para agregar este código a calibre como un complemento, simplemente ejecute lo siguiente en el directorio donde reside el archivo __init__.py: calibre-customize -b . Nota: En OS X, las herramientas de línea de órdenes están dentro del paquete calibre, por ejemplo, si ha instalado calibre en /Aplicaciones las herramientas de línea de órdenes están en /Aplicaciones/calibre.app/Contents/console.app/Contents/MacOS Puede descargar el complemento Hello World en helloworld_plugin.zip80 . Cada vez que utilice calibre para convertir un libro, el método run() del complemento se ejecutará y el libro convertido tendrá como editorial predeterminada «Hello World». Éste es un complemento intranscendente, veamos un ejemplo más complejo que agrega un componente a la interfaz de usuario. 80 https://calibre-ebook.com/downloads/helloworld_plugin.zip 1.9. Cursillos 187