
: Calibre - switching title and series column I have a problem with Calibre. I have imported many ebooks and the metadata were taken from the file name. In most cases the file name was author
I have a problem with Calibre. I have imported many ebooks and the metadata were taken from the file name. In most cases the file name was author - title.epub. All went well, the metadata were imported correctly to Calibre.
The problem is: For books which are part of a series, Calibre added the title of the book to the series column whereas the name of the series is in the title column. (Therefore searching for metadata e.g. comments on the net is not working because Calibre does not know that the title is found in the series column.)
Example: Author: Agatha Christie - Series: Hercule Poirot Mystery - Title: Death on the Nile. "Death on the Nile" would be in the series column, "Hercule Poirot Mystery" in the title column.
Is there a one-click solution to switch the title and series columns for several books? Or is there a specific setting that has to be used during the metadata downloading process that tells Calibre that the book title is in the series column?
P.S.: Reimporting the books is not an option for me for I don't have the files anymore.
Free books android app tbrJar TBR JAR Read Free books online gutenberg
More posts by @Frank

: Turn of reading speed personalization on Kindle Paperwhite? I know that I can reset personalized reading speed like this: How can I reset the reading speed data on a Kindle? But can I disable
2 Comments
Sorted by latest first Latest Oldest Best
Calibre - switching title and series column
There may be no elegant way to do what you're asking, but there is a way.
Create a temporary column to hold copied titles
place your cursor over any column heading, right click, and select "add your own columns"
click the "+" icon on the right margin of the dialog box
name your column "titletemp"
if you're like me and you routinely forget why you did something, add a description to remind yourself
click "OK"
Click "Apply" and accept the option to exit and restart Calibre
Optional: When Calibre re-opens, drag your new "titletemp" column over near the "title" and "series" columns so you can see them all together
Copy data from "series", which is actually the titles, to "titletemp":
select all the books you want to change, tap "E" on your keyboard to edit metadata in bulk
select the "Search and replace tab"
Parameters:
Search mode: Regular expression
Search field=series
Search for=([*])
Replace with=[leave blank]
Destination field=#titletemp ("#" denotes this is a custom field")
Mode: Replace field
This will copy the text without the index number, since your destination column type doesn't track index numbers
The result:
Copy data from "title", which is actually the series, to "series". This will overwrite the current contents, but that's okay because you have already copied to "titletemp".
Parameters:
Search mode: Regular expression
Search field=title
Search for=([d]*)
Replace with=[leave blank]
Destination field=#titletemp
Mode: Replace field
(Explanation: Since the mode is "Replace field", the search "([d]*)" removes the numbers and copies all other information to the destination field.)
The result:
The series information is now in the "series" field, but the series index numbers are wonky. That's because "series" and "series_index" are two distinct data points and we only copied one. So next, we'll fix your series numbering.
Copy series index number in "title" to "series_index":
select all the books again and enter bulk edit
Enter the same parameters as before, with these exceptions....
Search for=([a-zs]*), which removes all text leaving only the number
Destination field=#titletemp_index
you should see only the number in the test result section, so click okay to return to the main interface and admire the perfection of your new field. Take a moment to bask. I did.
Now we get our titles in the correct column. Copy data in "titletemp" to "title".
Parameters:
Search mode: Regular expression
Search field=#titletemp_index
Search for=([*])
Replace with=[leave blank]
Destination field=series_index
Mode: Replace field
Now, all your date should be in the correct columns.
remove "titletemp" column using the same dialog box in which you created it.
On a side note:
I use the following Regular Expression when adding books and it correctly imports books with or without a series, where file names are in the format: Author [- Series # ]- Title
To add this to your Calibre: Preferences > Adding books
^(?P[^-]+)(s*-s*([?(?P[^-0-9]+)s*(?P[0-9.]+)?]?)?)?.?-s(?P[^]{[()]+w)
Free books android app tbrJar TBR JAR Read Free books online gutenberg
No, there isn't a one click solution for swapping series and title. You can only swap title and author (in bulk metadata edit mode). If you want to automate this you have to write a (small) program that reads the metadata file (which is XML), does the swap for you, and feed it the offending files.
Not helpful for the files you already imported but maybe useful to know for new ones, is that you can change the regular expression ( Preferences -> Adding Books) that tries to extract metadata from the filename. The default there however does not put something in the series field, so you might already have changed that.
Biggest problem IMO is that Calibre uses the filename to guess the author/title etc, even if you add a file which has correct metadata available. I normally don't use Calibre's drag and drop feature, instead relying on programmatically adding files with the metadata extracted from the file internal data (for PDF/Epub etc) when available.
Free books android app tbrJar TBR JAR Read Free books online gutenberg