Skip to content

Quality Check

kiwidude68 edited this page Aug 16, 2024 · 7 revisions

MobileRead History

Introduction

This plugin is intended to help you identify covers or book metadata that may need editing in your library that the normal calibre search criteria cannot identify, or is more conveniently accessible. It also offers a battery of ePub quality checks to help you identify ePubs that may warrant further attention to remove cruft files, reconvert etc. You can also search across your ePubs for ad hoc criteria to find text or specifically named items using regular expressions.

Configuration Dialog

Main Features

  • Find ePub formats that have one, multiple, legacy or no jackets. Legacy jackets are from calibre conversions prior to 0.6.50 which will result in duplicated jackets if you convert again.
  • Find ePub formats that are invalid due to a missing container.xml file
  • Find ePub formats with invalid namespaces specified in the container or opf manifest
  • Find ePub formats that have non dc: namespace elements in the manifest
  • Find ePub formats that have files listed in the .opf manifest that are not in the ePub file
  • Find ePub formats that have files in the ePub that are not included in the .opf manifest
  • Find ePub formats that have CSS files in the ePub manifest that are not used from the html content
  • Find ePub formats that have unused image files that can be safely deleted
  • Find ePub formats that have iTunes plist or artwork files from viewing the ePub in iTunes
  • Find ePub formats that have calibre bookmarks files from the calibre ebook viewer
  • Find ePub formats that have OS artifacts like .DS_Store or Thumbs.db
  • Find ePub formats that have an NCX TOC that is hierarchical
  • Find ePub formats that have an NCX TOC with < 3 entries
  • Find ePub formats that have an NCX TOC with broken link entries
  • Find ePub formats that have broken <guide> references in the manifest
  • Find ePub formats that have html files larger than 260KB requiring splitting
  • Find ePub formats that have DRM
  • Find ePub formats that have Adobe DRM <meta> tags
  • Find ePub formats that have or do not have a cover that is replaceable when exporting from calibre
  • Find ePub formats that have or do not have SVG covers created by calibre
  • Find ePub formats that have or have not been converted using calibre
  • Find ePub formats that have <address> smart tags which corrupt readability
  • Find ePub formats that have embedded fonts
  • Find ePub formats that have @font-face declarations in CSS or html files
  • Find ePub formats that have Adobe .xpgt files with margins specified
  • Find ePub formats that have Adobe inline .xpgt links in the html files
  • Find ePub formats that have are left or unjustified i.e. no CSS file containing text-align:justify
  • Find ePub formats that have book margins different to your calibre defaults
  • Find ePub formats that have no book margins defined
  • Find ePub formats that have inline margins defined on the content files
  • Find ePub formats that have javascript files or <script> blocks
  • Find ePub formats that have unsmartened punctuation
  • Search the contents of ePub formats for ad hoc regular expressions of your own
  • Find Mobi/AZW/AZW3 formats that will not show in the documents folder on an Amazon Fire due to cdetype or ASIN missing/incorrect (with a Fix option below).
  • Find Mobi/AZW/AZW3 formats that have their Facebook/Twitter sharing disable on an Amazon Fire (with a Fix option below)
  • Find Mobi/AZW/AZW3 formats that have publisher imposed limits on the amount of text that can be placed in clipping notes when read on a Kindle.
  • Find books that have covers based on a choice of criteria such as file size or dimensions
  • Find books with an invalid title sort
  • Find books with an invalid author sort
  • Find books with an invalid ISBN
  • Find books with an invalid pubdate (equal to date timestamp)
  • Find books with a duplicate ISBN
  • Find books with a duplicate series
  • Find books with a series gap
  • Find books with a series numbering that does not match the published date
  • Find books with more than a specified number of tags
  • Find books with comments that have HTML style tags embedded like bold or italic
  • Find books with comments that have no HTML tags at all
  • Find books with commas in the author (useful if your author is FN LN)
  • Find books with no commas in the author (useful if your author is LN, FN)
  • Find books with authors that are all upper or all lower case
  • Find books with authors that contain non-alphabetic characters like incorrect separators or cruft
  • Find books with authors that contain non-ascii characters of accents/diacritics
  • Find books with authors that have initials in a different punctuation to your preference
  • Find books with titles that have possible series info like hyphens/numerics
  • Find books with titles that do not appear to be a valid title case
  • Search for books missing metadata, such as titles, authors, isbn, pubdate, publisher, tags, rating, comments, languages, cover or formats.
  • Change the search scope to either search your entire library (respecting search restrictions) or only your selected book(s). (Does not apply to items on the Missing checks menu, use a virtual library first if you want to search only a subset).
  • Swap author names for the selected book(s) between FN LN and LN, FN order or vice versa
  • Fix author initials for selected books to your preferred naming format
  • Rename author names for selected books to replace non-ascii characters
  • Find and fix the file sizes stored for a book format (useful if you edit books outside of calibre)
  • Find and fix folder/file paths that are missing commas for inconsistencies within a library for books added after calibre 0.8.35
  • Cleanup orphaned opf/jpg files/folders resulting from using Save to Disk followed by Remove from device. Do NOT ever run this against a calibre library folder, it is intended for external save to disk/device folders only.
  • Fix Mobi/AZW/AZW3 files for a Kindle Fire to insert an ASIN and set the correct cdetype in the internal data to enable sharing and appear in the correct folder
  • Ability to add books to an exclusion list for a particular quality check, if you intentionally want to exempt them. You can view and edit your exclusion lists.
  • Customise the menus to hide items not of interest

