To ensure that eBookCleaner functions as designed, every paragraph (<p>...</p>) should be kept entirely on ONE line, and only ONE line!

The Main Toolbar

Opening Ebooks

  • 'Open...' will open an ebook in HTMLZ format, as is.
  • 'Open & Clean...' will open an ebook in HTMLZ format, but will first clean it up.
  • Cleaning entails:
    • flattening the HTML structure to be composed of paragraphs only (no divs, nested spans, etc).
    • creation of classes based on the formatting pattern of the individual paragraphs, allowing for batch editing.
  • You MUST create the HTMLZ in Calibre with the following options, for this to work:
    • under 'Look & Feel' select 'Smarten Punctuation'.
    • under 'HTMLZ Output' select 'How to handle CSS'='inline' and 'How to handle class based CSS'='inline'.
  • currently, all formatting is removed; it is up to you to reformat as you wish (this issue will hopefully be resolved soon, skeleton code already exists).

Saving Ebooks

  • 'Save' will save ebook to the currently open HTMLZ format ebook.
  • 'Save to HTMLZ...' will save to a location of your choice in HTMLZ format.
  • 'Save to EPUB...' will save to a location of your choice in EPUB format.
    • if EPUBcheck and java are installed, this will first run the EPUB through EPUBcheck.
    • currently, the EPUB is NOT split into multiple xhtml files.
  • 'Save to MOBI...' will save to a location of your choice in MOBI format.
  • You MUST have KindleGen installed for this to work. Due to licensing issues, this is currently not shipped with eBookCleaner but may easily be downloaded (Google is your friend...). Calibre may be used as an alternative, but this is not automatic.

Ebook Cover

  • Drag & Drop a cover onto the cover icon to change the cover. The cover will be automatically resized to 600x800.

Ebook Metadata

  • The basic metadata may be edited here.

Ebook Text

  • comprises some basic tools for editing the overall text, including:
    • 'Auto Format' will apply inline css from the default.css file in 'resources/css/'; it only supports a simple subset of css.
    • 'Create Title Page & Table of Contents' will automaticly create these for you, including the id attributes'.
    • However PLEASE NOTE:
      • use 'page' as one of the classes (space separated) in the paragraphs you wish to be included in the Table of Contents! this is how ebookcleaner recognises them!
      • using 'title' will cause the toc to include the text of the title, and a subsequent 'subtitle' will be included as well.
      • For Example:
        • <p class="page map">... --> 'Map'
        • <p class="page title">Chapter 5</p> --> 'Chapter 5'
        • <p class="page title">Chapter 5</p>, <p class="page subtitle">Jolly Joe</p> --> 'Chapter 5: Jolly Joe'
  • id/href attributes are created automatically, you don't need to worry about them.
  • the titlepage and toc use the templates specified in the document.
  • the titlepage title, author, series, book info is taken from the metadata; correct the metadata before creating the titlepage and toc.

Search & Replace

  • currently, all search and replace is carried out utilising the full python regex scheme. there is no 'regular' search/replace function.

Left View

  • there are four modes: paragraph, spans, images, and (possible) errors.
  • complex selections can be created using shift and ctrl (ensure that you hold them down while double clicking to edit, otherwise you will lose the selection).
  • most information is editable by double clicking the box.
  • the class should use space separated classes, and it comes with an autocomplete feature.
  • the text in paragraph mode has a special feature: if you type in a number, it will automaticlly number the selected items backwards and forwards.
  • For Example:
    • select the first 3 rows, type 'Chapter 4' in the second, you will get Chapter 3, Chapter 4, and Chapter 5.
    • you can then change to Chapter Three if you wish, using the menu->tools->numbers to words.
  • most tools are included in the left click context menu.
  • menu->case->normal undoes capitalised text and is fairly powerful; it uses all the words in the ebook to help decide if something is a proper noun.
  • to select paragraphs in a custom way, not by class, select part of their text in the right view, and click menu->paragraphs.

Right View

  • there are three modes: html, preview some, preview all.
  • preview some is useful for formatting (using the left view); it will jump to the selected item, and since it is previewing only some, it updates instantly.


  • most of the customisable features are in described in and are fairly straightforward, but you will need to access the source code.... (issue to be addressed later).

Final notes:

Ideas? Comments? Willing to help out in some way (documentation, ideas, coding, Calibre plugin, ...) please suggest it either at MobileReads or at

I'm more than aware these instructions probably won't suffice. Questions are more than welcome, please use the form provided at the 'Contact' tab.

Some of the buttons have popup tooltips too, I hope to add more as and when I find the time.

So, play around, mess with it. It does work!!! (I promise :) )

toptop of page