diff --git a/.github/workflows/test-only.yml b/.github/workflows/test-only.yml index 2316d05d..4833ad9c 100644 --- a/.github/workflows/test-only.yml +++ b/.github/workflows/test-only.yml @@ -46,13 +46,10 @@ jobs: exit 1 fi - name: Lint .po files with dennis (warnings) - # W302 (unchanged) and W303 (html mismatch) are excluded due to - # high false-positive rate in this codebase: - # many msgstrs intentionally match msgid (units like "Mb", proper nouns), - # and many msgids contain literal ""/"<description>" text that isn't actual HTML. + # W302 (unchanged) is excluded due to high false-positive rate in this codebase: + # many msgstrs intentionally match msgid (units like "AI", "LLM", and proper nouns). run: | - output=$(dennis-cmd lint \ - --excluderules=W302,W303 \ + output=$(dennis-cmd lint --excluderules=W302 \ changedetectionio/translations/*/LC_MESSAGES/messages.po) echo "$output" warnings=$(echo "$output" | awk '/Total number of warnings:/ {print $NF; exit}') diff --git a/changedetectionio/blueprint/imports/importer.py b/changedetectionio/blueprint/imports/importer.py index aa4379dc..cbee9999 100644 --- a/changedetectionio/blueprint/imports/importer.py +++ b/changedetectionio/blueprint/imports/importer.py @@ -75,7 +75,7 @@ class import_url_list(Importer): self.remaining_data = [] self.remaining_data.append(url) - flash(gettext("{count} Imported from list in {duration:.2f}s, {skipped_count} Skipped.").format(count=good, duration=time.time() - now, skipped_count=len(self.remaining_data))) + flash(gettext("{count} Imported from list in {duration}s, {skipped_count} Skipped.").format(count=good, duration=f"{time.time() - now:.2f}", skipped_count=len(self.remaining_data))) class import_distill_io_json(Importer): @@ -136,7 +136,7 @@ class import_distill_io_json(Importer): self.new_uuids.append(new_uuid) good += 1 - flash(gettext("{count} Imported from Distill.io in {duration:.2f}s, {skipped_count} Skipped.").format(count=len(self.new_uuids), duration=time.time() - now, skipped_count=len(self.remaining_data))) + flash(gettext("{count} Imported from Distill.io in {duration}s, {skipped_count} Skipped.").format(count=len(self.new_uuids), duration=f"{time.time() - now:.2f}", skipped_count=len(self.remaining_data))) class import_xlsx_wachete(Importer): @@ -212,7 +212,7 @@ class import_xlsx_wachete(Importer): logger.error(e) flash(gettext("Error processing row number {}, check all cell data types are correct, row was skipped.").format(row_id), 'error') - flash(gettext("{count} imported from Wachete .xlsx in {duration:.2f}s").format(count=len(self.new_uuids), duration=time.time() - now)) + flash(gettext("{count} imported from Wachete .xlsx in {duration}s").format(count=len(self.new_uuids), duration=f"{time.time() - now:.2f}")) class import_xlsx_custom(Importer): @@ -293,4 +293,4 @@ class import_xlsx_custom(Importer): logger.error(e) flash(gettext("Error processing row number {}, check all cell data types are correct, row was skipped.").format(row_i), 'error') - flash(gettext("{count} imported from custom .xlsx in {duration:.2f}s").format(count=len(self.new_uuids), duration=time.time() - now)) \ No newline at end of file + flash(gettext("{count} imported from custom .xlsx in {duration}s").format(count=len(self.new_uuids), duration=f"{time.time() - now:.2f}")) \ No newline at end of file diff --git a/changedetectionio/blueprint/imports/templates/import.html b/changedetectionio/blueprint/imports/templates/import.html index ed98c9e2..c383446b 100644 --- a/changedetectionio/blueprint/imports/templates/import.html +++ b/changedetectionio/blueprint/imports/templates/import.html @@ -7,7 +7,7 @@ <div class="tabs collapsable"> <ul> <li class="tab" id=""><a href="#url-list">{{ _('URL List') }}</a></li> - <li class="tab"><a href="#distill-io">{{ _('Distill.io') }}</a></li> + <li class="tab"><a href="#distill-io">Distill.io</a></li> <li class="tab"><a href="#xlsx">{{ _('.XLSX & Wachete') }}</a></li> <li class="tab"><a href="{{url_for('backups.restore.restore')}}">{{ _('Backup Restore') }}</a></li> </ul> @@ -45,6 +45,7 @@ <div class="tab-pane-inner" id="distill-io"> <div class="pure-control-group"> {{ _('Copy and Paste your Distill.io watch \'export\' file, this should be a JSON file.') }}<br> + {# TRANSLATORS: CJK fonts lack native italics; allow substitution with conventional local styling. dennis-ignore: W303 #} {{ _('This is <i>experimental</i>, supported fields are <code>name</code>, <code>uri</code>, <code>tags</code>, <code>config:selections</code>, the rest (including <code>schedule</code>) are ignored.')|safe }} <br> <p> @@ -103,7 +104,7 @@ {% for n in range(4) %} <td><select name="custom_xlsx[col_type_{{n}}]"> <option value="" style="color: #aaa"> -- {{ _('none') }} --</option> - <option value="url">{{ _('URL') }}</option> + <option value="url">URL</option> <option value="title">{{ _('Title') }}</option> <option value="include_filters">{{ _('CSS/xPath filter') }}</option> <option value="tag">{{ _('Group / Tag name(s)') }}</option> diff --git a/changedetectionio/blueprint/settings/llm.py b/changedetectionio/blueprint/settings/llm.py index 2658633e..db90046c 100644 --- a/changedetectionio/blueprint/settings/llm.py +++ b/changedetectionio/blueprint/settings/llm.py @@ -122,7 +122,7 @@ def construct_llm_blueprint(datastore: ChangeDetectionStore): except OSError as e: logger.warning(f"Could not remove LLM summary cache file {f}: {e}") logger.info(f"LLM summary cache cleared: {count} file(s) removed") - flash(gettext("AI summary cache cleared (%(count)s file(s) removed).", count=count), 'notice') + flash(gettext("AI summary cache cleared ({} file(s) removed).").format(count), 'notice') return redirect(url_for('settings.settings_page') + '#ai') return llm_blueprint diff --git a/changedetectionio/blueprint/settings/templates/settings.html b/changedetectionio/blueprint/settings/templates/settings.html index f7bb6719..ed05839b 100644 --- a/changedetectionio/blueprint/settings/templates/settings.html +++ b/changedetectionio/blueprint/settings/templates/settings.html @@ -24,8 +24,8 @@ <li class="tab"><a href="#fetching">{{ _('Fetching') }}</a></li> <li class="tab"><a href="#filters">{{ _('Global Filters') }}</a></li> <li class="tab"><a href="#ui-options">{{ _('UI Options') }}</a></li> - <li class="tab"><a href="#api">{{ _('API') }}</a></li> - <li class="tab"><a href="#rss">{{ _('RSS') }}</a></li> + <li class="tab"><a href="#api">API</a></li> + <li class="tab"><a href="#rss">RSS</a></li> <li class="tab"><a href="{{ url_for('backups.create') }}">{{ _('Backups') }}</a></li> <li class="tab"><a href="#timedate">{{ _('Time & Date') }}</a></li> <li class="tab"><a href="#proxies">{{ _('CAPTCHA & Proxies') }}</a></li> diff --git a/changedetectionio/blueprint/tags/templates/edit-tag.html b/changedetectionio/blueprint/tags/templates/edit-tag.html index bad2e7ef..bb084441 100644 --- a/changedetectionio/blueprint/tags/templates/edit-tag.html +++ b/changedetectionio/blueprint/tags/templates/edit-tag.html @@ -98,6 +98,7 @@ {% endif %} <div class="tab-pane-inner" id="filters-and-triggers"> + {# TRANSLATORS: CJK fonts lack native italics; allow substitution with conventional local styling. dennis-ignore: W303 #} <p>{{ _('These settings are <strong><i>added</i></strong> to any existing watch configurations.')|safe }}</p> {% include "edit/include_subtract.html" %} diff --git a/changedetectionio/blueprint/ui/templates/edit.html b/changedetectionio/blueprint/ui/templates/edit.html index 799133ae..8ea17b43 100644 --- a/changedetectionio/blueprint/ui/templates/edit.html +++ b/changedetectionio/blueprint/ui/templates/edit.html @@ -365,6 +365,7 @@ Math: {{ 1 + 1 }}") }} </fieldset> <fieldset class="pure-control-group"> {{ render_checkbox_field(form.sort_text_alphabetically) }} + {# TRANSLATORS: CJK fonts lack native italics; allow substitution with conventional local styling. dennis-ignore: W303 #} <span class="pure-form-message-inline">{{ _('Helps reduce changes detected caused by sites shuffling lines around, combine with <i>check unique lines</i> below.')|safe }}</span> </fieldset> <fieldset class="pure-control-group"> diff --git a/changedetectionio/blueprint/watchlist/templates/watch-overview.html b/changedetectionio/blueprint/watchlist/templates/watch-overview.html index fe65b285..bae6a437 100644 --- a/changedetectionio/blueprint/watchlist/templates/watch-overview.html +++ b/changedetectionio/blueprint/watchlist/templates/watch-overview.html @@ -163,12 +163,13 @@ window.watchOverviewI18n = { data-confirm-type="danger" data-confirm-title="{{ _('Clear Histories') }}" data-confirm-message="{{ _('<p>Are you sure you want to clear history for the selected items?</p><p>This action cannot be undone.</p>') }}" + {# TRANSLATORS: Universally recognized; typically left as-is. dennis-ignore: W302 #} data-confirm-button="{{ _('OK') }}"><i data-feather="trash-2" style="width: 14px; height: 14px; stroke: white; margin-right: 4px;"></i>{{ _('Clear/reset history') }}</button> <button class="pure-button button-secondary button-xsmall" style="background: #dd4242;" name="op" value="delete" data-requires-confirm data-confirm-type="danger" data-confirm-title="{{ _('Delete Watches?') }}" - data-confirm-message="{{ _('<p>Are you sure you want to delete the selected watches?</strong></p><p>This action cannot be undone.</p>') }}" + data-confirm-message="{{ _('<p><strong>Are you sure you want to delete the selected watches?</strong></p><p>This action cannot be undone.</p>') }}" data-confirm-button="{{ _('Delete') }}"><i data-feather="trash" style="width: 14px; height: 14px; stroke: white; margin-right: 4px;"></i>{{ _('Delete') }}</button> </div> diff --git a/changedetectionio/forms.py b/changedetectionio/forms.py index ff5abdfb..b8a0d530 100644 --- a/changedetectionio/forms.py +++ b/changedetectionio/forms.py @@ -728,7 +728,7 @@ class ValidateStartsWithRegex(object): raise ValidationError(self.message or _l("Invalid value.")) class quickWatchForm(Form): - url = StringField(_l('URL'), validators=[validateURL()]) + url = StringField('URL', validators=[validateURL()]) tags = StringTagUUID(_l('Group tag'), validators=[validators.Optional()]) watch_submit_button = SubmitField(_l('Watch'), render_kw={"class": "pure-button pure-button-primary"}) processor = RadioField(_l('Processor'), choices=lambda: processors.available_processors(), default=processors.get_default_processor) @@ -843,6 +843,7 @@ class processor_text_json_diff_form(commonSettingsForm): conditions_match_logic = RadioField(_l('Match'), choices=[('ALL', _l('Match all of the following')),('ANY', _l('Match any of the following'))], default='ALL') conditions = FieldList(FormField(ConditionFormRow), min_entries=1) # Add rule logic here + # dennis-ignore: W303 - False positive caused by <title>. https://github.com/mozilla/dennis/issues/213 use_page_title_in_list = TernaryNoneBooleanField(_l('Use page <title> in list'), default=None) history_snapshot_max_length = IntegerField(_l('Number of history items per watch to keep'), render_kw={"style": "width: 5em;"}, validators=[validators.Optional(), validators.NumberRange(min=2)]) @@ -991,6 +992,7 @@ class globalSettingsApplicationUIForm(Form): open_diff_in_new_tab = BooleanField(_l("Open 'History' page in a new tab"), default=True, validators=[validators.Optional()]) socket_io_enabled = BooleanField(_l('Realtime UI Updates Enabled'), default=True, validators=[validators.Optional()]) favicons_enabled = BooleanField(_l('Favicons Enabled'), default=True, validators=[validators.Optional()]) + # dennis-ignore: W303 - False positive caused by <title>. https://github.com/mozilla/dennis/issues/213 use_page_title_in_list = BooleanField(_l('Use page <title> in watch overview list')) #BooleanField=True # datastore.data['settings']['application'].. diff --git a/changedetectionio/templates/_common_fields.html b/changedetectionio/templates/_common_fields.html index 278e6098..696185c2 100644 --- a/changedetectionio/templates/_common_fields.html +++ b/changedetectionio/templates/_common_fields.html @@ -34,6 +34,7 @@ </tr> <tr> <td><code>{{ '{{watch_title}}' }}</code></td> + {# TRANSLATORS: dennis-ignore: W303 - False positive caused by <title>. https://github.com/mozilla/dennis/issues/213 #} <td>{{ _('The page title of the watch, uses <title> if not set, falls back to URL') }}</td> </tr> <tr> @@ -159,7 +160,7 @@ <div class="pure-form-message-inline"> <p> <strong>{{ _('Tip:') }}</strong> {{ _('Use <a target="newwindow" href="%(url)s">AppRise Notification URLs</a> for notification to just about any service!', - url='https://github.com/caronc/apprise')|safe }} <a target="newwindow" href="https://github.com/dgtlmoon/changedetection.io/wiki/Notification-configuration-notes">{{ _('<i>Please read the notification services wiki here for important configuration notes</i>')|safe }}</a>.<br> + url='https://github.com/caronc/apprise')|safe }} <a target="newwindow" href="https://github.com/dgtlmoon/changedetection.io/wiki/Notification-configuration-notes">{# TRANSLATORS: CJK fonts lack native italics; allow substitution with conventional local styling. dennis-ignore: W303 #}{{ _('<i>Please read the notification services wiki here for important configuration notes</i>')|safe }}</a>.<br> </p> <div data-target="#advanced-help-notifications" class="toggle-show pure-button button-tag button-xsmall">{{ _('Show advanced help and tips') }}</div> <ul style="display: none" id="advanced-help-notifications"> diff --git a/changedetectionio/templates/edit/include_subtract.html b/changedetectionio/templates/edit/include_subtract.html index 5a5cc77f..528fa5be 100644 --- a/changedetectionio/templates/edit/include_subtract.html +++ b/changedetectionio/templates/edit/include_subtract.html @@ -9,6 +9,7 @@ xpath://body/div/span[contains(@class, 'example-class')]", {% if '/text()' in field %} <span class="pure-form-message-inline"><strong>{{ _('Note!: //text() function does not work where the <element> contains <![CDATA[]]>') }}</strong></span><br> {% endif %} + {# TRANSLATORS: CJK fonts lack native italics; allow substitution with conventional local styling. dennis-ignore: W303 #} <span class="pure-form-message-inline">{{ _('One CSS, xPath 1 & 2, JSON Path/JQ selector per line, <i>any</i> rules that matches will be used.') | safe }}<br> <span data-target="#advanced-help-selectors" class="toggle-show pure-button button-tag button-xsmall">{{ _('Show advanced help and tips') }}</span><br> <ul id="advanced-help-selectors" style="display: none;"> diff --git a/changedetectionio/translations/README.md b/changedetectionio/translations/README.md index dd14cc5b..66718ccf 100644 --- a/changedetectionio/translations/README.md +++ b/changedetectionio/translations/README.md @@ -223,6 +223,58 @@ Babel auto-discovers the new language on subsequent runs. --- +## Dennis linter + +We use [mozilla/dennis](https://github.com/mozilla/dennis) to enforce technical correctness in `.po` and `.pot` files. +See the [Table of Warnings and Errors](https://dennis.readthedocs.io/en/latest/linting.html#table-of-warnings-and-errors) +for the full list of rules. + +### Running the linter locally + +To match the CI checks, run the following commands: + +```bash +# Check for errors only (always enforced) +dennis-cmd lint --errorsonly changedetectionio/translations/ + +# Check for warnings (excluding W302 unchanged translations) +dennis-cmd lint --excluderules=W302 changedetectionio/translations/ +``` + +### Common problems and resolutions + +#### HTML tag mismatch (`W303`) + +The `W303` rule ensures that HTML tags in the `msgstr` match the `msgid`. This is crucial for catching broken markup (e.g., missing closing tags). + +##### Handling intentional deviations and false positives + +Some W303 warnings are intentional or result from upstream false positives. +Use the `dennis-ignore: W303` comment in the source files (templates or Python code) within a `TRANSLATORS` comment to suppress these warnings. +This ensures the ignore instruction is extracted into the `.po` files. + +- **CJK italic policy**: When replacing `<i>` with locale-conventional quotation marks, tags will no longer match. +- **Upstream false positive**: Dennis misinterprets certain HTML tags (e.g., `<title>`) within `msgstr`. See https://github.com/mozilla/dennis/issues/213. + +**Examples in Jinja2 templates:** + +```jinja +{# TRANSLATORS: CJK fonts lack native italics; allow substitution with conventional local styling. dennis-ignore: W303 #} +<p>{{ _('These settings are <strong><i>added</i></strong> to any existing watch configurations.')|safe }}</p> + +{# TRANSLATORS: dennis-ignore: W303 - False positive caused by <title>. https://github.com/mozilla/dennis/issues/213 #} +<td>{{ _('The page title of the watch, uses <title> if not set, falls back to URL') }}</td> +``` + +**Example in Python source:** + +```python +# dennis-ignore: W303 - False positive caused by <title>. https://github.com/mozilla/dennis/issues/213 +use_page_title_in_list = BooleanField(_l('Use page <title> in watch overview list')) +``` + +--- + ## CI linter A GitHub Actions job (`lint-template-i18n`) checks for adjacent `{{ _(...) }}` calls on the same line diff --git a/changedetectionio/translations/cs/LC_MESSAGES/messages.mo b/changedetectionio/translations/cs/LC_MESSAGES/messages.mo index 7a7d9394..c3a0539d 100644 Binary files a/changedetectionio/translations/cs/LC_MESSAGES/messages.mo and b/changedetectionio/translations/cs/LC_MESSAGES/messages.mo differ diff --git a/changedetectionio/translations/cs/LC_MESSAGES/messages.po b/changedetectionio/translations/cs/LC_MESSAGES/messages.po index 5b4d3d71..5ceb4607 100644 --- a/changedetectionio/translations/cs/LC_MESSAGES/messages.po +++ b/changedetectionio/translations/cs/LC_MESSAGES/messages.po @@ -160,8 +160,8 @@ msgstr "Importuje se prvních 5000 URL adres, další lze načíst opakovaným i #: changedetectionio/blueprint/imports/importer.py #, python-brace-format -msgid "{count} Imported from list in {duration:.2f}s, {skipped_count} Skipped." -msgstr "{count} importováno ze seznamu za {duration:.2f}s, {skipped_count} přeskočeno." +msgid "{count} Imported from list in {duration}s, {skipped_count} Skipped." +msgstr "{count} importováno ze seznamu za {duration}s, {skipped_count} přeskočeno." #: changedetectionio/blueprint/imports/importer.py msgid "Unable to read JSON file, was it broken?" @@ -173,8 +173,8 @@ msgstr "Strukturovaný JSON text je neplatný, byl poškozen?" #: changedetectionio/blueprint/imports/importer.py #, python-brace-format -msgid "{count} Imported from Distill.io in {duration:.2f}s, {skipped_count} Skipped." -msgstr "{count} importováno z Distill.io za {duration:.2f}s, {skipped_count} přeskočeno." +msgid "{count} Imported from Distill.io in {duration}s, {skipped_count} Skipped." +msgstr "{count} importováno z Distill.io za {duration}s, {skipped_count} přeskočeno." #: changedetectionio/blueprint/imports/importer.py msgid "Unable to read export XLSX file, something wrong with the file?" @@ -192,22 +192,18 @@ msgstr "Chyba při zpracování řádku {}, zkontrolujte že všechny typy dat v #: changedetectionio/blueprint/imports/importer.py #, python-brace-format -msgid "{count} imported from Wachete .xlsx in {duration:.2f}s" -msgstr "{count} importováno z Wachete .xlsx za {duration:.2f}s" +msgid "{count} imported from Wachete .xlsx in {duration}s" +msgstr "{count} importováno z Wachete .xlsx za {duration}s" #: changedetectionio/blueprint/imports/importer.py #, python-brace-format -msgid "{count} imported from custom .xlsx in {duration:.2f}s" -msgstr "{count} importováno z vlastního .xlsx za {duration:.2f}s" +msgid "{count} imported from custom .xlsx in {duration}s" +msgstr "{count} importováno z vlastního .xlsx za {duration}s" #: changedetectionio/blueprint/imports/templates/import.html msgid "URL List" msgstr "Seznam adres URL" -#: changedetectionio/blueprint/imports/templates/import.html -msgid "Distill.io" -msgstr "Distill.io" - #: changedetectionio/blueprint/imports/templates/import.html msgid ".XLSX & Wachete" msgstr ".XLSX a Wachete" @@ -241,6 +237,7 @@ msgstr "URL, které neprojdou validací, zůstanou v textové oblasti." msgid "Copy and Paste your Distill.io watch 'export' file, this should be a JSON file." msgstr "Nakopírujte a vložte exportovaný Distill.io soubor, měl by být ve formátu JSON." +#. CJK fonts lack native italics; allow substitution with conventional local styling. dennis-ignore: W303 #: changedetectionio/blueprint/imports/templates/import.html msgid "" "This is <i>experimental</i>, supported fields are <code>name</code>, <code>uri</code>, <code>tags</code>, " @@ -368,8 +365,8 @@ msgid "AI / LLM configuration removed." msgstr "" #: changedetectionio/blueprint/settings/llm.py -#, python-format -msgid "AI summary cache cleared (%(count)s file(s) removed)." +#, python-brace-format +msgid "AI summary cache cleared ({} file(s) removed)." msgstr "" #: changedetectionio/blueprint/settings/templates/notification-log.html @@ -393,14 +390,6 @@ msgstr "Globální filtry" msgid "UI Options" msgstr "Možnosti uživatelského rozhraní" -#: changedetectionio/blueprint/settings/templates/settings.html -msgid "API" -msgstr "API" - -#: changedetectionio/blueprint/settings/templates/settings.html -msgid "RSS" -msgstr "RSS" - #: changedetectionio/blueprint/settings/templates/settings.html msgid "Backups" msgstr "Zálohy" @@ -1213,6 +1202,7 @@ msgstr "" msgid "Leave unchecked to use the auto-generated colour based on the tag name." msgstr "" +#. CJK fonts lack native italics; allow substitution with conventional local styling. dennis-ignore: W303 #: changedetectionio/blueprint/tags/templates/edit-tag.html msgid "These settings are <strong><i>added</i></strong> to any existing watch configurations." msgstr "" @@ -1919,6 +1909,7 @@ msgid "" "lines against all history for this watch." msgstr "" +#. CJK fonts lack native italics; allow substitution with conventional local styling. dennis-ignore: W303 #: changedetectionio/blueprint/ui/templates/edit.html msgid "Helps reduce changes detected caused by sites shuffling lines around, combine with <i>check unique lines</i> below." msgstr "" @@ -2176,6 +2167,7 @@ msgstr "Vymazat historie" msgid "<p>Are you sure you want to clear history for the selected items?</p><p>This action cannot be undone.</p>" msgstr "<p>Opravdu chcete vyčistit historii u vybraných položek?</p><p>Tuto akci nelze vzít zpět.</p>" +#. Universally recognized; typically left as-is. dennis-ignore: W302 #: changedetectionio/blueprint/watchlist/templates/watch-overview.html msgid "OK" msgstr "OK" @@ -2189,8 +2181,8 @@ msgid "Delete Watches?" msgstr "Smazat sledování?" #: changedetectionio/blueprint/watchlist/templates/watch-overview.html -msgid "<p>Are you sure you want to delete the selected watches?</strong></p><p>This action cannot be undone.</p>" -msgstr "<p>Opravdu chcete smazat vybraná sledování?</p><p>Tuto akci nelze vzít zpět.</p>" +msgid "<p><strong>Are you sure you want to delete the selected watches?</strong></p><p>This action cannot be undone.</p>" +msgstr "<p><strong>Opravdu chcete smazat vybraná sledování?</strong></p><p>Tuto akci nelze vzít zpět.</p>" #: changedetectionio/blueprint/watchlist/templates/watch-overview.html msgid "Queued size" @@ -2689,10 +2681,6 @@ msgstr "Prázdná hodnota není povolena." msgid "Invalid value." msgstr "Neplatná hodnota." -#: changedetectionio/blueprint/imports/templates/import.html changedetectionio/forms.py -msgid "URL" -msgstr "URL" - #: changedetectionio/forms.py msgid "Group tag" msgstr "Skupina / Značka" @@ -2928,6 +2916,7 @@ msgstr "Spojit všechny následující položky" msgid "Match any of the following" msgstr "Přiřaďte kteroukoli z následujících možností" +#. dennis-ignore: W303 - False positive caused by <title>. https://github.com/mozilla/dennis/issues/213 #: changedetectionio/forms.py msgid "Use page <title> in list" msgstr "V seznamu použijte stránku <title>" @@ -3027,6 +3016,7 @@ msgstr "Aktualizace UI v reálném čase" msgid "Favicons Enabled" msgstr "Povolit favikony" +#. dennis-ignore: W303 - False positive caused by <title>. https://github.com/mozilla/dennis/issues/213 #: changedetectionio/forms.py msgid "Use page <title> in watch overview list" msgstr "Použijte stránku <title> v přehledu sledování" @@ -3416,6 +3406,7 @@ msgstr "" msgid "The UUID of the watch." msgstr "UUID monitoru." +#. dennis-ignore: W303 - False positive caused by <title>. https://github.com/mozilla/dennis/issues/213 #: changedetectionio/templates/_common_fields.html msgid "The page title of the watch, uses <title> if not set, falls back to URL" msgstr "" @@ -3552,6 +3543,7 @@ msgstr "Více zde" msgid "Use <a target=\"newwindow\" href=\"%(url)s\">AppRise Notification URLs</a> for notification to just about any service!" msgstr "" +#. CJK fonts lack native italics; allow substitution with conventional local styling. dennis-ignore: W303 #: changedetectionio/templates/_common_fields.html msgid "<i>Please read the notification services wiki here for important configuration notes</i>" msgstr "" @@ -3913,6 +3905,7 @@ msgstr "" msgid "Note!: //text() function does not work where the <element> contains <![CDATA[]]>" msgstr "" +#. CJK fonts lack native italics; allow substitution with conventional local styling. dennis-ignore: W303 #: changedetectionio/templates/edit/include_subtract.html msgid "One CSS, xPath 1 & 2, JSON Path/JQ selector per line, <i>any</i> rules that matches will be used." msgstr "" diff --git a/changedetectionio/translations/de/LC_MESSAGES/messages.mo b/changedetectionio/translations/de/LC_MESSAGES/messages.mo index 1f74db27..58bd50e6 100644 Binary files a/changedetectionio/translations/de/LC_MESSAGES/messages.mo and b/changedetectionio/translations/de/LC_MESSAGES/messages.mo differ diff --git a/changedetectionio/translations/de/LC_MESSAGES/messages.po b/changedetectionio/translations/de/LC_MESSAGES/messages.po index 62e67247..4e7c59d0 100644 --- a/changedetectionio/translations/de/LC_MESSAGES/messages.po +++ b/changedetectionio/translations/de/LC_MESSAGES/messages.po @@ -162,8 +162,8 @@ msgstr "Es werden 5.000 der ersten URLs aus Ihrer Liste importiert, der Rest kan #: changedetectionio/blueprint/imports/importer.py #, python-brace-format -msgid "{count} Imported from list in {duration:.2f}s, {skipped_count} Skipped." -msgstr "{count} aus Liste importiert in {duration:.2f}s, {skipped_count} übersprungen." +msgid "{count} Imported from list in {duration}s, {skipped_count} Skipped." +msgstr "{count} aus Liste importiert in {duration}s, {skipped_count} übersprungen." #: changedetectionio/blueprint/imports/importer.py msgid "Unable to read JSON file, was it broken?" @@ -175,8 +175,8 @@ msgstr "JSON-Struktur sieht ungültig aus, ist sie beschädigt?" #: changedetectionio/blueprint/imports/importer.py #, python-brace-format -msgid "{count} Imported from Distill.io in {duration:.2f}s, {skipped_count} Skipped." -msgstr "{count} aus Distill.io importiert in {duration:.2f}s, {skipped_count} übersprungen." +msgid "{count} Imported from Distill.io in {duration}s, {skipped_count} Skipped." +msgstr "{count} aus Distill.io importiert in {duration}s, {skipped_count} übersprungen." #: changedetectionio/blueprint/imports/importer.py msgid "Unable to read export XLSX file, something wrong with the file?" @@ -194,22 +194,18 @@ msgstr "Fehler bei der Verarbeitung von Zeile {}, prüfen Sie, ob alle Zelldaten #: changedetectionio/blueprint/imports/importer.py #, python-brace-format -msgid "{count} imported from Wachete .xlsx in {duration:.2f}s" -msgstr "{count} aus Wachete .xlsx importiert in {duration:.2f}s" +msgid "{count} imported from Wachete .xlsx in {duration}s" +msgstr "{count} aus Wachete .xlsx importiert in {duration}s" #: changedetectionio/blueprint/imports/importer.py #, python-brace-format -msgid "{count} imported from custom .xlsx in {duration:.2f}s" -msgstr "{count} aus benutzerdefinierter .xlsx importiert in {duration:.2f}s" +msgid "{count} imported from custom .xlsx in {duration}s" +msgstr "{count} aus benutzerdefinierter .xlsx importiert in {duration}s" #: changedetectionio/blueprint/imports/templates/import.html msgid "URL List" msgstr "URL-Liste" -#: changedetectionio/blueprint/imports/templates/import.html -msgid "Distill.io" -msgstr "Distill.io" - #: changedetectionio/blueprint/imports/templates/import.html msgid ".XLSX & Wachete" msgstr ".XLSX & Wachete" @@ -247,6 +243,7 @@ msgstr "" "Kopieren Sie Ihre Distill.io-Watch-„Export“-Datei und fügen Sie sie ein. Dabei sollte es sich um eine JSON-Datei " "handeln." +#. CJK fonts lack native italics; allow substitution with conventional local styling. dennis-ignore: W303 #: changedetectionio/blueprint/imports/templates/import.html msgid "" "This is <i>experimental</i>, supported fields are <code>name</code>, <code>uri</code>, <code>tags</code>, " @@ -374,8 +371,8 @@ msgid "AI / LLM configuration removed." msgstr "" #: changedetectionio/blueprint/settings/llm.py -#, python-format -msgid "AI summary cache cleared (%(count)s file(s) removed)." +#, python-brace-format +msgid "AI summary cache cleared ({} file(s) removed)." msgstr "" #: changedetectionio/blueprint/settings/templates/notification-log.html @@ -399,14 +396,6 @@ msgstr "Globale Filter" msgid "UI Options" msgstr "UI-Optionen" -#: changedetectionio/blueprint/settings/templates/settings.html -msgid "API" -msgstr "API" - -#: changedetectionio/blueprint/settings/templates/settings.html -msgid "RSS" -msgstr "RSS" - #: changedetectionio/blueprint/settings/templates/settings.html msgid "Backups" msgstr "Backups" @@ -1229,6 +1218,7 @@ msgstr "" msgid "Leave unchecked to use the auto-generated colour based on the tag name." msgstr "" +#. CJK fonts lack native italics; allow substitution with conventional local styling. dennis-ignore: W303 #: changedetectionio/blueprint/tags/templates/edit-tag.html msgid "These settings are <strong><i>added</i></strong> to any existing watch configurations." msgstr "Diese Einstellungen werden zu allen vorhandenen Überwachungskonfigurationen <strong><i>hinzugefügt</i></strong>." @@ -1339,7 +1329,7 @@ msgid "" "watches will be removed from it.</p>" msgstr "" "<p>Möchten Sie wirklich alle Beobachtungen aus der Gruppe <strong>%(title)s</strong> entfernen?</p><p>Das Tag bleibt " -"erhalten, aber die Beobachtungen werden daraus entfernt." +"erhalten, aber die Beobachtungen werden daraus entfernt.</p>" #: changedetectionio/blueprint/tags/templates/groups-overview.html msgid "Unlink" @@ -1960,6 +1950,7 @@ msgstr "" "Gut geeignet für Websites, auf denen nur Inhalte verschoben werden und Sie wissen möchten, wann NEUE Inhalte " "hinzugefügt werden. Vergleicht neue Zeilen mit dem gesamten Verlauf dieser Überwachung." +#. CJK fonts lack native italics; allow substitution with conventional local styling. dennis-ignore: W303 #: changedetectionio/blueprint/ui/templates/edit.html msgid "Helps reduce changes detected caused by sites shuffling lines around, combine with <i>check unique lines</i> below." msgstr "" @@ -2225,6 +2216,7 @@ msgstr "" "<p>Möchten Sie den Verlauf für die ausgewählten Elemente wirklich löschen?</p><p>Diese Aktion kann nicht rückgängig " "gemacht werden.</p>" +#. Universally recognized; typically left as-is. dennis-ignore: W302 #: changedetectionio/blueprint/watchlist/templates/watch-overview.html msgid "OK" msgstr "OK" @@ -2238,10 +2230,10 @@ msgid "Delete Watches?" msgstr "Überwachungen löschen?" #: changedetectionio/blueprint/watchlist/templates/watch-overview.html -msgid "<p>Are you sure you want to delete the selected watches?</strong></p><p>This action cannot be undone.</p>" +msgid "<p><strong>Are you sure you want to delete the selected watches?</strong></p><p>This action cannot be undone.</p>" msgstr "" -"<p>Möchten Sie die ausgewählten Überwachungen wirklich löschen?</strong></p><p>Diese Aktion kann nicht rückgängig " -"gemacht werden.</p>" +"<p><strong>Möchten Sie die ausgewählten Überwachungen wirklich löschen?</strong></p><p>Diese Aktion kann nicht " +"rückgängig gemacht werden.</p>" #: changedetectionio/blueprint/watchlist/templates/watch-overview.html msgid "Queued size" @@ -2740,10 +2732,6 @@ msgstr "Leerer Wert nicht zulässig." msgid "Invalid value." msgstr "Ungültiger Wert." -#: changedetectionio/blueprint/imports/templates/import.html changedetectionio/forms.py -msgid "URL" -msgstr "URL" - #: changedetectionio/forms.py msgid "Group tag" msgstr "Gruppe / Label" @@ -2980,9 +2968,10 @@ msgstr "Passen Sie alle folgenden Punkte an" msgid "Match any of the following" msgstr "Entspricht einer der folgenden Bedingungen" +#. dennis-ignore: W303 - False positive caused by <title>. https://github.com/mozilla/dennis/issues/213 #: changedetectionio/forms.py msgid "Use page <title> in list" -msgstr "Verwenden Sie Seite <Titel> in der Liste" +msgstr "Verwenden Sie Seite <title> in der Liste" #: changedetectionio/forms.py msgid "Number of history items per watch to keep" @@ -3079,9 +3068,10 @@ msgstr "Echtzeit-UI-Updates aktiviert" msgid "Favicons Enabled" msgstr "Favicons Aktiviert" +#. dennis-ignore: W303 - False positive caused by <title>. https://github.com/mozilla/dennis/issues/213 #: changedetectionio/forms.py msgid "Use page <title> in watch overview list" -msgstr "Verwenden Sie die Seite <Titel> in der Übersichtsliste der Beobachtungen" +msgstr "Verwenden Sie die Seite <title> in der Übersichtsliste der Beobachtungen" #: changedetectionio/forms.py msgid "API access token security check enabled" @@ -3133,7 +3123,7 @@ msgstr "RSS-Inhaltsformat" #: changedetectionio/forms.py msgid "RSS <description> body built from" -msgstr "RSS-<Beschreibung>-Körper erstellt aus" +msgstr "RSS-<description>-Körper erstellt aus" #: changedetectionio/forms.py msgid "RSS \"System default\" template override" @@ -3470,6 +3460,7 @@ msgstr "" msgid "The UUID of the watch." msgstr "Die UUID der Überwachung." +#. dennis-ignore: W303 - False positive caused by <title>. https://github.com/mozilla/dennis/issues/213 #: changedetectionio/templates/_common_fields.html msgid "The page title of the watch, uses <title> if not set, falls back to URL" msgstr "" @@ -3606,6 +3597,7 @@ msgstr "Mehr hier" msgid "Use <a target=\"newwindow\" href=\"%(url)s\">AppRise Notification URLs</a> for notification to just about any service!" msgstr "" +#. CJK fonts lack native italics; allow substitution with conventional local styling. dennis-ignore: W303 #: changedetectionio/templates/_common_fields.html msgid "<i>Please read the notification services wiki here for important configuration notes</i>" msgstr "" @@ -3969,6 +3961,7 @@ msgstr "" msgid "Note!: //text() function does not work where the <element> contains <![CDATA[]]>" msgstr "" +#. CJK fonts lack native italics; allow substitution with conventional local styling. dennis-ignore: W303 #: changedetectionio/templates/edit/include_subtract.html msgid "One CSS, xPath 1 & 2, JSON Path/JQ selector per line, <i>any</i> rules that matches will be used." msgstr "" diff --git a/changedetectionio/translations/en_GB/LC_MESSAGES/messages.po b/changedetectionio/translations/en_GB/LC_MESSAGES/messages.po index aa094f98..8a883250 100644 --- a/changedetectionio/translations/en_GB/LC_MESSAGES/messages.po +++ b/changedetectionio/translations/en_GB/LC_MESSAGES/messages.po @@ -160,7 +160,7 @@ msgstr "" #: changedetectionio/blueprint/imports/importer.py #, python-brace-format -msgid "{count} Imported from list in {duration:.2f}s, {skipped_count} Skipped." +msgid "{count} Imported from list in {duration}s, {skipped_count} Skipped." msgstr "" #: changedetectionio/blueprint/imports/importer.py @@ -173,7 +173,7 @@ msgstr "" #: changedetectionio/blueprint/imports/importer.py #, python-brace-format -msgid "{count} Imported from Distill.io in {duration:.2f}s, {skipped_count} Skipped." +msgid "{count} Imported from Distill.io in {duration}s, {skipped_count} Skipped." msgstr "" #: changedetectionio/blueprint/imports/importer.py @@ -192,22 +192,18 @@ msgstr "" #: changedetectionio/blueprint/imports/importer.py #, python-brace-format -msgid "{count} imported from Wachete .xlsx in {duration:.2f}s" +msgid "{count} imported from Wachete .xlsx in {duration}s" msgstr "" #: changedetectionio/blueprint/imports/importer.py #, python-brace-format -msgid "{count} imported from custom .xlsx in {duration:.2f}s" +msgid "{count} imported from custom .xlsx in {duration}s" msgstr "" #: changedetectionio/blueprint/imports/templates/import.html msgid "URL List" msgstr "" -#: changedetectionio/blueprint/imports/templates/import.html -msgid "Distill.io" -msgstr "" - #: changedetectionio/blueprint/imports/templates/import.html msgid ".XLSX & Wachete" msgstr "" @@ -241,6 +237,7 @@ msgstr "" msgid "Copy and Paste your Distill.io watch 'export' file, this should be a JSON file." msgstr "" +#. CJK fonts lack native italics; allow substitution with conventional local styling. dennis-ignore: W303 #: changedetectionio/blueprint/imports/templates/import.html msgid "" "This is <i>experimental</i>, supported fields are <code>name</code>, <code>uri</code>, <code>tags</code>, " @@ -366,8 +363,8 @@ msgid "AI / LLM configuration removed." msgstr "" #: changedetectionio/blueprint/settings/llm.py -#, python-format -msgid "AI summary cache cleared (%(count)s file(s) removed)." +#, python-brace-format +msgid "AI summary cache cleared ({} file(s) removed)." msgstr "" #: changedetectionio/blueprint/settings/templates/notification-log.html @@ -391,14 +388,6 @@ msgstr "" msgid "UI Options" msgstr "" -#: changedetectionio/blueprint/settings/templates/settings.html -msgid "API" -msgstr "" - -#: changedetectionio/blueprint/settings/templates/settings.html -msgid "RSS" -msgstr "" - #: changedetectionio/blueprint/settings/templates/settings.html msgid "Backups" msgstr "" @@ -1211,6 +1200,7 @@ msgstr "" msgid "Leave unchecked to use the auto-generated colour based on the tag name." msgstr "" +#. CJK fonts lack native italics; allow substitution with conventional local styling. dennis-ignore: W303 #: changedetectionio/blueprint/tags/templates/edit-tag.html msgid "These settings are <strong><i>added</i></strong> to any existing watch configurations." msgstr "" @@ -1915,6 +1905,7 @@ msgid "" "lines against all history for this watch." msgstr "" +#. CJK fonts lack native italics; allow substitution with conventional local styling. dennis-ignore: W303 #: changedetectionio/blueprint/ui/templates/edit.html msgid "Helps reduce changes detected caused by sites shuffling lines around, combine with <i>check unique lines</i> below." msgstr "" @@ -2172,6 +2163,7 @@ msgstr "" msgid "<p>Are you sure you want to clear history for the selected items?</p><p>This action cannot be undone.</p>" msgstr "" +#. Universally recognized; typically left as-is. dennis-ignore: W302 #: changedetectionio/blueprint/watchlist/templates/watch-overview.html msgid "OK" msgstr "" @@ -2185,7 +2177,7 @@ msgid "Delete Watches?" msgstr "" #: changedetectionio/blueprint/watchlist/templates/watch-overview.html -msgid "<p>Are you sure you want to delete the selected watches?</strong></p><p>This action cannot be undone.</p>" +msgid "<p><strong>Are you sure you want to delete the selected watches?</strong></p><p>This action cannot be undone.</p>" msgstr "" #: changedetectionio/blueprint/watchlist/templates/watch-overview.html @@ -2683,10 +2675,6 @@ msgstr "" msgid "Invalid value." msgstr "" -#: changedetectionio/blueprint/imports/templates/import.html changedetectionio/forms.py -msgid "URL" -msgstr "" - #: changedetectionio/forms.py msgid "Group tag" msgstr "" @@ -2922,6 +2910,7 @@ msgstr "" msgid "Match any of the following" msgstr "" +#. dennis-ignore: W303 - False positive caused by <title>. https://github.com/mozilla/dennis/issues/213 #: changedetectionio/forms.py msgid "Use page <title> in list" msgstr "" @@ -3021,6 +3010,7 @@ msgstr "" msgid "Favicons Enabled" msgstr "" +#. dennis-ignore: W303 - False positive caused by <title>. https://github.com/mozilla/dennis/issues/213 #: changedetectionio/forms.py msgid "Use page <title> in watch overview list" msgstr "" @@ -3410,6 +3400,7 @@ msgstr "" msgid "The UUID of the watch." msgstr "" +#. dennis-ignore: W303 - False positive caused by <title>. https://github.com/mozilla/dennis/issues/213 #: changedetectionio/templates/_common_fields.html msgid "The page title of the watch, uses <title> if not set, falls back to URL" msgstr "" @@ -3546,6 +3537,7 @@ msgstr "" msgid "Use <a target=\"newwindow\" href=\"%(url)s\">AppRise Notification URLs</a> for notification to just about any service!" msgstr "" +#. CJK fonts lack native italics; allow substitution with conventional local styling. dennis-ignore: W303 #: changedetectionio/templates/_common_fields.html msgid "<i>Please read the notification services wiki here for important configuration notes</i>" msgstr "" @@ -3907,6 +3899,7 @@ msgstr "" msgid "Note!: //text() function does not work where the <element> contains <![CDATA[]]>" msgstr "" +#. CJK fonts lack native italics; allow substitution with conventional local styling. dennis-ignore: W303 #: changedetectionio/templates/edit/include_subtract.html msgid "One CSS, xPath 1 & 2, JSON Path/JQ selector per line, <i>any</i> rules that matches will be used." msgstr "" diff --git a/changedetectionio/translations/en_US/LC_MESSAGES/messages.po b/changedetectionio/translations/en_US/LC_MESSAGES/messages.po index 1c6b87c0..5a46074e 100644 --- a/changedetectionio/translations/en_US/LC_MESSAGES/messages.po +++ b/changedetectionio/translations/en_US/LC_MESSAGES/messages.po @@ -160,7 +160,7 @@ msgstr "" #: changedetectionio/blueprint/imports/importer.py #, python-brace-format -msgid "{count} Imported from list in {duration:.2f}s, {skipped_count} Skipped." +msgid "{count} Imported from list in {duration}s, {skipped_count} Skipped." msgstr "" #: changedetectionio/blueprint/imports/importer.py @@ -173,7 +173,7 @@ msgstr "" #: changedetectionio/blueprint/imports/importer.py #, python-brace-format -msgid "{count} Imported from Distill.io in {duration:.2f}s, {skipped_count} Skipped." +msgid "{count} Imported from Distill.io in {duration}s, {skipped_count} Skipped." msgstr "" #: changedetectionio/blueprint/imports/importer.py @@ -192,22 +192,18 @@ msgstr "" #: changedetectionio/blueprint/imports/importer.py #, python-brace-format -msgid "{count} imported from Wachete .xlsx in {duration:.2f}s" +msgid "{count} imported from Wachete .xlsx in {duration}s" msgstr "" #: changedetectionio/blueprint/imports/importer.py #, python-brace-format -msgid "{count} imported from custom .xlsx in {duration:.2f}s" +msgid "{count} imported from custom .xlsx in {duration}s" msgstr "" #: changedetectionio/blueprint/imports/templates/import.html msgid "URL List" msgstr "" -#: changedetectionio/blueprint/imports/templates/import.html -msgid "Distill.io" -msgstr "" - #: changedetectionio/blueprint/imports/templates/import.html msgid ".XLSX & Wachete" msgstr "" @@ -241,6 +237,7 @@ msgstr "" msgid "Copy and Paste your Distill.io watch 'export' file, this should be a JSON file." msgstr "" +#. CJK fonts lack native italics; allow substitution with conventional local styling. dennis-ignore: W303 #: changedetectionio/blueprint/imports/templates/import.html msgid "" "This is <i>experimental</i>, supported fields are <code>name</code>, <code>uri</code>, <code>tags</code>, " @@ -366,8 +363,8 @@ msgid "AI / LLM configuration removed." msgstr "" #: changedetectionio/blueprint/settings/llm.py -#, python-format -msgid "AI summary cache cleared (%(count)s file(s) removed)." +#, python-brace-format +msgid "AI summary cache cleared ({} file(s) removed)." msgstr "" #: changedetectionio/blueprint/settings/templates/notification-log.html @@ -391,14 +388,6 @@ msgstr "" msgid "UI Options" msgstr "" -#: changedetectionio/blueprint/settings/templates/settings.html -msgid "API" -msgstr "" - -#: changedetectionio/blueprint/settings/templates/settings.html -msgid "RSS" -msgstr "" - #: changedetectionio/blueprint/settings/templates/settings.html msgid "Backups" msgstr "" @@ -1211,6 +1200,7 @@ msgstr "" msgid "Leave unchecked to use the auto-generated colour based on the tag name." msgstr "" +#. CJK fonts lack native italics; allow substitution with conventional local styling. dennis-ignore: W303 #: changedetectionio/blueprint/tags/templates/edit-tag.html msgid "These settings are <strong><i>added</i></strong> to any existing watch configurations." msgstr "" @@ -1915,6 +1905,7 @@ msgid "" "lines against all history for this watch." msgstr "" +#. CJK fonts lack native italics; allow substitution with conventional local styling. dennis-ignore: W303 #: changedetectionio/blueprint/ui/templates/edit.html msgid "Helps reduce changes detected caused by sites shuffling lines around, combine with <i>check unique lines</i> below." msgstr "" @@ -2172,6 +2163,7 @@ msgstr "" msgid "<p>Are you sure you want to clear history for the selected items?</p><p>This action cannot be undone.</p>" msgstr "" +#. Universally recognized; typically left as-is. dennis-ignore: W302 #: changedetectionio/blueprint/watchlist/templates/watch-overview.html msgid "OK" msgstr "" @@ -2185,7 +2177,7 @@ msgid "Delete Watches?" msgstr "" #: changedetectionio/blueprint/watchlist/templates/watch-overview.html -msgid "<p>Are you sure you want to delete the selected watches?</strong></p><p>This action cannot be undone.</p>" +msgid "<p><strong>Are you sure you want to delete the selected watches?</strong></p><p>This action cannot be undone.</p>" msgstr "" #: changedetectionio/blueprint/watchlist/templates/watch-overview.html @@ -2683,10 +2675,6 @@ msgstr "" msgid "Invalid value." msgstr "" -#: changedetectionio/blueprint/imports/templates/import.html changedetectionio/forms.py -msgid "URL" -msgstr "" - #: changedetectionio/forms.py msgid "Group tag" msgstr "" @@ -2922,6 +2910,7 @@ msgstr "" msgid "Match any of the following" msgstr "" +#. dennis-ignore: W303 - False positive caused by <title>. https://github.com/mozilla/dennis/issues/213 #: changedetectionio/forms.py msgid "Use page <title> in list" msgstr "" @@ -3021,6 +3010,7 @@ msgstr "" msgid "Favicons Enabled" msgstr "" +#. dennis-ignore: W303 - False positive caused by <title>. https://github.com/mozilla/dennis/issues/213 #: changedetectionio/forms.py msgid "Use page <title> in watch overview list" msgstr "" @@ -3410,6 +3400,7 @@ msgstr "" msgid "The UUID of the watch." msgstr "" +#. dennis-ignore: W303 - False positive caused by <title>. https://github.com/mozilla/dennis/issues/213 #: changedetectionio/templates/_common_fields.html msgid "The page title of the watch, uses <title> if not set, falls back to URL" msgstr "" @@ -3546,6 +3537,7 @@ msgstr "" msgid "Use <a target=\"newwindow\" href=\"%(url)s\">AppRise Notification URLs</a> for notification to just about any service!" msgstr "" +#. CJK fonts lack native italics; allow substitution with conventional local styling. dennis-ignore: W303 #: changedetectionio/templates/_common_fields.html msgid "<i>Please read the notification services wiki here for important configuration notes</i>" msgstr "" @@ -3907,6 +3899,7 @@ msgstr "" msgid "Note!: //text() function does not work where the <element> contains <![CDATA[]]>" msgstr "" +#. CJK fonts lack native italics; allow substitution with conventional local styling. dennis-ignore: W303 #: changedetectionio/templates/edit/include_subtract.html msgid "One CSS, xPath 1 & 2, JSON Path/JQ selector per line, <i>any</i> rules that matches will be used." msgstr "" diff --git a/changedetectionio/translations/es/LC_MESSAGES/messages.mo b/changedetectionio/translations/es/LC_MESSAGES/messages.mo index 5a57c19c..7c22f458 100644 Binary files a/changedetectionio/translations/es/LC_MESSAGES/messages.mo and b/changedetectionio/translations/es/LC_MESSAGES/messages.mo differ diff --git a/changedetectionio/translations/es/LC_MESSAGES/messages.po b/changedetectionio/translations/es/LC_MESSAGES/messages.po index 89931980..b1370281 100644 --- a/changedetectionio/translations/es/LC_MESSAGES/messages.po +++ b/changedetectionio/translations/es/LC_MESSAGES/messages.po @@ -160,8 +160,8 @@ msgstr "Importando 5.000 de las primeras URL de tu lista, el resto se puede impo #: changedetectionio/blueprint/imports/importer.py #, python-brace-format -msgid "{count} Imported from list in {duration:.2f}s, {skipped_count} Skipped." -msgstr "{count} importado de la lista en {duration:.2f}s, {skipped_count} omitido." +msgid "{count} Imported from list in {duration}s, {skipped_count} Skipped." +msgstr "{count} importado de la lista en {duration}s, {skipped_count} omitido." #: changedetectionio/blueprint/imports/importer.py msgid "Unable to read JSON file, was it broken?" @@ -173,8 +173,8 @@ msgstr "La estructura JSON parece no válida, ¿estaba rota?" #: changedetectionio/blueprint/imports/importer.py #, python-brace-format -msgid "{count} Imported from Distill.io in {duration:.2f}s, {skipped_count} Skipped." -msgstr "{count} importado de Distill.io en {duration:.2f}s, {skipped_count} omitido." +msgid "{count} Imported from Distill.io in {duration}s, {skipped_count} Skipped." +msgstr "{count} importado de Distill.io en {duration}s, {skipped_count} omitido." #: changedetectionio/blueprint/imports/importer.py msgid "Unable to read export XLSX file, something wrong with the file?" @@ -194,22 +194,18 @@ msgstr "" #: changedetectionio/blueprint/imports/importer.py #, python-brace-format -msgid "{count} imported from Wachete .xlsx in {duration:.2f}s" -msgstr "{count} importado de Wachete .xlsx en {duration:.2f}s" +msgid "{count} imported from Wachete .xlsx in {duration}s" +msgstr "{count} importado de Wachete .xlsx en {duration}s" #: changedetectionio/blueprint/imports/importer.py #, python-brace-format -msgid "{count} imported from custom .xlsx in {duration:.2f}s" -msgstr "{count} importado desde .xlsx personalizado en {duration:.2f}s" +msgid "{count} imported from custom .xlsx in {duration}s" +msgstr "{count} importado desde .xlsx personalizado en {duration}s" #: changedetectionio/blueprint/imports/templates/import.html msgid "URL List" msgstr "Lista de URL" -#: changedetectionio/blueprint/imports/templates/import.html -msgid "Distill.io" -msgstr "Distill.io" - #: changedetectionio/blueprint/imports/templates/import.html msgid ".XLSX & Wachete" msgstr ".XLSX y Wachete" @@ -245,6 +241,7 @@ msgstr "Las URL que no pasen la validación permanecerán en el área de texto." msgid "Copy and Paste your Distill.io watch 'export' file, this should be a JSON file." msgstr "Copie y pegue el archivo de 'exportación' del monitor Distill.io, este debería ser un archivo JSON." +#. CJK fonts lack native italics; allow substitution with conventional local styling. dennis-ignore: W303 #: changedetectionio/blueprint/imports/templates/import.html msgid "" "This is <i>experimental</i>, supported fields are <code>name</code>, <code>uri</code>, <code>tags</code>, " @@ -374,8 +371,8 @@ msgid "AI / LLM configuration removed." msgstr "" #: changedetectionio/blueprint/settings/llm.py -#, python-format -msgid "AI summary cache cleared (%(count)s file(s) removed)." +#, python-brace-format +msgid "AI summary cache cleared ({} file(s) removed)." msgstr "" #: changedetectionio/blueprint/settings/templates/notification-log.html @@ -399,14 +396,6 @@ msgstr "Filtros globales" msgid "UI Options" msgstr "Opciones de interfaz de usuario" -#: changedetectionio/blueprint/settings/templates/settings.html -msgid "API" -msgstr "API" - -#: changedetectionio/blueprint/settings/templates/settings.html -msgid "RSS" -msgstr "RSS" - #: changedetectionio/blueprint/settings/templates/settings.html msgid "Backups" msgstr "Copias de seguridad" @@ -1249,6 +1238,7 @@ msgstr "" msgid "Leave unchecked to use the auto-generated colour based on the tag name." msgstr "" +#. CJK fonts lack native italics; allow substitution with conventional local styling. dennis-ignore: W303 #: changedetectionio/blueprint/tags/templates/edit-tag.html msgid "These settings are <strong><i>added</i></strong> to any existing watch configurations." msgstr "Estas configuraciones son <strong><i>agregadas</i></strong> a cualquier configuración de monitor existente." @@ -1974,6 +1964,7 @@ msgstr "" "Bueno para sitios web que simplemente mueven el contenido y desea saber cuándo se agrega contenido NUEVO, compara " "nuevas líneas con todo el historial de este monitor." +#. CJK fonts lack native italics; allow substitution with conventional local styling. dennis-ignore: W303 #: changedetectionio/blueprint/ui/templates/edit.html msgid "Helps reduce changes detected caused by sites shuffling lines around, combine with <i>check unique lines</i> below." msgstr "" @@ -2241,6 +2232,7 @@ msgstr "" "<p>¿Está seguro de que desea borrar el historial de los elementos seleccionados?</p><p>Esta acción no se puede " "deshacer.</p>" +#. Universally recognized; typically left as-is. dennis-ignore: W302 #: changedetectionio/blueprint/watchlist/templates/watch-overview.html msgid "OK" msgstr "OK" @@ -2254,9 +2246,9 @@ msgid "Delete Watches?" msgstr "¿Eliminar monitores?" #: changedetectionio/blueprint/watchlist/templates/watch-overview.html -msgid "<p>Are you sure you want to delete the selected watches?</strong></p><p>This action cannot be undone.</p>" +msgid "<p><strong>Are you sure you want to delete the selected watches?</strong></p><p>This action cannot be undone.</p>" msgstr "" -"<p>¿Está seguro de que desea eliminar los monitores seleccionados?</strong></p><p>Esta acción no se puede " +"<p><strong>¿Está seguro de que desea eliminar los monitores seleccionados?</strong></p><p>Esta acción no se puede " "deshacer.</p>" #: changedetectionio/blueprint/watchlist/templates/watch-overview.html @@ -2756,10 +2748,6 @@ msgstr "Valor vacío no permitido." msgid "Invalid value." msgstr "Valor no válido." -#: changedetectionio/blueprint/imports/templates/import.html changedetectionio/forms.py -msgid "URL" -msgstr "URL" - #: changedetectionio/forms.py msgid "Group tag" msgstr "Etiqueta de grupo" @@ -2995,9 +2983,10 @@ msgstr "Coincide con todo lo siguiente" msgid "Match any of the following" msgstr "Coincide con cualquiera de los siguientes" +#. dennis-ignore: W303 - False positive caused by <title>. https://github.com/mozilla/dennis/issues/213 #: changedetectionio/forms.py msgid "Use page <title> in list" -msgstr "Usar página<title>en la lista" +msgstr "Usar página <title> en la lista" #: changedetectionio/forms.py msgid "Number of history items per watch to keep" @@ -3094,6 +3083,7 @@ msgstr "Actualizaciones de UI en tiempo real habilitadas" msgid "Favicons Enabled" msgstr "Favicones habilitados" +#. dennis-ignore: W303 - False positive caused by <title>. https://github.com/mozilla/dennis/issues/213 #: changedetectionio/forms.py msgid "Use page <title> in watch overview list" msgstr "Usar <title> de la página en la lista general de monitores" @@ -3483,9 +3473,10 @@ msgstr "La URL que se está viendo." msgid "The UUID of the watch." msgstr "El UUID del monitor." +#. dennis-ignore: W303 - False positive caused by <title>. https://github.com/mozilla/dennis/issues/213 #: changedetectionio/templates/_common_fields.html msgid "The page title of the watch, uses <title> if not set, falls back to URL" -msgstr "El título de la página del monitor, utiliza<title>si no se establece, vuelve a la URL" +msgstr "El título de la página del monitor, utiliza <title> si no se establece, vuelve a la URL" #: changedetectionio/templates/_common_fields.html msgid "The watch group / tag" @@ -3621,6 +3612,7 @@ msgstr "" "¡Use las <a target=\"newwindow\" href=\"%(url)s\">URL de notificación de AppRise</a> para notificar a casi cualquier " "servicio!" +#. CJK fonts lack native italics; allow substitution with conventional local styling. dennis-ignore: W303 #: changedetectionio/templates/_common_fields.html msgid "<i>Please read the notification services wiki here for important configuration notes</i>" msgstr "<i>Lea la wiki de servicios de notificación aquí para obtener notas de configuración importantes</i>" @@ -3984,6 +3976,7 @@ msgstr "" msgid "Note!: //text() function does not work where the <element> contains <![CDATA[]]>" msgstr "" +#. CJK fonts lack native italics; allow substitution with conventional local styling. dennis-ignore: W303 #: changedetectionio/templates/edit/include_subtract.html msgid "One CSS, xPath 1 & 2, JSON Path/JQ selector per line, <i>any</i> rules that matches will be used." msgstr "" diff --git a/changedetectionio/translations/fr/LC_MESSAGES/messages.mo b/changedetectionio/translations/fr/LC_MESSAGES/messages.mo index 650de025..72799afc 100644 Binary files a/changedetectionio/translations/fr/LC_MESSAGES/messages.mo and b/changedetectionio/translations/fr/LC_MESSAGES/messages.mo differ diff --git a/changedetectionio/translations/fr/LC_MESSAGES/messages.po b/changedetectionio/translations/fr/LC_MESSAGES/messages.po index 13a62a71..e037af5e 100644 --- a/changedetectionio/translations/fr/LC_MESSAGES/messages.po +++ b/changedetectionio/translations/fr/LC_MESSAGES/messages.po @@ -160,8 +160,8 @@ msgstr "Importation de 5 000 des premières URL de votre liste, le reste peut ê #: changedetectionio/blueprint/imports/importer.py #, python-brace-format -msgid "{count} Imported from list in {duration:.2f}s, {skipped_count} Skipped." -msgstr "{count} importées de la liste en {duration:.2f}s, {skipped_count} ignorées." +msgid "{count} Imported from list in {duration}s, {skipped_count} Skipped." +msgstr "{count} importées de la liste en {duration}s, {skipped_count} ignorées." #: changedetectionio/blueprint/imports/importer.py msgid "Unable to read JSON file, was it broken?" @@ -173,8 +173,8 @@ msgstr "La structure JSON semble invalide, est-elle corrompue ?" #: changedetectionio/blueprint/imports/importer.py #, python-brace-format -msgid "{count} Imported from Distill.io in {duration:.2f}s, {skipped_count} Skipped." -msgstr "{count} importées de Distill.io en {duration:.2f}s, {skipped_count} ignorées." +msgid "{count} Imported from Distill.io in {duration}s, {skipped_count} Skipped." +msgstr "{count} importées de Distill.io en {duration}s, {skipped_count} ignorées." #: changedetectionio/blueprint/imports/importer.py msgid "Unable to read export XLSX file, something wrong with the file?" @@ -194,22 +194,18 @@ msgstr "" #: changedetectionio/blueprint/imports/importer.py #, python-brace-format -msgid "{count} imported from Wachete .xlsx in {duration:.2f}s" -msgstr "{count} importées de Wachete .xlsx en {duration:.2f}s" +msgid "{count} imported from Wachete .xlsx in {duration}s" +msgstr "{count} importées de Wachete .xlsx en {duration}s" #: changedetectionio/blueprint/imports/importer.py #, python-brace-format -msgid "{count} imported from custom .xlsx in {duration:.2f}s" -msgstr "{count} importées de .xlsx personnalisé en {duration:.2f}s" +msgid "{count} imported from custom .xlsx in {duration}s" +msgstr "{count} importées de .xlsx personnalisé en {duration}s" #: changedetectionio/blueprint/imports/templates/import.html msgid "URL List" msgstr "Liste d'URL" -#: changedetectionio/blueprint/imports/templates/import.html -msgid "Distill.io" -msgstr "Distill.io" - #: changedetectionio/blueprint/imports/templates/import.html msgid ".XLSX & Wachete" msgstr ".XLSX et Wachete" @@ -243,6 +239,7 @@ msgstr "Les URL qui ne passent pas la validation resteront dans la zone de texte msgid "Copy and Paste your Distill.io watch 'export' file, this should be a JSON file." msgstr "" +#. CJK fonts lack native italics; allow substitution with conventional local styling. dennis-ignore: W303 #: changedetectionio/blueprint/imports/templates/import.html msgid "" "This is <i>experimental</i>, supported fields are <code>name</code>, <code>uri</code>, <code>tags</code>, " @@ -370,8 +367,8 @@ msgid "AI / LLM configuration removed." msgstr "" #: changedetectionio/blueprint/settings/llm.py -#, python-format -msgid "AI summary cache cleared (%(count)s file(s) removed)." +#, python-brace-format +msgid "AI summary cache cleared ({} file(s) removed)." msgstr "" #: changedetectionio/blueprint/settings/templates/notification-log.html @@ -395,14 +392,6 @@ msgstr "Filtres globaux" msgid "UI Options" msgstr "Options de l'interface utilisateur" -#: changedetectionio/blueprint/settings/templates/settings.html -msgid "API" -msgstr "API" - -#: changedetectionio/blueprint/settings/templates/settings.html -msgid "RSS" -msgstr "RSS" - #: changedetectionio/blueprint/settings/templates/settings.html msgid "Backups" msgstr "SAUVEGARDES" @@ -1217,6 +1206,7 @@ msgstr "" msgid "Leave unchecked to use the auto-generated colour based on the tag name." msgstr "" +#. CJK fonts lack native italics; allow substitution with conventional local styling. dennis-ignore: W303 #: changedetectionio/blueprint/tags/templates/edit-tag.html msgid "These settings are <strong><i>added</i></strong> to any existing watch configurations." msgstr "" @@ -1926,6 +1916,7 @@ msgid "" "lines against all history for this watch." msgstr "" +#. CJK fonts lack native italics; allow substitution with conventional local styling. dennis-ignore: W303 #: changedetectionio/blueprint/ui/templates/edit.html msgid "Helps reduce changes detected caused by sites shuffling lines around, combine with <i>check unique lines</i> below." msgstr "" @@ -2183,6 +2174,7 @@ msgstr "Effacer les historiques" msgid "<p>Are you sure you want to clear history for the selected items?</p><p>This action cannot be undone.</p>" msgstr "" +#. Universally recognized; typically left as-is. dennis-ignore: W302 #: changedetectionio/blueprint/watchlist/templates/watch-overview.html msgid "OK" msgstr "D'ACCORD" @@ -2196,7 +2188,7 @@ msgid "Delete Watches?" msgstr "Supprimer les montres ?" #: changedetectionio/blueprint/watchlist/templates/watch-overview.html -msgid "<p>Are you sure you want to delete the selected watches?</strong></p><p>This action cannot be undone.</p>" +msgid "<p><strong>Are you sure you want to delete the selected watches?</strong></p><p>This action cannot be undone.</p>" msgstr "" #: changedetectionio/blueprint/watchlist/templates/watch-overview.html @@ -2696,10 +2688,6 @@ msgstr "Valeur vide non autorisée." msgid "Invalid value." msgstr "Valeur invalide." -#: changedetectionio/blueprint/imports/templates/import.html changedetectionio/forms.py -msgid "URL" -msgstr "URL" - #: changedetectionio/forms.py msgid "Group tag" msgstr "Groupe / Étiquette" @@ -2935,9 +2923,10 @@ msgstr "Faites correspondre tous les éléments suivants" msgid "Match any of the following" msgstr "Faites correspondre l'un des éléments suivants" +#. dennis-ignore: W303 - False positive caused by <title>. https://github.com/mozilla/dennis/issues/213 #: changedetectionio/forms.py msgid "Use page <title> in list" -msgstr "Utiliser la page <titre> dans la liste" +msgstr "Utiliser la page <title> dans la liste" #: changedetectionio/forms.py msgid "Number of history items per watch to keep" @@ -3034,9 +3023,10 @@ msgstr "Mises à jour en temps réel hors ligne" msgid "Favicons Enabled" msgstr "Favicons Activés" +#. dennis-ignore: W303 - False positive caused by <title>. https://github.com/mozilla/dennis/issues/213 #: changedetectionio/forms.py msgid "Use page <title> in watch overview list" -msgstr "Utiliser la page <titre> dans la liste de présentation des moniteurs" +msgstr "Utiliser la page <title> dans la liste de présentation des moniteurs" #: changedetectionio/forms.py msgid "API access token security check enabled" @@ -3423,6 +3413,7 @@ msgstr "" msgid "The UUID of the watch." msgstr "L'UUID du moniteur." +#. dennis-ignore: W303 - False positive caused by <title>. https://github.com/mozilla/dennis/issues/213 #: changedetectionio/templates/_common_fields.html msgid "The page title of the watch, uses <title> if not set, falls back to URL" msgstr "" @@ -3559,6 +3550,7 @@ msgstr "Plus d'infos ici" msgid "Use <a target=\"newwindow\" href=\"%(url)s\">AppRise Notification URLs</a> for notification to just about any service!" msgstr "" +#. CJK fonts lack native italics; allow substitution with conventional local styling. dennis-ignore: W303 #: changedetectionio/templates/_common_fields.html msgid "<i>Please read the notification services wiki here for important configuration notes</i>" msgstr "" @@ -3922,6 +3914,7 @@ msgstr "" msgid "Note!: //text() function does not work where the <element> contains <![CDATA[]]>" msgstr "" +#. CJK fonts lack native italics; allow substitution with conventional local styling. dennis-ignore: W303 #: changedetectionio/templates/edit/include_subtract.html msgid "One CSS, xPath 1 & 2, JSON Path/JQ selector per line, <i>any</i> rules that matches will be used." msgstr "" diff --git a/changedetectionio/translations/it/LC_MESSAGES/messages.mo b/changedetectionio/translations/it/LC_MESSAGES/messages.mo index a49ecffa..b85b7493 100644 Binary files a/changedetectionio/translations/it/LC_MESSAGES/messages.mo and b/changedetectionio/translations/it/LC_MESSAGES/messages.mo differ diff --git a/changedetectionio/translations/it/LC_MESSAGES/messages.po b/changedetectionio/translations/it/LC_MESSAGES/messages.po index 789dd5dd..744ada14 100644 --- a/changedetectionio/translations/it/LC_MESSAGES/messages.po +++ b/changedetectionio/translations/it/LC_MESSAGES/messages.po @@ -160,8 +160,8 @@ msgstr "Importazione delle prime 5.000 URL dalla tua lista, il resto può essere #: changedetectionio/blueprint/imports/importer.py #, python-brace-format -msgid "{count} Imported from list in {duration:.2f}s, {skipped_count} Skipped." -msgstr "{count} Importate dalla lista in {duration:.2f}s, {skipped_count} Ignorate." +msgid "{count} Imported from list in {duration}s, {skipped_count} Skipped." +msgstr "{count} Importate dalla lista in {duration}s, {skipped_count} Ignorate." #: changedetectionio/blueprint/imports/importer.py msgid "Unable to read JSON file, was it broken?" @@ -173,8 +173,8 @@ msgstr "La struttura JSON sembra non valida, è danneggiata?" #: changedetectionio/blueprint/imports/importer.py #, python-brace-format -msgid "{count} Imported from Distill.io in {duration:.2f}s, {skipped_count} Skipped." -msgstr "{count} Importate da Distill.io in {duration:.2f}s, {skipped_count} Ignorate." +msgid "{count} Imported from Distill.io in {duration}s, {skipped_count} Skipped." +msgstr "{count} Importate da Distill.io in {duration}s, {skipped_count} Ignorate." #: changedetectionio/blueprint/imports/importer.py msgid "Unable to read export XLSX file, something wrong with the file?" @@ -194,22 +194,18 @@ msgstr "" #: changedetectionio/blueprint/imports/importer.py #, python-brace-format -msgid "{count} imported from Wachete .xlsx in {duration:.2f}s" -msgstr "{count} importate da Wachete .xlsx in {duration:.2f}s" +msgid "{count} imported from Wachete .xlsx in {duration}s" +msgstr "{count} importate da Wachete .xlsx in {duration}s" #: changedetectionio/blueprint/imports/importer.py #, python-brace-format -msgid "{count} imported from custom .xlsx in {duration:.2f}s" -msgstr "{count} importate da .xlsx personalizzato in {duration:.2f}s" +msgid "{count} imported from custom .xlsx in {duration}s" +msgstr "{count} importate da .xlsx personalizzato in {duration}s" #: changedetectionio/blueprint/imports/templates/import.html msgid "URL List" msgstr "Lista URL" -#: changedetectionio/blueprint/imports/templates/import.html -msgid "Distill.io" -msgstr "Distill.io" - #: changedetectionio/blueprint/imports/templates/import.html msgid ".XLSX & Wachete" msgstr ".XLSX & Wachete" @@ -243,6 +239,7 @@ msgstr "" msgid "Copy and Paste your Distill.io watch 'export' file, this should be a JSON file." msgstr "" +#. CJK fonts lack native italics; allow substitution with conventional local styling. dennis-ignore: W303 #: changedetectionio/blueprint/imports/templates/import.html msgid "" "This is <i>experimental</i>, supported fields are <code>name</code>, <code>uri</code>, <code>tags</code>, " @@ -368,8 +365,8 @@ msgid "AI / LLM configuration removed." msgstr "" #: changedetectionio/blueprint/settings/llm.py -#, python-format -msgid "AI summary cache cleared (%(count)s file(s) removed)." +#, python-brace-format +msgid "AI summary cache cleared ({} file(s) removed)." msgstr "" #: changedetectionio/blueprint/settings/templates/notification-log.html @@ -393,14 +390,6 @@ msgstr "Filtri globali" msgid "UI Options" msgstr "Opzioni interfaccia" -#: changedetectionio/blueprint/settings/templates/settings.html -msgid "API" -msgstr "API" - -#: changedetectionio/blueprint/settings/templates/settings.html -msgid "RSS" -msgstr "RSS" - #: changedetectionio/blueprint/settings/templates/settings.html msgid "Backups" msgstr "Backup" @@ -1213,6 +1202,7 @@ msgstr "" msgid "Leave unchecked to use the auto-generated colour based on the tag name." msgstr "" +#. CJK fonts lack native italics; allow substitution with conventional local styling. dennis-ignore: W303 #: changedetectionio/blueprint/tags/templates/edit-tag.html msgid "These settings are <strong><i>added</i></strong> to any existing watch configurations." msgstr "" @@ -1917,6 +1907,7 @@ msgid "" "lines against all history for this watch." msgstr "" +#. CJK fonts lack native italics; allow substitution with conventional local styling. dennis-ignore: W303 #: changedetectionio/blueprint/ui/templates/edit.html msgid "Helps reduce changes detected caused by sites shuffling lines around, combine with <i>check unique lines</i> below." msgstr "" @@ -2174,6 +2165,7 @@ msgstr "Cancella cronologie" msgid "<p>Are you sure you want to clear history for the selected items?</p><p>This action cannot be undone.</p>" msgstr "" +#. Universally recognized; typically left as-is. dennis-ignore: W302 #: changedetectionio/blueprint/watchlist/templates/watch-overview.html msgid "OK" msgstr "OK" @@ -2187,7 +2179,7 @@ msgid "Delete Watches?" msgstr "Eliminare monitoraggi?" #: changedetectionio/blueprint/watchlist/templates/watch-overview.html -msgid "<p>Are you sure you want to delete the selected watches?</strong></p><p>This action cannot be undone.</p>" +msgid "<p><strong>Are you sure you want to delete the selected watches?</strong></p><p>This action cannot be undone.</p>" msgstr "" #: changedetectionio/blueprint/watchlist/templates/watch-overview.html @@ -2685,10 +2677,6 @@ msgstr "Valore vuoto non consentito." msgid "Invalid value." msgstr "Valore non valido." -#: changedetectionio/blueprint/imports/templates/import.html changedetectionio/forms.py -msgid "URL" -msgstr "URL" - #: changedetectionio/forms.py msgid "Group tag" msgstr "Gruppo / Etichetta" @@ -2924,6 +2912,7 @@ msgstr "Corrisponde a tutti i seguenti" msgid "Match any of the following" msgstr "Corrisponde a uno qualsiasi dei seguenti" +#. dennis-ignore: W303 - False positive caused by <title>. https://github.com/mozilla/dennis/issues/213 #: changedetectionio/forms.py msgid "Use page <title> in list" msgstr "Usa <title> pagina nell'elenco" @@ -3023,6 +3012,7 @@ msgstr "Aggiornamenti UI in tempo reale attivi" msgid "Favicons Enabled" msgstr "Favicon attive" +#. dennis-ignore: W303 - False positive caused by <title>. https://github.com/mozilla/dennis/issues/213 #: changedetectionio/forms.py msgid "Use page <title> in watch overview list" msgstr "Usa <title> pagina nell'elenco osservati" @@ -3412,6 +3402,7 @@ msgstr "" msgid "The UUID of the watch." msgstr "L'UUID del monitor." +#. dennis-ignore: W303 - False positive caused by <title>. https://github.com/mozilla/dennis/issues/213 #: changedetectionio/templates/_common_fields.html msgid "The page title of the watch, uses <title> if not set, falls back to URL" msgstr "" @@ -3548,6 +3539,7 @@ msgstr "" msgid "Use <a target=\"newwindow\" href=\"%(url)s\">AppRise Notification URLs</a> for notification to just about any service!" msgstr "" +#. CJK fonts lack native italics; allow substitution with conventional local styling. dennis-ignore: W303 #: changedetectionio/templates/_common_fields.html msgid "<i>Please read the notification services wiki here for important configuration notes</i>" msgstr "" @@ -3909,6 +3901,7 @@ msgstr "" msgid "Note!: //text() function does not work where the <element> contains <![CDATA[]]>" msgstr "" +#. CJK fonts lack native italics; allow substitution with conventional local styling. dennis-ignore: W303 #: changedetectionio/templates/edit/include_subtract.html msgid "One CSS, xPath 1 & 2, JSON Path/JQ selector per line, <i>any</i> rules that matches will be used." msgstr "" diff --git a/changedetectionio/translations/ja/LC_MESSAGES/messages.mo b/changedetectionio/translations/ja/LC_MESSAGES/messages.mo index 562ad453..31ab7564 100644 Binary files a/changedetectionio/translations/ja/LC_MESSAGES/messages.mo and b/changedetectionio/translations/ja/LC_MESSAGES/messages.mo differ diff --git a/changedetectionio/translations/ja/LC_MESSAGES/messages.po b/changedetectionio/translations/ja/LC_MESSAGES/messages.po index 098f827d..f9cee922 100644 --- a/changedetectionio/translations/ja/LC_MESSAGES/messages.po +++ b/changedetectionio/translations/ja/LC_MESSAGES/messages.po @@ -161,8 +161,8 @@ msgstr "リストの最初の5,000件のURLをインポートしています。 #: changedetectionio/blueprint/imports/importer.py #, python-brace-format -msgid "{count} Imported from list in {duration:.2f}s, {skipped_count} Skipped." -msgstr "{count} 件をリストから {duration:.2f}秒でインポートしました。{skipped_count} 件をスキップしました。" +msgid "{count} Imported from list in {duration}s, {skipped_count} Skipped." +msgstr "{count} 件をリストから {duration}秒でインポートしました。{skipped_count} 件をスキップしました。" #: changedetectionio/blueprint/imports/importer.py msgid "Unable to read JSON file, was it broken?" @@ -174,8 +174,8 @@ msgstr "JSONの構造が無効のようです。ファイルが壊れていま #: changedetectionio/blueprint/imports/importer.py #, python-brace-format -msgid "{count} Imported from Distill.io in {duration:.2f}s, {skipped_count} Skipped." -msgstr "{count} 件を Distill.io から {duration:.2f}秒でインポートしました。{skipped_count} 件をスキップしました。" +msgid "{count} Imported from Distill.io in {duration}s, {skipped_count} Skipped." +msgstr "{count} 件を Distill.io から {duration}秒でインポートしました。{skipped_count} 件をスキップしました。" #: changedetectionio/blueprint/imports/importer.py msgid "Unable to read export XLSX file, something wrong with the file?" @@ -193,22 +193,18 @@ msgstr "行番号 {} の処理中にエラーが発生しました。すべて #: changedetectionio/blueprint/imports/importer.py #, python-brace-format -msgid "{count} imported from Wachete .xlsx in {duration:.2f}s" -msgstr "{count} 件を Wachete .xlsx から {duration:.2f}秒でインポートしました" +msgid "{count} imported from Wachete .xlsx in {duration}s" +msgstr "{count} 件を Wachete .xlsx から {duration}秒でインポートしました" #: changedetectionio/blueprint/imports/importer.py #, python-brace-format -msgid "{count} imported from custom .xlsx in {duration:.2f}s" -msgstr "{count} 件をカスタム .xlsx から {duration:.2f}秒でインポートしました" +msgid "{count} imported from custom .xlsx in {duration}s" +msgstr "{count} 件をカスタム .xlsx から {duration}秒でインポートしました" #: changedetectionio/blueprint/imports/templates/import.html msgid "URL List" msgstr "URLリスト" -#: changedetectionio/blueprint/imports/templates/import.html -msgid "Distill.io" -msgstr "Distill.io" - #: changedetectionio/blueprint/imports/templates/import.html msgid ".XLSX & Wachete" msgstr ".XLSX & Wachete" @@ -243,6 +239,7 @@ msgid "Copy and Paste your Distill.io watch 'export' file, this should be a JSON msgstr "Distill.io ウォッチの「エクスポート」ファイルをコピーして貼り付けてください。JSONファイルである必要があります。" # 訳注: 日本語を斜体にすると字形が崩れるため、強調表示は<strong>に置き換える。 +#. CJK fonts lack native italics; allow substitution with conventional local styling. dennis-ignore: W303 #: changedetectionio/blueprint/imports/templates/import.html msgid "" "This is <i>experimental</i>, supported fields are <code>name</code>, <code>uri</code>, <code>tags</code>, " @@ -370,8 +367,8 @@ msgid "AI / LLM configuration removed." msgstr "" #: changedetectionio/blueprint/settings/llm.py -#, python-format -msgid "AI summary cache cleared (%(count)s file(s) removed)." +#, python-brace-format +msgid "AI summary cache cleared ({} file(s) removed)." msgstr "" #: changedetectionio/blueprint/settings/templates/notification-log.html @@ -395,14 +392,6 @@ msgstr "グローバルフィルタ" msgid "UI Options" msgstr "UI オプション" -#: changedetectionio/blueprint/settings/templates/settings.html -msgid "API" -msgstr "API" - -#: changedetectionio/blueprint/settings/templates/settings.html -msgid "RSS" -msgstr "RSS" - #: changedetectionio/blueprint/settings/templates/settings.html msgid "Backups" msgstr "バックアップ" @@ -1219,6 +1208,7 @@ msgid "Leave unchecked to use the auto-generated colour based on the tag name." msgstr "タグ名に基づく自動生成色を使用する場合はチェックを外してください。" # 訳注: 日本語を斜体にすると字形が崩れるため、<strong> のみで強調し <i> は外す +#. CJK fonts lack native italics; allow substitution with conventional local styling. dennis-ignore: W303 #: changedetectionio/blueprint/tags/templates/edit-tag.html msgid "These settings are <strong><i>added</i></strong> to any existing watch configurations." msgstr "これらの設定は既存のすべてのウォッチ設定に<strong>追加</strong>されます。" @@ -1930,6 +1920,7 @@ msgid "" msgstr "コンテンツを移動させるだけのウェブサイトに適しています。新しいコンテンツが追加されたときに知りたい場合に便利で、このウォッチのすべての履歴と新しい行を比較します。" # 訳注: 日本語を斜体にすると字形が崩れるため、参照は「」で囲む。 +#. CJK fonts lack native italics; allow substitution with conventional local styling. dennis-ignore: W303 #: changedetectionio/blueprint/ui/templates/edit.html msgid "Helps reduce changes detected caused by sites shuffling lines around, combine with <i>check unique lines</i> below." msgstr "サイトが行を並べ替えることで発生する不要な変更検知を減らすのに役立ちます。下の「ユニーク行をチェック」と組み合わせてください。" @@ -2191,6 +2182,7 @@ msgstr "履歴をすべてクリア" msgid "<p>Are you sure you want to clear history for the selected items?</p><p>This action cannot be undone.</p>" msgstr "<p>選択した項目の履歴をクリアしてもよいですか?</p><p>この操作は元に戻せません。</p>" +#. Universally recognized; typically left as-is. dennis-ignore: W302 #: changedetectionio/blueprint/watchlist/templates/watch-overview.html msgid "OK" msgstr "OK" @@ -2204,8 +2196,8 @@ msgid "Delete Watches?" msgstr "ウォッチを削除しますか?" #: changedetectionio/blueprint/watchlist/templates/watch-overview.html -msgid "<p>Are you sure you want to delete the selected watches?</strong></p><p>This action cannot be undone.</p>" -msgstr "<p>選択したウォッチを削除してもよいですか?</strong></p><p>この操作は元に戻せません。</p>" +msgid "<p><strong>Are you sure you want to delete the selected watches?</strong></p><p>This action cannot be undone.</p>" +msgstr "<p><strong>選択したウォッチを削除してもよいですか?</strong></p><p>この操作は元に戻せません。</p>" #: changedetectionio/blueprint/watchlist/templates/watch-overview.html msgid "Queued size" @@ -2702,10 +2694,6 @@ msgstr "空の値は許可されていません。" msgid "Invalid value." msgstr "無効な値です。" -#: changedetectionio/blueprint/imports/templates/import.html changedetectionio/forms.py -msgid "URL" -msgstr "URL" - #: changedetectionio/forms.py msgid "Group tag" msgstr "グループタグ" @@ -2941,6 +2929,7 @@ msgstr "以下のすべてに一致" msgid "Match any of the following" msgstr "以下のいずれかに一致" +#. dennis-ignore: W303 - False positive caused by <title>. https://github.com/mozilla/dennis/issues/213 #: changedetectionio/forms.py msgid "Use page <title> in list" msgstr "リストでページの <title> を使用" @@ -3040,6 +3029,7 @@ msgstr "リアルタイムUI更新を有効化" msgid "Favicons Enabled" msgstr "ファビコンを有効化" +#. dennis-ignore: W303 - False positive caused by <title>. https://github.com/mozilla/dennis/issues/213 #: changedetectionio/forms.py msgid "Use page <title> in watch overview list" msgstr "ウォッチ一覧リストでページの <title> を使用" @@ -3429,6 +3419,7 @@ msgstr "監視中のURL。" msgid "The UUID of the watch." msgstr "ウォッチのUUID。" +#. dennis-ignore: W303 - False positive caused by <title>. https://github.com/mozilla/dennis/issues/213 #: changedetectionio/templates/_common_fields.html msgid "The page title of the watch, uses <title> if not set, falls back to URL" msgstr "ウォッチのページタイトル。設定されていない場合は <title> を使用し、それもなければURLにフォールバックします。" @@ -3572,6 +3563,7 @@ msgid "Use <a target=\"newwindow\" href=\"%(url)s\">AppRise Notification URLs</a msgstr "<a target=\"newwindow\" href=\"%(url)s\">AppRise 通知URL</a> を使えば、ほぼすべてのサービスへの通知に対応できます!" # 訳注: 日本語を斜体にすると字形が崩れるため、強調表示は<strong>に置き換える。 +#. CJK fonts lack native italics; allow substitution with conventional local styling. dennis-ignore: W303 #: changedetectionio/templates/_common_fields.html msgid "<i>Please read the notification services wiki here for important configuration notes</i>" msgstr "<strong>重要な設定に関するメモについては、通知サービスのWikiをこちらでお読みください</strong>" @@ -3941,6 +3933,7 @@ msgid "Note!: //text() function does not work where the <element> contains <![CD msgstr "注意: <element> が <![CDATA[]]> を含む場合、//text() 関数は動作しません" # 訳注: 日本語を斜体にすると字形が崩れるため、強調表示は<strong>に置き換える。 +#. CJK fonts lack native italics; allow substitution with conventional local styling. dennis-ignore: W303 #: changedetectionio/templates/edit/include_subtract.html msgid "One CSS, xPath 1 & 2, JSON Path/JQ selector per line, <i>any</i> rules that matches will be used." msgstr "1行につき1つのCSS、xPath 1 & 2、JSON Path/JQセレクタを指定してください。一致した<strong>すべての</strong>ルールが使用されます。" diff --git a/changedetectionio/translations/ko/LC_MESSAGES/messages.mo b/changedetectionio/translations/ko/LC_MESSAGES/messages.mo index 19538596..3d1727a5 100644 Binary files a/changedetectionio/translations/ko/LC_MESSAGES/messages.mo and b/changedetectionio/translations/ko/LC_MESSAGES/messages.mo differ diff --git a/changedetectionio/translations/ko/LC_MESSAGES/messages.po b/changedetectionio/translations/ko/LC_MESSAGES/messages.po index 9d62c841..ca558e3c 100644 --- a/changedetectionio/translations/ko/LC_MESSAGES/messages.po +++ b/changedetectionio/translations/ko/LC_MESSAGES/messages.po @@ -160,8 +160,8 @@ msgstr "목록의 처음 5,000개 URL만 가져옵니다. 나머지는 다시 #: changedetectionio/blueprint/imports/importer.py #, python-brace-format -msgid "{count} Imported from list in {duration:.2f}s, {skipped_count} Skipped." -msgstr "목록에서 {count}개를 {duration:.2f}초 만에 가져왔습니다. {skipped_count}개는 건너뛰었습니다." +msgid "{count} Imported from list in {duration}s, {skipped_count} Skipped." +msgstr "목록에서 {count}개를 {duration}초 만에 가져왔습니다. {skipped_count}개는 건너뛰었습니다." #: changedetectionio/blueprint/imports/importer.py msgid "Unable to read JSON file, was it broken?" @@ -173,8 +173,8 @@ msgstr "JSON 구조가 올바르지 않습니다. 파일이 손상되었나요?" #: changedetectionio/blueprint/imports/importer.py #, python-brace-format -msgid "{count} Imported from Distill.io in {duration:.2f}s, {skipped_count} Skipped." -msgstr "Distill.io에서 {count}개를 {duration:.2f}초 만에 가져왔습니다. {skipped_count}개는 건너뛰었습니다." +msgid "{count} Imported from Distill.io in {duration}s, {skipped_count} Skipped." +msgstr "Distill.io에서 {count}개를 {duration}초 만에 가져왔습니다. {skipped_count}개는 건너뛰었습니다." #: changedetectionio/blueprint/imports/importer.py msgid "Unable to read export XLSX file, something wrong with the file?" @@ -192,22 +192,18 @@ msgstr "{}행 처리 중 오류가 발생했습니다. 모든 셀 데이터 형 #: changedetectionio/blueprint/imports/importer.py #, python-brace-format -msgid "{count} imported from Wachete .xlsx in {duration:.2f}s" -msgstr "Wachete .xlsx에서 {count}개를 {duration:.2f}초 만에 가져왔습니다." +msgid "{count} imported from Wachete .xlsx in {duration}s" +msgstr "Wachete .xlsx에서 {count}개를 {duration}초 만에 가져왔습니다." #: changedetectionio/blueprint/imports/importer.py #, python-brace-format -msgid "{count} imported from custom .xlsx in {duration:.2f}s" -msgstr "사용자 지정 .xlsx에서 {count}개를 {duration:.2f}초 만에 가져왔습니다." +msgid "{count} imported from custom .xlsx in {duration}s" +msgstr "사용자 지정 .xlsx에서 {count}개를 {duration}초 만에 가져왔습니다." #: changedetectionio/blueprint/imports/templates/import.html msgid "URL List" msgstr "URL 목록" -#: changedetectionio/blueprint/imports/templates/import.html -msgid "Distill.io" -msgstr "Distill.io" - #: changedetectionio/blueprint/imports/templates/import.html msgid ".XLSX & Wachete" msgstr ".XLSX 및 Wachete" @@ -241,6 +237,7 @@ msgstr "유효성 검사를 통과하지 못한 URL은 텍스트 영역에 유 msgid "Copy and Paste your Distill.io watch 'export' file, this should be a JSON file." msgstr "Distill.io 모니터링 '내보내기' 파일을 복사해 붙여 넣어 주세요. JSON 파일이어야 합니다." +#. CJK fonts lack native italics; allow substitution with conventional local styling. dennis-ignore: W303 #: changedetectionio/blueprint/imports/templates/import.html msgid "" "This is <i>experimental</i>, supported fields are <code>name</code>, <code>uri</code>, <code>tags</code>, " @@ -368,9 +365,9 @@ msgid "AI / LLM configuration removed." msgstr "AI / LLM 설정이 제거되었습니다." #: changedetectionio/blueprint/settings/llm.py -#, python-format -msgid "AI summary cache cleared (%(count)s file(s) removed)." -msgstr "AI 요약 캐시가 지워졌습니다(%(count)s개 파일 제거됨)." +#, python-brace-format +msgid "AI summary cache cleared ({} file(s) removed)." +msgstr "AI 요약 캐시가 지워졌습니다({}개 파일 제거됨)." #: changedetectionio/blueprint/settings/templates/notification-log.html msgid "Notification debug log" @@ -393,14 +390,6 @@ msgstr "전역 필터" msgid "UI Options" msgstr "UI 옵션" -#: changedetectionio/blueprint/settings/templates/settings.html -msgid "API" -msgstr "API" - -#: changedetectionio/blueprint/settings/templates/settings.html -msgid "RSS" -msgstr "RSS" - #: changedetectionio/blueprint/settings/templates/settings.html msgid "Backups" msgstr "백업" @@ -1219,6 +1208,7 @@ msgstr "사용자 지정 색상" msgid "Leave unchecked to use the auto-generated colour based on the tag name." msgstr "체크하지 않으면 태그 이름을 기준으로 자동 생성된 색상을 사용합니다." +#. CJK fonts lack native italics; allow substitution with conventional local styling. dennis-ignore: W303 #: changedetectionio/blueprint/tags/templates/edit-tag.html msgid "These settings are <strong><i>added</i></strong> to any existing watch configurations." msgstr "이 설정은 기존 모니터링 설정에 <strong><i>추가</i></strong>됩니다." @@ -1925,6 +1915,7 @@ msgid "" "lines against all history for this watch." msgstr "사이트가 콘텐츠 위치만 자주 바꾸고 새 콘텐츠가 추가될 때만 알고 싶을 때 유용합니다. 새 줄을 이 모니터링의 전체 기록과 비교합니다." +#. CJK fonts lack native italics; allow substitution with conventional local styling. dennis-ignore: W303 #: changedetectionio/blueprint/ui/templates/edit.html msgid "Helps reduce changes detected caused by sites shuffling lines around, combine with <i>check unique lines</i> below." msgstr "사이트가 줄 순서를 섞어 발생하는 변경 감지를 줄이는 데 도움이 됩니다. 아래의 <i>고유한 줄 확인</i>과 함께 사용해 보세요." @@ -2182,6 +2173,7 @@ msgstr "기록 지우기" msgid "<p>Are you sure you want to clear history for the selected items?</p><p>This action cannot be undone.</p>" msgstr "<p>선택한 항목의 기록을 지우시겠습니까?</p><p>이 작업은 되돌릴 수 없습니다.</p>" +#. Universally recognized; typically left as-is. dennis-ignore: W302 #: changedetectionio/blueprint/watchlist/templates/watch-overview.html msgid "OK" msgstr "확인" @@ -2195,8 +2187,8 @@ msgid "Delete Watches?" msgstr "모니터링을 삭제하시겠습니까?" #: changedetectionio/blueprint/watchlist/templates/watch-overview.html -msgid "<p>Are you sure you want to delete the selected watches?</strong></p><p>This action cannot be undone.</p>" -msgstr "<p>선택한 모니터링을 삭제하시겠습니까?</p><p>이 작업은 되돌릴 수 없습니다.</p>" +msgid "<p><strong>Are you sure you want to delete the selected watches?</strong></p><p>This action cannot be undone.</p>" +msgstr "<p><strong>선택한 모니터링을 삭제하시겠습니까?</strong></p><p>이 작업은 되돌릴 수 없습니다.</p>" #: changedetectionio/blueprint/watchlist/templates/watch-overview.html msgid "Queued size" @@ -2693,10 +2685,6 @@ msgstr "빈 값은 허용되지 않습니다." msgid "Invalid value." msgstr "값이 잘못되었습니다." -#: changedetectionio/blueprint/imports/templates/import.html changedetectionio/forms.py -msgid "URL" -msgstr "URL" - #: changedetectionio/forms.py msgid "Group tag" msgstr "그룹 / 태그" @@ -2932,6 +2920,7 @@ msgstr "다음 모두와 일치" msgid "Match any of the following" msgstr "다음 중 하나와 일치" +#. dennis-ignore: W303 - False positive caused by <title>. https://github.com/mozilla/dennis/issues/213 #: changedetectionio/forms.py msgid "Use page <title> in list" msgstr "목록에 페이지 <title> 사용" @@ -3031,6 +3020,7 @@ msgstr "실시간 UI 업데이트 활성화" msgid "Favicons Enabled" msgstr "파비콘 활성화" +#. dennis-ignore: W303 - False positive caused by <title>. https://github.com/mozilla/dennis/issues/213 #: changedetectionio/forms.py msgid "Use page <title> in watch overview list" msgstr "모니터링 목록에 페이지 <title> 사용" @@ -3420,9 +3410,10 @@ msgstr "모니터링 중인 URL입니다." msgid "The UUID of the watch." msgstr "모니터링 UUID입니다." +#. dennis-ignore: W303 - False positive caused by <title>. https://github.com/mozilla/dennis/issues/213 #: changedetectionio/templates/_common_fields.html msgid "The page title of the watch, uses <title> if not set, falls back to URL" -msgstr "모니터링의 페이지 제목입니다. 설정되지 않았으면 <title>을 사용하고, 없으면 URL을 사용합니다." +msgstr "모니터링의 페이지 제목입니다. 설정되지 않았으면 <title> 을 사용하고, 없으면 URL을 사용합니다." #: changedetectionio/templates/_common_fields.html msgid "The watch group / tag" @@ -3556,6 +3547,7 @@ msgstr "더보기" msgid "Use <a target=\"newwindow\" href=\"%(url)s\">AppRise Notification URLs</a> for notification to just about any service!" msgstr "거의 모든 서비스에 알림을 보내려면 <a target=\"newwindow\" href=\"%(url)s\">AppRise 알림 URL</a>을 사용하세요." +#. CJK fonts lack native italics; allow substitution with conventional local styling. dennis-ignore: W303 #: changedetectionio/templates/_common_fields.html msgid "<i>Please read the notification services wiki here for important configuration notes</i>" msgstr "<i>중요한 설정 참고 사항은 여기의 알림 서비스 위키를 읽어 주세요</i>" @@ -3917,6 +3909,7 @@ msgstr "이 그룹의 AI 기능을 사용하려면 <a href=\"%(url)s\">설정 msgid "Note!: //text() function does not work where the <element> contains <![CDATA[]]>" msgstr "참고: <element>에 <![CDATA[]]>가 포함된 경우 //text() 함수는 동작하지 않습니다." +#. CJK fonts lack native italics; allow substitution with conventional local styling. dennis-ignore: W303 #: changedetectionio/templates/edit/include_subtract.html msgid "One CSS, xPath 1 & 2, JSON Path/JQ selector per line, <i>any</i> rules that matches will be used." msgstr "한 줄에 CSS, XPath 1/2, JSON Path/JQ 선택자를 하나씩 입력하세요. 일치하는 규칙은 <i>모두</i> 사용됩니다." diff --git a/changedetectionio/translations/messages.pot b/changedetectionio/translations/messages.pot index 6f2a7138..c20548a5 100644 --- a/changedetectionio/translations/messages.pot +++ b/changedetectionio/translations/messages.pot @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: changedetection.io 0.55.3\n" "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" -"POT-Creation-Date: 2026-04-30 19:35+0900\n" +"POT-Creation-Date: 2026-05-02 18:29+0900\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" "Language-Team: LANGUAGE <LL@li.org>\n" @@ -159,7 +159,7 @@ msgstr "" #: changedetectionio/blueprint/imports/importer.py #, python-brace-format -msgid "{count} Imported from list in {duration:.2f}s, {skipped_count} Skipped." +msgid "{count} Imported from list in {duration}s, {skipped_count} Skipped." msgstr "" #: changedetectionio/blueprint/imports/importer.py @@ -172,7 +172,7 @@ msgstr "" #: changedetectionio/blueprint/imports/importer.py #, python-brace-format -msgid "{count} Imported from Distill.io in {duration:.2f}s, {skipped_count} Skipped." +msgid "{count} Imported from Distill.io in {duration}s, {skipped_count} Skipped." msgstr "" #: changedetectionio/blueprint/imports/importer.py @@ -191,22 +191,18 @@ msgstr "" #: changedetectionio/blueprint/imports/importer.py #, python-brace-format -msgid "{count} imported from Wachete .xlsx in {duration:.2f}s" +msgid "{count} imported from Wachete .xlsx in {duration}s" msgstr "" #: changedetectionio/blueprint/imports/importer.py #, python-brace-format -msgid "{count} imported from custom .xlsx in {duration:.2f}s" +msgid "{count} imported from custom .xlsx in {duration}s" msgstr "" #: changedetectionio/blueprint/imports/templates/import.html msgid "URL List" msgstr "" -#: changedetectionio/blueprint/imports/templates/import.html -msgid "Distill.io" -msgstr "" - #: changedetectionio/blueprint/imports/templates/import.html msgid ".XLSX & Wachete" msgstr "" @@ -240,6 +236,7 @@ msgstr "" msgid "Copy and Paste your Distill.io watch 'export' file, this should be a JSON file." msgstr "" +#. CJK fonts lack native italics; allow substitution with conventional local styling. dennis-ignore: W303 #: changedetectionio/blueprint/imports/templates/import.html msgid "" "This is <i>experimental</i>, supported fields are <code>name</code>, <code>uri</code>, <code>tags</code>, " @@ -365,8 +362,8 @@ msgid "AI / LLM configuration removed." msgstr "" #: changedetectionio/blueprint/settings/llm.py -#, python-format -msgid "AI summary cache cleared (%(count)s file(s) removed)." +#, python-brace-format +msgid "AI summary cache cleared ({} file(s) removed)." msgstr "" #: changedetectionio/blueprint/settings/templates/notification-log.html @@ -390,14 +387,6 @@ msgstr "" msgid "UI Options" msgstr "" -#: changedetectionio/blueprint/settings/templates/settings.html -msgid "API" -msgstr "" - -#: changedetectionio/blueprint/settings/templates/settings.html -msgid "RSS" -msgstr "" - #: changedetectionio/blueprint/settings/templates/settings.html msgid "Backups" msgstr "" @@ -1210,6 +1199,7 @@ msgstr "" msgid "Leave unchecked to use the auto-generated colour based on the tag name." msgstr "" +#. CJK fonts lack native italics; allow substitution with conventional local styling. dennis-ignore: W303 #: changedetectionio/blueprint/tags/templates/edit-tag.html msgid "These settings are <strong><i>added</i></strong> to any existing watch configurations." msgstr "" @@ -1914,6 +1904,7 @@ msgid "" "lines against all history for this watch." msgstr "" +#. CJK fonts lack native italics; allow substitution with conventional local styling. dennis-ignore: W303 #: changedetectionio/blueprint/ui/templates/edit.html msgid "Helps reduce changes detected caused by sites shuffling lines around, combine with <i>check unique lines</i> below." msgstr "" @@ -2171,6 +2162,7 @@ msgstr "" msgid "<p>Are you sure you want to clear history for the selected items?</p><p>This action cannot be undone.</p>" msgstr "" +#. Universally recognized; typically left as-is. dennis-ignore: W302 #: changedetectionio/blueprint/watchlist/templates/watch-overview.html msgid "OK" msgstr "" @@ -2184,7 +2176,7 @@ msgid "Delete Watches?" msgstr "" #: changedetectionio/blueprint/watchlist/templates/watch-overview.html -msgid "<p>Are you sure you want to delete the selected watches?</strong></p><p>This action cannot be undone.</p>" +msgid "<p><strong>Are you sure you want to delete the selected watches?</strong></p><p>This action cannot be undone.</p>" msgstr "" #: changedetectionio/blueprint/watchlist/templates/watch-overview.html @@ -2682,10 +2674,6 @@ msgstr "" msgid "Invalid value." msgstr "" -#: changedetectionio/blueprint/imports/templates/import.html changedetectionio/forms.py -msgid "URL" -msgstr "" - #: changedetectionio/forms.py msgid "Group tag" msgstr "" @@ -2921,6 +2909,7 @@ msgstr "" msgid "Match any of the following" msgstr "" +#. dennis-ignore: W303 - False positive caused by <title>. https://github.com/mozilla/dennis/issues/213 #: changedetectionio/forms.py msgid "Use page <title> in list" msgstr "" @@ -3020,6 +3009,7 @@ msgstr "" msgid "Favicons Enabled" msgstr "" +#. dennis-ignore: W303 - False positive caused by <title>. https://github.com/mozilla/dennis/issues/213 #: changedetectionio/forms.py msgid "Use page <title> in watch overview list" msgstr "" @@ -3409,6 +3399,7 @@ msgstr "" msgid "The UUID of the watch." msgstr "" +#. dennis-ignore: W303 - False positive caused by <title>. https://github.com/mozilla/dennis/issues/213 #: changedetectionio/templates/_common_fields.html msgid "The page title of the watch, uses <title> if not set, falls back to URL" msgstr "" @@ -3545,6 +3536,7 @@ msgstr "" msgid "Use <a target=\"newwindow\" href=\"%(url)s\">AppRise Notification URLs</a> for notification to just about any service!" msgstr "" +#. CJK fonts lack native italics; allow substitution with conventional local styling. dennis-ignore: W303 #: changedetectionio/templates/_common_fields.html msgid "<i>Please read the notification services wiki here for important configuration notes</i>" msgstr "" @@ -3906,6 +3898,7 @@ msgstr "" msgid "Note!: //text() function does not work where the <element> contains <![CDATA[]]>" msgstr "" +#. CJK fonts lack native italics; allow substitution with conventional local styling. dennis-ignore: W303 #: changedetectionio/templates/edit/include_subtract.html msgid "One CSS, xPath 1 & 2, JSON Path/JQ selector per line, <i>any</i> rules that matches will be used." msgstr "" diff --git a/changedetectionio/translations/pt_BR/LC_MESSAGES/messages.mo b/changedetectionio/translations/pt_BR/LC_MESSAGES/messages.mo index 41f45929..c08a4fa3 100644 Binary files a/changedetectionio/translations/pt_BR/LC_MESSAGES/messages.mo and b/changedetectionio/translations/pt_BR/LC_MESSAGES/messages.mo differ diff --git a/changedetectionio/translations/pt_BR/LC_MESSAGES/messages.po b/changedetectionio/translations/pt_BR/LC_MESSAGES/messages.po index 63dacadb..b314ea97 100644 --- a/changedetectionio/translations/pt_BR/LC_MESSAGES/messages.po +++ b/changedetectionio/translations/pt_BR/LC_MESSAGES/messages.po @@ -161,8 +161,8 @@ msgstr "Importando as primeiras 5.000 URLs da sua lista, o restante pode ser imp #: changedetectionio/blueprint/imports/importer.py #, python-brace-format -msgid "{count} Imported from list in {duration:.2f}s, {skipped_count} Skipped." -msgstr "{count} Importados da lista em {duration:.2f}s, {skipped_count} Ignorados." +msgid "{count} Imported from list in {duration}s, {skipped_count} Skipped." +msgstr "{count} Importados da lista em {duration}s, {skipped_count} Ignorados." #: changedetectionio/blueprint/imports/importer.py msgid "Unable to read JSON file, was it broken?" @@ -174,8 +174,8 @@ msgstr "A estrutura do JSON parece inválida, ele está corrompido?" #: changedetectionio/blueprint/imports/importer.py #, python-brace-format -msgid "{count} Imported from Distill.io in {duration:.2f}s, {skipped_count} Skipped." -msgstr "{count} Importados do Distill.io em {duration:.2f}s, {skipped_count} Ignorados." +msgid "{count} Imported from Distill.io in {duration}s, {skipped_count} Skipped." +msgstr "{count} Importados do Distill.io em {duration}s, {skipped_count} Ignorados." #: changedetectionio/blueprint/imports/importer.py msgid "Unable to read export XLSX file, something wrong with the file?" @@ -193,22 +193,18 @@ msgstr "Erro ao processar a linha {}, verifique se os tipos de dados das célula #: changedetectionio/blueprint/imports/importer.py #, python-brace-format -msgid "{count} imported from Wachete .xlsx in {duration:.2f}s" -msgstr "{count} importados do Wachete .xlsx em {duration:.2f}s" +msgid "{count} imported from Wachete .xlsx in {duration}s" +msgstr "{count} importados do Wachete .xlsx em {duration}s" #: changedetectionio/blueprint/imports/importer.py #, python-brace-format -msgid "{count} imported from custom .xlsx in {duration:.2f}s" -msgstr "{count} importados do .xlsx personalizado em {duration:.2f}s" +msgid "{count} imported from custom .xlsx in {duration}s" +msgstr "{count} importados do .xlsx personalizado em {duration}s" #: changedetectionio/blueprint/imports/templates/import.html msgid "URL List" msgstr "Lista de URLs" -#: changedetectionio/blueprint/imports/templates/import.html -msgid "Distill.io" -msgstr "Distill.io" - #: changedetectionio/blueprint/imports/templates/import.html msgid ".XLSX & Wachete" msgstr ".XLSX & Wachete" @@ -242,6 +238,7 @@ msgstr "URLs que não passarem na validação permanecerão na caixa de texto." msgid "Copy and Paste your Distill.io watch 'export' file, this should be a JSON file." msgstr "Copie e cole seu arquivo de 'exportação' do Distill.io, que deve ser um arquivo JSON." +#. CJK fonts lack native italics; allow substitution with conventional local styling. dennis-ignore: W303 #: changedetectionio/blueprint/imports/templates/import.html msgid "" "This is <i>experimental</i>, supported fields are <code>name</code>, <code>uri</code>, <code>tags</code>, " @@ -371,8 +368,8 @@ msgid "AI / LLM configuration removed." msgstr "" #: changedetectionio/blueprint/settings/llm.py -#, python-format -msgid "AI summary cache cleared (%(count)s file(s) removed)." +#, python-brace-format +msgid "AI summary cache cleared ({} file(s) removed)." msgstr "" #: changedetectionio/blueprint/settings/templates/notification-log.html @@ -396,14 +393,6 @@ msgstr "Filtros Globais" msgid "UI Options" msgstr "Opções de Interface" -#: changedetectionio/blueprint/settings/templates/settings.html -msgid "API" -msgstr "API" - -#: changedetectionio/blueprint/settings/templates/settings.html -msgid "RSS" -msgstr "RSS" - #: changedetectionio/blueprint/settings/templates/settings.html msgid "Backups" msgstr "Backups" @@ -1236,6 +1225,7 @@ msgstr "" msgid "Leave unchecked to use the auto-generated colour based on the tag name." msgstr "" +#. CJK fonts lack native italics; allow substitution with conventional local styling. dennis-ignore: W303 #: changedetectionio/blueprint/tags/templates/edit-tag.html msgid "These settings are <strong><i>added</i></strong> to any existing watch configurations." msgstr "Estas configurações são <strong><i>adicionadas</i></strong> a quaisquer configurações de monitoramento existentes." @@ -1959,6 +1949,7 @@ msgstr "" "Útil para sites que apenas movem o conteúdo de lugar. Se você quer saber quando um NOVO conteúdo é adicionado, isso " "compara novas linhas contra todo o histórico." +#. CJK fonts lack native italics; allow substitution with conventional local styling. dennis-ignore: W303 #: changedetectionio/blueprint/ui/templates/edit.html msgid "Helps reduce changes detected caused by sites shuffling lines around, combine with <i>check unique lines</i> below." msgstr "" @@ -2220,6 +2211,7 @@ msgstr "Limpar Históricos" msgid "<p>Are you sure you want to clear history for the selected items?</p><p>This action cannot be undone.</p>" msgstr "<p>Tem certeza que deseja limpar o histórico para os itens selecionados?</p><p>Esta ação não pode ser desfeita.</p>" +#. Universally recognized; typically left as-is. dennis-ignore: W302 #: changedetectionio/blueprint/watchlist/templates/watch-overview.html msgid "OK" msgstr "OK" @@ -2233,8 +2225,10 @@ msgid "Delete Watches?" msgstr "Excluir Monitoramentos?" #: changedetectionio/blueprint/watchlist/templates/watch-overview.html -msgid "<p>Are you sure you want to delete the selected watches?</strong></p><p>This action cannot be undone.</p>" -msgstr "<p>Tem certeza que deseja excluir os monitoramentos selecionados?</strong></p><p>Esta ação não pode ser desfeita.</p>" +msgid "<p><strong>Are you sure you want to delete the selected watches?</strong></p><p>This action cannot be undone.</p>" +msgstr "" +"<p><strong>Tem certeza que deseja excluir os monitoramentos selecionados?</strong></p><p>Esta ação não pode ser " +"desfeita.</p>" #: changedetectionio/blueprint/watchlist/templates/watch-overview.html msgid "Queued size" @@ -2731,10 +2725,6 @@ msgstr "Valor vazio não permitido." msgid "Invalid value." msgstr "Valor inválido." -#: changedetectionio/blueprint/imports/templates/import.html changedetectionio/forms.py -msgid "URL" -msgstr "URL" - #: changedetectionio/forms.py msgid "Group tag" msgstr "Tag de grupo" @@ -2970,6 +2960,7 @@ msgstr "Corresponder a TODOS os seguintes" msgid "Match any of the following" msgstr "Corresponder a QUALQUER um dos seguintes" +#. dennis-ignore: W303 - False positive caused by <title>. https://github.com/mozilla/dennis/issues/213 #: changedetectionio/forms.py msgid "Use page <title> in list" msgstr "Usar <title> da página na lista" @@ -3069,6 +3060,7 @@ msgstr "Atualizações de Interface em Tempo Real Ativadas" msgid "Favicons Enabled" msgstr "Favicons Ativados" +#. dennis-ignore: W303 - False positive caused by <title>. https://github.com/mozilla/dennis/issues/213 #: changedetectionio/forms.py msgid "Use page <title> in watch overview list" msgstr "Usar <title> da página na lista de visão geral" @@ -3458,6 +3450,7 @@ msgstr "A URL que está sendo monitorada." msgid "The UUID of the watch." msgstr "O UUID do monitoramento." +#. dennis-ignore: W303 - False positive caused by <title>. https://github.com/mozilla/dennis/issues/213 #: changedetectionio/templates/_common_fields.html msgid "The page title of the watch, uses <title> if not set, falls back to URL" msgstr "O título da página do monitoramento, usa <title> se não definido, ou a URL" @@ -3596,6 +3589,7 @@ msgstr "" "Use as <a target=\"newwindow\" href=\"%(url)s\">URLs de Notificação AppRise</a> para enviar notificações para quase " "qualquer serviço!" +#. CJK fonts lack native italics; allow substitution with conventional local styling. dennis-ignore: W303 #: changedetectionio/templates/_common_fields.html msgid "<i>Please read the notification services wiki here for important configuration notes</i>" msgstr "<i>Por favor, leia a wiki dos serviços de notificação aqui para notas importantes de configuração</i>" @@ -3957,6 +3951,7 @@ msgstr "" msgid "Note!: //text() function does not work where the <element> contains <![CDATA[]]>" msgstr "" +#. CJK fonts lack native italics; allow substitution with conventional local styling. dennis-ignore: W303 #: changedetectionio/templates/edit/include_subtract.html msgid "One CSS, xPath 1 & 2, JSON Path/JQ selector per line, <i>any</i> rules that matches will be used." msgstr "" diff --git a/changedetectionio/translations/tr/LC_MESSAGES/messages.mo b/changedetectionio/translations/tr/LC_MESSAGES/messages.mo index 8d5cb3ab..01c219ee 100644 Binary files a/changedetectionio/translations/tr/LC_MESSAGES/messages.mo and b/changedetectionio/translations/tr/LC_MESSAGES/messages.mo differ diff --git a/changedetectionio/translations/tr/LC_MESSAGES/messages.po b/changedetectionio/translations/tr/LC_MESSAGES/messages.po index c6196867..a19fdf52 100644 --- a/changedetectionio/translations/tr/LC_MESSAGES/messages.po +++ b/changedetectionio/translations/tr/LC_MESSAGES/messages.po @@ -165,8 +165,8 @@ msgstr "Listenizden ilk 5.000 URL içe aktarılıyor, geri kalanı daha sonra te #: changedetectionio/blueprint/imports/importer.py #, python-brace-format -msgid "{count} Imported from list in {duration:.2f}s, {skipped_count} Skipped." -msgstr "{count} kayıt listeden {duration:.2f} saniyede içe aktarıldı, {skipped_count} atlandı." +msgid "{count} Imported from list in {duration}s, {skipped_count} Skipped." +msgstr "{count} kayıt listeden {duration} saniyede içe aktarıldı, {skipped_count} atlandı." #: changedetectionio/blueprint/imports/importer.py msgid "Unable to read JSON file, was it broken?" @@ -178,8 +178,8 @@ msgstr "JSON yapısı geçersiz görünüyor, bozuk olabilir mi?" #: changedetectionio/blueprint/imports/importer.py #, python-brace-format -msgid "{count} Imported from Distill.io in {duration:.2f}s, {skipped_count} Skipped." -msgstr "{count} kayıt Distill.io'dan {duration:.2f} saniyede içe aktarıldı, {skipped_count} atlandı." +msgid "{count} Imported from Distill.io in {duration}s, {skipped_count} Skipped." +msgstr "{count} kayıt Distill.io'dan {duration} saniyede içe aktarıldı, {skipped_count} atlandı." #: changedetectionio/blueprint/imports/importer.py msgid "Unable to read export XLSX file, something wrong with the file?" @@ -197,22 +197,18 @@ msgstr "Satır numarası {} işlenirken hata oluştu, tüm hücre veri tiplerini #: changedetectionio/blueprint/imports/importer.py #, python-brace-format -msgid "{count} imported from Wachete .xlsx in {duration:.2f}s" -msgstr "{count} kayıt Wachete .xlsx dosyasından {duration:.2f} saniyede içe aktarıldı" +msgid "{count} imported from Wachete .xlsx in {duration}s" +msgstr "{count} kayıt Wachete .xlsx dosyasından {duration} saniyede içe aktarıldı" #: changedetectionio/blueprint/imports/importer.py #, python-brace-format -msgid "{count} imported from custom .xlsx in {duration:.2f}s" -msgstr "{count} kayıt özel .xlsx dosyasından {duration:.2f} saniyede içe aktarıldı" +msgid "{count} imported from custom .xlsx in {duration}s" +msgstr "{count} kayıt özel .xlsx dosyasından {duration} saniyede içe aktarıldı" #: changedetectionio/blueprint/imports/templates/import.html msgid "URL List" msgstr "URL Listesi" -#: changedetectionio/blueprint/imports/templates/import.html -msgid "Distill.io" -msgstr "Distill.io" - #: changedetectionio/blueprint/imports/templates/import.html msgid ".XLSX & Wachete" msgstr ".XLSX ve Wachete" @@ -248,6 +244,7 @@ msgstr "Doğrulamadan geçemeyen URL'ler metin alanında kalacaktır." msgid "Copy and Paste your Distill.io watch 'export' file, this should be a JSON file." msgstr "Distill.io izleyici 'dışa aktarım' dosyanızı kopyalayıp yapıştırın, bu bir JSON dosyası olmalıdır." +#. CJK fonts lack native italics; allow substitution with conventional local styling. dennis-ignore: W303 #: changedetectionio/blueprint/imports/templates/import.html msgid "" "This is <i>experimental</i>, supported fields are <code>name</code>, <code>uri</code>, <code>tags</code>, " @@ -375,8 +372,8 @@ msgid "AI / LLM configuration removed." msgstr "" #: changedetectionio/blueprint/settings/llm.py -#, python-format -msgid "AI summary cache cleared (%(count)s file(s) removed)." +#, python-brace-format +msgid "AI summary cache cleared ({} file(s) removed)." msgstr "" #: changedetectionio/blueprint/settings/templates/notification-log.html @@ -400,14 +397,6 @@ msgstr "Genel Filtreler" msgid "UI Options" msgstr "Arayüz Seçenekleri" -#: changedetectionio/blueprint/settings/templates/settings.html -msgid "API" -msgstr "API" - -#: changedetectionio/blueprint/settings/templates/settings.html -msgid "RSS" -msgstr "RSS" - #: changedetectionio/blueprint/settings/templates/settings.html msgid "Backups" msgstr "Yedeklemeler" @@ -1246,6 +1235,7 @@ msgstr "" msgid "Leave unchecked to use the auto-generated colour based on the tag name." msgstr "" +#. CJK fonts lack native italics; allow substitution with conventional local styling. dennis-ignore: W303 #: changedetectionio/blueprint/tags/templates/edit-tag.html msgid "These settings are <strong><i>added</i></strong> to any existing watch configurations." msgstr "Bu ayarlar, mevcut izleyici yapılandırmalarına <strong><i>eklenerek</i></strong> uygulanır." @@ -1962,6 +1952,7 @@ msgstr "" "Yalnızca içeriği hareket ettiren web siteleri için iyidir ve YENİ içerik eklendiğinde bilmek istersiniz, yeni " "satırları bu izleyicinin tüm geçmişiyle karşılaştırır." +#. CJK fonts lack native italics; allow substitution with conventional local styling. dennis-ignore: W303 #: changedetectionio/blueprint/ui/templates/edit.html msgid "Helps reduce changes detected caused by sites shuffling lines around, combine with <i>check unique lines</i> below." msgstr "" @@ -2225,6 +2216,7 @@ msgstr "Geçmişleri Temizle" msgid "<p>Are you sure you want to clear history for the selected items?</p><p>This action cannot be undone.</p>" msgstr "<p>Seçili öğeler için geçmişi temizlemek istediğinizden emin misiniz?</p><p>Bu işlem geri alınamaz.</p>" +#. Universally recognized; typically left as-is. dennis-ignore: W302 #: changedetectionio/blueprint/watchlist/templates/watch-overview.html msgid "OK" msgstr "Tamam" @@ -2238,8 +2230,8 @@ msgid "Delete Watches?" msgstr "İzleyiciler Silinsin mi?" #: changedetectionio/blueprint/watchlist/templates/watch-overview.html -msgid "<p>Are you sure you want to delete the selected watches?</strong></p><p>This action cannot be undone.</p>" -msgstr "<p>Seçili izleyicileri silmek istediğinizden emin misiniz?</p><p>Bu işlem geri alınamaz.</p>" +msgid "<p><strong>Are you sure you want to delete the selected watches?</strong></p><p>This action cannot be undone.</p>" +msgstr "<p><strong>Seçili izleyicileri silmek istediğinizden emin misiniz?</strong></p><p>Bu işlem geri alınamaz.</p>" #: changedetectionio/blueprint/watchlist/templates/watch-overview.html msgid "Queued size" @@ -2736,10 +2728,6 @@ msgstr "Boş değere izin verilmez." msgid "Invalid value." msgstr "Geçersiz değer." -#: changedetectionio/blueprint/imports/templates/import.html changedetectionio/forms.py -msgid "URL" -msgstr "URL" - #: changedetectionio/forms.py msgid "Group tag" msgstr "Grup etiketi" @@ -2975,6 +2963,7 @@ msgstr "Aşağıdakilerin tümünü eşleştir" msgid "Match any of the following" msgstr "Aşağıdakilerden herhangi birini eşleştir" +#. dennis-ignore: W303 - False positive caused by <title>. https://github.com/mozilla/dennis/issues/213 #: changedetectionio/forms.py msgid "Use page <title> in list" msgstr "Listede sayfa <title>'ını kullan" @@ -3074,6 +3063,7 @@ msgstr "Gerçek Zamanlı Arayüz Güncellemeleri Etkin" msgid "Favicons Enabled" msgstr "Favicon'lar Etkin" +#. dennis-ignore: W303 - False positive caused by <title>. https://github.com/mozilla/dennis/issues/213 #: changedetectionio/forms.py msgid "Use page <title> in watch overview list" msgstr "İzleyici genel bakış listesinde sayfa <title>'ını kullan" @@ -3463,6 +3453,7 @@ msgstr "İzlenen URL." msgid "The UUID of the watch." msgstr "İzleyicinin UUID'si." +#. dennis-ignore: W303 - False positive caused by <title>. https://github.com/mozilla/dennis/issues/213 #: changedetectionio/templates/_common_fields.html msgid "The page title of the watch, uses <title> if not set, falls back to URL" msgstr "İzleyicinin sayfa başlığı, ayarlanmamışsa <title> kullanır, URL'ye geri döner" @@ -3601,6 +3592,7 @@ msgstr "" "<a target=\"newwindow\" href=\"%(url)s\">AppRise Bildirim URL'leri</a> ile hemen hemen her hizmete bildirim " "gönderebilirsiniz!" +#. CJK fonts lack native italics; allow substitution with conventional local styling. dennis-ignore: W303 #: changedetectionio/templates/_common_fields.html msgid "<i>Please read the notification services wiki here for important configuration notes</i>" msgstr "<i>Önemli yapılandırma notları için lütfen buradaki bildirim hizmetleri wiki'sini okuyun</i>" @@ -3964,6 +3956,7 @@ msgstr "" msgid "Note!: //text() function does not work where the <element> contains <![CDATA[]]>" msgstr "" +#. CJK fonts lack native italics; allow substitution with conventional local styling. dennis-ignore: W303 #: changedetectionio/templates/edit/include_subtract.html msgid "One CSS, xPath 1 & 2, JSON Path/JQ selector per line, <i>any</i> rules that matches will be used." msgstr "" diff --git a/changedetectionio/translations/uk/LC_MESSAGES/messages.mo b/changedetectionio/translations/uk/LC_MESSAGES/messages.mo index 3a4d57d0..703af266 100644 Binary files a/changedetectionio/translations/uk/LC_MESSAGES/messages.mo and b/changedetectionio/translations/uk/LC_MESSAGES/messages.mo differ diff --git a/changedetectionio/translations/uk/LC_MESSAGES/messages.po b/changedetectionio/translations/uk/LC_MESSAGES/messages.po index 61fe7b17..c7d53690 100644 --- a/changedetectionio/translations/uk/LC_MESSAGES/messages.po +++ b/changedetectionio/translations/uk/LC_MESSAGES/messages.po @@ -159,8 +159,8 @@ msgstr "Імпортуються перші 5000 URL з вашого списк #: changedetectionio/blueprint/imports/importer.py #, python-brace-format -msgid "{count} Imported from list in {duration:.2f}s, {skipped_count} Skipped." -msgstr "{count} Імпортовано зі списку за {duration:.2f}с, {skipped_count} Пропущено." +msgid "{count} Imported from list in {duration}s, {skipped_count} Skipped." +msgstr "{count} Імпортовано зі списку за {duration}с, {skipped_count} Пропущено." #: changedetectionio/blueprint/imports/importer.py msgid "Unable to read JSON file, was it broken?" @@ -172,8 +172,8 @@ msgstr "Структура JSON виглядає некоректною, мож #: changedetectionio/blueprint/imports/importer.py #, python-brace-format -msgid "{count} Imported from Distill.io in {duration:.2f}s, {skipped_count} Skipped." -msgstr "{count} Імпортовано з Distill.io за {duration:.2f}с, {skipped_count} Пропущено." +msgid "{count} Imported from Distill.io in {duration}s, {skipped_count} Skipped." +msgstr "{count} Імпортовано з Distill.io за {duration}с, {skipped_count} Пропущено." #: changedetectionio/blueprint/imports/importer.py msgid "Unable to read export XLSX file, something wrong with the file?" @@ -191,22 +191,18 @@ msgstr "Помилка обробки рядка {}, перевірте прав #: changedetectionio/blueprint/imports/importer.py #, python-brace-format -msgid "{count} imported from Wachete .xlsx in {duration:.2f}s" -msgstr "{count} імпортовано з Wachete .xlsx за {duration:.2f}с" +msgid "{count} imported from Wachete .xlsx in {duration}s" +msgstr "{count} імпортовано з Wachete .xlsx за {duration}с" #: changedetectionio/blueprint/imports/importer.py #, python-brace-format -msgid "{count} imported from custom .xlsx in {duration:.2f}s" -msgstr "{count} імпортовано з власного .xlsx за {duration:.2f}с" +msgid "{count} imported from custom .xlsx in {duration}s" +msgstr "{count} імпортовано з власного .xlsx за {duration}с" #: changedetectionio/blueprint/imports/templates/import.html msgid "URL List" msgstr "Список URL" -#: changedetectionio/blueprint/imports/templates/import.html -msgid "Distill.io" -msgstr "Distill.io" - #: changedetectionio/blueprint/imports/templates/import.html msgid ".XLSX & Wachete" msgstr ".XLSX та Wachete" @@ -240,6 +236,7 @@ msgstr "URL, що не пройшли перевірку, залишаться msgid "Copy and Paste your Distill.io watch 'export' file, this should be a JSON file." msgstr "Скопіюйте та вставте вміст файлу експорту з Distill.io (файл JSON)." +#. CJK fonts lack native italics; allow substitution with conventional local styling. dennis-ignore: W303 #: changedetectionio/blueprint/imports/templates/import.html msgid "" "This is <i>experimental</i>, supported fields are <code>name</code>, <code>uri</code>, <code>tags</code>, " @@ -369,8 +366,8 @@ msgid "AI / LLM configuration removed." msgstr "" #: changedetectionio/blueprint/settings/llm.py -#, python-format -msgid "AI summary cache cleared (%(count)s file(s) removed)." +#, python-brace-format +msgid "AI summary cache cleared ({} file(s) removed)." msgstr "" #: changedetectionio/blueprint/settings/templates/notification-log.html @@ -394,14 +391,6 @@ msgstr "Глобальні фільтри" msgid "UI Options" msgstr "Налаштування інтерфейсу" -#: changedetectionio/blueprint/settings/templates/settings.html -msgid "API" -msgstr "API" - -#: changedetectionio/blueprint/settings/templates/settings.html -msgid "RSS" -msgstr "RSS" - #: changedetectionio/blueprint/settings/templates/settings.html msgid "Backups" msgstr "Резервні копії" @@ -1226,6 +1215,7 @@ msgstr "" msgid "Leave unchecked to use the auto-generated colour based on the tag name." msgstr "" +#. CJK fonts lack native italics; allow substitution with conventional local styling. dennis-ignore: W303 #: changedetectionio/blueprint/tags/templates/edit-tag.html msgid "These settings are <strong><i>added</i></strong> to any existing watch configurations." msgstr "Ці налаштування <strong><i>додаються</i></strong> до будь-яких існуючих конфігурацій завдань." @@ -1943,6 +1933,7 @@ msgstr "" "Корисно для сайтів, які просто переміщують контент, коли ви хочете знати лише про НОВИЙ контент. Порівнює нові рядки " "з усією історією цього завдання." +#. CJK fonts lack native italics; allow substitution with conventional local styling. dennis-ignore: W303 #: changedetectionio/blueprint/ui/templates/edit.html msgid "Helps reduce changes detected caused by sites shuffling lines around, combine with <i>check unique lines</i> below." msgstr "" @@ -2204,6 +2195,7 @@ msgstr "Очистити історії" msgid "<p>Are you sure you want to clear history for the selected items?</p><p>This action cannot be undone.</p>" msgstr "<p>Ви впевнені, що хочете очистити історію для вибраних елементів?</p><p>Цю дію неможливо скасувати.</p>" +#. Universally recognized; typically left as-is. dennis-ignore: W302 #: changedetectionio/blueprint/watchlist/templates/watch-overview.html msgid "OK" msgstr "ОК" @@ -2217,8 +2209,8 @@ msgid "Delete Watches?" msgstr "Видалити завдання?" #: changedetectionio/blueprint/watchlist/templates/watch-overview.html -msgid "<p>Are you sure you want to delete the selected watches?</strong></p><p>This action cannot be undone.</p>" -msgstr "<p>Ви впевнені, що хочете видалити вибрані завдання?</p><p>Цю дію неможливо скасувати.</p>" +msgid "<p><strong>Are you sure you want to delete the selected watches?</strong></p><p>This action cannot be undone.</p>" +msgstr "<p><strong>Ви впевнені, що хочете видалити вибрані завдання?</strong></p><p>Цю дію неможливо скасувати.</p>" #: changedetectionio/blueprint/watchlist/templates/watch-overview.html msgid "Queued size" @@ -2715,10 +2707,6 @@ msgstr "Порожнє значення неприпустиме." msgid "Invalid value." msgstr "Неприпустиме значення." -#: changedetectionio/blueprint/imports/templates/import.html changedetectionio/forms.py -msgid "URL" -msgstr "URL" - #: changedetectionio/forms.py msgid "Group tag" msgstr "Тег групи" @@ -2954,6 +2942,7 @@ msgstr "Збіг усіх наступних умов" msgid "Match any of the following" msgstr "Збіг будь-якої з наступних умов" +#. dennis-ignore: W303 - False positive caused by <title>. https://github.com/mozilla/dennis/issues/213 #: changedetectionio/forms.py msgid "Use page <title> in list" msgstr "Використовувати <title> сторінки у списку" @@ -3053,6 +3042,7 @@ msgstr "Оновлення UI в реальному часі увімкнено" msgid "Favicons Enabled" msgstr "Фавіконки увімкнено" +#. dennis-ignore: W303 - False positive caused by <title>. https://github.com/mozilla/dennis/issues/213 #: changedetectionio/forms.py msgid "Use page <title> in watch overview list" msgstr "Використовувати <title> сторінки у списку огляду завдань" @@ -3442,6 +3432,7 @@ msgstr "URL, за яким ведеться спостереження." msgid "The UUID of the watch." msgstr "UUID завдання." +#. dennis-ignore: W303 - False positive caused by <title>. https://github.com/mozilla/dennis/issues/213 #: changedetectionio/templates/_common_fields.html msgid "The page title of the watch, uses <title> if not set, falls back to URL" msgstr "Заголовок сторінки завдання, використовує <title>, якщо не задано - URL" @@ -3580,6 +3571,7 @@ msgstr "" "Використовуйте <a target=\"newwindow\" href=\"%(url)s\">URL сповіщень AppRise</a> для сповіщень практично в будь-який" " сервіс!" +#. CJK fonts lack native italics; allow substitution with conventional local styling. dennis-ignore: W303 #: changedetectionio/templates/_common_fields.html msgid "<i>Please read the notification services wiki here for important configuration notes</i>" msgstr "<i>Будь ласка, прочитайте вікі по сервісах сповіщень тут для важливих нотаток щодо конфігурації</i>" @@ -3941,6 +3933,7 @@ msgstr "" msgid "Note!: //text() function does not work where the <element> contains <![CDATA[]]>" msgstr "" +#. CJK fonts lack native italics; allow substitution with conventional local styling. dennis-ignore: W303 #: changedetectionio/templates/edit/include_subtract.html msgid "One CSS, xPath 1 & 2, JSON Path/JQ selector per line, <i>any</i> rules that matches will be used." msgstr "" diff --git a/changedetectionio/translations/zh/LC_MESSAGES/messages.mo b/changedetectionio/translations/zh/LC_MESSAGES/messages.mo index c50133b9..844ae726 100644 Binary files a/changedetectionio/translations/zh/LC_MESSAGES/messages.mo and b/changedetectionio/translations/zh/LC_MESSAGES/messages.mo differ diff --git a/changedetectionio/translations/zh/LC_MESSAGES/messages.po b/changedetectionio/translations/zh/LC_MESSAGES/messages.po index 36aab44d..2d1c2b55 100644 --- a/changedetectionio/translations/zh/LC_MESSAGES/messages.po +++ b/changedetectionio/translations/zh/LC_MESSAGES/messages.po @@ -160,8 +160,8 @@ msgstr "仅导入列表前 5,000 个 URL,其余可稍后继续导入。" #: changedetectionio/blueprint/imports/importer.py #, python-brace-format -msgid "{count} Imported from list in {duration:.2f}s, {skipped_count} Skipped." -msgstr "从列表导入 {count} 条,用时 {duration:.2f} 秒,跳过 {skipped_count} 条。" +msgid "{count} Imported from list in {duration}s, {skipped_count} Skipped." +msgstr "从列表导入 {count} 条,用时 {duration} 秒,跳过 {skipped_count} 条。" #: changedetectionio/blueprint/imports/importer.py msgid "Unable to read JSON file, was it broken?" @@ -173,8 +173,8 @@ msgstr "JSON 结构无效,文件是否损坏?" #: changedetectionio/blueprint/imports/importer.py #, python-brace-format -msgid "{count} Imported from Distill.io in {duration:.2f}s, {skipped_count} Skipped." -msgstr "从 Distill.io 导入 {count} 条,用时 {duration:.2f} 秒,跳过 {skipped_count} 条。" +msgid "{count} Imported from Distill.io in {duration}s, {skipped_count} Skipped." +msgstr "从 Distill.io 导入 {count} 条,用时 {duration} 秒,跳过 {skipped_count} 条。" #: changedetectionio/blueprint/imports/importer.py msgid "Unable to read export XLSX file, something wrong with the file?" @@ -192,22 +192,18 @@ msgstr "处理第 {} 行时出错,请检查单元格数据类型是否正确 #: changedetectionio/blueprint/imports/importer.py #, python-brace-format -msgid "{count} imported from Wachete .xlsx in {duration:.2f}s" -msgstr "从 Wachete .xlsx 导入 {count} 条,用时 {duration:.2f} 秒" +msgid "{count} imported from Wachete .xlsx in {duration}s" +msgstr "从 Wachete .xlsx 导入 {count} 条,用时 {duration} 秒" #: changedetectionio/blueprint/imports/importer.py #, python-brace-format -msgid "{count} imported from custom .xlsx in {duration:.2f}s" -msgstr "从自定义 .xlsx 导入 {count} 条,用时 {duration:.2f} 秒" +msgid "{count} imported from custom .xlsx in {duration}s" +msgstr "从自定义 .xlsx 导入 {count} 条,用时 {duration} 秒" #: changedetectionio/blueprint/imports/templates/import.html msgid "URL List" msgstr "URL 列表" -#: changedetectionio/blueprint/imports/templates/import.html -msgid "Distill.io" -msgstr "Distill.io" - #: changedetectionio/blueprint/imports/templates/import.html msgid ".XLSX & Wachete" msgstr ".XLSX 与 Wachete" @@ -242,6 +238,7 @@ msgid "Copy and Paste your Distill.io watch 'export' file, this should be a JSON msgstr "复制并粘贴 Distill.io 监控的“导出”文件(JSON)。" # TN: CJK scripts degrade when italicized; emphasis is rendered with <strong> instead. +#. CJK fonts lack native italics; allow substitution with conventional local styling. dennis-ignore: W303 #: changedetectionio/blueprint/imports/templates/import.html msgid "" "This is <i>experimental</i>, supported fields are <code>name</code>, <code>uri</code>, <code>tags</code>, " @@ -370,8 +367,8 @@ msgid "AI / LLM configuration removed." msgstr "" #: changedetectionio/blueprint/settings/llm.py -#, python-format -msgid "AI summary cache cleared (%(count)s file(s) removed)." +#, python-brace-format +msgid "AI summary cache cleared ({} file(s) removed)." msgstr "" #: changedetectionio/blueprint/settings/templates/notification-log.html @@ -395,14 +392,6 @@ msgstr "全局过滤器" msgid "UI Options" msgstr "界面选项" -#: changedetectionio/blueprint/settings/templates/settings.html -msgid "API" -msgstr "API" - -#: changedetectionio/blueprint/settings/templates/settings.html -msgid "RSS" -msgstr "RSS" - #: changedetectionio/blueprint/settings/templates/settings.html msgid "Backups" msgstr "备份" @@ -1215,6 +1204,7 @@ msgstr "" msgid "Leave unchecked to use the auto-generated colour based on the tag name." msgstr "" +#. CJK fonts lack native italics; allow substitution with conventional local styling. dennis-ignore: W303 #: changedetectionio/blueprint/tags/templates/edit-tag.html msgid "These settings are <strong><i>added</i></strong> to any existing watch configurations." msgstr "这些设置会<strong><i>应用</i></strong>到现有的所有监控项配置中。" @@ -1920,6 +1910,7 @@ msgid "" msgstr "适合仅移动内容的网站,想知道新增内容时使用,会将新行与该监控项的全部历史进行比对。" # TN: CJK scripts degrade when italicized; reference is wrapped in “” instead. +#. CJK fonts lack native italics; allow substitution with conventional local styling. dennis-ignore: W303 #: changedetectionio/blueprint/ui/templates/edit.html msgid "Helps reduce changes detected caused by sites shuffling lines around, combine with <i>check unique lines</i> below." msgstr "有助于减少因行顺序变化导致的变更,可结合下方的“检查唯一行”一起使用。" @@ -2177,6 +2168,7 @@ msgstr "清除历史记录" msgid "<p>Are you sure you want to clear history for the selected items?</p><p>This action cannot be undone.</p>" msgstr "<p>确定要清除所选项的历史记录吗?</p><p>此操作不可撤销。</p>" +#. Universally recognized; typically left as-is. dennis-ignore: W302 #: changedetectionio/blueprint/watchlist/templates/watch-overview.html msgid "OK" msgstr "确定" @@ -2190,8 +2182,8 @@ msgid "Delete Watches?" msgstr "删除监控项?" #: changedetectionio/blueprint/watchlist/templates/watch-overview.html -msgid "<p>Are you sure you want to delete the selected watches?</strong></p><p>This action cannot be undone.</p>" -msgstr "<p>确定要删除所选监控项吗?</p><p>此操作不可撤销。</p>" +msgid "<p><strong>Are you sure you want to delete the selected watches?</strong></p><p>This action cannot be undone.</p>" +msgstr "<p><strong>确定要删除所选监控项吗?</strong></p><p>此操作不可撤销。</p>" #: changedetectionio/blueprint/watchlist/templates/watch-overview.html msgid "Queued size" @@ -2688,10 +2680,6 @@ msgstr "不允许为空。" msgid "Invalid value." msgstr "值无效。" -#: changedetectionio/blueprint/imports/templates/import.html changedetectionio/forms.py -msgid "URL" -msgstr "URL" - #: changedetectionio/forms.py msgid "Group tag" msgstr "分组 / 标签" @@ -2927,6 +2915,7 @@ msgstr "匹配以下全部" msgid "Match any of the following" msgstr "匹配以下任意" +#. dennis-ignore: W303 - False positive caused by <title>. https://github.com/mozilla/dennis/issues/213 #: changedetectionio/forms.py msgid "Use page <title> in list" msgstr "列表中使用页面 <title>" @@ -3026,6 +3015,7 @@ msgstr "启用实时界面更新" msgid "Favicons Enabled" msgstr "启用站点图标" +#. dennis-ignore: W303 - False positive caused by <title>. https://github.com/mozilla/dennis/issues/213 #: changedetectionio/forms.py msgid "Use page <title> in watch overview list" msgstr "在监控概览列表中使用页面 <title>" @@ -3092,7 +3082,7 @@ msgstr "移除密码" #: changedetectionio/forms.py msgid "Render anchor tag content" -msgstr "渲染 <a> 标签内容" +msgstr "渲染 a 标签内容" #: changedetectionio/forms.py msgid "Allow anonymous access to watch history page when password is enabled" @@ -3415,6 +3405,7 @@ msgstr "被监控的 URL。" msgid "The UUID of the watch." msgstr "监视器的UUID。" +#. dennis-ignore: W303 - False positive caused by <title>. https://github.com/mozilla/dennis/issues/213 #: changedetectionio/templates/_common_fields.html msgid "The page title of the watch, uses <title> if not set, falls back to URL" msgstr "监控项的页面标题,未设置时使用 <title>,否则回退为 URL" @@ -3552,6 +3543,7 @@ msgid "Use <a target=\"newwindow\" href=\"%(url)s\">AppRise Notification URLs</a msgstr "使用 <a target=\"newwindow\" href=\"%(url)s\">AppRise通知URL</a>,向几乎任何服务发送通知!" # TN: CJK scripts degrade when italicized; emphasis is rendered with <strong> instead. +#. CJK fonts lack native italics; allow substitution with conventional local styling. dennis-ignore: W303 #: changedetectionio/templates/_common_fields.html msgid "<i>Please read the notification services wiki here for important configuration notes</i>" msgstr "<strong>请阅读通知服务 Wiki 以了解重要配置说明</strong>" @@ -3913,6 +3905,7 @@ msgstr "" msgid "Note!: //text() function does not work where the <element> contains <![CDATA[]]>" msgstr "" +#. CJK fonts lack native italics; allow substitution with conventional local styling. dennis-ignore: W303 #: changedetectionio/templates/edit/include_subtract.html msgid "One CSS, xPath 1 & 2, JSON Path/JQ selector per line, <i>any</i> rules that matches will be used." msgstr "" diff --git a/changedetectionio/translations/zh_Hant_TW/LC_MESSAGES/messages.mo b/changedetectionio/translations/zh_Hant_TW/LC_MESSAGES/messages.mo index 5d7895a1..bdbc9feb 100644 Binary files a/changedetectionio/translations/zh_Hant_TW/LC_MESSAGES/messages.mo and b/changedetectionio/translations/zh_Hant_TW/LC_MESSAGES/messages.mo differ diff --git a/changedetectionio/translations/zh_Hant_TW/LC_MESSAGES/messages.po b/changedetectionio/translations/zh_Hant_TW/LC_MESSAGES/messages.po index 3208ab9e..0b2349c5 100644 --- a/changedetectionio/translations/zh_Hant_TW/LC_MESSAGES/messages.po +++ b/changedetectionio/translations/zh_Hant_TW/LC_MESSAGES/messages.po @@ -160,8 +160,8 @@ msgstr "正在匯入清單中的前 5,000 個 URL,其餘的可以再次匯入 #: changedetectionio/blueprint/imports/importer.py #, python-brace-format -msgid "{count} Imported from list in {duration:.2f}s, {skipped_count} Skipped." -msgstr "{count} 已從清單匯入,耗時 {duration:.2f} 秒,跳過 {skipped_count} 筆。" +msgid "{count} Imported from list in {duration}s, {skipped_count} Skipped." +msgstr "{count} 已從清單匯入,耗時 {duration} 秒,跳過 {skipped_count} 筆。" #: changedetectionio/blueprint/imports/importer.py msgid "Unable to read JSON file, was it broken?" @@ -173,8 +173,8 @@ msgstr "JSON 結構看起來無效,檔案是否已損毀?" #: changedetectionio/blueprint/imports/importer.py #, python-brace-format -msgid "{count} Imported from Distill.io in {duration:.2f}s, {skipped_count} Skipped." -msgstr "{count} 已從 Distill.io 匯入,耗時 {duration:.2f} 秒,跳過 {skipped_count} 筆。" +msgid "{count} Imported from Distill.io in {duration}s, {skipped_count} Skipped." +msgstr "{count} 已從 Distill.io 匯入,耗時 {duration} 秒,跳過 {skipped_count} 筆。" #: changedetectionio/blueprint/imports/importer.py msgid "Unable to read export XLSX file, something wrong with the file?" @@ -192,22 +192,18 @@ msgstr "處理第 {} 行時發生錯誤,請檢查所有儲存格資料類型 #: changedetectionio/blueprint/imports/importer.py #, python-brace-format -msgid "{count} imported from Wachete .xlsx in {duration:.2f}s" -msgstr "{count} 已從 Wachete .xlsx 匯入,耗時 {duration:.2f} 秒" +msgid "{count} imported from Wachete .xlsx in {duration}s" +msgstr "{count} 已從 Wachete .xlsx 匯入,耗時 {duration} 秒" #: changedetectionio/blueprint/imports/importer.py #, python-brace-format -msgid "{count} imported from custom .xlsx in {duration:.2f}s" -msgstr "{count} 已從自訂 .xlsx 匯入,耗時 {duration:.2f} 秒" +msgid "{count} imported from custom .xlsx in {duration}s" +msgstr "{count} 已從自訂 .xlsx 匯入,耗時 {duration} 秒" #: changedetectionio/blueprint/imports/templates/import.html msgid "URL List" msgstr "URL 列表" -#: changedetectionio/blueprint/imports/templates/import.html -msgid "Distill.io" -msgstr "Distill.io" - #: changedetectionio/blueprint/imports/templates/import.html msgid ".XLSX & Wachete" msgstr ".XLSX 和 Wachete" @@ -242,6 +238,7 @@ msgid "Copy and Paste your Distill.io watch 'export' file, this should be a JSON msgstr "複製並貼上您的 Distill.io 監測任務「匯出」檔案,這應該是一個 JSON 檔案。" # TN: CJK scripts degrade when italicized; emphasis is rendered with <strong> instead. +#. CJK fonts lack native italics; allow substitution with conventional local styling. dennis-ignore: W303 #: changedetectionio/blueprint/imports/templates/import.html msgid "" "This is <i>experimental</i>, supported fields are <code>name</code>, <code>uri</code>, <code>tags</code>, " @@ -369,8 +366,8 @@ msgid "AI / LLM configuration removed." msgstr "" #: changedetectionio/blueprint/settings/llm.py -#, python-format -msgid "AI summary cache cleared (%(count)s file(s) removed)." +#, python-brace-format +msgid "AI summary cache cleared ({} file(s) removed)." msgstr "" #: changedetectionio/blueprint/settings/templates/notification-log.html @@ -394,14 +391,6 @@ msgstr "全域過濾器" msgid "UI Options" msgstr "介面選項" -#: changedetectionio/blueprint/settings/templates/settings.html -msgid "API" -msgstr "API" - -#: changedetectionio/blueprint/settings/templates/settings.html -msgid "RSS" -msgstr "RSS" - #: changedetectionio/blueprint/settings/templates/settings.html msgid "Backups" msgstr "備份" @@ -1214,6 +1203,7 @@ msgstr "" msgid "Leave unchecked to use the auto-generated colour based on the tag name." msgstr "" +#. CJK fonts lack native italics; allow substitution with conventional local styling. dennis-ignore: W303 #: changedetectionio/blueprint/tags/templates/edit-tag.html msgid "These settings are <strong><i>added</i></strong> to any existing watch configurations." msgstr "這些設定會<strong><i>新增</i></strong>至任何現有的監測設定中。" @@ -1919,6 +1909,7 @@ msgid "" msgstr "適用於內容僅會移動的網站,且您想知道何時新增了「新」內容,此功能會將新行與此監測任務的所有歷史記錄進行比較。" # TN: CJK scripts degrade when italicized; UI label reference is wrapped in 「」 instead. +#. CJK fonts lack native italics; allow substitution with conventional local styling. dennis-ignore: W303 #: changedetectionio/blueprint/ui/templates/edit.html msgid "Helps reduce changes detected caused by sites shuffling lines around, combine with <i>check unique lines</i> below." msgstr "有助於減少因網站重新排列行而檢測到的變更,結合下方的「檢查獨特行」使用。" @@ -2176,6 +2167,7 @@ msgstr "清除歷史記錄" msgid "<p>Are you sure you want to clear history for the selected items?</p><p>This action cannot be undone.</p>" msgstr "<p>您確定要清除所選項目的歷史記錄嗎?</p><p>此動作無法復原。</p>" +#. Universally recognized; typically left as-is. dennis-ignore: W302 #: changedetectionio/blueprint/watchlist/templates/watch-overview.html msgid "OK" msgstr "確定" @@ -2189,8 +2181,8 @@ msgid "Delete Watches?" msgstr "刪除監測任務?" #: changedetectionio/blueprint/watchlist/templates/watch-overview.html -msgid "<p>Are you sure you want to delete the selected watches?</strong></p><p>This action cannot be undone.</p>" -msgstr "<p>您確定要刪除所選的監測任務嗎?</strong></p><p>此動作無法復原。</p>" +msgid "<p><strong>Are you sure you want to delete the selected watches?</strong></p><p>This action cannot be undone.</p>" +msgstr "<p><strong>您確定要刪除所選的監測任務嗎?</strong></p><p>此動作無法復原。</p>" #: changedetectionio/blueprint/watchlist/templates/watch-overview.html msgid "Queued size" @@ -2687,10 +2679,6 @@ msgstr "不允許空值。" msgid "Invalid value." msgstr "數值無效。" -#: changedetectionio/blueprint/imports/templates/import.html changedetectionio/forms.py -msgid "URL" -msgstr "URL" - #: changedetectionio/forms.py msgid "Group tag" msgstr "群組 / 標籤" @@ -2926,6 +2914,7 @@ msgstr "符合以下所有條件" msgid "Match any of the following" msgstr "符合以下任一條件" +#. dennis-ignore: W303 - False positive caused by <title>. https://github.com/mozilla/dennis/issues/213 #: changedetectionio/forms.py msgid "Use page <title> in list" msgstr "在列表中使用頁面 <title>" @@ -3025,6 +3014,7 @@ msgstr "已啟用即時 UI 更新" msgid "Favicons Enabled" msgstr "啟用網站圖示 (Favicons)" +#. dennis-ignore: W303 - False positive caused by <title>. https://github.com/mozilla/dennis/issues/213 #: changedetectionio/forms.py msgid "Use page <title> in watch overview list" msgstr "在監測概覽列表中使用頁面 <title>" @@ -3414,6 +3404,7 @@ msgstr "" msgid "The UUID of the watch." msgstr "監測任務的 UUID。" +#. dennis-ignore: W303 - False positive caused by <title>. https://github.com/mozilla/dennis/issues/213 #: changedetectionio/templates/_common_fields.html msgid "The page title of the watch, uses <title> if not set, falls back to URL" msgstr "" @@ -3550,6 +3541,7 @@ msgstr "更多資訊" msgid "Use <a target=\"newwindow\" href=\"%(url)s\">AppRise Notification URLs</a> for notification to just about any service!" msgstr "" +#. CJK fonts lack native italics; allow substitution with conventional local styling. dennis-ignore: W303 #: changedetectionio/templates/_common_fields.html msgid "<i>Please read the notification services wiki here for important configuration notes</i>" msgstr "" @@ -3911,6 +3903,7 @@ msgstr "" msgid "Note!: //text() function does not work where the <element> contains <![CDATA[]]>" msgstr "" +#. CJK fonts lack native italics; allow substitution with conventional local styling. dennis-ignore: W303 #: changedetectionio/templates/edit/include_subtract.html msgid "One CSS, xPath 1 & 2, JSON Path/JQ selector per line, <i>any</i> rules that matches will be used." msgstr "" diff --git a/setup.cfg b/setup.cfg index e213977e..309d5d2f 100644 --- a/setup.cfg +++ b/setup.cfg @@ -7,7 +7,7 @@ mapping_file = babel.cfg output_file = changedetectionio/translations/messages.pot input_paths = changedetectionio keywords = _ _l gettext pgettext:1c,2 -add_comments = TRANSLATORS: +add_comments = TRANSLATORS:,dennis-ignore: # Options to reduce unnecessary changes in .pot files sort_by_file = true width = 120