Configuration

Access the configuration dialog via:

  • Preferences -> Plugins -> User interface action -> Quality Check -> Customize plugin

Configuration Dialog

Option Description
Maximum tags For the "Check excess tags" check, how many tags maximum to allow.
Exclude tags For the "Check excess tags" check, ignore these tags when counting how many a book has.
Author initials format For author related checks/fixes, specify your desired initial format/spacing.
Visible Menus Control which menu options to appear in the plugin main menu.

Cover Quality Checks

Check What it does How to fix
Check Cover by file size Looks for covers that are above or below a threshold size. A very small size may indicate a very poor quality or highly compressed cover. A very large size may make books slow to navigate in calibre and result in large conversions.

Use this check to find covers that are not of sufficient quality.
Replace covers using metadata download, drag/drop from a web page or extract from the book format.
Check Cover by dimensions As above but uses the dimensions of the image rather than physical file size As above

ePub Structure Checks

Check What it does How to fix
Check having any jacket A jacket is a calibre generated file inserted into an ePub during conversion that contains a summary of the book such as title, authors, rating and description. You can enable this in the conversion options under Structure Detection -> Insert metadata as start of book.
This check looks for jackets checked that are both those from the latest versions of calibre as well as “legacy” jackets generated using versions of calibre prior to 0.6.50.

Use this check if you prefer to not have jackets contained in your books and are verifying your library does not contain any.
To remove the jackets, use the Modify ePub plugin or edit manually using Tweak ePub or Sigil.
Check having legacy jacket Legacy jackets are those generated using versions of calibre prior to 0.6.50. These jackets cause a problem when the file is reconverted, as the calibre code does not detect them and will duplicate and potentially split them making a mess of your converted ePub. They also have a different visual appearance to more recent calibre versions.

Use this check if you want to protect against future conversion problems or wanting a consistent visual appearance to your jackets.
To remove the jackets, use the Modify ePub plugin or edit manually using Tweak ePub or Sigil.
Check having multiple jackets If you have converted using calibre to insert a jacket on a book that also contained a “legacy” jacket above, your ePub will contain a mess! You will have duplicated jacket pages containing potentially different information in different styles.

Use this check to find such poorly converted ePubs in order to perform a cleanup of them to ensure they contain only the new style jacket which can be safely replaced in future conversions.
To remove the jackets, use the Modify ePub plugin or edit manually using Tweak ePub or Sigil.
Check missing jacket Looks for ePubs that have no jacket page at all.

Use this check if you like to have jackets in your ePubs and want to identify those books in your library that do not yet have one.
Use the Modify ePub plugin to insert a jacket, or reconvert in calibre using the "Insert metadata as page at start of book" option
Check missing container.xml An ePub is just a renamed zip file containing html pages as well as some xml files that document the structure of the book. One of these files within should be a META-INF/container.xml file, which points to the .opf manifest file. If your epub was incorrectly "assembled" by someone’s manual editing and is missing this file then it will not be readable.

Use this check to find invalid ePubs in your library.
Reconvert from another format or fix the ePub content using Tweak ePub
Check invalid namespaces A "namespace" is part of the information required within the xml files that make up the ePub and is used by programs to read and organise the content when displaying/editing. On rare occasions you may find ePubs that have been manually or invalidly constructed and have invalid namespace declarations within the container.xml or .opf manifest files. These do not conform to the ePub specification and will likely have issues when used with other tools or plugins.

