03-20-2018, 11:42 PM | #1 |
Connoisseur
Posts: 72
Karma: 10
Join Date: Oct 2016
Device: iPad Pro 12.9"
|
Feature Requests: Series Syncing, Search-Replace Meta-Data Editing
Sorry if this is not the right place for this, but with all the frequent updates, I'd like to chime in with a feature request or two.
1) Syncing books by series. Currently, I have to select the book once my iPad is synced via Wireless connected, while existing synced books automatically resync to update any changed meta-data. Can it be set up to automatically sync books by series, so that any new books added to my Desktop Calibre to a series that is being synced will also sync to the device when it is connected? 2) I would like to have a search...replace function when editing meta-data (like Series name), such as when I want to correct a persistent mis-spelling of an author name or title or series name. Granted I can sort of do this by batch selecting and meta-data editing, but a search-replace function works more efficiently without having to find the misspelled words first. 3) I'd like to be able to change the series name of a series of books without changing the series number. Last time I checked, whenever I change the Series Name, the series numbers reset, which is problematic when I order them by Series Number because I liked that order in the first place. 4) Any chance we got get better plugins for importing meta-data for Comic Books? I'm using Comictagger, but with it requiring only cbz format, and only doing one book at a time, it's still very cumbersome to use for my large collection. Thanks for your consideration, AD |
03-21-2018, 11:24 AM | #2 |
creator of calibre
Posts: 44,391
Karma: 23798586
Join Date: Oct 2006
Location: Mumbai, India
Device: Various
|
1) This is a calibre comapnion issue I think, you should post in its forum
2) There is already a search replace function int he bulk metadata edit dialog 3) Simply right click the series name int he tag browser and rename it, as faras I know, doing that will not change the series numbers, unless the name you are renaming to already exists in some books with conflicting numbers. 4) Not something I am personally intereseted in, you should post it in the plugins request thread. |
Advert | |
|
03-21-2018, 11:47 AM | #3 |
Well trained by Cats
Posts: 30,402
Karma: 58055234
Join Date: Aug 2009
Location: The Central Coast of California
Device: Kobo Libra2,Kobo Aura2v1, K4NT(Fixed: New Bat.), Galaxy Tab A
|
#3
You can also use the Manage Series Plugin if you need to reorder (renumber) a series, it allows a name change at the same time. I would not use it for just a name change for a non-contiguous, set of integers as it wants to renumber the set without user intervention |
03-24-2018, 02:54 AM | #4 |
Connoisseur
Posts: 72
Karma: 10
Join Date: Oct 2016
Device: iPad Pro 12.9"
|
Thanks for the responses.
I did put a request for #1 elsewhere and got a workaround that I'm still experimenting with. I confirmed that #3 did work, thanks for that. I'm not sure why numbers changed previously when I did this, but now I know how to do it without screwing up the numbers. Regarding #2, I found the search-replace dialog and also downloaded the recommended plugin but I'm not sure that either of these will let me do what I want to do... to be more specific, what I want to do is: a) Prefix each title of a book within a given series with a specific name - in this case, the name of the comic book "The Avengers" b) Place a serial number in 3-digit format in the title after that prefixed title but before the existing title to reflect the issue number (which is currently in the series number). Example: Avengers #001 Title reads "The Coming of the Avengers" which I want to change to "The Avengers #001: The Coming of the Avengers" in the Title. There are 402 issues in this series so an automated solution is preferable. The number could be imported from the series number or simply started from #001 and assigned one at a time to each issue in the series. c) Change the series name to something generic like "Marvel Comics" and then change the series numbers to a generic series number based on the specific issue's publication year and month like yyyymm. The idea being to put all my Marvel Comics issues into chronological order by sorting by series after this is done. I'm not sure if there are existing tools that will help me do that, but that's what I'm hoping to have... if there is any interest in developing it |
03-25-2018, 10:28 AM | #5 |
Guru
Posts: 939
Karma: 418804
Join Date: Jun 2015
Device: Rocketbook, kobo aura h2o, kobo forma, kobo libra color
|
The bulk search and replace is very good at making the same change to a bunch of books (i.e., adding your prefix), or copying data between columns using regex and () group operators.
For instance, if you already have the date in the format you want, I think you could copy it to the series column. I remember doing something like that with a magazine with about 100 issues in it. |
Advert | |
|
03-25-2018, 12:25 PM | #6 | |
Connoisseur
Posts: 72
Karma: 10
Join Date: Oct 2016
Device: iPad Pro 12.9"
|
Quote:
|
|
03-26-2018, 07:39 AM | #7 |
Guru
Posts: 939
Karma: 418804
Join Date: Jun 2015
Device: Rocketbook, kobo aura h2o, kobo forma, kobo libra color
|
Use the three preview lines to see if it is going to do what you want. The hard part will be finding the numbers you want and changing the format. It isn't clear to me where they are coming from, some trickery may be needed there. |
03-28-2018, 12:08 AM | #8 |
Connoisseur
Posts: 72
Karma: 10
Join Date: Oct 2016
Device: iPad Pro 12.9"
|
So in my case, I have the publication date in the format "Nov 1989." I want to change the series number to yyyymm format, so in this case, "198911"
First problem I'm seeing (see screen shot) is that I don't have an option to specify a different destination field. Also, by "rexgex" I assume you mean a wild card expression? I'm not sure what Calibre understands here. I assume from what you are saying that I would have to make a custom column first to translation the publication date into yyyymm format? EDIT: OK, nevermind first problem above. Apparently the way to get "destination field" option is to select "regular expression" in search mode. I'm still not sure how to translate the "Nov 1989" pubdate to "yyyymm" formation. But I assume that, if I could do that, I would select the "series index" as the destination field. Last edited by American_Desi; 03-28-2018 at 12:25 AM. |
03-28-2018, 12:25 AM | #9 |
null operator (he/him)
Posts: 20,948
Karma: 27620688
Join Date: Mar 2012
Location: Sydney Australia
Device: none
|
'Regex' is an abbreviation of 'regular expression'. Suggest you google for the term, as a start here's the Wikipedia entry ==>> Regular expression.
Bulk Metadata Edit->Search and Replace-Search Mode can be 'Character match' or 'Regular expression', you have to be in latter to have the opportunity of specifying a Destination. BR |
04-04-2018, 11:54 PM | #10 |
Connoisseur
Posts: 72
Karma: 10
Join Date: Oct 2016
Device: iPad Pro 12.9"
|
I'm going to be honest, I looked at the linked articles, and they don't make a lot of sense to me. I haven't done any programming in years and am just not used to thinking that way. Probably also the problem is that I'm not familiar with the syntax in this kind of programming language.
I can see how to replace text within a given field with different text. I can see how to prepend or append the text. But what if I want to replace the text within the title with a numerical values in a series that either (a) equal the series index or (b) are equal to arbitrarily defined numbers with beginning, interval, and end numbers set by me. Is there a way to do that with this search/replace dialog? I tried the following: search field: title search for: #: (my comic books are now here listed as (comic book series title)#: (title) replace with #{series_index}: destination field: title This isn't working. Basically I'm trying to get it to transfer the series index number to the title since that is the issue number for the comic. I assume there is a syntax that it understands to effect this... I'm just not sure what it is in spite of reading the linked page. Last edited by American_Desi; 04-05-2018 at 12:08 AM. |
04-05-2018, 07:38 AM | #11 |
Guru
Posts: 939
Karma: 418804
Join Date: Jun 2015
Device: Rocketbook, kobo aura h2o, kobo forma, kobo libra color
|
If you want to do this on the device but not in the library, it would be easy to do this with the plugboard rules.
If you want to do it in the library, there may be a better way to do this, but I think this will work... First, select books that are not already fixed, possibly using some search rule (for instance, series_index:>0 and not tags:=fixseries ), and then bulk edit their metadata search field: {template} template: {series}#{series_index:}: search for: (.*) replace with: \1 destination: title, prepend, no split result I'm no template expert, so there may be some refinements you can do there, especially if some books don't have a series number. |
04-05-2018, 09:20 AM | #12 |
Connoisseur
Posts: 72
Karma: 10
Join Date: Oct 2016
Device: iPad Pro 12.9"
|
That did it! Thank you! Perfect! The template function was key.
Now I just need to figure out how to replace the series_index with the Publication Date in yyyymm format. I tried what you suggested previously and it's not working - it reads the pub date but I'm not able to get it to convert to a numerical format. I also tried creating a custom column but could not get that to work either. So for example, if the pubdate reads "Aug 1996" then I want to create a rule that changes the series index to "199608" without changing the series name, and to do this with multiple files based on what their publication dates are. |
04-05-2018, 09:39 PM | #13 |
Guru
Posts: 939
Karma: 418804
Join Date: Jun 2015
Device: Rocketbook, kobo aura h2o, kobo forma, kobo libra color
|
Might need to write a template function (in python?) to convert the date. I'll look at that when I get a chance, but I was hoping someone else would chime in...
|
04-06-2018, 05:27 AM | #14 | |
Grand Sorcerer
Posts: 11,950
Karma: 7225107
Join Date: Jan 2010
Location: Notts, England
Device: Kobo Libra 2
|
Quote:
Code:
{:'format_date(raw_field('pubdate'), 'yyyyMM')'} Code:
program: format_date(raw_field('pubdate'), 'yyyyMM') |
|
04-06-2018, 09:07 AM | #15 |
Connoisseur
Posts: 72
Karma: 10
Join Date: Oct 2016
Device: iPad Pro 12.9"
|
So if I'm doing the first one in Calibre, I select {template} for Search field and put that in the Template box, right? Then what do I put in the Search for, Replace with, and Destination fields? Since I'm replacing the existing series-index with this new number I assume I put series index in the destination field.
|
|
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
bulk meta data editing | aardbewoner | Library Management | 4 | 12-29-2016 04:39 PM |
Regex help: Edit Meta Search & Replace: Pad with zero | _noel_ | Calibre | 4 | 11-26-2012 04:31 PM |
series and meta data | Toxaris | Calibre | 2 | 02-07-2011 02:08 AM |
error when editing meta data | tom233 | Calibre | 1 | 10-06-2010 03:28 AM |
Editing author and title meta data | jflatto | Calibre | 16 | 06-24-2010 05:41 PM |