View Single Post
Old 02-20-2012, 05:18 PM   #1
JimmXinu
Plugin Developer
JimmXinu ought to be getting tired of karma fortunes by now.JimmXinu ought to be getting tired of karma fortunes by now.JimmXinu ought to be getting tired of karma fortunes by now.JimmXinu ought to be getting tired of karma fortunes by now.JimmXinu ought to be getting tired of karma fortunes by now.JimmXinu ought to be getting tired of karma fortunes by now.JimmXinu ought to be getting tired of karma fortunes by now.JimmXinu ought to be getting tired of karma fortunes by now.JimmXinu ought to be getting tired of karma fortunes by now.JimmXinu ought to be getting tired of karma fortunes by now.JimmXinu ought to be getting tired of karma fortunes by now.
 
Posts: 1,822
Karma: 510215
Join Date: Dec 2011
Location: Midwest USA
Device: Nook STR w/Glowlight, Kindle 3g, Droid
[GUI Plugin] EpubMerge

Merging together multiple eBooks together into one eBook seems to be a common request, but there haven't been many tools to do so.

This plugin provides the ability to create new EPUBs by combining the contents of existing (non-DRM) EPUB format eBooks.

The source may be seen, and a Command Line version obtained, from the project home page.

Main Features of EpubMerge Plugin:
  • Select a list of stories in calibre,
  • Order them,
  • Edit the metadata for the new combined eBook, and then,
  • Merge the contents of the EPUBs together into the new eBook, now including cover from metadata if set.
  • UnMerge previously merged epubs if metadata was saved during merge.
  • Configurably able to save the metadata for each merged book for UnMerging later if desired. (Defaults to On.)
  • Configurably able to populate custom columns from source books.
  • Options now stored inside the Library rather than an external JSON file.
  • CLI via calibre-debug --run-plugin