Use this check to find invalid ePubs in your library.
Reconvert from another format or fix the ePub content using Tweak ePub
Check non-dc: metadata The .opf manifest file inside the ePub amongst other things contains a series of metdata tags that contain information the ePub that can be used by some readers or applications. This includes information such as the title and author. These fields are part of the ePub specification and will be prefixed with dc: as part of a documented namespace for that xml file.

However other applications might also insert their own metadata tags into that section such as calibre or Sigil. Such information does no "harm" to the ePub. However certain websites that users upload their ePubs for sale/distribution to have automated tools that will reject ePubs claiming such additional metadata that is not part of the specification.

Use this check to find ePubs that contain unneeded metadata if publishing externally.
Use the Modify ePub plugin to remove these elements. Alternatively you can edit manually using Tweak ePub.
Check manifest files missing The .opf manifest file inside an ePub is an xml file that contains an index to the files that make up the book. If the ePub has been manually tweaked, it is possible that someone deleted a file from the directory but did not remove the entry from the .opf manifest xml file. Most tools will ignore missing files when viewing or editing that ePub, however it cannot be guaranteed that is always the case. It could also be from a typing error if the manifest was manually edited or the file renamed afterwards.

Use this check to find potentially invalid ePubs in your library.
If the files missing are important, you will need to locate and add them using Tweak ePub. If the files are not needed, use the Modify ePub plugin to cleanup the manifest or edit manually.
Check unmanifested files The ePub may contain files that are not listed in the .opf manifest. These could be from incorrect matching names in the manifest, from orphaned files that should be deleted, or from third party tools that leave "cruft" inside the ePub file. Note that iTunes files, calibre bookmarks and OS artifacts are explicitly ignored by this check.

Use this check to find ePubs carrying unused files or invalid manifests.
Use the Modify ePub plugin to either add files to the manifest or remove them from the ePub. Alternatively you can edit manually using Tweak ePub or Sigil.
Check unused CSS files The ePub may contain CSS files left over from a manual operation such as splitting an Omnibus, that are no longer referenced from any html pages.

Use this check to find ePubs carrying unused CSS files that can be safely removed.
Remove manually using Tweak ePub or Sigil.
Check unused image files As a result of manual editing in Sigil or via Tweak ePub an ePub may contain jpg, png or gif image files which are not referenced from any html pages and are hence “orphaned”. These may also be an indication of an incorrect image source link.

Use this check to find ePubs carrying unused image files that can be safely removed to save space.
Use the Modify ePub plugin to remove them from the ePub. Alternatively you can edit manually using Tweak ePub or Sigil.
Check broken image links When calibre does an ePub conversion for the first time it can frequently result in a broken image link to the original cover being left behind in the ePub. Also there are situations where a user will convert an html document without the associated images being present.

Use this check to find ePubs with broken or tags that will not render nicely when read.
Edit manually using Tweak ePub or Sigil.
Check iTunes files When viewing an ePub via iTunes, it will insert a playlist file inside the ePub and sometimes an artwork file for displaying the cover in iTunes. These files can be considered “cruft”, particularly if you do not intend to use iTunes to view your ePubs in future.

Use this check to find ePubs carrying iTunes cruft that can be removed.
Use the Modify ePub plugin to remove these files, or remove manually using Tweak ePub.
Check calibre bookmark files When viewing ePub files in calibre, it will insert a bookmarks file similar to iTunes above storing your last reading position and any bookmarks added. You can disable this feature of the viewer in the ebook viewer preferences (or else they will keep reappearing!).

Use this check to find ePubs carrying calibre cruft that can be safely removed to save space.
Use the Modify ePub plugin to remove these files, or remove manually using Tweak ePub.
Check OS artifacts When extracting the contents of an ePub to your hard-drive and then rezipping, there can be additional files created by your operating system inserted that are not related to the ePub. For instance on windows systems an images folder may have a Thumbs.db file generated for the preview view of images in that folder.

Use this check to find ePubs carrying OS cruft that can be safely removed to save space.
Use the Modify ePub plugin to remove these files, or remove manually using Tweak ePub.
Check NCX TOC hierarchical The TOC .ncx file within an ePub defines the content entries available using the TOC function of your viewer/reader on some devices. Some reading devices do not like a hierarchical TOC (which tools like Sigil will automatically produce based on heading styles) and prefer the NCX to be "flattened". e.g. Chapter 1 appears at the same top level as "Part 1" rather than a child of it.

Use this check to find ePubs that may require their TOC being flattened if your device requires it.
Use the Modify ePub plugin to flatten the TOC NCX file, or edit manually using Tweak ePub or Sigil.
Check NCX TOC with <3 entries The TOC .ncx file is normally built by calibre, Sigil or by hand to provide a clickable or visual guide to the books contents on the device. If relying on tools like calibre or Sigil to build such a TOC it requires the heading styles to be defined in a particular way. An ePub that does not have a "proper" TOC probably only has a single entry of "Start Here" or similar. Note however that some ebooks (and certainly short fiction) may not have “chapters” and hence no natural points for a TOC entry to navigate to.

Use this check to find ePubs that may require a TOC being added or rebuilt.
To rebuild the TOC, reconvert using calibre to detect the headings if available, or use Sigil to edit and build a structure based TOC.
Check NCX TOC with broken links The .ncx file which contains the TOC for the epub can contain broken links, if the epub has been manually edited incorrectly or as the result of a cover substitution by a calibre conversion.

Use this check to find ePubs that will display errors if the broken link in the TOC is clicked on.
Rebuild the TOC by editing manually using Sigil or Tweak ePub.
Check <guide> broken links The .opf manifest file contains a <guide> section for entries of special meaning according to an ePub reader/device, such as pointing to the TOC file or cover image. If you have carelessly edited your ePub then these guide references will point to non-existent items in the manifest.

Use this check to find ePubs that will not correctly display when that guide item is chosen.
Edit manually using Tweak ePub or Sigil.
Check oversize html files Some devices such as from Sony require that individual HTML files within an ePub do not exceed 260KB in size or the device will crash when viewing the ePub.

Use this check to find ePubs that will crash when read on certain devices.
Perform a conversion using calibre, or edit manually using Sigil to split the HTML into multiple files.
Check DRM Certain calibre features will not work with books that are DRM encrypted, such as conversions.

Use this check to find ePubs that are encrypted with DRM.
Check Adobe DRM meta tag Adobe DRM as part of its protection uses a tag containing a urn identifier that is inserted in the header of each html page in the ePub. Some users after removing DRM also want such (harmless) cruft removed.

Use this check to find ePubs that have Adobe tag cruft if you intend to remove it.
Use the Modify ePub plugin to remove Adobe resource DRM meta tags, or remove manually using Tweak ePub or Sigil.
Check replaceable cover When exporting an ePub using Send to Device or Save to Disk, calibre will attempt to replace the internal cover with the latest from your library. It can only do this under a specific set of circumstances involving how the existing cover is internally identified within the ePub.

Use this check to find ePubs that can have the latest calibre cover substituted internally when exporting from calibre or using the Update Metadata feature of the Modify ePub plugin.
To ensure a replaceable cover, use the Modify ePub plugin with the "Insert/replace cover" feature. Alternatively perform a calibre conversion (less preferred option due to other changes that may make to your book). If your cover is "replaceable", you can now use the "Update metadata" feature of Modify ePub to replace the cover in the copy of the book inside your library without exporting.
Check non-replaceable cover The opposite of the check above. Use this check to find ePubs in your library that cannot have their calibre covers replaced during an export operation. See above.
Check calibre SVG cover When calibre inserts a cover (either by doing a conversion or using Modify ePub Insert/Replace cover) the xhtml page created can be created with SVG tags. This is controlled by a checkbox in the ePub output conversion preferences. SVG tags are not supported on all devices but they do allow full-screen images, so for some people they are a good thing and for others they are not desired.

Use this check to find books that have a calibre inserted cover page that uses SVG tags.
Ensure your SVG preference is correctly set in Preferences -> Conversion / Output Options -> ePub Output -> No SVG cover.

Then use the Modify ePub "Insert/replace cover" option. Alternatively reconvert to EPUB using calibre or edit manually using Tweak ePub/Sigil.
Check no calibre SVG cover The opposite of the check above. Use this check to find ePubs in your library that do not have a calibre inserted cover page, or if they do it does not contain SVG tags. See above.
Check calibre conversion When converted using calibre, metadata will be inserted in the ePub to indicate that calibre was involved in the process. calibre conversions to ePub can on rare occasions have unwanted side effects. However if an ebook has previously been converted then unless it was extensively edited afterwards performing an additional ePub conversion on itself is unlikely to have a negative impact.

Use this check to find ePubs that are probably safe to reconvert.
Check not calibre conversion If the ePub has never been converted using calibre (such as retail ePubs) then the internal structure and .css files will reflect those of the original tool used to create it. Performing a calibre conversion may result in undesirable changes to the ePub in some circumstances and should be treated with care to reverse if it goes wrong.

