Commit Graph

153 Commits

Author SHA1 Message Date
Timmy Welch
db00736f58 Fix filename parsing not respecting user settings 2023-12-25 21:57:31 -08:00
Timmy Welch
9c231d7e11 Add better page info handling
Rename set_default_page_list to apply_default_page_list and apply
 during read_metadata
Add a filename attribute to the ImageMetadata class
Mark image_index as required
Always sort the page name list, a comic application will never need the
 unsorted list of names
Assign the first result from get_cover_page_index_list to coverImage in
 CoMet tags
Allow an Archiver to be passed to the ComicArchive constructor
2023-12-18 02:37:34 -08:00
Timmy Welch
989470772f Make widget disabling more consistent 2023-12-18 01:24:30 -08:00
Timmy Welch
8b7443945b Use ids for metadata type in file selection list
Removed unnecessary FileInfo class
2023-12-17 22:01:47 -08:00
Timmy Welch
fd868d9596 Add supports_credit_role to metadata plugins 2023-12-17 21:47:44 -08:00
Timmy Welch
ae5e246180 Add plugin support for metadata 2023-12-17 21:47:43 -08:00
Timmy Welch
45643cc594 Add integration tests 2023-12-17 16:24:32 -08:00
Timmy Welch
ab6b970063 Create an Action tuple for determining the current command 2023-12-17 16:16:21 -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
cead69f8e3 Merge branch 'mizaki/settings_encoder' into develop 2023-12-01 19:43:18 -08:00
Mizaki
70541cc9ee Encode pathlib.Path for the settings file. Validate types from the JSON settings file after loaded. JSON.decoder not used due to its limitation with context. 2023-11-28 23:21:04 +00:00
Timmy Welch
1ff6f1768b Use importlib.resources instead of __file__ 2023-11-25 12:32:50 -08:00
Timmy Welch
9dc6f8914f Upgrade settings to 0.8.0 2023-11-19 23:14:40 -08:00
Timmy Welch
10776dbb07 Fix flake8 issues 2023-11-09 18:23:57 -08:00
Timmy Welch
97a24d8d52 Change dialog modality and only center dialog when it is created 2023-10-08 11:59:57 -07:00
Mizaki
058651cc29 Change metadata lists to sets. Changed CV talker to reflect and tidied 2023-09-24 14:33:57 +01:00
Timmy Welch
8b1bcd93e6 Add a combobox to select a metadata source in the main window Fixes #508 2023-09-05 03:55:18 -04:00
Timmy Welch
05e6eaf88e Update setting group names
Make group names presentable to users and add builtin plugins during namespace generation.
Revamp talkeruigenerator.py to use generated group and setting names and remove as much hard-coded strings as possible
Add a --list-plugins commandline option
2023-09-05 03:55:12 -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
f90f373d20 Merge branch 'mizaki-rate_limit_cv' into develop 2023-07-01 18:04:24 -07:00
Mizaki
fba5518d06 Create two module limiters and assign class limiter var depending. Add to welcome message limits of default CV API key. 2023-06-23 21:25:02 +01: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
82a22d25ea Merge branch 'mizaki-auto_ident_message' into develop 2023-06-11 21:44:05 -07:00
Timmy Welch
783e10a9a1 Generate a namespace object for typing settngs 2023-06-09 16:20:00 -07:00
Mizaki
e8f13b1f9e fix quoting 2023-06-09 02:08:38 +01:00
Mizaki
122bdf7eb1 Change auto-identfy message to point users to the auto-tag assume 1 option 2023-06-08 01:18:46 +01:00
Mizaki
92e2cb42e8 Replace instances of Comic Vine to use the talker's name 2023-06-01 22:05:14 +01:00
Timmy Welch
14fa70e608
Separate xlate into separate functions based on return type fixes #454 2023-04-25 15:55:27 -07:00
Mizaki
f0b9bc6c77 Missed name changes from options move 2023-02-28 15:37:52 +00:00
Mizaki
33ea8da5bc Merge branch 'develop' into talker_settings_generator
# Conflicts:
#	comictaggerlib/settingswindow.py
#	comictalker/talkers/comicvine.py
2023-02-21 00:50:06 +00:00
Timmy Welch
2491999a33
Update copyright statements to ComicTagger Authors 2023-02-16 17:23:13 -08:00
Mizaki
83a8d5d5e1 Generate settings tabs for each talker 2023-02-11 01:18:56 +00: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
ad68726e1d
Use consistent naming for settings
config: always values
setting: always the definition/description not the value
2023-02-04 11:33:21 -08:00
Timmy Welch
ba4b779145
Remove legacy settings 2023-02-03 20:14:31 -08:00
Mizaki
94aabcdd40 Merge branch 'develop' into talker_settings
# Conflicts:
#	comictaggerlib/ctoptions/__init__.py
#	comictaggerlib/main.py
#	comictalker/talkers/comicvine.py
2023-02-01 23:38:13 +00:00
Mizaki
0d69ba3c49 Rename talkers_general to talkers. Moved plugin option register to own file. Due to chicken and egg, first get talker classes then create objects. 2023-01-25 19:10:58 +00:00
Timmy Welch
712986ee69
Turn comicapi.archivers.* into plugins 2023-01-12 14:45:49 -08:00
Mizaki
2d8c47edca Use new settings system for plugin 2023-01-02 01:04:15 +00:00
Timmy Welch
9f00af4bba
Change issue id and series id to strings 2022-12-23 00:09:19 -08:00
Timmy Welch
1d9840913a
Change all references of volume to series 2022-12-22 10:16:05 -08:00
Timmy Welch
53a0b23230
Collapse formatting 2022-12-15 20:21:53 -08:00
Timmy Welch
440479da8c
Update to settngs 0.3.0
Use the namespace instead of a dictionary
Cleanup setting names
2022-12-15 20:10:35 -08:00
Timmy Welch
103379e548
Split settings out into a separate package 2022-12-14 23:16:54 -08:00
Timmy Welch
eca421e0f2
Split out settings functions 2022-12-13 08:50:38 -08:00
Timmy Welch
19112ac79b
Update Settings 2022-12-06 00:20:01 -08:00
Timmy Welch
10f36e9868
Allow searching without a comic archive selected 2022-11-28 21:44:01 -08:00