There are a few configurable options: whether or not to insert a Table of Contents entry for each merged book (with it's original TOC nested underneath it), an option to flatten the TOC down to one level only, and including the merged books comments. These options are stored by Library.

Special Notes:
  • Requires Calibre v0.8.57 or later.

Languages:

This plugin has translations for:
  • English
  • French
  • German
  • Portuguese (Brazil)
  • Spanish
  • Swedish
  • Ukrainian

Command Line Interface(CLI)

Calibre offers a command-line interface (CLI) for calling plugins.

This plugin supports that option and allows the user to call the plugin's basic functionality from outside calibre without having to install Python or get the plugin's files separately.

Details:
Spoiler:

Code:
Usage: calibre-debug.exe --run-plugin EpubMerge -- [options] <input epub> [<input epub>...]

Given list of epubs will be merged together into one new epub.


Options:
  -h, --help            show this help message and exit
  -o OUTPUT, --output=OUTPUT
                        Set OUTPUT file, Default: merge.epub
  -t TITLE, --title=TITLE
                        Use TITLE as the metadata title.  Default: '<first
                        epub title> Anthology'
  -d DESC, --description=DESC
                        Use DESC as the metadata description.  Default: '<epub
                        title> by <author>' for each epub.
  -a AUTHOR, --author=AUTHOR
                        Use AUTHOR as a metadata author, multiple authors may
                        be given, Default: <All authors from epubs>
  -g TAG, --tag=TAG     Include TAG as dc:subject tag, multiple tags may be
                        given, Default: None
  -l LANG, --language=LANG
                        Include LANG as dc:language tag, multiple languages
                        may be given, Default: en
  -n, --no-titles-in-toc
                        Default is to put an entry in the TOC for each epub,
                        nesting each epub's chapters under it.
  -f, --flatten-toc     Flatten TOC down to one level only.
  -c COVER, --cover=COVER
                        Path to a jpg to use as cover image.
  -k, --keep-meta       Keep original metadata files in merged epub.  Use for
                        UnMerging.
  -s URL, --source=URL  Include URL as dc:source and
                        dc:identifier(opf:scheme=URL).
  -u, --unmerge         UnMerge an existing epub that was created by merging
                        with --keep-meta.
  -D OUTPUTDIR, --outputdir=OUTPUTDIR
                        Set output directory for unmerge, Default: (current
                        dir)


Installation Steps:
  1. Download the attached zip file and install the plugin/add to context menu or toolbar/restart Calibre as described in the Introduction to plugins thread.

Paypal Donations:
  • If you find this plugin useful please feel free to show your appreciation.

Version History:
Spoiler:

Version 2.0.4 - 18 Nov 2014
Fix for calibre 2.10's changes to how keyboard shortcuts work. Removes unnecessary dynamic menu.

Version 2.0.3 - 23 Sep 2014
New translation for Swedish, courtesy of the volunteers at Transifex.

Version 2.0.2 - 04 Sep 2014
Add Include Books' Comments feature.

Version 2.0.1 - 04 Aug 2014
Don't put 'by <author>' in comment if only one author.

Version 2.0.0 - 23 Jul 2014
Now supporting Qt5 and Calibre 2.0 (currently in beta).
Translations updates to Spanish, French, German and Ukrainian and new translation Portuguese (Brazil), courtesy of the volunteers at Transifex.
Plugin zip file now uncompressed for performance per Kovid's recommendation.

Portuguese (Brazil)
Version 1.3.9 - 02 Jul 2014
Add Ukrainian translations, courtesy of the volunteers at Transifex.
Pretty format XML of generated metadata files.

Version 1.3.8 - 02 Feb 2014
Add German Translation. Thanks, Wolfgang.

Version 1.3.7 - 30 Dec 2013
Add French Translation. Thanks, Ptitprince.

Version 1.3.6 - 18 Aug 2013
Add configuration option to change word 'Anthology' to something else.

Version 1.3.5 - 30 Jul 2013
Add options to average int/float type custom columns on merge.
Add option to configurably attach tags to new merged books.

Version 1.3.4 - 23 May 2013
Fix for poorly formed metadata--ignore item tags outside manifest tag.

Version 1.3.3 - 16 Mar 2013
Move CLI main import into cli_main. Caused problems for some users on install.

Version 1.3.2 - 15 Mar 2013
Add calibre CLI.

Version 1.3.1 - 19 Feb 2013
Add UnMerge and 'Keep Metadata for UnMerge' options.
Expose an API for other plugins (eg FFDL) to call.

Version 1.2.5 - 13 Dec 2012
Allow namespaces in metadata xml.

Version 1.2.4 - 26 Nov 2012
Disable plugin when viewing device, not library.

Version 1.2.3 - 09 Nov 2012
Save PI options properly.

Version 1.2.2 - 23 Sep 2012
Minor fix for first epub missing metadata.
Only show 'by' author in TOC if only one author.
Make custom columns tab scrollable.

Version 1.2.1 - 28 Jul 2012
Allow for old JSON settings with only partial settings.

Version 1.2.0 - 27 Jul 2012
Options now stored inside the Library rather than an external JSON file.

Version 1.1.0 - 21 May 2012
Default cover to first book, add cover from metadata to epub if present.

Version 1.0.4 - 17 Apr 2012
Unquote item hrefs, so %20 becomes space, etc.

Version 1.0.3 - 06 Apr 2012
Improved handling of epubs with present, but empty author.

Version 1.0.2 - 24 Mar 2012
Improved handling of epubs with missing title and/or author.

Version 1.0.1 - 07 Mar 2012
Add configurable options to populate custom columns from source books.

Version 0.0.0 - 20 Feb 2012
Initial version.
Attached Files
File Type: zip EpubMerge.zip (277.7 KB, 2156 views)

Last edited by JimmXinu; 11-18-2014 at 06:43 PM. Reason: Update to latest version.
JimmXinu is online now   Reply With Quote