Use this check to find ePubs that have not been converted with calibre previously and hence should be converted with care to inspect afterwards in case of issues.

ePub Style Checks

Check What it does How to fix
Check <address> smart tags Some books have their content corrupted by <address> tags around street names etc, caused by a MS Word feature called Smart Tags. This forces the line to be not displayed correctly when read, disrupting the reading appearance.

Use this check to find ePubs that should be edited to remove and
tags.
Edit manually using Tweak ePub or Sigil. Search for the closing tag of </address>.
Check embedded fonts Some ePubs carry embedded fonts as .ttf or .otf files, to ensure that their content is rendered with a font representing all the characters they contain. Some devices may not support embedded fonts, they take considerable extra space and the font choice is not always to the user’s liking.

Use this check to find ePubs that carry embedded fonts if you are interested in removing them to save space or alter reading appearance.
Use the Modify ePub plugin to remove, or edit manually using Tweak ePub or Sigil.
Check @font-face When embedding fonts in an epub or forcing certain fonts to be used by your reader (on some devices) then the CSS file(s) will contain @font-face declarations. If you subsequently convert that ePub with calibre, those declarations get moved into each html file. A user who decides to remove the embedded fonts for preference/space reasons (perhaps using the Modify ePub plugin) will want all of these @font-face declarations removed as well.

Use this check to find ePubs that carry unwanted @font-face cruft in the CSS/html files.
Use the Modify ePub plugin to remove, or remove manually using Tweak ePub or Sigil.
Check Adobe .xpgt margins ePubs that have been created using Adobe tools will contain a .xpgt file that enforces margins. These are in conflict with the traditional css styles and can cause wasted reading space when viewing on devices. Recent versions of calibre when converting will zero any margins in such a file.

Use this check to find ePubs that may not view acceptably on your device/reader.
Use the Modify ePub plugin to remove all margins from the .xpgt files, reconvert using calibre or remove manually using Tweak ePub or Sigil.
Check Adobe inline .xpgt links As with the option above, ePubs that have been created using Adobe tools will contain a .xpgt file that enforces margins. The .xpgt file is linked to each html page in the epub using a <link> tag. Some users want all such tags removed from their epubs, particularly if they have zeroed the margins thereby making the xpgt file redundant.

Use this check to find ePubs that have links to Adobe cruft you would like to remove.
Use the Modify ePub plugin to remove .xpgt files and links, or remove manually using Tweak ePub or Sigil.
Check CSS non-justified Many people prefer full-justification of their ePub books rather than left justification. This is usually controlled with a text-align: justify value within the CSS stylesheet.

Use this check to find ePubs that do not have a css file with text-align: justify specified.
Edit manually using Tweak ePub or Sigil.
Check CSS book margins An ePub can have margins defined on body and @page styles. These margins will be replaced with your calibre defaults when you do a conversion.

Use this check to find ePubs that have margins not meeting your preferred default.
Use the Modify ePub plugin to replace the margins with your calibre defaults.
Check CSS no book margins Some ePubs have no margins defined at all on body or @page elements.

Use this check to find ePubs that have margins not meeting your preferred default.
Use the Modify ePub plugin to replace the margins with your calibre defaults.
Check inline @page margins Some ePubs have margins define on each content page (rather than using just a single CSS style).

Use this check to find ePubs that have body or @page margins defined in individual content pages.
Use the Modify ePub plugin to replace the margins with your calibre defaults.
Check javascript <script> A number of ePubs whose origins lie in html pages have javascript embedded in .js files and with inline <script> blocks referring to them. This javascript is of no use in ereaders for the ePub format and can cause issues when editing in editors like Sigil. Use the Modify ePub plugin to strip the <script> blocks and any external .js files.
Check smarten punctuation Use this check to find ePubs that have unsmartened quote characters indicating they have not had a smarten punctuation option applied. Use the Modify ePub plugin to smarten punctuation.

MOBI Checks

Check What it does How to fix
Check missing EBOK cdetype Users wanting to store their MOBI/AZW/AZW3 files on a Kindle Fire will require the internal cdetype at EXTH 501 to be set to EBOK in order for it to appear in the correct folder.

Use this check to find MOBI/AZW/AZW3 files that need their cdetype to be changed for use on a Kindle Fire.
Use the "Fix MOBI ASIN for Kindle Fire" option of this plugin. Alternatively reconvert using calibre setting the Personal document tag to blank rather than [PDOC].
Check missing ASIN identifier Users wanting to store their MOBI/AZW/AZW3 files on a Kindle Fire will require an ASIN identifier in order for it to appear in the correct folder. This check looks at the EXTH 113 header for the presence of a value.

