gotson / komga

Media server for comics/mangas/BDs/magazines/eBooks with API and OPDS support
https://komga.org
MIT License
3.76k stars 219 forks source link

Optional title name parser expression #1509

Closed brunosxs closed 2 months ago

brunosxs commented 2 months ago

Describe your suggested feature

I have a personal backup of manga that uses _ instead of spaces for separating words in the folder of a title thanks to the program I use to consume manga and this breaks the expectation of komga. As an example, imagine I am reading The Git Hunters, All chapters of this series are saved in a folder called The_Git_Hunters. The first copy I do when I move those chapters to my nas will go fine. Komga would not identify the manga with this name and that is the issue, but I could work around this by renaming the folder to The Git Hunters and komga will scan and identify it properly... The problem happens when I decide to update the series at a later date:

The entire manga series has to be copied again and there is no way to do the resolution of naming of the folders from source (the android tablet) to the destination (the folder in my NAS), because the client will see that The_Git_Hunters does not exist on the destination and as such, will copy everything which is unnecessary usage of my network. I could do a cron job that executes a script to reorganize stuff but this in itself can lead to unnecessary disk usage and sometimes data loss as it could overwrite older chapters that I have used komga beforehand to remove duplicate pages.

Proposed solution:

I haven´t looked at the source yet, but I could do it myself and submite a PR if the core developers agree on the usefullness of this feature.

Other details

No response

Acknowledgements

brunosxs commented 2 months ago

For future reference to any who comes to this issue in a future date: After joining the discord group and discussing with other devs, it was kindly pointed out that there are standards for that already in place: ComicInfo and series.json. For the exact situation I described, series.json fits all the criteria.