Commit Graph

83 Commits

Author SHA1 Message Date
Timmy Welch
8de35bdfa1 Fix default dict creating unnecessary keys 2025-01-10 16:25:10 -08:00
Timmy Welch
8fbb40bb76 Fix language and countries getting modified 2024-12-16 19:13:56 -08:00
Timmy Welch
fab30f3f29 Add experimental quick-tag 2024-08-18 19:16:55 -07:00
Timmy Welch
a7a9d38428 Make ImageMetadata a dataclass 2024-07-27 19:23:37 -07:00
Timmy Welch
219ede2d5d Improve StrEnum
Return the actual string for __str__
Allow case insensitive conversion
2024-07-27 16:45:22 -07:00
Timmy Welch
63832606b1 Add ability to auto-detect double pages
Co-authored-by: Sven Hesse <drmccoy@drmccoy.de>
2024-07-27 16:24:29 -07:00
Timmy Welch
c28dc19df6 Improve filename parsing 2024-06-29 18:43:40 -07:00
Timmy Welch
6ab3a89a35 Improvements to filerenamer and filename parsing 2024-06-21 20:07:07 -07:00
Timmy Welch
69a9566f42 Update all references of saved 'matadata' to 'tags' 2024-06-20 16:47:10 -07:00
Mizaki
8b0683f67c Add OverlayMode options for read style and data source 2024-05-11 01:56:06 +01:00
Timmy Welch
c311b8e351 Use comicapi for all urllib3 items 2024-04-12 14:39:34 -07:00
Timmy Welch
8bcd51f49b Improve commandline metadata override
Change parse_metadata_from_string to yaml syntax
Add a special value to remove existing values when metadata is overlayed
2024-04-06 12:03:01 -07:00
Timmy Welch
3df263858d Merge branch 'web-links' into develop 2024-03-09 13:42:29 -08:00
Timmy Welch
5155762711 Add comicfn2dict as an alternative filename parser 2024-03-03 21:47:31 -08:00
Timmy Welch
768ef0b6bc Fix rar exe handling 2024-02-18 01:40:49 -08:00
Timmy Welch
44e9a47a8b Support multiple web_links 2024-02-17 17:42:07 -08:00
pre-commit-ci[bot]
df762746ec [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
2024-01-29 17:14:26 +00:00
Timmy Welch
f34e8200dd Fix add_to_path tests 2024-01-20 10:34:40 -08:00
Timmy Welch
1ca585a65c Fix #584 2023-12-31 14:33:27 -08:00
Timmy Welch
1ef6e40c29 Allow the avif extension 2023-12-24 18:32:52 -08:00
Timmy Welch
ceb3b30e5c Always apply the default page list when writing metadata 2023-12-20 21:24:12 -08:00
Timmy Welch
bb67ab009e Ensure that all output goes through a logger before output to the user
Adds an option to output json for CLI options
2023-12-17 15:51:43 -08:00
Timmy Welch
305eb1dec5 Enable stricter mypy configuration 2023-11-23 16:05:16 -08:00
Timmy Welch
128cab077c Replace pycountry with isocodes
isocodes is updated more often and doesn't depend on deprecated packages
2023-11-23 14:21:21 -08:00
Timmy Welch
29ddc3779a Ensure FilenameInfo is always filled out fixes #556 2023-10-23 21:08:55 -07:00
Timmy Welch
f6be7919d7 Implement support for protofolius's permission scheme 2023-09-06 04:50:05 -04:00
Timmy Welch
2c3a2566cc Convert ComicIssue into GenericMetadata
I could not find a good reason for ComicIssue to exist other than that
 it had more attributes than GenericMetadata, so it has been replaced.
New attributes for GenericMetadata:
  series_id:        a string uniquely identifying the series to tag_origin
  series_aliases:   alternate series names that are not the canonical name
  title_aliases:    alternate issue titles that are not the canonical name
  alternate_images: a list of urls to alternate cover images

Updated attributes for GenericMetadata:
  genre        -> genres:        str -> list[str]
  comments     -> description:   str -> str
  story_arc    -> story_arcs:    str -> list[str]
  series_group -> series_groups: str -> list[str]
  character    -> characters:    str -> list[str]
  team         -> teams:         str -> list[str]
  location     -> locations:     str -> list[str]
  tag_origin   -> tag_origin:    str -> TagOrigin (tuple[str, str])

ComicSeries has been relocated to the ComicAPI package, currently has no
 usage within ComicAPI.
CreditMetadata has been renamed to Credit and has replaced Credit from
 ComicTalker.
fetch_series has been added to ComicTalker, this is currently only used
 in the GUI when a series is selected and does not already contain the
 needed fields, this function should always be cached.

A new split function has been added to ComicAPI, all uses of split on
 single characters have been updated to use this

cleanup_html and the corresponding setting are now only used in
 ComicTagger proper, for display we want any html directly from the
 upstream. When applying the metadata we then strip the description of
 any html.

A new conversion has been added to the MetadataFormatter:
  j: joins any lists into a string with ', '. Note this is a valid
     operation on strings as well, it will add ', ' in between every
     character.

parse_settings now assigns the given ComicTaggerPaths object to the
 result ensuring that the correct path is always used.
2023-08-02 09:00:04 -07:00
Timmy Welch
548ad4a816 Fix folder archiver
Implement supports_comment and is_writable
Fix function call in ComicArchive for supports_comment
Add a menu option to open a folder as an archive
2023-07-29 00:07:25 -07:00
Timmy Welch
31cf687e2f Reduce startup time 2023-06-22 20:11:40 -07:00
Timmy Welch
3a287504ae Fix setting issue and alternate_number on GenericMetadata
IssueString.as_string always returns a string this is a problem for
  GenericMetadata. When the overlay function is used it checks
  specifically for the value None this allows the -m option to unset
  attributes however the issue attribute would get set to the empty
  string when loading ComicRack tags regardless of if there was a value
  stored in the file. Fixes #465 and #480
2023-06-15 20:26:38 -07:00
Timmy Welch
783e10a9a1 Generate a namespace object for typing settngs 2023-06-09 16:20:00 -07:00
Mizaki
3b92993ef6 Remove country name code 2023-06-03 00:11:40 +01:00
Mizaki
d191750231 Remove attempted validation of language and country plus minor changes 2023-05-25 01:32:52 +01:00
Mizaki
8e2411a086 Add country functions to utils and try to convert a country name to ISO country name 2023-05-23 00:02:56 +01:00
Timmy Welch
14fa70e608
Separate xlate into separate functions based on return type fixes #454 2023-04-25 15:55:27 -07:00
Timmy Welch
e70c47d12a
Make PyICU optional
Update README.md
2023-04-23 00:48:11 -07:00
Timmy Welch
c1aba269a9
Revert "Make PyICU optional"
This reverts commit bf55037690.
2023-04-22 21:28:14 -07:00
Timmy Welch
bf55037690
Make PyICU optional
Fix more locale issues
Update README.md
2023-04-18 21:03:50 -07:00
Timmy Welch
e2dfcc91ce
Revert get_recursive_filelist Fixes #449 2023-04-13 20:58:30 -06:00
Timmy Welch
2491999a33
Update copyright statements to ComicTagger Authors 2023-02-16 17:23:13 -08:00
Timmy Welch
4eb9e008ce
Update pre-commit 2023-02-10 00:25:20 -08:00
Timmy Welch
e5b15abf91
clean up talker 2023-02-10 00:23:00 -08:00
Timmy Welch
19112ac79b
Update Settings 2022-12-06 00:20:01 -08:00
Timmy Welch
c5a5fc8bdb
Fix issue with combine_notes 2022-11-24 01:24:15 -08:00
Timmy Welch
d55d75cd79
Append notes instead of overwriting them
Add issue_id to GenericMetadata
2022-11-04 15:39:40 -07:00
Timmy Welch
aad83c8c03
Update PyInstaller usage
Switch to rapidfuzz from thefuzz
Add associations to macOS app bundle
2022-10-25 21:48:01 -07:00
Timmy Welch
4b6d35fd3a
Fix CBL tagging 2022-10-02 19:33:12 -07:00
Timmy Welch
03677ce4b8 Fix renaming
Make ComicArchive.path always absolute
Fix unique_file not preserving the extension
Fix incorrect output when renaming in CLI mode
Fix handling of platform when renaming
2022-08-19 20:20:37 -07:00
Timmy Welch
be983c61bc Fix #353
The two primary cases fixed are:
Ms. Marvel
spider-man/deadpool

The first issue removed 'Ms.' which is a problem as many comics have
series that the only difference in the title is the
designation/honorific.

The second issue is that the '/' was removed and not replaced with
anything causing a search for 'mandeadpool' which will not show useful
results.

Consequently all designations/honorifics are now untouched
All punctuation is replaced with a space
2022-08-12 07:10:36 -07:00
Timmy Welch
77a53a6834 Update dependencies
Includes changes from pyupgrade
2022-08-10 20:55:46 -07:00