Use this check to find MOBI/AZW/AZW3 files that require an ASIN internally for use on a Kindle Fire.
Obtain an ASIN identifier such as by using the Amazon metadata download plugin. Then...
Use the "Fix ASIN for Kindle Fire" option of this plugin. Alternatively reconvert using calibre, or use an external Mobi editor and assign an ASIN value at EXTH 113 (and EXTH 504 to enable sharing).
Check Twitter / Facebook disabled For Kindle Fire users wanting to use the “share” feature of their device to share their book review on Twitter/Facebook. To enable this the MOBI/AZW/AZW3 header must have an identical ASIN at EXTH 113 and EXTH 504.

Use this check to find MOBI/AZW/AZW3 books that do not have an identical ASIN required for enabling sharing on a Kindle Fire.
As above – the ASIN must be of the ebook edition on Amazon.
Check clipping limit MOBI/AZW/AZW3 files may have a clipping limit (specified as a %) stored in their internal EXTH header at 401 to impose a limit on the amount of the book that can be placed in a Kindle clippings file (e.g. 10%). This can cause grief for students and users wanting to make notes on their devices.

Use this check to find MOBI/AZW/AZW3 books that have a clipping limit specified that is less than 100%.
Use Mobi2Mobi or similar tools to edit the EXTH header and set the value at 401 to 100 as mentioned in this thread. Or do a self conversion in calibre.

Metadata Quality Checks

Check What it does How to fix
Check title sort The title sort is used by calibre to order your books on screen when sorting by the title column. It is generated automatically when you edit the book title but can be manually overridden in the Edit Metadata dialog. When the title sort differs from that which calibre would generate, the Edit Metadata dialog will display the field background in red.

Use this check to find books which would display a red title sort field in Edit Metadata indicating the title sort is out of sync.
Use the bulk metadata edit dialog or edit the titles individually.
Check author sort The author sort is used by calibre to order your books on screen when sorting by the authors column. It is frequently also used for other features such as collection generation. It is generated automatically when you edit the book authors but can be manually overridden in the Edit Metadata dialog. When the author sort differs from that which calibre would generate, the Edit Metadata dialog will display the field background in red.

Use this check to find books which would display a red author sort field in Edit Metadata indicating the author sort is out of sync.
Note that there are cases where this is desired to be different such as when there are multiple authors for a book but you want it listed within a series for the main author.
As above
Check ISBN The ISBN field must conform to certain validity for ISBN-10 or ISBN-13. It is used primarily for metadata download lookups. When the ISBN is invalid, the Edit Metadata dialog will display the Ids field background in red.

Use this check to find books with an invalid ISBN.
Use the Extract ISBN plugin or edit manually to replace the ISBN. You can also use a metadata download to replace it.
Check pubdate When a book is first added to calibre, the pubdate (publication date) column is set to the date/time the book was added, rather than blank. Retrieving metadata will update this column if metadata is found.

Use this check to find books with a pubdate that has not been changed from when the book was first added to calibre, indicating is is most likely incorrect.
Use a metadata download to update the pubdate field or edit manually.
Check duplicate ISBN Looks for multiple book entries in calibre that have the same ISBN value. This situation indicates either you have duplicate records in your database, or that one of the books has an incorrect ISBN.

Use this check to find books that appear to be duplicates by their ISBN only.
If the books are not duplicates, replace the ISBN as per "Check ISBN" above. If they are duplicates, then merge them using the Edit -> Merge feature of calibre.
Check duplicate series This looks at the series names used by your books and identifies any books that match exactly on both series name and index. It is a good idea to ensure your series names are unique and not reused across different author series, or else the calibre auto-numbering will not work correctly and you cannot use the “Similar Series” feature to see just the books in that particular series.

Use this check to find books that are duplicates because of their series name/index, or where two different series have been setup with the same name.
Use the Manage Series plugin to rename a series, edit manually or use the bulk Edit Metadata dialog. If the books are genuine duplicates then use the Merge feature of calibre.
Check series gaps This looks at the series column to identify any missing integer series values between 1 and the maximum you have for that series. So if you have a series Foo with indexes 1, 1.5, 3 then it will report you are missing Foo [2].

