From fe88e79665b02b10bb733dbc61c24569ea558690 Mon Sep 17 00:00:00 2001 From: Laurent Monin Date: Sun, 26 May 2024 16:11:32 +0200 Subject: [PATCH] Use iter_tagging_scripts_from_*() --- picard/script/__init__.py | 2 +- picard/ui/options/profiles.py | 7 +++++-- picard/ui/scripteditor.py | 7 ++++--- 3 files changed, 10 insertions(+), 6 deletions(-) diff --git a/picard/script/__init__.py b/picard/script/__init__.py index 84ee4f469..918c7180f 100644 --- a/picard/script/__init__.py +++ b/picard/script/__init__.py @@ -142,7 +142,7 @@ def enabled_tagger_scripts_texts(): config = get_config() if not config.setting['enable_tagger_scripts']: return [] - return [(s_name, s_text) for _s_pos, s_name, s_enabled, s_text in config.setting['list_of_scripts'] if s_enabled and s_text] + return [(s.name, s.content) for s in iter_tagging_scripts_from_config(config=config) if s.enabled and s.content] def get_file_naming_script(settings): diff --git a/picard/ui/options/profiles.py b/picard/ui/options/profiles.py index 221349e46..07dba374f 100644 --- a/picard/ui/options/profiles.py +++ b/picard/ui/options/profiles.py @@ -44,7 +44,10 @@ from picard.i18n import ( gettext_constants, ) from picard.profile import profile_groups_values -from picard.script import get_file_naming_script_presets +from picard.script import ( + get_file_naming_script_presets, + iter_tagging_scripts_from_tuples, +) from picard.util import get_base_title from picard.ui.forms.ui_options_profiles import Ui_ProfileEditorDialog @@ -249,7 +252,7 @@ class ProfilesOptionsPage(OptionsPage): return _("Unknown script") def _get_scripts_list(self, scripts): - enabled_scripts = ['
  • %s
  • ' % name for (pos, name, enabled, script) in scripts if enabled] + enabled_scripts = ['
  • %s
  • ' % s.name for s in iter_tagging_scripts_from_tuples(scripts) if s.enabled] if not enabled_scripts: return _("No enabled scripts") return _("Enabled scripts:") + '' diff --git a/picard/ui/scripteditor.py b/picard/ui/scripteditor.py index 867ccc4bd..ae9fb43fe 100644 --- a/picard/ui/scripteditor.py +++ b/picard/ui/scripteditor.py @@ -57,6 +57,7 @@ from picard.script import ( ScriptParser, get_file_naming_script, get_file_naming_script_presets, + iter_tagging_scripts_from_tuples, ) from picard.script.serializer import ( FileNamingScript, @@ -162,10 +163,10 @@ class ScriptEditorExamples(): try: # Only apply scripts if the original file metadata has not been changed. if self.settings['enable_tagger_scripts'] and not c_metadata.diff(file.orig_metadata): - for s_pos, s_name, s_enabled, s_text in self.settings['list_of_scripts']: - if s_enabled and s_text: + for s in iter_tagging_scripts_from_tuples(self.settings['list_of_scripts']): + if s.enabled and s.content: parser = ScriptParser() - parser.eval(s_text, c_metadata) + parser.eval(s.content, c_metadata) filename_before = file.filename filename_after = file.make_filename(filename_before, c_metadata, self.settings, self.script_text) if not self.settings['move_files']: