-
-
Notifications
You must be signed in to change notification settings - Fork 23
Description
Is your feature request related to a problem? Please describe.
When starting my manga library I generate CBZ files of Volumes instead of Individual chapters.
This creates a problem for me as Fetch Online doesn't autofill the title field of comicInfo.
That is a problematic in my use case as I rely on the Title field in my calibre library (and calibre has been notoriously bad at fetching my manga metadata).
for now I have used this workaround:
--- a/MangaManager/src/MetadataManager/MetadataManagerGUI.py
+++ b/MangaManager/src/MetadataManager/MetadataManagerGUI.py
@@ -412,6 +412,11 @@ class GUIApp(Tk, MetadataManagerLib):
item.has_changes = True
any_items_changed = True
+ if item.cinfo_object.series and item.cinfo_object.volume:
+ item.cinfo_object.title = f"{item.cinfo_object.series} Vol. {item.cinfo_object.volume}"
+ item.has_changes = True
+ any_items_changed = True
+
if not item.cinfo_object.number:
number = parse_number(item.file_name)
if number:
@@ -510,4 +515,4 @@ class GUIApp(Tk, MetadataManagerLib):
self.widget_mngr.clean_widgets()
self.image_cover_frame.clear()
self.selected_files_path = list()
- self.selected_files_treeview.clear()
\ No newline at end of file
+ self.selected_files_treeview.clear()
Describe the solution you'd like
My proposed solution comes in two parts:
1- a title parser that looks into the CBZ filename during Filename Fill
2- a fallback option that uses an f-string (perhaps a configurable pattern) to fill in the title
In this example,
Filename Fill generates
filename = "Vol1: Nobody with Naturally Wavy Hair Can Be That Bad.cbz"
cinfo.title = "Gin Tama Vol. 1 Nobody with Naturally Wavy Hair Can Be That Bad.cbz"
The fallback generates
cinfo.series = "Gin Tama"
cinfo.volume = 1
cinfo.title => "Gin Tama Vol. 1"
Describe alternatives you've considered
A title scraper with a source that provides Title info (google books, amazon, kobo ...) for individual chapters, with the same fallbacks. I realize this alternative is quite far-fetched.