Use this check to find gaps in series you collect.
Create empty books for the missing series values.
Check series pubdate order Due to the unreliability of pubdate (publication date) values during Metadata Download it can often be the case that it is blatantly obvious they are incorrect where the publication dates are not ascending when viewing the series in order. Kindle owners in particular using the "Sort by Author" feature will find their books sorted using reversed pubdate, so it can be confusing to not see the books in a desired reading order.

Use this check to find books that do have series indexes assigned that do not match an increasing pubdate order.
Edit the pubdate column manually.
Check excess tags In the configuration screen for this plugin you can specify a threshold limit for how many tags you would like on your books. If you enable tag downloading from sources such as Google books, you will inevitably get a lot of "random stuff" added which can swamp your library.

Use this check to find books that have a count of tags exceeding your configured threshold.
Edit the tags on a particular book, or use the tag browser to rename tags to merge them together.
Check HTML comments A few devices do not like HTML markup in the comments field when this is attached to the book metadata.

Use this check to find books that have a comments field containing html markup.
Edit the comments manually or download metadata with the "Convert all comments to plain text" option checked.
Check no HTML comments If you are after consistency you may have legacy comments that do not contain html markup within them.

Use this check to find books that have a comments field without any html markup.
Edit the comments manually or download metadata with the "Convert all comments to plain text" option unchecked.
Check authors with commas If you prefer to have your authors displayed as "FN LN" then the presence of a comma may indicate an author incorrectly imported as "LN, FN". Note that you may also have chosen to import a name as “FN LN, Jr” which would also show up in this check. You can modify the search criteria in the plugin preferences.

Use this check if you store your authors as "FN LN" and want to detect invalid authors of "LN, FN".
Edit the author manually or rename using the tag browser.
Check authors missing commas If you prefer to have your authors displayed as "LN, FN" then the lack of a comma may indicate an author incorrectly imported as "FN LN". You can modify the search criteria in the plugin preferences.

Use this check if you store your authors as "LN, FN" and want to detect invalid authors of "FN LN".
Edit the author manually or rename using the tag browser.
Check authors for case When importing books you might have authors that are incorrectly cased such as all lowercase or uppercase.

Use this check to find author names which are either all uppercase or all lowercase.
Rename the author using the Tag browser or bulk edit metadata dialog.
Check authors non alphabetic If the metadata for an author is not imported or set correctly it will contain invalid characters such as a semi-colon representing an incorrect separator. The valid characters checked for are A-Z, comma, period, minus and apostrophe – anything other than that is considered invalid.

Use this check to find authors with invalid characters in their names.
Rename the author using the Tag browser or bulk edit metadata dialog.
Check authors non ascii Authors with accents/diatrics in their names such as Björn can cause issues in the search bar. Calibre 0.8.60 added a new option in Preferences -> Searching to get around this however it comes at a performance cost for large libraries. Some users may prefer to simplify their author names or be looking for a consistency of naming.

Use this check to find authors who have accents/diatrics or other non-ascii characters in their names if you prefer to not have them.
Rename the author using the Tag browser or bulk edit metadata dialog.
Check authors initials Author initials can be specified in a number of different ways such as "AN Author", "A N Author", "A.N. Author" and "A. N. Author". Inconsistencies can increase the likelihood of duplicates. You can set your preferred author initials format on the configuration options screen for this plugin.

Use this check to find authors who have initials in a format not consistent with your preferred format.
Rename the author using the Tag browser or bulk edit metadata dialog.
Check titles with series When importing books if your regular expression is incorrect you may have books that contain series information in the title, such as "Title – Series[1]" etc. This is a quick check that looks for either hyphens or numeric values in the title which might indicate this situation. This check will produce a number of false positives.

Use this check as a quick review after a bulk import to verify your filenames matched your regular expression correctly for the title and series fields.
Edit the title manually or use the bulk edit metadata search replace.
Check titles for title case calibre offers a title case function to convert book titles to an official casing as often used by libraries, publishers etc. For instance words like the should have a lowercase t etc. After importing filenames you might have all lowercase names or other undesired combinations. There can of course be situations where you may prefer the casing to match that of the official title.

Use this check to find titles which are not consistent with the "title case" approach to naming.
Use the bulk edit metadata screen to apply title casing. Or edit individually and use the right-click menu to assign title casing.

Metadata Quality Checks

