comictagger/comictaggerlib
lordwelch 0747a6b0ef Improve file renaming
Moves to Python format strings for renaming, handles directory
structures, moving of files to a destination directory, sanitizes
file paths with pathvalidate and takes a different approach to
smart filename cleanup using the Python string.Formatter class

Moving to Python format strings means we can point to python
documentation for syntax and all we have to do is document the
properties and types that are attached to the GenericMetadata class.

Switching to pathvalidate allows comictagger to more simply handle both
directories and symbols in filenames.

The only changes to the string.Formatter class is:
1. format_field returns
an empty string if the value is none or an empty string regardless of
the format specifier.
2. _vformat drops the previous literal text if the field value
is an empty string and lstrips the following literal text of closing
special characters.
2019-09-05 14:40:17 -07:00
..
graphics Python3 and QT5 upgrade (#109) 2018-09-19 22:05:39 +02:00
ui Improve file renaming 2019-09-05 14:40:17 -07:00
__init__.py Name conflict with launcher script 2013-02-07 04:00:20 +00:00
autotagmatchwindow.py Python3 and QT5 upgrade (#109) 2018-09-19 22:05:39 +02:00
autotagprogresswindow.py Python3 and QT5 upgrade (#109) 2018-09-19 22:05:39 +02:00
autotagstartwindow.py Python3 and QT5 upgrade (#109) 2018-09-19 22:05:39 +02:00
cbltransformer.py Huge code cleanup 2015-02-22 03:30:32 +01:00
cli.py Improve file renaming 2019-09-05 14:40:17 -07:00
comet.py autopep8 2015-02-15 11:44:00 +01:00
comicarchive.py autopep8 -aa 2015-02-15 12:55:04 +01:00
comicbookinfo.py Huge code cleanup 2015-02-22 03:30:32 +01:00
comicinfoxml.py Huge code cleanup 2015-02-22 03:30:32 +01:00
comicvinecacher.py Python3 and QT5 upgrade (#109) 2018-09-19 22:05:39 +02:00
comicvinetalker.py Cleanup metadata handling 2019-09-05 14:40:14 -07:00
coverimagewidget.py Python3 and QT5 upgrade (#109) 2018-09-19 22:05:39 +02:00
crediteditorwindow.py Python3 and QT5 upgrade (#109) 2018-09-19 22:05:39 +02:00
ctversion.py bump version 2019-02-04 20:27:37 +01:00
exportwindow.py Python3 and QT5 upgrade (#109) 2018-09-19 22:05:39 +02:00
filenameparser.py Huge code cleanup 2015-02-22 03:30:32 +01:00
filerenamer.py Improve file renaming 2019-09-05 14:40:17 -07:00
fileselectionlist.py Python3 and QT5 upgrade (#109) 2018-09-19 22:05:39 +02:00
genericmetadata.py Huge code cleanup 2015-02-22 03:30:32 +01:00
imagefetcher.py Python3 and QT5 upgrade (#109) 2018-09-19 22:05:39 +02:00
imagehasher.py Python3 and QT5 upgrade (#109) 2018-09-19 22:05:39 +02:00
imagepopup.py Python3 and QT5 upgrade (#109) 2018-09-19 22:05:39 +02:00
issueidentifier.py Python3 and QT5 upgrade (#109) 2018-09-19 22:05:39 +02:00
issueselectionwindow.py Python3 and QT5 upgrade (#109) 2018-09-19 22:05:39 +02:00
issuestring.py autopep8 -a 2015-02-15 12:44:09 +01:00
logwindow.py Python3 and QT5 upgrade (#109) 2018-09-19 22:05:39 +02:00
main.py Python3 and QT5 upgrade (#109) 2018-09-19 22:05:39 +02:00
matchselectionwindow.py Python3 and QT5 upgrade (#109) 2018-09-19 22:05:39 +02:00
optionalmsgdialog.py Python3 and QT5 upgrade (#109) 2018-09-19 22:05:39 +02:00
options.py Python3 and QT5 upgrade (#109) 2018-09-19 22:05:39 +02:00
pagebrowser.py Python3 and QT5 upgrade (#109) 2018-09-19 22:05:39 +02:00
pagelisteditor.py Python3 and QT5 upgrade (#109) 2018-09-19 22:05:39 +02:00
pageloader.py Python3 and QT5 upgrade (#109) 2018-09-19 22:05:39 +02:00
progresswindow.py Python3 and QT5 upgrade (#109) 2018-09-19 22:05:39 +02:00
renamewindow.py Improve file renaming 2019-09-05 14:40:17 -07:00
settings.py Improve file renaming 2019-09-05 14:40:17 -07:00
settingswindow.py Improve file renaming 2019-09-05 14:40:17 -07:00
taggerwindow.py Improve file renaming 2019-09-05 14:40:17 -07:00
utils.py autopep8 -a 2015-02-15 12:44:09 +01:00
versionchecker.py Python3 and QT5 upgrade (#109) 2018-09-19 22:05:39 +02:00
volumeselectionwindow.py Python3 and QT5 upgrade (#109) 2018-09-19 22:05:39 +02:00