Check What it does How to fix
Check missing title Use this check to search for books missing a title (a search where title has a value of Unknown). Edit metadata for the book
Check missing author Use this check to search for books missing an author (a search where author has a value of Unknown). As above
Check missing ISBN Use this check to search for books with no ISBN identifier As above
Check missing pubdate Use this check to search for books missing a published date As above
Check missing publisher Use this check to search for books missing a publisher As above
Check missing tags Use this check to search for books missing tags As above
Check missing rating Use this check to search for books missing a rating As above
Check missing comments Use this check to search for books missing comments As above
Check missing languages Use this check to search for books missing languages As above
Check missing cover Use this check to search for books missing a cover As above
Check missing formats Use this check to search for books missing formats Add book formats if these are not intentionally empty book entries

Search ePubs

Check What it does
Search ePubs Allows a user to search the ePub formats in their library to find any which have text matching the specified regular expression. The last 10 expressions are saved. You can also change the scope for which document(s) within the ePub to check for, and whether to display all occurrences or stop at the first match (faster).

Fix Menu Items

Check What it does
Swap author FN LN <-> LN,FN For the selected books, will attempt to alternate each author name either from FN LN to LN, FN format or vice versa (depending on whether it contains a comma already or not). If there are multiple author names for a book, each name is flipped independently.

Use this action to quickly remove swap author name order without manually typing it.
Reformat author initials This is a partner for the "Check authors initials" option to rename an author to ensure that any initials confirm to your desired preference in this plugin configuration. For instance if you set your preference to A.B. and you select books with an author M R Jones then it will rename the authors on those books to M.R. Jones. If the author does not appear to have initials e.g. Joe Bloggs or Mr Jones or Joe Bloggs Jr then it will be left untouched.
Rename author to ascii This is a partner for the "Check authors non-ascii" option to rename an author to replace accented or diatrics characters with their english ascii equivalent. So for instance Björn will be renamed to Bjorn. While calibre 0.8.60 added the ability to type searches for Bjorn to return both variants, enabling that option will slow down all searches in your library particularly noticeable for large libraries. Users may instead prefer to replace the names with their more easily typed equivalents and turn off Unaccented characters match accented characters in** Preferences -> Searching**.
Check and repair book sizes When you add a book to calibre it will store in the database the size of the file in bytes. This is used just for informational purposes for the Size column. If you edit your book directly outside of calibre, such as using Sigil with the Open With plugin, then the size will not be updated in the database.

Use this action to find books with a format that has changed in size since it was added to calibre, and update the size value in the database.
Check and fix folder paths In calibre 0.8.35 the naming strategy for book filename and author folders was changed to allow commas. New books added to your library since then have this new naming convention, however older books still exist with underscores, resulting in a greater number of author folders than should be required. For users who have legitimate reasons to examine the library folders this may not be desirable.

Use this action as a one off exercise to ensure all your author folders and file names are renamed as required to the new naming standard.
Cleanup .opf files/folders If you use the save to disk feature for your device, and then remove books, you may find you have orphaned cover .jpg and metadata .opf files in that folder structure. This can build up over time with undesirable effect. It is intentional by calibre to not remove these files as a conservative approach to only removing the actual book format.

Note that you should never run this feature against a calibre library, because "Empty Book" entries fall into this exact criteria, and would result in those being removed and your database being out of sync.

Use this cleanup to remove all .opf or .jpg files where they are the only files in that folder. If after removal the folder is now empty, it is removed as well.
Fix ASIN for Kindle Fire To correctly locate and share your books on a Kindle Fire an ASIN and cdeType header must be correctly set inside the MOBI/AZW/AZW3 file. To avoid doing a calibre conversion (which risks altering the appearance of your ebook) you can use this option instead. First it will check your identifiers associated with the book in order of asin, amazon and then any regional variations like amazon_uk. You should set one of these to the ASIN of the ebook edition from Amazon if you wish to enable Facebook/Twitter sharing. If no ASIN is found, this plugin will generate a random id.

This ASIN is then inserted inside the MOBI header at EXTH 113 and 504, as well as setting the cdetype at EXTH 501 to EBOK so your book will appear in the correct folder on your Kindle Fire.

Other Features

Search ePubs

Configuration Dialog

Exclude from Checks

If you know specific book(s) will "fail" a particular check and you want to treat them as an exemption you can exclude them from a check. For example perhpas an author's name does not meet your desired convention but in this one case you want all their books to not repeatedly get flagged for it.

Configuration Dialog

If you want to view what exclusions are in place for a particular check, you can use the View exclusions... menu option.

Configuration Dialog

Donations

If you enjoy my calibre plugins or extensions, please feel free to show your appreciation!

paypal

paypal.me/kiwicalibre