diff --git a/Dockerfile b/Dockerfile index c0d6a18d4..8598d8ccb 100644 --- a/Dockerfile +++ b/Dockerfile @@ -113,6 +113,9 @@ EXPOSE 5000 # The actual flask app module COPY changedetectionio /app/changedetectionio +# Compile translation files for i18n support +RUN pybabel compile -d /app/changedetectionio/translations + # Also for OpenAPI validation wrapper - needs the YML RUN [ ! -d "/app/docs" ] && mkdir /app/docs COPY docs/api-spec.yaml /app/docs/api-spec.yaml diff --git a/changedetectionio/blueprint/backups/templates/overview.html b/changedetectionio/blueprint/backups/templates/overview.html index b07be4bd0..cc86150c7 100644 --- a/changedetectionio/blueprint/backups/templates/overview.html +++ b/changedetectionio/blueprint/backups/templates/overview.html @@ -3,31 +3,31 @@ {% from '_helpers.html' import render_simple_field, render_field %}
-

Backups

+

{{ _('Backups') }}

{% if backup_running %}

- A backup is running! + {{ _('A backup is running!') }}

{% endif %}

- Here you can download and request a new backup, when a backup is completed you will see it listed below. + {{ _('Here you can download and request a new backup, when a backup is completed you will see it listed below.') }}


{% if available_backups %} {% else %}

- No backups found. + {{ _('No backups found.') }}

{% endif %} - Create backup + {{ _('Create backup') }} {% if available_backups %} - Remove backups + {{ _('Remove backups') }} {% endif %}
diff --git a/changedetectionio/blueprint/imports/templates/import.html b/changedetectionio/blueprint/imports/templates/import.html index fbd7a4b65..dc623b9e7 100644 --- a/changedetectionio/blueprint/imports/templates/import.html +++ b/changedetectionio/blueprint/imports/templates/import.html @@ -6,9 +6,9 @@
@@ -17,11 +17,10 @@
- Enter one URL per line, and optionally add tags for each URL after a space, delineated by comma - (,): + {{ _('Enter one URL per line, and optionally add tags for each URL after a space, delineated by comma (,):') }}
-

Example: https://example.com tag1, tag2, last tag

- URLs which do not pass validation will stay in the textarea. +

{{ _('Example:') }} https://example.com tag1, tag2, last tag

+ {{ _('URLs which do not pass validation will stay in the textarea.') }}
{{ render_field(form.processor, class="processor") }} @@ -42,12 +41,12 @@
- Copy and Paste your Distill.io watch 'export' file, this should be a JSON file.
- This is experimental, supported fields are name, uri, tags, config:selections, the rest (including schedule) are ignored. + {{ _('Copy and Paste your Distill.io watch \'export\' file, this should be a JSON file.') }}
+ {{ _('This is') }} {{ _('experimental') }}, {{ _('supported fields are') }} name, uri, tags, config:selections, {{ _('the rest (including') }} schedule) {{ _('are ignored.') }}

- How to export? https://distill.io/docs/web-monitor/how-export-and-import-monitors/
- Be sure to set your default fetcher to Chrome if required.
+ {{ _('How to export?') }} https://distill.io/docs/web-monitor/how-export-and-import-monitors/
+ {{ _('Be sure to set your default fetcher to Chrome if required.') }}

@@ -89,32 +88,32 @@
- Table of custom column and data types mapping for the Custom mapping File mapping type. + {{ _('Table of custom column and data types mapping for the') }} {{ _('Custom mapping') }} {{ _('File mapping type.') }} - + {% for n in range(4) %} {% endfor %} - + {% for n in range(4) %} {% endfor %}
Column #{{ _('Column #') }}
Type{{ _('Type') }}
- + diff --git a/changedetectionio/blueprint/settings/templates/notification-log.html b/changedetectionio/blueprint/settings/templates/notification-log.html index ee76e2590..8738aaba3 100644 --- a/changedetectionio/blueprint/settings/templates/notification-log.html +++ b/changedetectionio/blueprint/settings/templates/notification-log.html @@ -4,7 +4,7 @@
-

Notification debug log

+

{{ _('Notification debug log') }}

    {% for log in logs|reverse %} diff --git a/changedetectionio/blueprint/settings/templates/settings.html b/changedetectionio/blueprint/settings/templates/settings.html index d822baf14..89f59ad13 100644 --- a/changedetectionio/blueprint/settings/templates/settings.html +++ b/changedetectionio/blueprint/settings/templates/settings.html @@ -18,21 +18,21 @@
    @@ -43,7 +43,7 @@
    {{ render_field(form.requests.form.time_between_check, class="time-check-widget") }} - Default recheck time for all watches, current system minimum is {{min_system_recheck_seconds}} seconds (more info). + {{ _('Default recheck time for all watches, current system minimum is') }} {{min_system_recheck_seconds}} {{ _('seconds') }} ({{ _('more info') }}).
    @@ -387,8 +387,8 @@ nav {% endfor %} {% endif %}
    -

    Python version: {{ python_version }}

    -

    Plugins active:

    +

    {{ _('Python version:') }} {{ python_version }}

    +

    {{ _('Plugins active:') }}

    {% if active_plugins %}
      {% for plugin in active_plugins %} @@ -396,14 +396,14 @@ nav {% endfor %}
    {% else %} -

    No plugins active

    +

    {{ _('No plugins active') }}

    {% endif %}
    {{ render_button(form.save_button) }} - Back - Clear Snapshot History + {{ _('Back') }} + {{ _('Clear Snapshot History') }}
    diff --git a/changedetectionio/blueprint/tags/templates/edit-tag.html b/changedetectionio/blueprint/tags/templates/edit-tag.html index e04ee9455..8a0260903 100644 --- a/changedetectionio/blueprint/tags/templates/edit-tag.html +++ b/changedetectionio/blueprint/tags/templates/edit-tag.html @@ -24,12 +24,12 @@ @@ -47,10 +47,10 @@
    -

    These settings are added to any existing watch configurations.

    +

    {{ _('These settings are') }} {{ _('added') }} {{ _('to any existing watch configurations.') }}

    {% include "edit/include_subtract.html" %}
    -

    Text filtering

    +

    {{ _('Text filtering') }}

    {% include "edit/text-options.html" %}
    @@ -70,18 +70,18 @@
    {{ render_checkbox_field(form.notification_screenshot) }} - Use with caution! This will easily fill up your email storage quota or flood other storages. + {{ _('Use with caution!') }} {{ _('This will easily fill up your email storage quota or flood other storages.') }}
    {% endif %}
    {% if has_default_notification_urls %}
    - Look out! - There are system-wide notification URLs enabled, this form will override notification settings for this watch only ‐ an empty Notification URL list here will still send notifications. + {{ _('Look out!') }} + {{ _('There are') }} {{ _('system-wide notification URLs enabled') }}, {{ _('this form will override notification settings for this watch only') }} ‐ {{ _('an empty Notification URL list here will still send notifications.') }}
    {% endif %} - Use system defaults + {{ _('Use system defaults') }} {{ render_common_settings_form(form, emailprefix, settings_application, extra_notification_token_placeholder_info) }}
    diff --git a/changedetectionio/blueprint/tags/templates/groups-overview.html b/changedetectionio/blueprint/tags/templates/groups-overview.html index dadf980ce..63c0253ed 100644 --- a/changedetectionio/blueprint/tags/templates/groups-overview.html +++ b/changedetectionio/blueprint/tags/templates/groups-overview.html @@ -8,17 +8,17 @@
    - Add a new organisational tag + {{ _('Add a new organisational tag') }}
    - {{ render_simple_field(form.name, placeholder="Watch group / tag") }} + {{ render_simple_field(form.name, placeholder=_("Watch group / tag")) }}
    - {{ render_simple_field(form.save_button, title="Save" ) }} + {{ render_simple_field(form.save_button, title=_("Save") ) }}

    -
    Groups allows you to manage filters and notifications for multiple watches under a single organisational tag.
    +
    {{ _('Groups allows you to manage filters and notifications for multiple watches under a single organisational tag.') }}
    @@ -28,8 +28,8 @@ - # Watches - Tag / Label name + {{ _('# Watches') }} + {{ _('Tag / Label name') }} @@ -39,7 +39,7 @@ ---> {% if not available_tags|length %} - No website organisational tags/groups configured + {{ _('No website organisational tags/groups configured') }} {% endif %} {% for uuid, tag in available_tags %} @@ -50,24 +50,24 @@ {{ "{:,}".format(tag_count[uuid]) if uuid in tag_count else 0 }} {{ tag.title }} - Edit  + {{ _('Edit') }}  Delete + data-confirm-title="{{ _('Delete Group?') }}" + data-confirm-message="{{ _('

    Are you sure you want to delete group %(title)s?

    This action cannot be undone.

    ', title=tag.title) }}" + data-confirm-button="{{ _('Delete') }}" + title="{{ _('Deletes and removes tag') }}">{{ _('Delete') }} Unlink - RSS Feed for this watch + data-confirm-title="{{ _('Unlink Group?') }}" + data-confirm-message="{{ _('

    Are you sure you want to unlink all watches from group %(title)s?

    The tag will be kept but watches will be removed from it.

    ', title=tag.title) }}" + data-confirm-button="{{ _('Unlink') }}" + title="{{ _('Keep the tag but unlink any watches') }}">{{ _('Unlink') }} + {{ _('RSS Feed for this watch') }} {% endfor %} diff --git a/changedetectionio/blueprint/ui/templates/clear_all_history.html b/changedetectionio/blueprint/ui/templates/clear_all_history.html index bcb57190f..9adc35762 100644 --- a/changedetectionio/blueprint/ui/templates/clear_all_history.html +++ b/changedetectionio/blueprint/ui/templates/clear_all_history.html @@ -9,13 +9,12 @@
    - This will remove version history (snapshots) for ALL watches, but keep - your list of URLs!
    - You may like to use the BACKUP link first.
    + {{ _('This will remove version history (snapshots) for ALL watches, but keep your list of URLs!') }}
    + {{ _('You may like to use the') }} {{ _('BACKUP') }} {{ _('link first.') }}

    - + Type in the word clear to confirm that you - understand.{{ _('Type in the word') }} {{ _('clear') }} {{ _('to confirm that you understand.') }}


    Cancel{{ _('Cancel') }}
    diff --git a/changedetectionio/blueprint/ui/templates/diff-offscreen-options.html b/changedetectionio/blueprint/ui/templates/diff-offscreen-options.html index 54a8d3fdf..3a36019ac 100644 --- a/changedetectionio/blueprint/ui/templates/diff-offscreen-options.html +++ b/changedetectionio/blueprint/ui/templates/diff-offscreen-options.html @@ -1,12 +1,12 @@ diff --git a/changedetectionio/blueprint/ui/templates/diff.html b/changedetectionio/blueprint/ui/templates/diff.html index 43db186eb..18bf410f1 100644 --- a/changedetectionio/blueprint/ui/templates/diff.html +++ b/changedetectionio/blueprint/ui/templates/diff.html @@ -25,7 +25,7 @@
    {% if versions|length >= 1 %} - + - + Words + {{ _('Words') }} + {{ _('Lines') }} + {{ _('Ignore Whitespace') }} + {{ _('Same/non-changed') }} + {{ _('Removed') }} + {{ _('Added') }} + {{ _('Replaced') }}
    {%- if versions|length >= 2 -%}
    - Keyboard: - ← Previous -   → Next + {{ _('Keyboard:') }} + ← {{ _('Previous') }} +   → {{ _('Next') }}
    {%- endif -%}
    -
    {{watch_a.error_text_ctime|format_seconds_ago}} seconds ago.
    +
    {{watch_a.error_text_ctime|format_seconds_ago}} {{ _('seconds ago.') }}
                 {{ last_error_text }}
             
    -
    {{watch_a.snapshot_error_screenshot_ctime|format_seconds_ago}} seconds ago
    - Current error-ing screenshot from most recent request +
    {{watch_a.snapshot_error_screenshot_ctime|format_seconds_ago}} {{ _('seconds ago') }}
    + {{ _('Current error-ing screenshot from most recent request') }}
    @@ -124,34 +124,34 @@
    {%- endif -%} {%- if password_enabled_and_share_is_off -%} -
    Pro-tip: You can enable "share access when password is enabled" from settings. +
    {{ _('Pro-tip: You can enable') }} {{ _('"share access when password is enabled"') }} {{ _('from settings.') }}
    {%- endif -%}
    {{ from_version|format_timestamp_timeago }} {%- if note -%}{{ note }}{%- endif -%} - Goto single snapshot + {{ _('Goto single snapshot') }}
    {{ content| diff_unescape_difference_spans }}
    - Tip: Highlight text to share or add to ignore lists. + {{ _('Tip:') }} {{ _('Highlight text to share or add to ignore lists.') }}
    - For now, Differences are performed on text, not graphically, only the latest screenshot is available. + {{ _('For now, Differences are performed on text, not graphically, only the latest screenshot is available.') }}
    {% if is_html_webdriver %} {% if screenshot %}
    {{watch_a.snapshot_screenshot_ctime|format_timestamp_timeago}}
    - Current screenshot from most recent request + {{ _('Current screenshot from most recent request') }} {% else %} - No screenshot available just yet! Try rechecking the page. + {{ _('No screenshot available just yet! Try rechecking the page.') }} {% endif %} {% else %} - Screenshot requires Playwright/WebDriver enabled + {{ _('Screenshot requires Playwright/WebDriver enabled') }} {% endif %}
    diff --git a/changedetectionio/blueprint/ui/templates/edit.html b/changedetectionio/blueprint/ui/templates/edit.html index d4bc275d6..b44e78e42 100644 --- a/changedetectionio/blueprint/ui/templates/edit.html +++ b/changedetectionio/blueprint/ui/templates/edit.html @@ -44,20 +44,20 @@ @@ -70,19 +70,19 @@
    {{ render_field(form.url, placeholder="https://...", required=true, class="m-d") }} -
    Some sites use JavaScript to create the content, for this you should use the Chrome/WebDriver Fetcher
    -
    Variables are supported in the URL (help and examples here).
    +
    {{ _('Some sites use JavaScript to create the content, for this you should') }} {{ _('use the Chrome/WebDriver Fetcher') }}
    +
    {{ _('Variables are supported in the URL') }} ({{ _('help and examples here') }}).
    {{ render_field(form.tags) }} - Organisational tag/group name used in the main listing page + {{ _('Organisational tag/group name used in the main listing page') }}
    {{ render_field(form.processor) }}
    {{ render_field(form.title, class="m-d", placeholder=watch.label) }} - Automatically uses the page title if found, you can also use your own title/description here + {{ _('Automatically uses the page title if found, you can also use your own title/description here') }}
    @@ -92,7 +92,7 @@ {{ render_field(form.time_between_check, class="time-check-widget") }} - The interval/amount of time between each check. + {{ _('The interval/amount of time between each check.') }}
    @@ -107,7 +107,7 @@
    {{ render_checkbox_field(form.filter_failure_notification_send) }} - Sends a notification when the filter can no longer be seen on the page, good for knowing when the page changed and your filter will not work anymore. + {{ _('Sends a notification when the filter can no longer be seen on the page, good for knowing when the page changed and your filter will not work anymore.') }}
    @@ -120,17 +120,17 @@
    {{ render_field(form.fetch_backend, class="fetch-backend") }} -

    Use the Basic method (default) where your watched site doesn't need Javascript to render.

    -

    The Chrome/Javascript method requires a network connection to a running WebDriver+Chrome server, set by the ENV var 'WEBDRIVER_URL'.

    - Tip: Connect using Bright Data and Oxylabs Proxies, find out more here. +

    {{ _('Use the') }} {{ _('Basic') }} {{ _('method (default) where your watched site doesn\'t need Javascript to render.') }}

    +

    {{ _('The') }} {{ _('Chrome/Javascript') }} {{ _('method requires a network connection to a running WebDriver+Chrome server, set by the ENV var \'WEBDRIVER_URL\'.') }}

    + {{ _('Tip:') }} {{ _('Connect using Bright Data and Oxylabs Proxies, find out more here.') }}
    {% if form.proxy %}
    -
    {{ form.proxy.label }} Check/Scan all
    +
    {{ form.proxy.label }} {{ _('Check/Scan all') }}
    {{ form.proxy(class="fetch-backend-proxy") }}
    - Choose a proxy for this watch + {{ _('Choose a proxy for this watch') }}
    {% endif %} @@ -140,31 +140,29 @@
    {{ render_field(form.webdriver_delay) }}
    - If you're having trouble waiting for the page to be fully rendered (text missing etc), try increasing the 'wait' time here. + {{ _('If you\'re having trouble waiting for the page to be fully rendered (text missing etc), try increasing the \'wait\' time here.') }}
    - This will wait n seconds before extracting the text. + {{ _('This will wait') }} n {{ _('seconds before extracting the text.') }} {% if using_global_webdriver_wait %} -
    Using the current global default settings +
    {{ _('Using the current global default settings') }} {% endif %}
    @@ -188,15 +186,15 @@ Cookie: foobar User-Agent: wonderbra 1.0 Math: {{ 1 + 1 }}") }} -
    Variables are supported in the request header values (help and examples here).
    +
    {{ _('Variables are supported in the request header values') }} ({{ _('help and examples here') }}).
    {% if has_extra_headers_file %} - Alert! Extra headers file found and will be added to this watch! + {{ _('Alert! Extra headers file found and will be added to this watch!') }} {% else %} - Headers can be also read from a file in your data-directory Read more here + {{ _('Headers can be also read from a file in your data-directory') }} {{ _('Read more here') }} {% endif %}
    - (Not supported by Selenium browser) + ({{ _('Not supported by Selenium browser') }})
    @@ -220,19 +218,19 @@ Math: {{ 1 + 1 }}") }} - +
    -

    Click here to Start

    +

    {{ _('Click here to Start') }}


    - Please allow 10-15 seconds for the browser to connect.
    + {{ _('Please allow 10-15 seconds for the browser to connect.') }}
    @@ -241,19 +239,19 @@ Math: {{ 1 + 1 }}") }}
    - Press "Play" to start. (?) + {{ _('Press "Play" to start.') }} (?) {{ render_field(form.browser_steps) }}
    {% else %} - Visual Selector data is not ready, watch needs to be checked atleast once. + {{ _('Visual Selector data is not ready, watch needs to be checked atleast once.') }} {% endif %} {% else %}

    - Sorry, this functionality only works with fetchers that support interactive Javascript (so far only Playwright based fetchers)
    - You need to Set the fetch method to one that supports interactive Javascript.
    + {{ _('Sorry, this functionality only works with fetchers that support interactive Javascript (so far only Playwright based fetchers)') }}
    + {{ _('You need to') }} {{ _('Set the fetch method') }} {{ _('to one that supports interactive Javascript.') }}

    {% endif %}
    @@ -268,18 +266,18 @@ Math: {{ 1 + 1 }}") }}
    {{ render_checkbox_field(form.notification_screenshot) }} - Use with caution! This will easily fill up your email storage quota or flood other storages. + {{ _('Use with caution!') }} {{ _('This will easily fill up your email storage quota or flood other storages.') }}
    {% endif %}
    {% if has_default_notification_urls %}
    - Look out! - There are system-wide notification URLs enabled, this form will override notification settings for this watch only ‐ an empty Notification URL list here will still send notifications. + {{ _('Look out!') }} + {{ _('There are') }} {{ _('system-wide notification URLs enabled') }}, {{ _('this form will override notification settings for this watch only') }} ‐ {{ _('an empty Notification URL list here will still send notifications.') }}
    {% endif %} - Use system defaults + {{ _('Use system defaults') }} {{ render_common_settings_form(form, emailprefix, settings_application, extra_notification_token_placeholder_info) }}
    @@ -296,23 +294,23 @@ Math: {{ 1 + 1 }}") }} {{ render_conditions_fieldlist_of_formfields_as_table(form.conditions) }}
    -

    Use the verify (✓) button to test if a condition passes against the current snapshot.

    - Read a quick tutorial about using conditional web page changes here.
    +

    {{ _('Use the verify (✓) button to test if a condition passes against the current snapshot.') }}

    + {{ _('Read a quick tutorial about') }} {{ _('using conditional web page changes here') }}.
- Activate preview + {{ _('Activate preview') }}
- Pro-tips:
+ {{ _('Pro-tips:') }}
  • - Use the preview page to see your filters and triggers highlighted. + {{ _('Use the preview page to see your filters and triggers highlighted.') }}
  • - Some sites use JavaScript to create the content, for this you should use the Chrome/WebDriver Fetcher + {{ _('Some sites use JavaScript to create the content, for this you should') }} {{ _('use the Chrome/WebDriver Fetcher') }}
@@ -320,30 +318,30 @@ Math: {{ 1 + 1 }}") }} {% include "edit/include_subtract.html" %}
-

Text filtering

- Limit trigger/ignore/block/extract to;
+

{{ _('Text filtering') }}

+ {{ _('Limit trigger/ignore/block/extract to;') }}
{{ render_checkbox_field(form.filter_text_added) }} {{ render_checkbox_field(form.filter_text_replaced) }} {{ render_checkbox_field(form.filter_text_removed) }} - Note: Depending on the length and similarity of the text on each line, the algorithm may consider an addition instead of replacement for example.
-  So it's always better to select Added+Replaced when you're interested in new content.
-  When content is merely moved in a list, it will also trigger an addition, consider enabling Only trigger when unique lines appear + {{ _('Note: Depending on the length and similarity of the text on each line, the algorithm may consider an') }} {{ _('addition') }} {{ _('instead of') }} {{ _('replacement') }} {{ _('for example.') }}
+  {{ _('So it\'s always better to select') }} {{ _('Added') }}+{{ _('Replaced') }} {{ _('when you\'re interested in new content.') }}
+  {{ _('When content is merely moved in a list, it will also trigger an') }} {{ _('addition') }}, {{ _('consider enabling') }} {{ _('Only trigger when unique lines appear') }}
{{ render_checkbox_field(form.check_unique_lines) }} - Good for websites that just move the content around, and you want to know when NEW content is added, compares new lines against all history for this watch. + {{ _('Good for websites that just move the content around, and you want to know when NEW content is added, compares new lines against all history for this watch.') }}
{{ render_checkbox_field(form.remove_duplicate_lines) }} - Remove duplicate lines of text + {{ _('Remove duplicate lines of text') }}
{{ render_checkbox_field(form.sort_text_alphabetically) }} - Helps reduce changes detected caused by sites shuffling lines around, combine with check unique lines below. + {{ _('Helps reduce changes detected caused by sites shuffling lines around, combine with') }} {{ _('check unique lines') }} {{ _('below.') }}
{{ render_checkbox_field(form.trim_text_whitespace) }} - Remove any whitespace before and after each line of text + {{ _('Remove any whitespace before and after each line of text') }}
{% include "edit/text-options.html" %}
@@ -357,10 +355,10 @@ Math: {{ 1 + 1 }}") }}
-

Loading...

+

{{ _('Loading...') }}

@@ -385,19 +383,19 @@ Math: {{ 1 + 1 }}") }} {% if capabilities.supports_screenshots and capabilities.supports_xpath_element_data %} {% if visual_selector_data_ready %} - The Visual Selector tool lets you select the text elements that will be used for the change detection. It automatically fills-in the filters in the "CSS/JSONPath/JQ/XPath Filters" box of the Filters & Triggers tab. Use Shift+Click to select multiple items. + {{ _('The Visual Selector tool lets you select the') }} {{ _('text') }} {{ _('elements that will be used for the change detection. It automatically fills-in the filters in the "CSS/JSONPath/JQ/XPath Filters" box of the') }} {{ _('Filters & Triggers') }} {{ _('tab. Use') }} {{ _('Shift+Click') }} {{ _('to select multiple items.') }} {% if watch['processor'] == 'image_ssim_diff' %}
- + {{ render_field(form.processor_config_bounding_box) }} {{ render_field(form.processor_config_selection_mode) }} @@ -405,9 +403,9 @@ Math: {{ 1 + 1 }}") }} {% endif %}
- Clear selection + {{ _('Clear selection') }} - One moment, fetching screenshot and element information.. + {{ _('One moment, fetching screenshot and element information..') }}
-
Currently: Loading...
+
{{ _('Currently:') }} {{ _('Loading...') }}
{% else %} - Visual Selector data is not ready, watch needs to be checked atleast once. + {{ _('Visual Selector data is not ready, watch needs to be checked atleast once.') }} {% endif %} {% else %}

- Sorry, this functionality only works with fetchers that support Javascript and screenshots (such as playwright etc).
- You need to Set the fetch method to one that supports Javascript and screenshots.
+ {{ _('Sorry, this functionality only works with fetchers that support Javascript and screenshots (such as playwright etc).') }}
+ {{ _('You need to') }} {{ _('Set the fetch method') }} {{ _('to one that supports Javascript and screenshots.') }}

{% endif %}
@@ -440,27 +438,27 @@ Math: {{ 1 + 1 }}") }} - + - + - + - + - + - + @@ -474,7 +472,7 @@ Math: {{ 1 + 1 }}") }} {% if watch.history_n %}

- Download latest HTML snapshot + {{ _('Download latest HTML snapshot') }}

{% endif %} @@ -487,19 +485,19 @@ Math: {{ 1 + 1 }}") }} class="pure-button button-error" data-requires-confirm data-confirm-type="danger" - data-confirm-title="Delete Watch?" - data-confirm-message="

Are you sure you want to delete the watch for:

{{ watch.get('url', 'this watch') }}

This action cannot be undone.

" - data-confirm-button="Delete">Delete + data-confirm-title="{{ _('Delete Watch?') }}" + data-confirm-message="

{{ _('Are you sure you want to delete the watch for:') }}

{{ watch.get('url', 'this watch') }}

{{ _('This action cannot be undone.') }}

" + data-confirm-button="{{ _('Delete') }}">{{ _('Delete') }} {% if watch.history_n %}Clear History{% endif %} + data-confirm-title="{{ _('Clear History?') }}" + data-confirm-message="

{{ _('Are you sure you want to clear all history for:') }}

{{ watch.get('url', 'this watch') }}

{{ _('This will remove all snapshots and previous versions. This action cannot be undone.') }}

" + data-confirm-button="{{ _('Clear History') }}">{{ _('Clear History') }}{% endif %} Clone & Edit - RSS Feed for this watch + class="pure-button">{{ _('Clone & Edit') }} + {{ _('RSS Feed for this watch') }} diff --git a/changedetectionio/blueprint/ui/templates/preview.html b/changedetectionio/blueprint/ui/templates/preview.html index b232ef2f9..b0a567655 100644 --- a/changedetectionio/blueprint/ui/templates/preview.html +++ b/changedetectionio/blueprint/ui/templates/preview.html @@ -19,7 +19,7 @@
- {% for version in versions|reverse %} @@ -28,27 +28,27 @@ {% endfor %} - +

- Keyboard: - ← Previous   - → Next + {{ _('Keyboard:') }} + ← {{ _('Previous') }}   + → {{ _('Next') }}
{% endif %}
@@ -56,17 +56,17 @@
-
{{ watch.error_text_ctime|format_seconds_ago }} seconds ago
+
{{ watch.error_text_ctime|format_seconds_ago }} {{ _('seconds ago') }}
             {{ last_error_text }}
         
-
{{ watch.snapshot_error_screenshot_ctime|format_seconds_ago }} seconds ago +
{{ watch.snapshot_error_screenshot_ctime|format_seconds_ago }} {{ _('seconds ago') }}
Current erroring screenshot from most recent request + alt="{{ _('Current erroring screenshot from most recent request') }}">
@@ -77,18 +77,18 @@
- For now, Differences are performed on text, not graphically, only the latest screenshot is available. + {{ _('For now, Differences are performed on text, not graphically, only the latest screenshot is available.') }}

{% if capabilities.supports_screenshots %} {% if screenshot %}
{{ watch.snapshot_screenshot_ctime|format_timestamp_timeago }}
- Current screenshot from most recent request + {{ _('Current screenshot from most recent request') }} {% else %} - No screenshot available just yet! Try rechecking the page. + {{ _('No screenshot available just yet! Try rechecking the page.') }} {% endif %} {% else %} - Screenshot requires a Content Fetcher ( Sockpuppetbrowser, selenium, etc ) that supports screenshots. + {{ _('Screenshot requires a Content Fetcher ( Sockpuppetbrowser, selenium, etc ) that supports screenshots.') }} {% endif %}
diff --git a/changedetectionio/blueprint/watchlist/templates/watch-overview.html b/changedetectionio/blueprint/watchlist/templates/watch-overview.html index 46370d218..4fad98ca1 100644 --- a/changedetectionio/blueprint/watchlist/templates/watch-overview.html +++ b/changedetectionio/blueprint/watchlist/templates/watch-overview.html @@ -28,11 +28,11 @@ document.addEventListener('DOMContentLoaded', function() {
- Add a new web page change detection watch + {{ _('Add a new web page change detection watch') }}
{{ render_nolabel_field(form.url, placeholder="https://...", required=true) }} - {{ render_nolabel_field(form.watch_submit_button, title="Watch this URL!" ) }} - {{ render_nolabel_field(form.edit_and_watch_submit_button, title="Edit first then Watch") }} + {{ render_nolabel_field(form.watch_submit_button, title=_("Watch this URL!") ) }} + {{ render_nolabel_field(form.edit_and_watch_submit_button, title=_("Edit first then Watch") ) }}
{{ render_field(form.tags, value=active_tag.title if active_tag_uuid else '', placeholder="Watch group / tag", class="transparent-field") }} @@ -42,7 +42,7 @@ document.addEventListener('DOMContentLoaded', function() {
- Create a shareable link Tip: You can also add 'shared' watches. More info + {{ _('Create a shareable link') }} {{ _("Tip: You can also add 'shared' watches.") }} {{ _('More info') }}
@@ -50,34 +50,34 @@ document.addEventListener('DOMContentLoaded', function() {
- - - - - - - - - + + + + + + + + + + data-confirm-title="{{ _('Clear Histories') }}" + data-confirm-message="{{ _('

Are you sure you want to clear history for the selected items?

This action cannot be undone.

') }}" + data-confirm-button="{{ _('OK') }}">{{ _('Clear/reset history') }} + data-confirm-title="{{ _('Delete Watches?') }}" + data-confirm-message="{{ _('

Are you sure you want to delete the selected watches?

This action cannot be undone.

') }}" + data-confirm-button="{{ _('Delete') }}">{{ _('Delete') }}
{%- if watches|length >= pagination.per_page -%} {{ pagination.info }} {%- endif -%} - {%- if search_q -%}
Searching "{{search_q}}"
{%- endif -%} + {%- if search_q -%}
{{ _('Searching') }} "{{search_q}}"
{%- endif -%}
- All + {{ _('All') }} {%- for uuid, tag in tags -%} @@ -115,19 +115,19 @@ document.addEventListener('DOMContentLoaded', function() {   -
+ {%- if any_has_restock_price_processor -%} - + {%- endif -%} - - + + {%- if not watches|length -%} - + {%- endif -%} @@ -210,20 +210,20 @@ document.addEventListener('DOMContentLoaded', function() { @@ -231,24 +231,24 @@ document.addEventListener('DOMContentLoaded', function() { {#last_checked becomes fetch-start-time#} @@ -257,22 +257,21 @@ document.addEventListener('DOMContentLoaded', function() {
Check count{{ _('Check count') }} {{ "{:,}".format( watch.check_count) }}
Consecutive filter failures{{ _('Consecutive filter failures') }} {{ "{:,}".format( watch.consecutive_filter_failures) }}
History length{{ _('History length') }} {{ "{:,}".format(watch.history|length) }}
Last fetch duration{{ _('Last fetch duration') }} {{ watch.fetch_time }}s
Notification alert count{{ _('Notification alert count') }} {{ watch.notification_alert_count }}
Server type reply{{ _('Server type reply') }} {{ watch.get('remote_server_reply') }}
Website {{ _('Website') }} Restock & Price{{ _('Restock & Price') }}Last Checked Last Changed {{ _('Last') }} {{ _('Checked') }} {{ _('Last') }} {{ _('Changed') }}
No website watches configured, please add a URL in the box above, or import a list.{{ _('No website watches configured, please add a URL in the box above, or') }} {{ _('import a list') }}.
{%- if watch['processor'] == 'restock_diff' -%} {%- if watch.has_restock_info -%} - + - {%- if watch['restock']['in_stock']-%} In stock {%- else-%} Not in stock {%- endif -%} + {%- if watch['restock']['in_stock']-%} {{ _('In stock') }} {%- else-%} {{ _('Not in stock') }} {%- endif -%} {%- endif -%} {%- if watch.get('restock') and watch['restock']['price'] != None -%} {%- if watch['restock']['price'] != None -%} - + {{ watch['restock']['price']|format_number_locale if watch['restock'].get('price') else '' }} {{ watch['restock'].get('currency','') }} {%- endif -%} {%- elif not watch.has_restock_info -%} - No information + {{ _('No information') }} {%- endif -%} {%- endif -%} {{watch|format_last_checked_time|safe}} {%- if watch.history_n >=2 and watch.last_changed >0 -%} {{watch.last_changed|format_timestamp_timeago}} {%- else -%} - Not yet + {{ _('Not yet') }} {%- endif -%}
{%- set target_attr = ' target="' ~ watch.uuid ~ '"' if datastore.data['settings']['application']['ui'].get('open_diff_in_new_tab') else '' -%} - - Recheck - Edit - - + + {{ _('Recheck') }} + {{ _('Edit') }} + +
    {%- if active_tag_uuid -%}
  • - Mark all viewed in '{{active_tag.title}}' + {{ _("Mark all viewed in '%(title)s'", title=active_tag.title) }}
  • {%- endif -%}
  • - Recheck - all {% if active_tag_uuid %} in '{{active_tag.title}}'{%endif%} + {{ _('Recheck all') }} {% if active_tag_uuid %} {{ _("in '%(title)s'", title=active_tag.title) }}{%endif%}
  • RSS Feed diff --git a/changedetectionio/flask_app.py b/changedetectionio/flask_app.py index 1ca0866fa..8a24a8fe8 100644 --- a/changedetectionio/flask_app.py +++ b/changedetectionio/flask_app.py @@ -23,6 +23,7 @@ from flask import ( render_template, request, send_from_directory, + session, url_for, ) from flask_compress import Compress as FlaskCompress @@ -34,6 +35,7 @@ from flask_cors import CORS # Make this a global singleton to avoid multiple signal objects watch_check_update = signal('watch_check_update', doc='Signal sent when a watch check is completed') from flask_wtf import CSRFProtect +from flask_babel import Babel, gettext, get_locale from loguru import logger from changedetectionio import __version__ @@ -41,6 +43,7 @@ from changedetectionio import queuedWatchMetaData from changedetectionio.api import Watch, WatchHistory, WatchSingleHistory, WatchHistoryDiff, CreateWatch, Import, SystemInfo, Tag, Tags, Notifications, WatchFavicon from changedetectionio.api.Search import Search from .time_handler import is_within_schedule +from changedetectionio.languages import get_available_languages, get_language_codes, get_flag_for_locale, get_timeago_locale datastore = None @@ -207,16 +210,26 @@ def _get_worker_status_info(): def _jinja2_filter_datetime(watch_obj, format="%Y-%m-%d %H:%M:%S"): if watch_obj['last_checked'] == 0: - return 'Not yet' + return gettext('Not yet') - return timeago.format(int(watch_obj['last_checked']), time.time()) + locale = get_timeago_locale(str(get_locale())) + try: + return timeago.format(int(watch_obj['last_checked']), time.time(), locale) + except: + # Fallback to English if locale not supported by timeago + return timeago.format(int(watch_obj['last_checked']), time.time(), 'en') @app.template_filter('format_timestamp_timeago') def _jinja2_filter_datetimestamp(timestamp, format="%Y-%m-%d %H:%M:%S"): if not timestamp: - return 'Not yet' + return gettext('Not yet') - return timeago.format(int(timestamp), time.time()) + locale = get_timeago_locale(str(get_locale())) + try: + return timeago.format(int(timestamp), time.time(), locale) + except: + # Fallback to English if locale not supported by timeago + return timeago.format(int(timestamp), time.time(), 'en') @app.template_filter('pagination_slice') @@ -230,7 +243,7 @@ def _jinja2_filter_pagination_slice(arr, skip): @app.template_filter('format_seconds_ago') def _jinja2_filter_seconds_precise(timestamp): if timestamp == False: - return 'Not yet' + return gettext('Not yet') return format(int(time.time()-timestamp), ',d') @@ -347,7 +360,33 @@ def changedetection_app(config=None, datastore_o=None): login_manager = flask_login.LoginManager(app) login_manager.login_view = 'login' app.secret_key = init_app_secret(config['datastore_path']) - + + # Initialize Flask-Babel for i18n support + available_languages = get_available_languages() + language_codes = get_language_codes() + + def get_locale(): + # 1. Try to get locale from session (user explicitly selected) + if 'locale' in session: + locale = session['locale'] + print(f"DEBUG: get_locale() returning from session: {locale}") + return locale + # 2. Fall back to Accept-Language header + locale = request.accept_languages.best_match(language_codes) + print(f"DEBUG: get_locale() returning from Accept-Language: {locale}") + return locale + + # Initialize Babel with locale selector + babel = Babel(app, locale_selector=get_locale) + + # Make i18n functions available to templates + app.jinja_env.globals.update( + _=gettext, + get_locale=get_locale, + get_flag_for_locale=get_flag_for_locale, + available_languages=available_languages + ) + # Set up a request hook to check authentication for all routes @app.before_request def check_authentication(): @@ -434,6 +473,18 @@ def changedetection_app(config=None, datastore_o=None): flask_login.logout_user() return redirect(url_for('watchlist.index')) + @app.route('/set-language/') + def set_language(locale): + """Set the user's preferred language in the session""" + # Validate the locale against available languages + if locale in language_codes: + session['locale'] = locale + else: + logger.error(f"Invalid locale {locale}, available: {language_codes}") + + # Redirect back to the page they came from, or home + return redirect(url_for('watchlist.index')) + # https://github.com/pallets/flask/blob/93dd1709d05a1cf0e886df6223377bdab3b077fb/examples/tutorial/flaskr/__init__.py#L39 # You can divide up the stuff like this @app.route('/login', methods=['GET', 'POST']) diff --git a/changedetectionio/forms.py b/changedetectionio/forms.py index 7829b7384..d44e9a69a 100644 --- a/changedetectionio/forms.py +++ b/changedetectionio/forms.py @@ -2,6 +2,7 @@ import os import re from loguru import logger from wtforms.widgets.core import TimeInput +from flask_babel import lazy_gettext as _l, gettext from changedetectionio.blueprint.rss import RSS_FORMAT_TYPES, RSS_TEMPLATE_TYPE_OPTIONS, RSS_TEMPLATE_HTML_DEFAULT from changedetectionio.conditions.form import ConditionFormRow @@ -9,6 +10,7 @@ from changedetectionio.notification_service import NotificationContextData from changedetectionio.processors.image_ssim_diff import SCREENSHOT_COMPARISON_THRESHOLD_OPTIONS, \ SCREENSHOT_COMPARISON_THRESHOLD_OPTIONS_DEFAULT from changedetectionio.strtobool import strtobool +from changedetectionio import processors from wtforms import ( BooleanField, @@ -58,8 +60,8 @@ valid_method = { default_method = 'GET' allow_simplehost = not strtobool(os.getenv('BLOCK_SIMPLEHOSTS', 'False')) -REQUIRE_ATLEAST_ONE_TIME_PART_MESSAGE_DEFAULT='At least one time interval (weeks, days, hours, minutes, or seconds) must be specified.' -REQUIRE_ATLEAST_ONE_TIME_PART_WHEN_NOT_GLOBAL_DEFAULT='At least one time interval (weeks, days, hours, minutes, or seconds) must be specified when not using global settings.' +REQUIRE_ATLEAST_ONE_TIME_PART_MESSAGE_DEFAULT=_l('At least one time interval (weeks, days, hours, minutes, or seconds) must be specified.') +REQUIRE_ATLEAST_ONE_TIME_PART_WHEN_NOT_GLOBAL_DEFAULT=_l('At least one time interval (weeks, days, hours, minutes, or seconds) must be specified when not using global settings.') class StringListField(StringField): widget = widgets.TextArea() @@ -159,7 +161,7 @@ class TimeStringField(Field): time_str = valuelist[0] # Simple validation for HH:MM format if not time_str or len(time_str.split(":")) != 2: - raise ValidationError("Invalid time format. Use HH:MM.") + raise ValidationError(_l("Invalid time format. Use HH:MM.")) self.data = time_str @@ -175,15 +177,15 @@ class validateTimeZoneName(object): from zoneinfo import available_timezones python_timezones = available_timezones() if field.data and field.data not in python_timezones: - raise ValidationError("Not a valid timezone name") + raise ValidationError(_l("Not a valid timezone name")) class ScheduleLimitDaySubForm(Form): - enabled = BooleanField("not set", default=True) - start_time = TimeStringField("Start At", default="00:00", validators=[validators.Optional()]) - duration = FormField(TimeDurationForm, label="Run duration") + enabled = BooleanField(_l("not set"), default=True) + start_time = TimeStringField(_l("Start At"), default="00:00", validators=[validators.Optional()]) + duration = FormField(TimeDurationForm, label=_l("Run duration")) class ScheduleLimitForm(Form): - enabled = BooleanField("Use time scheduler", default=False) + enabled = BooleanField(_l("Use time scheduler"), default=False) # Because the label for=""" doesnt line up/work with the actual checkbox monday = FormField(ScheduleLimitDaySubForm, label="") tuesday = FormField(ScheduleLimitDaySubForm, label="") @@ -193,7 +195,7 @@ class ScheduleLimitForm(Form): saturday = FormField(ScheduleLimitDaySubForm, label="") sunday = FormField(ScheduleLimitDaySubForm, label="") - timezone = StringField("Optional timezone to run in", + timezone = StringField(_l("Optional timezone to run in"), render_kw={"list": "timezones"}, validators=[validateTimeZoneName()] ) @@ -207,13 +209,13 @@ class ScheduleLimitForm(Form): **kwargs, ): super().__init__(formdata, obj, prefix, data, meta, **kwargs) - self.monday.form.enabled.label.text="Monday" - self.tuesday.form.enabled.label.text = "Tuesday" - self.wednesday.form.enabled.label.text = "Wednesday" - self.thursday.form.enabled.label.text = "Thursday" - self.friday.form.enabled.label.text = "Friday" - self.saturday.form.enabled.label.text = "Saturday" - self.sunday.form.enabled.label.text = "Sunday" + self.monday.form.enabled.label.text=_l("Monday") + self.tuesday.form.enabled.label.text = _l("Tuesday") + self.wednesday.form.enabled.label.text = _l("Wednesday") + self.thursday.form.enabled.label.text = _l("Thursday") + self.friday.form.enabled.label.text = _l("Friday") + self.saturday.form.enabled.label.text = _l("Saturday") + self.sunday.form.enabled.label.text = _l("Sunday") def validate_time_between_check_has_values(form): @@ -238,7 +240,7 @@ class RequiredTimeInterval(object): Use this with FormField(TimeBetweenCheckForm, validators=[RequiredTimeInterval()]). """ def __init__(self, message=None): - self.message = message or 'At least one time interval (weeks, days, hours, minutes, or seconds) must be specified.' + self.message = message or _l('At least one time interval (weeks, days, hours, minutes, or seconds) must be specified.') def __call__(self, form, field): if not validate_time_between_check_has_values(field.form): @@ -246,11 +248,11 @@ class RequiredTimeInterval(object): class TimeBetweenCheckForm(Form): - weeks = IntegerField('Weeks', validators=[validators.Optional(), validators.NumberRange(min=0, message="Should contain zero or more seconds")]) - days = IntegerField('Days', validators=[validators.Optional(), validators.NumberRange(min=0, message="Should contain zero or more seconds")]) - hours = IntegerField('Hours', validators=[validators.Optional(), validators.NumberRange(min=0, message="Should contain zero or more seconds")]) - minutes = IntegerField('Minutes', validators=[validators.Optional(), validators.NumberRange(min=0, message="Should contain zero or more seconds")]) - seconds = IntegerField('Seconds', validators=[validators.Optional(), validators.NumberRange(min=0, message="Should contain zero or more seconds")]) + weeks = IntegerField(_l('Weeks'), validators=[validators.Optional(), validators.NumberRange(min=0, message=_l("Should contain zero or more seconds"))]) + days = IntegerField(_l('Days'), validators=[validators.Optional(), validators.NumberRange(min=0, message=_l("Should contain zero or more seconds"))]) + hours = IntegerField(_l('Hours'), validators=[validators.Optional(), validators.NumberRange(min=0, message=_l("Should contain zero or more seconds"))]) + minutes = IntegerField(_l('Minutes'), validators=[validators.Optional(), validators.NumberRange(min=0, message=_l("Should contain zero or more seconds"))]) + seconds = IntegerField(_l('Seconds'), validators=[validators.Optional(), validators.NumberRange(min=0, message=_l("Should contain zero or more seconds"))]) # @todo add total seconds minimum validatior = minimum_seconds_recheck_time def __init__(self, formdata=None, obj=None, prefix="", data=None, meta=None, **kwargs): @@ -720,18 +722,16 @@ class ValidateStartsWithRegex(object): if not stripped: if self.allow_empty: continue - raise ValidationError(self.message or "Empty value not allowed.") + raise ValidationError(self.message or _l("Empty value not allowed.")) if not self.pattern.match(stripped): - raise ValidationError(self.message or "Invalid value.") + raise ValidationError(self.message or _l("Invalid value.")) class quickWatchForm(Form): - from . import processors - url = fields.URLField('URL', validators=[validateURL()]) tags = StringTagUUID('Group tag', [validators.Optional()]) - watch_submit_button = SubmitField('Watch', render_kw={"class": "pure-button pure-button-primary"}) - processor = RadioField(u'Processor', choices=processors.available_processors(), default="text_json_diff") - edit_and_watch_submit_button = SubmitField('Edit > Watch', render_kw={"class": "pure-button pure-button-primary"}) + watch_submit_button = SubmitField(_l('Watch'), render_kw={"class": "pure-button pure-button-primary"}) + processor = RadioField(_l('Processor'), choices=lambda: processors.available_processors(), default="text_json_diff") + edit_and_watch_submit_button = SubmitField(_l('Edit > Watch'), render_kw={"class": "pure-button pure-button-primary"}) # Common to a single watch and the global settings @@ -744,14 +744,14 @@ class commonSettingsForm(Form): self.notification_title.extra_notification_tokens = kwargs.get('extra_notification_tokens', {}) self.notification_urls.extra_notification_tokens = kwargs.get('extra_notification_tokens', {}) - fetch_backend = RadioField(u'Fetch Method', choices=content_fetchers.available_fetchers(), validators=[ValidateContentFetcherIsReady()]) - notification_body = TextAreaField('Notification Body', default='{{ watch_url }} had a change.', validators=[validators.Optional(), ValidateJinja2Template()]) - notification_format = SelectField('Notification format', choices=list(valid_notification_formats.items())) - notification_title = StringField('Notification Title', default='ChangeDetection.io Notification - {{ watch_url }}', validators=[validators.Optional(), ValidateJinja2Template()]) - notification_urls = StringListField('Notification URL List', validators=[validators.Optional(), ValidateAppRiseServers(), ValidateJinja2Template()]) - processor = RadioField( label=u"Processor - What do you want to achieve?", choices=processors.available_processors(), default="text_json_diff") - scheduler_timezone_default = StringField("Default timezone for watch check scheduler", render_kw={"list": "timezones"}, validators=[validateTimeZoneName()]) - webdriver_delay = IntegerField('Wait seconds before extracting text', validators=[validators.Optional(), validators.NumberRange(min=1, message="Should contain one or more seconds")]) + fetch_backend = RadioField(_l('Fetch Method'), choices=content_fetchers.available_fetchers(), validators=[ValidateContentFetcherIsReady()]) + notification_body = TextAreaField(_l('Notification Body'), default='{{ watch_url }} had a change.', validators=[validators.Optional(), ValidateJinja2Template()]) + notification_format = SelectField(_l('Notification format'), choices=list(valid_notification_formats.items())) + notification_title = StringField(_l('Notification Title'), default='ChangeDetection.io Notification - {{ watch_url }}', validators=[validators.Optional(), ValidateJinja2Template()]) + notification_urls = StringListField(_l('Notification URL List'), validators=[validators.Optional(), ValidateAppRiseServers(), ValidateJinja2Template()]) + processor = RadioField( label=_l("Processor - What do you want to achieve?"), choices=lambda: processors.available_processors(), default="text_json_diff") + scheduler_timezone_default = StringField(_l("Default timezone for watch check scheduler"), render_kw={"list": "timezones"}, validators=[validateTimeZoneName()]) + webdriver_delay = IntegerField(_l('Wait seconds before extracting text'), validators=[validators.Optional(), validators.NumberRange(min=1, message=_l("Should contain one or more seconds"))]) # Not true anymore but keep the validate_ hook for future use, we convert color tags # def validate_notification_urls(self, field): @@ -763,22 +763,21 @@ class commonSettingsForm(Form): class importForm(Form): - from . import processors - processor = RadioField(u'Processor', choices=processors.available_processors(), default="text_json_diff") - urls = TextAreaField('URLs') - xlsx_file = FileField('Upload .xlsx file', validators=[FileAllowed(['xlsx'], 'Must be .xlsx file!')]) - file_mapping = SelectField('File mapping', [validators.DataRequired()], choices={('wachete', 'Wachete mapping'), ('custom','Custom mapping')}) + processor = RadioField(_l('Processor'), choices=lambda: processors.available_processors(), default="text_json_diff") + urls = TextAreaField(_l('URLs')) + xlsx_file = FileField(_l('Upload .xlsx file'), validators=[FileAllowed(['xlsx'], _l('Must be .xlsx file!'))]) + file_mapping = SelectField(_l('File mapping'), [validators.DataRequired()], choices={('wachete', 'Wachete mapping'), ('custom','Custom mapping')}) class SingleBrowserStep(Form): - operation = SelectField('Operation', [validators.Optional()], choices=browser_step_ui_config.keys()) + operation = SelectField(_l('Operation'), [validators.Optional()], choices=browser_step_ui_config.keys()) # maybe better to set some - - + + {% if bottom_horizontal_offscreen_contents %} {% endif %} + + + + + + + + + diff --git a/changedetectionio/templates/login.html b/changedetectionio/templates/login.html index dac94dfa8..ee16ecd18 100644 --- a/changedetectionio/templates/login.html +++ b/changedetectionio/templates/login.html @@ -7,13 +7,13 @@
    - +
    - +
    diff --git a/changedetectionio/translations/cs/LC_MESSAGES/messages.mo b/changedetectionio/translations/cs/LC_MESSAGES/messages.mo new file mode 100644 index 000000000..392b4c6ab Binary files /dev/null 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 new file mode 100644 index 000000000..e3e53e8ad --- /dev/null +++ b/changedetectionio/translations/cs/LC_MESSAGES/messages.po @@ -0,0 +1,1965 @@ +# Czech translations for PROJECT. +# Copyright (C) 2026 ORGANIZATION +# This file is distributed under the same license as the PROJECT project. +# FIRST AUTHOR , 2026. +# +msgid "" +msgstr "" +"Project-Id-Version: PROJECT VERSION\n" +"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" +"POT-Creation-Date: 2026-01-02 13:32+0100\n" +"PO-Revision-Date: 2026-01-02 11:40+0100\n" +"Last-Translator: FULL NAME \n" +"Language: cs\n" +"Language-Team: cs \n" +"Plural-Forms: nplurals=3; plural=((n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2);\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=utf-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.17.0\n" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:241 +#: changedetectionio/flask_app.py:213 changedetectionio/flask_app.py:225 +#: changedetectionio/flask_app.py:246 +#: changedetectionio/realtime/socket_server.py:171 +msgid "Not yet" +msgstr "Ještě ne" + +#: changedetectionio/forms.py:62 changedetectionio/forms.py:242 +msgid "" +"At least one time interval (weeks, days, hours, minutes, or seconds) must" +" be specified." +msgstr "" + +#: changedetectionio/forms.py:63 +msgid "" +"At least one time interval (weeks, days, hours, minutes, or seconds) must" +" be specified when not using global settings." +msgstr "" + +#: changedetectionio/forms.py:163 +msgid "Invalid time format. Use HH:MM." +msgstr "Neplatný formát času. Použijte HH:MM." + +#: changedetectionio/forms.py:179 +msgid "Not a valid timezone name" +msgstr "Neplatný název časového pásma" + +#: changedetectionio/forms.py:182 +msgid "not set" +msgstr "Ještě ne" + +#: changedetectionio/forms.py:183 +msgid "Start At" +msgstr "NASTAVENÍ" + +#: changedetectionio/forms.py:184 +msgid "Run duration" +msgstr "Žádné informace" + +#: changedetectionio/forms.py:187 +msgid "Use time scheduler" +msgstr "Použijte časový plánovač" + +#: changedetectionio/forms.py:197 +msgid "Optional timezone to run in" +msgstr "Volitelné časové pásmo pro spuštění" + +#: changedetectionio/forms.py:211 +msgid "Monday" +msgstr "pondělí" + +#: changedetectionio/forms.py:212 +msgid "Tuesday" +msgstr "úterý" + +#: changedetectionio/forms.py:213 +msgid "Wednesday" +msgstr "středa" + +#: changedetectionio/forms.py:214 +msgid "Thursday" +msgstr "čtvrtek" + +#: changedetectionio/forms.py:215 +msgid "Friday" +msgstr "pátek" + +#: changedetectionio/forms.py:216 +msgid "Saturday" +msgstr "sobota" + +#: changedetectionio/forms.py:217 +msgid "Sunday" +msgstr "neděle" + +#: changedetectionio/forms.py:250 +msgid "Weeks" +msgstr "týdny" + +#: changedetectionio/forms.py:250 changedetectionio/forms.py:251 +#: changedetectionio/forms.py:252 changedetectionio/forms.py:253 +#: changedetectionio/forms.py:254 changedetectionio/forms.py:957 +msgid "Should contain zero or more seconds" +msgstr "Mělo by obsahovat nula nebo více sekund" + +#: changedetectionio/forms.py:251 +msgid "Days" +msgstr "Dny" + +#: changedetectionio/forms.py:252 +msgid "Hours" +msgstr "Heslo" + +#: changedetectionio/forms.py:253 +msgid "Minutes" +msgstr "Ztlumit" + +#: changedetectionio/forms.py:254 +msgid "Seconds" +msgstr "sekundy" + +#: changedetectionio/forms.py:459 +msgid "Notification Body and Title is required when a Notification URL is used" +msgstr "Při použití adresy URL oznámení je vyžadováno tělo a název oznámení" + +#: changedetectionio/forms.py:488 +#, python-format +msgid "'%s' is not a valid AppRise URL." +msgstr "'%s' není platná URL AppRise." + +#: changedetectionio/forms.py:561 changedetectionio/forms.py:580 +#, python-format +msgid "RegEx '%s' is not a valid regular expression." +msgstr "RegEx '%s' není platný regulární výraz." + +#: changedetectionio/forms.py:621 changedetectionio/forms.py:636 +#, python-format +msgid "'%s' is not a valid XPath expression. (%s)" +msgstr "'%s' není platný výraz XPath. (%s)" + +#: changedetectionio/forms.py:656 +#, python-format +msgid "'%s' is not a valid JSONPath expression. (%s)" +msgstr "'%s' není platný výraz JSONPath. (%s)" + +#: changedetectionio/forms.py:678 +#, python-format +msgid "'%s' is not a valid jq expression. (%s)" +msgstr "'%s' není platný výraz jq. (%s)" + +#: changedetectionio/forms.py:724 +msgid "Empty value not allowed." +msgstr "Prázdná hodnota není povolena." + +#: changedetectionio/forms.py:726 +msgid "Invalid value." +msgstr "Neplatná hodnota." + +#: changedetectionio/forms.py:733 +msgid "Watch" +msgstr "# Hodinky" + +#: changedetectionio/forms.py:734 changedetectionio/forms.py:768 +msgid "Processor" +msgstr "Procesor" + +#: changedetectionio/forms.py:735 +msgid "Edit > Watch" +msgstr "Nejprve upravte a poté sledujte" + +#: changedetectionio/forms.py:748 changedetectionio/forms.py:996 +msgid "Fetch Method" +msgstr "Nastavte metodu načítání" + +#: changedetectionio/forms.py:749 +msgid "Notification Body" +msgstr "Žádné informace" + +#: changedetectionio/forms.py:750 +msgid "Notification format" +msgstr "Žádné informace" + +#: changedetectionio/forms.py:751 +msgid "Notification Title" +msgstr "Žádné informace" + +#: changedetectionio/forms.py:752 +msgid "Notification URL List" +msgstr "Žádné informace" + +#: changedetectionio/forms.py:753 +msgid "Processor - What do you want to achieve?" +msgstr "Procesor – Čeho chcete dosáhnout?" + +#: changedetectionio/forms.py:754 +msgid "Default timezone for watch check scheduler" +msgstr "Výchozí časové pásmo pro plánovač kontroly hodinek" + +#: changedetectionio/forms.py:755 +msgid "Wait seconds before extracting text" +msgstr "sekund před extrahováním textu." + +#: changedetectionio/forms.py:755 +msgid "Should contain one or more seconds" +msgstr "Měl by obsahovat jednu nebo více sekund" + +#: changedetectionio/forms.py:769 +msgid "URLs" +msgstr "URL" + +#: changedetectionio/forms.py:770 +msgid "Upload .xlsx file" +msgstr "Nahrajte soubor .xlsx" + +#: changedetectionio/forms.py:770 +msgid "Must be .xlsx file!" +msgstr "Musí to být soubor .xlsx!" + +#: changedetectionio/forms.py:771 +msgid "File mapping" +msgstr "Typ mapování souboru." + +#: changedetectionio/forms.py:775 +msgid "Operation" +msgstr "Možnosti uživatelského rozhraní" + +#: changedetectionio/forms.py:778 +msgid "Selector" +msgstr "Režim výběru:" + +#: changedetectionio/forms.py:779 +msgid "value" +msgstr "Pauza" + +#: changedetectionio/forms.py:798 +msgid "Use global settings for time between check and scheduler." +msgstr "Použijte globální nastavení pro čas mezi kontrolou a plánovačem." + +#: changedetectionio/forms.py:800 +msgid "CSS/JSONPath/JQ/XPath Filters" +msgstr "CSS/xPath filtr" + +#: changedetectionio/forms.py:802 changedetectionio/forms.py:998 +msgid "Remove elements" +msgstr "Odebráno" + +#: changedetectionio/forms.py:804 +msgid "Extract text" +msgstr "Extrahujte data" + +#: changedetectionio/blueprint/imports/templates/import.html:106 +#: changedetectionio/forms.py:806 +msgid "Title" +msgstr "Titul" + +#: changedetectionio/forms.py:808 +msgid "Ignore lines containing" +msgstr "Ignorujte všechny odpovídající řádky" + +#: changedetectionio/forms.py:810 +msgid "Request body" +msgstr "Žádost" + +#: changedetectionio/forms.py:811 +msgid "Request method" +msgstr "Žádost" + +#: changedetectionio/forms.py:812 +msgid "Ignore status codes (process non-2xx status codes as normal)" +msgstr "Ignorovat stavové kódy (zpracovat stavové kódy jiné než 2xx jako normálně)" + +#: changedetectionio/forms.py:813 +msgid "Only trigger when unique lines appear in all history" +msgstr "Spustit pouze tehdy, když se objeví jedinečné čáry" + +#: changedetectionio/blueprint/ui/templates/edit.html:336 +#: changedetectionio/forms.py:814 +msgid "Remove duplicate lines of text" +msgstr "Odstraňte duplicitní řádky textu" + +#: changedetectionio/forms.py:815 +msgid "Sort text alphabetically" +msgstr "Seřadit text podle abecedy" + +#: changedetectionio/forms.py:816 changedetectionio/forms.py:1025 +msgid "Strip ignored lines" +msgstr "Odstraňte ignorované řádky" + +#: changedetectionio/forms.py:817 +msgid "Trim whitespace before and after text" +msgstr "Odstraňte všechny mezery před a za každým řádkem textu" + +#: changedetectionio/forms.py:819 +msgid "Added lines" +msgstr "Přihlášení" + +#: changedetectionio/forms.py:820 +msgid "Replaced/changed lines" +msgstr "Vyměněny/změněny řádky" + +#: changedetectionio/forms.py:821 +msgid "Removed lines" +msgstr "Odebráno" + +#: changedetectionio/forms.py:823 +msgid "Keyword triggers - Trigger/wait for text" +msgstr "Spouštěče klíčových slov – Spouštění/čekání na text" + +#: changedetectionio/forms.py:826 +msgid "Block change-detection while text matches" +msgstr "Blokovat detekci změn, když se text shoduje" + +#: changedetectionio/forms.py:827 +msgid "Execute JavaScript before change detection" +msgstr "Spusťte JavaScript před detekcí změn" + +#: changedetectionio/blueprint/tags/templates/groups-overview.html:17 +#: changedetectionio/forms.py:829 changedetectionio/forms.py:1053 +msgid "Save" +msgstr "Uložit" + +#: changedetectionio/forms.py:831 +msgid "Proxy" +msgstr "Proxy" + +#: changedetectionio/forms.py:833 +msgid "Send a notification when the filter can no longer be found on the page" +msgstr "Odeslat upozornění, když filtr již na stránce nelze najít" + +#: changedetectionio/blueprint/settings/templates/settings.html:22 +#: changedetectionio/blueprint/tags/templates/edit-tag.html:32 +#: changedetectionio/blueprint/ui/templates/edit.html:59 +#: changedetectionio/forms.py:834 +msgid "Notifications" +msgstr "Žádné informace" + +#: changedetectionio/forms.py:834 +msgid "Muted" +msgstr "Ztlumit" + +#: changedetectionio/forms.py:834 +msgid "On" +msgstr "žádný" + +#: changedetectionio/forms.py:835 +msgid "Attach screenshot to notification (where possible)" +msgstr "Připojte snímek obrazovky k oznámení (pokud je to možné)" + +#: changedetectionio/forms.py:837 +msgid "Match" +msgstr "# Hodinky" + +#: changedetectionio/forms.py:837 +msgid "Match all of the following" +msgstr "Spojte všechny následující položky" + +#: changedetectionio/forms.py:837 +msgid "Match any of the following" +msgstr "Přiřaďte kteroukoli z následujících možností" + +#: changedetectionio/forms.py:839 +msgid "Use page in list" +msgstr "V seznamu použijte stránku <title>" + +#: changedetectionio/forms.py:856 +msgid "Body must be empty when Request Method is set to GET" +msgstr "Když je metoda požadavku nastavena na GET, tělo musí být prázdné" + +#: changedetectionio/forms.py:865 changedetectionio/forms.py:879 +#: changedetectionio/forms.py:894 +#, python-format +msgid "Invalid template syntax configuration: %(error)s" +msgstr "Neplatná konfigurace syntaxe šablony: %(error)s" + +#: changedetectionio/forms.py:869 changedetectionio/forms.py:883 +#, python-format +msgid "Invalid template syntax: %(error)s" +msgstr "Neplatná syntaxe šablony: %(error)s" + +#: changedetectionio/forms.py:898 +#, python-format +msgid "Invalid template syntax in \"%(header)s\" header: %(error)s" +msgstr "" + +#: changedetectionio/forms.py:922 changedetectionio/forms.py:934 +msgid "Name" +msgstr "Zrušit ztlumení" + +#: changedetectionio/forms.py:923 +msgid "Proxy URL" +msgstr "Proxy URL" + +#: changedetectionio/forms.py:928 +msgid "Proxy URLs must start with http://, https:// or socks5://" +msgstr "Proxy URL musí začínat http://, https:// nebo socks5://" + +#: changedetectionio/forms.py:935 +msgid "Browser connection URL" +msgstr "Adresa URL připojení prohlížeče" + +#: changedetectionio/forms.py:940 +msgid "Browser URLs must start with wss:// or ws://" +msgstr "Adresy URL prohlížeče musí začínat wss:// nebo ws://" + +#: changedetectionio/forms.py:946 +msgid "Plaintext requests" +msgstr "Požadavky na prostý text" + +#: changedetectionio/forms.py:948 +msgid "Chrome requests" +msgstr "Žádost" + +#: changedetectionio/forms.py:954 +msgid "Default proxy" +msgstr "Výchozí proxy" + +#: changedetectionio/forms.py:955 +msgid "Random jitter seconds ± check" +msgstr "Náhodné jitter sekundy ± kontrola" + +#: changedetectionio/forms.py:959 +msgid "Number of fetch workers" +msgstr "Počet pracovníků aportů" + +#: changedetectionio/forms.py:962 +msgid "Should be between 1 and 50" +msgstr "Mělo by být mezi 1 a 50" + +#: changedetectionio/forms.py:964 +msgid "Requests timeout in seconds" +msgstr "Požaduje časový limit v sekundách" + +#: changedetectionio/forms.py:967 +msgid "Should be between 1 and 999" +msgstr "Mělo by být mezi 1 a 999" + +#: changedetectionio/forms.py:972 +msgid "Default User-Agent overrides" +msgstr "Výchozí přepisy User-Agent" + +#: changedetectionio/forms.py:978 +msgid "Both a name, and a Proxy URL is required." +msgstr "Je vyžadován název i adresa URL proxy." + +#: changedetectionio/forms.py:982 +msgid "Open 'History' page in a new tab" +msgstr "Otevřete stránku „Historie“ na nové kartě" + +#: changedetectionio/forms.py:983 +msgid "Realtime UI Updates Enabled" +msgstr "Aktualizace v reálném čase offline" + +#: changedetectionio/forms.py:984 +msgid "Favicons Enabled" +msgstr "zvážit povolení" + +#: changedetectionio/forms.py:985 +msgid "Use page <title> in watch overview list" +msgstr "Použijte stránku <title> v přehledu sledování" + +#: changedetectionio/forms.py:990 +msgid "API access token security check enabled" +msgstr "Kontrola zabezpečení přístupového tokenu API povolena" + +#: changedetectionio/forms.py:991 +msgid "Notification base URL override" +msgstr "Počet upozornění na upozornění" + +#: changedetectionio/forms.py:995 +msgid "Treat empty pages as a change?" +msgstr "Považovat prázdné stránky za změnu?" + +#: changedetectionio/forms.py:997 +msgid "Ignore Text" +msgstr "Text chyby" + +#: changedetectionio/forms.py:999 +msgid "Ignore whitespace" +msgstr "Ignorujte mezery" + +#: changedetectionio/forms.py:1006 +#: changedetectionio/processors/image_ssim_diff/forms.py:50 +msgid "Must be between 0 and 100" +msgstr "Musí být mezi 0 a 100" + +#: changedetectionio/forms.py:1013 +msgid "Pager size" +msgstr "Velikost pageru" + +#: changedetectionio/forms.py:1016 +msgid "Should be atleast zero (disabled)" +msgstr "Mělo by být alespoň nula (vypnuto)" + +#: changedetectionio/forms.py:1018 +msgid "RSS Content format" +msgstr "Formát obsahu RSS" + +#: changedetectionio/forms.py:1019 +msgid "RSS <description> body built from" +msgstr "RSS <description> tělo sestavené z" + +#: changedetectionio/forms.py:1020 +msgid "RSS \"System default\" template override" +msgstr "" + +#: changedetectionio/forms.py:1022 +msgid "Remove password" +msgstr "Heslo" + +#: changedetectionio/forms.py:1023 +msgid "Render anchor tag content" +msgstr "Vykreslit obsah kotvící značky" + +#: changedetectionio/forms.py:1024 +msgid "Allow anonymous access to watch history page when password is enabled" +msgstr "" +"Povolit anonymní přístup na stránku historie sledování, když je povoleno " +"hesloPovolit anonymní přístup na stránku historie sledování, když je " +"povoleno heslo" + +#: changedetectionio/forms.py:1026 +msgid "Hide muted watches from RSS feed" +msgstr "Skrýt ztlumené hodinky ze zdroje RSS" + +#: changedetectionio/forms.py:1029 +msgid "Enable RSS reader mode " +msgstr "Povolit režim čtečky RSS" + +#: changedetectionio/forms.py:1030 +msgid "Number of changes to show in watch RSS feed" +msgstr "Počet změn, které se mají zobrazit v kanálu RSS sledování" + +#: changedetectionio/forms.py:1032 changedetectionio/forms.py:1037 +msgid "Should contain zero or more attempts" +msgstr "Mělo by obsahovat nula nebo více pokusů" + +#: changedetectionio/forms.py:1034 +msgid "Number of times the filter can be missing before sending a notification" +msgstr "Kolikrát může filtr chybět před odesláním upozornění" + +#: changedetectionio/forms.py:1057 +msgid "RegEx to extract" +msgstr "RegEx k extrahování" + +#: changedetectionio/forms.py:1058 +msgid "Extract as CSV" +msgstr "Extrahujte data" + +#: changedetectionio/blueprint/backups/templates/overview.html:6 +msgid "Backups" +msgstr "ZÁLOHY" + +#: changedetectionio/blueprint/backups/templates/overview.html:9 +msgid "A backup is running!" +msgstr "Probíhá zálohování!" + +#: changedetectionio/blueprint/backups/templates/overview.html:13 +msgid "" +"Here you can download and request a new backup, when a backup is " +"completed you will see it listed below." +msgstr "" + +#: changedetectionio/blueprint/backups/templates/overview.html:19 +msgid "Mb" +msgstr "Mb" + +#: changedetectionio/blueprint/backups/templates/overview.html:24 +msgid "No backups found." +msgstr "Nebyly nalezeny žádné zálohy." + +#: changedetectionio/blueprint/backups/templates/overview.html:28 +msgid "Create backup" +msgstr "ZÁLOHY" + +#: changedetectionio/blueprint/backups/templates/overview.html:30 +msgid "Remove backups" +msgstr "ZÁLOHY" + +#: changedetectionio/blueprint/imports/templates/import.html:9 +msgid "URL List" +msgstr "Seznam adres URL" + +#: changedetectionio/blueprint/imports/templates/import.html:10 +msgid "Distill.io" +msgstr "Distill.io" + +#: changedetectionio/blueprint/imports/templates/import.html:11 +msgid ".XLSX & Wachete" +msgstr ".XLSX a Wachete" + +#: changedetectionio/blueprint/imports/templates/import.html:20 +msgid "" +"Enter one URL per line, and optionally add tags for each URL after a " +"space, delineated by comma (,):" +msgstr "" + +#: changedetectionio/blueprint/imports/templates/import.html:22 +msgid "Example:" +msgstr "Příklad:" + +#: changedetectionio/blueprint/imports/templates/import.html:23 +msgid "URLs which do not pass validation will stay in the textarea." +msgstr "URL, které neprojdou validací, zůstanou v textové oblasti." + +#: changedetectionio/blueprint/imports/templates/import.html:44 +msgid "" +"Copy and Paste your Distill.io watch 'export' file, this should be a JSON" +" file." +msgstr "" + +#: changedetectionio/blueprint/imports/templates/import.html:45 +msgid "This is" +msgstr "Tohle je" + +#: changedetectionio/blueprint/imports/templates/import.html:45 +msgid "experimental" +msgstr "experimentální" + +#: changedetectionio/blueprint/imports/templates/import.html:45 +msgid "supported fields are" +msgstr "podporovaná pole jsou" + +#: changedetectionio/blueprint/imports/templates/import.html:45 +msgid "the rest (including" +msgstr "zbytek (včetně" + +#: changedetectionio/blueprint/imports/templates/import.html:45 +msgid "are ignored." +msgstr "jsou ignorovány." + +#: changedetectionio/blueprint/imports/templates/import.html:48 +msgid "How to export?" +msgstr "Jak exportovat?" + +#: changedetectionio/blueprint/imports/templates/import.html:49 +msgid "Be sure to set your default fetcher to Chrome if required." +msgstr "" +"V případě potřeby nezapomeňte nastavit výchozí nástroj pro načítání na " +"Chrome.V případě potřeby nezapomeňte nastavit výchozí načítání na " +"Chrome.V případě potřeby nezapomeňte nastavit výchozí nástroj pro " +"načítání na Chrome." + +#: changedetectionio/blueprint/imports/templates/import.html:91 +msgid "Table of custom column and data types mapping for the" +msgstr "Tabulka vlastního mapování sloupců a datových typů pro" + +#: changedetectionio/blueprint/imports/templates/import.html:91 +msgid "Custom mapping" +msgstr "Vlastní mapování" + +#: changedetectionio/blueprint/imports/templates/import.html:91 +msgid "File mapping type." +msgstr "Typ mapování souboru." + +#: changedetectionio/blueprint/imports/templates/import.html:95 +msgid "Column #" +msgstr "sloupec č." + +#: changedetectionio/blueprint/imports/templates/import.html:101 +msgid "Type" +msgstr "Typ" + +#: changedetectionio/blueprint/imports/templates/import.html:104 +msgid "none" +msgstr "žádný" + +#: changedetectionio/blueprint/imports/templates/import.html:105 +msgid "URL" +msgstr "URL" + +#: changedetectionio/blueprint/imports/templates/import.html:107 +msgid "CSS/xPath filter" +msgstr "CSS/xPath filtr" + +#: changedetectionio/blueprint/imports/templates/import.html:108 +msgid "Group / Tag name(s)" +msgstr "Sledovat skupinu / tag" + +#: changedetectionio/blueprint/imports/templates/import.html:109 +msgid "Recheck time (minutes)" +msgstr "Znovu zkontrolovat čas (minuty)" + +#: changedetectionio/blueprint/imports/templates/import.html:116 +msgid "Import" +msgstr "IMPORTOVAT" + +#: changedetectionio/blueprint/settings/templates/notification-log.html:7 +msgid "Notification debug log" +msgstr "Protokol ladění oznámení" + +#: changedetectionio/blueprint/settings/templates/settings.html:21 +#: changedetectionio/blueprint/tags/templates/edit-tag.html:27 +#: changedetectionio/blueprint/ui/templates/edit.html:47 +msgid "General" +msgstr "Generál" + +#: changedetectionio/blueprint/settings/templates/settings.html:23 +msgid "Fetching" +msgstr "Hledání" + +#: changedetectionio/blueprint/settings/templates/settings.html:24 +msgid "Global Filters" +msgstr "Globální filtry" + +#: changedetectionio/blueprint/settings/templates/settings.html:25 +msgid "UI Options" +msgstr "Možnosti uživatelského rozhraní" + +#: changedetectionio/blueprint/settings/templates/settings.html:26 +msgid "API" +msgstr "API" + +#: changedetectionio/blueprint/settings/templates/settings.html:27 +msgid "RSS" +msgstr "RSS" + +#: changedetectionio/blueprint/settings/templates/settings.html:28 +msgid "Time & Date" +msgstr "Čas a datum" + +#: changedetectionio/blueprint/settings/templates/settings.html:29 +msgid "CAPTCHA & Proxies" +msgstr "CAPTCHA a proxy" + +#: changedetectionio/blueprint/settings/templates/settings.html:35 +msgid "Info" +msgstr "Více informací" + +#: changedetectionio/blueprint/settings/templates/settings.html:46 +msgid "Default recheck time for all watches, current system minimum is" +msgstr "" +"Výchozí čas opětovné kontroly pro všechny hodinky, aktuální systémové " +"minimum jeVýchozí čas opětovné kontroly pro všechny hodinky, aktuální " +"systémové minimum jeVýchozí čas opětovné kontroly pro všechny hodinky, " +"aktuální systémové minimum je" + +#: changedetectionio/blueprint/settings/templates/settings.html:46 +msgid "seconds" +msgstr "sekundy" + +#: changedetectionio/blueprint/settings/templates/settings.html:46 +msgid "more info" +msgstr "Více informací" + +#: changedetectionio/blueprint/settings/templates/settings.html:390 +msgid "Python version:" +msgstr "Verze Pythonu:" + +#: changedetectionio/blueprint/settings/templates/settings.html:391 +msgid "Plugins active:" +msgstr "Pluginy aktivní:" + +#: changedetectionio/blueprint/settings/templates/settings.html:399 +msgid "No plugins active" +msgstr "Nejsou aktivní žádné pluginy" + +#: changedetectionio/blueprint/settings/templates/settings.html:405 +msgid "Back" +msgstr "ZÁLOHY" + +#: changedetectionio/blueprint/settings/templates/settings.html:406 +msgid "Clear Snapshot History" +msgstr "Vymazat/resetovat historii" + +#: changedetectionio/blueprint/tags/templates/edit-tag.html:28 +#: changedetectionio/blueprint/ui/templates/edit.html:56 +#: changedetectionio/blueprint/ui/templates/edit.html:386 +msgid "Filters & Triggers" +msgstr "Filtry a spouštěče" + +#: changedetectionio/blueprint/tags/templates/edit-tag.html:50 +msgid "These settings are" +msgstr "NASTAVENÍ" + +#: changedetectionio/blueprint/tags/templates/edit-tag.html:50 +msgid "added" +msgstr "přidáno" + +#: changedetectionio/blueprint/tags/templates/edit-tag.html:50 +msgid "to any existing watch configurations." +msgstr "do všech existujících konfigurací hodinek." + +#: changedetectionio/blueprint/tags/templates/edit-tag.html:53 +#: changedetectionio/blueprint/ui/templates/edit.html:321 +msgid "Text filtering" +msgstr "Filtrování textu" + +#: changedetectionio/blueprint/tags/templates/edit-tag.html:73 +#: changedetectionio/blueprint/ui/templates/edit.html:269 +msgid "Use with caution!" +msgstr "Používejte opatrně!" + +#: changedetectionio/blueprint/tags/templates/edit-tag.html:73 +#: changedetectionio/blueprint/ui/templates/edit.html:269 +msgid "This will easily fill up your email storage quota or flood other storages." +msgstr "" +"Snadno tak zaplníte kvótu e-mailového úložiště nebo zahltíte další " +"úložiště.Snadno tak zaplníte kvótu e-mailového úložiště nebo zahltíte " +"další úložiště.Snadno tak zaplníte kvótu e-mailového úložiště nebo " +"zahltíte další úložiště." + +#: changedetectionio/blueprint/tags/templates/edit-tag.html:80 +#: changedetectionio/blueprint/ui/templates/edit.html:276 +msgid "Look out!" +msgstr "ODHLÁSIT SE" + +#: changedetectionio/blueprint/tags/templates/edit-tag.html:80 +#: changedetectionio/blueprint/ui/templates/edit.html:276 +msgid "Lookout!" +msgstr "ODHLÁSIT SE" + +#: changedetectionio/blueprint/tags/templates/edit-tag.html:81 +#: changedetectionio/blueprint/ui/templates/edit.html:277 +msgid "There are" +msgstr "Existují" + +#: changedetectionio/blueprint/tags/templates/edit-tag.html:81 +#: changedetectionio/blueprint/ui/templates/edit.html:277 +msgid "system-wide notification URLs enabled" +msgstr "povoleny adresy URL pro upozornění v celém systému" + +#: changedetectionio/blueprint/tags/templates/edit-tag.html:81 +#: changedetectionio/blueprint/ui/templates/edit.html:277 +msgid "this form will override notification settings for this watch only" +msgstr "tento formulář přepíše nastavení oznámení pouze pro tyto hodinky" + +#: changedetectionio/blueprint/tags/templates/edit-tag.html:81 +#: changedetectionio/blueprint/ui/templates/edit.html:277 +msgid "an empty Notification URL list here will still send notifications." +msgstr "prázdný seznam adres URL upozornění zde bude stále odesílat upozornění." + +#: changedetectionio/blueprint/tags/templates/edit-tag.html:84 +#: changedetectionio/blueprint/ui/templates/edit.html:280 +msgid "Use system defaults" +msgstr "Použít výchozí nastavení systému" + +#: changedetectionio/blueprint/tags/templates/groups-overview.html:11 +msgid "Add a new organisational tag" +msgstr "Přidejte novou značku organizace" + +#: changedetectionio/blueprint/tags/templates/groups-overview.html:14 +msgid "Watch group / tag" +msgstr "Sledovat skupinu / tag" + +#: changedetectionio/blueprint/tags/templates/groups-overview.html:21 +msgid "" +"Groups allows you to manage filters and notifications for multiple " +"watches under a single organisational tag." +msgstr "" + +#: changedetectionio/blueprint/tags/templates/groups-overview.html:31 +msgid "# Watches" +msgstr "# Hodinky" + +#: changedetectionio/blueprint/tags/templates/groups-overview.html:32 +msgid "Tag / Label name" +msgstr "Název štítku / štítku" + +#: changedetectionio/blueprint/tags/templates/groups-overview.html:42 +msgid "No website organisational tags/groups configured" +msgstr "Nejsou nakonfigurovány žádné organizační značky/skupiny webu" + +#: changedetectionio/blueprint/tags/templates/groups-overview.html:53 +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:249 +msgid "Edit" +msgstr "Upravit" + +#: changedetectionio/blueprint/tags/templates/groups-overview.html:58 +msgid "Delete Group?" +msgstr "Smazat skupinu?" + +#: changedetectionio/blueprint/tags/templates/groups-overview.html:59 +#, python-format +msgid "" +"<p>Are you sure you want to delete group " +"<strong>%(title)s</strong>?</p><p>This action cannot be undone.</p>" +msgstr "" + +#: changedetectionio/blueprint/tags/templates/groups-overview.html:60 +#: changedetectionio/blueprint/tags/templates/groups-overview.html:61 +#: changedetectionio/blueprint/ui/templates/edit.html:490 +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:73 +msgid "Delete" +msgstr "Vymazat" + +#: changedetectionio/blueprint/tags/templates/groups-overview.html:61 +msgid "Deletes and removes tag" +msgstr "Smaže a odstraní značku" + +#: changedetectionio/blueprint/tags/templates/groups-overview.html:66 +msgid "Unlink Group?" +msgstr "Odpojit skupinu?" + +#: changedetectionio/blueprint/tags/templates/groups-overview.html:67 +#, python-format +msgid "" +"<p>Are you sure you want to unlink all watches from group " +"<strong>%(title)s</strong>?</p><p>The tag will be kept but watches will " +"be removed from it.</p>" +msgstr "" + +#: changedetectionio/blueprint/tags/templates/groups-overview.html:68 +#: changedetectionio/blueprint/tags/templates/groups-overview.html:69 +msgid "Unlink" +msgstr "Odpojit" + +#: changedetectionio/blueprint/tags/templates/groups-overview.html:69 +msgid "Keep the tag but unlink any watches" +msgstr "Ponechte štítek, ale odpojte všechny hodinky" + +#: changedetectionio/blueprint/tags/templates/groups-overview.html:70 +#: changedetectionio/blueprint/ui/templates/edit.html:500 +msgid "RSS Feed for this watch" +msgstr "RSS kanál pro tyto hodinky" + +#: changedetectionio/blueprint/ui/templates/clear_all_history.html:12 +msgid "" +"This will remove version history (snapshots) for ALL watches, but keep " +"your list of URLs!" +msgstr "" + +#: changedetectionio/blueprint/ui/templates/clear_all_history.html:13 +msgid "You may like to use the" +msgstr "Možná budete chtít použít" + +#: changedetectionio/blueprint/ui/templates/clear_all_history.html:13 +msgid "BACKUP" +msgstr "ZÁLOHY" + +#: changedetectionio/blueprint/ui/templates/clear_all_history.html:13 +msgid "link first." +msgstr "nejprve odkaz." + +#: changedetectionio/blueprint/ui/templates/clear_all_history.html:17 +msgid "Confirmation text" +msgstr "Žádné informace" + +#: changedetectionio/blueprint/ui/templates/clear_all_history.html:27 +msgid "Type in the word" +msgstr "Zadejte slovo" + +#: changedetectionio/blueprint/ui/templates/clear_all_history.html:27 +msgid "clear" +msgstr "jasný" + +#: changedetectionio/blueprint/ui/templates/clear_all_history.html:27 +msgid "to confirm that you understand." +msgstr "potvrdit, že rozumíte." + +#: changedetectionio/blueprint/ui/templates/clear_all_history.html:33 +msgid "Clear History!" +msgstr "Jasné historie" + +#: changedetectionio/blueprint/ui/templates/clear_all_history.html:39 +#: changedetectionio/templates/base.html:271 +msgid "Cancel" +msgstr "Zrušit" + +#: changedetectionio/blueprint/ui/templates/diff-offscreen-options.html:3 +msgid "Share diff as image" +msgstr "Sdílet rozdíl jako obrázek" + +#: changedetectionio/blueprint/ui/templates/diff-offscreen-options.html:3 +msgid "Share as Image" +msgstr "Sdílet jako obrázek" + +#: changedetectionio/blueprint/ui/templates/diff-offscreen-options.html:6 +msgid "Ignore any lines matching" +msgstr "Ignorujte všechny odpovídající řádky" + +#: changedetectionio/blueprint/ui/templates/diff-offscreen-options.html:9 +msgid "Ignore any lines matching excluding digits" +msgstr "Ignorujte všechny odpovídající řádky kromě číslic" + +#: changedetectionio/blueprint/ui/templates/diff.html:28 +msgid "From" +msgstr "Z" + +#: changedetectionio/blueprint/ui/templates/diff.html:38 +msgid "To" +msgstr "Na" + +#: changedetectionio/blueprint/ui/templates/diff.html:53 +msgid "Words" +msgstr "Heslo" + +#: changedetectionio/blueprint/ui/templates/diff.html:57 +msgid "Lines" +msgstr "Přihlášení" + +#: changedetectionio/blueprint/ui/templates/diff.html:61 +msgid "Ignore Whitespace" +msgstr "Ignorujte mezery" + +#: changedetectionio/blueprint/ui/templates/diff.html:65 +msgid "Same/non-changed" +msgstr "Změněno" + +#: changedetectionio/blueprint/ui/templates/diff.html:69 +msgid "Removed" +msgstr "Odebráno" + +#: changedetectionio/blueprint/ui/templates/diff.html:73 +#: changedetectionio/blueprint/ui/templates/edit.html:327 +msgid "Added" +msgstr "Přidáno" + +#: changedetectionio/blueprint/ui/templates/diff.html:77 +#: changedetectionio/blueprint/ui/templates/edit.html:327 +msgid "Replaced" +msgstr "Vyměněno" + +#: changedetectionio/blueprint/ui/templates/diff.html:82 +#: changedetectionio/blueprint/ui/templates/preview.html:36 +msgid "Keyboard:" +msgstr "Klávesnice:" + +#: changedetectionio/blueprint/ui/templates/diff.html:83 +#: changedetectionio/blueprint/ui/templates/preview.html:37 +msgid "Previous" +msgstr "Náhled" + +#: changedetectionio/blueprint/ui/templates/diff.html:84 +#: changedetectionio/blueprint/ui/templates/preview.html:38 +msgid "Next" +msgstr "Další" + +#: changedetectionio/blueprint/ui/templates/diff.html:91 +msgid "Jump to next difference" +msgstr "Přejít na další rozdíl" + +#: changedetectionio/blueprint/ui/templates/diff.html:91 +msgid "Jump" +msgstr "Skok" + +#: changedetectionio/blueprint/ui/templates/diff.html:97 +#: changedetectionio/blueprint/ui/templates/preview.html:45 +msgid "Error Text" +msgstr "Text chyby" + +#: changedetectionio/blueprint/ui/templates/diff.html:98 +#: changedetectionio/blueprint/ui/templates/preview.html:47 +msgid "Error Screenshot" +msgstr "Snímek obrazovky s chybou" + +#: changedetectionio/blueprint/ui/templates/diff.html:99 +#: changedetectionio/blueprint/ui/templates/preview.html:50 +#: changedetectionio/processors/text_json_diff/processor.py:24 +msgid "Text" +msgstr "Text" + +#: changedetectionio/blueprint/ui/templates/diff.html:100 +#: changedetectionio/blueprint/ui/templates/preview.html:51 +msgid "Current screenshot" +msgstr "Aktuální snímek obrazovky" + +#: changedetectionio/blueprint/ui/templates/diff.html:101 +msgid "Extract Data" +msgstr "Extrahujte data" + +#: changedetectionio/blueprint/ui/templates/diff.html:107 +msgid "seconds ago." +msgstr "před sekundami." + +#: changedetectionio/blueprint/ui/templates/diff.html:114 +#: changedetectionio/blueprint/ui/templates/preview.html:59 +#: changedetectionio/blueprint/ui/templates/preview.html:66 +msgid "seconds ago" +msgstr "před sekundami" + +#: changedetectionio/blueprint/ui/templates/diff.html:115 +msgid "Current error-ing screenshot from most recent request" +msgstr "Aktuální snímek obrazovky s chybou z posledního požadavku" + +#: changedetectionio/blueprint/ui/templates/diff.html:127 +msgid "Pro-tip: You can enable" +msgstr "Pro-tip: Můžete povolit" + +#: changedetectionio/blueprint/ui/templates/diff.html:127 +msgid "\"share access when password is enabled\"" +msgstr "" + +#: changedetectionio/blueprint/ui/templates/diff.html:127 +msgid "from settings." +msgstr "NASTAVENÍ" + +#: changedetectionio/blueprint/ui/templates/diff.html:133 +msgid "Goto single snapshot" +msgstr "Přejít na jeden snímek" + +#: changedetectionio/blueprint/ui/templates/diff.html:138 +#: changedetectionio/blueprint/ui/templates/edit.html:125 +msgid "Tip:" +msgstr "Tip:" + +#: changedetectionio/blueprint/ui/templates/diff.html:138 +msgid "Highlight text to share or add to ignore lists." +msgstr "Zvýrazněte text, který chcete sdílet nebo přidat do seznamů ignorovaných." + +#: changedetectionio/blueprint/ui/templates/diff.html:144 +#: changedetectionio/blueprint/ui/templates/preview.html:80 +msgid "" +"For now, Differences are performed on text, not graphically, only the " +"latest screenshot is available." +msgstr "" + +#: changedetectionio/blueprint/ui/templates/diff.html:149 +#: changedetectionio/blueprint/ui/templates/preview.html:86 +msgid "Current screenshot from most recent request" +msgstr "Aktuální snímek obrazovky z poslední žádosti" + +#: changedetectionio/blueprint/ui/templates/diff.html:151 +#: changedetectionio/blueprint/ui/templates/preview.html:88 +msgid "No screenshot available just yet! Try rechecking the page." +msgstr "" +"Zatím není k dispozici žádný snímek obrazovky! Zkuste stránku znovu " +"zkontrolovat.Zatím není k dispozici žádný snímek obrazovky! Zkuste " +"stránku znovu zkontrolovat.Zatím není k dispozici žádný snímek obrazovky!" +" Zkuste stránku znovu zkontrolovat." + +#: changedetectionio/blueprint/ui/templates/diff.html:154 +msgid "Screenshot requires Playwright/WebDriver enabled" +msgstr "Snímek obrazovky vyžaduje aktivaci nástroje Playwright/WebDriver" + +#: changedetectionio/blueprint/ui/templates/edit.html:48 +msgid "Request" +msgstr "Žádost" + +#: changedetectionio/blueprint/ui/templates/edit.html:52 +msgid "Browser Steps" +msgstr "Kroky prohlížeče" + +#: changedetectionio/blueprint/ui/templates/edit.html:55 +msgid "Visual Filter Selector" +msgstr "Volič vizuálního filtru" + +#: changedetectionio/blueprint/ui/templates/edit.html:57 +msgid "Conditions" +msgstr "Podmínky" + +#: changedetectionio/blueprint/ui/templates/edit.html:60 +msgid "Stats" +msgstr "NASTAVENÍ" + +#: changedetectionio/blueprint/ui/templates/edit.html:73 +#: changedetectionio/blueprint/ui/templates/edit.html:313 +msgid "Some sites use JavaScript to create the content, for this you should" +msgstr "Některé stránky používají k vytváření obsahu JavaScript, proto byste měli" + +#: changedetectionio/blueprint/ui/templates/edit.html:73 +#: changedetectionio/blueprint/ui/templates/edit.html:313 +msgid "use the Chrome/WebDriver Fetcher" +msgstr "použijte nástroj Chrome/WebDriver Fetcher" + +#: changedetectionio/blueprint/ui/templates/edit.html:74 +msgid "Variables are supported in the URL" +msgstr "V URL jsou podporovány proměnné" + +#: changedetectionio/blueprint/ui/templates/edit.html:74 +#: changedetectionio/blueprint/ui/templates/edit.html:180 +#: changedetectionio/blueprint/ui/templates/edit.html:189 +msgid "help and examples here" +msgstr "nápověda a příklady zde" + +#: changedetectionio/blueprint/ui/templates/edit.html:78 +msgid "Organisational tag/group name used in the main listing page" +msgstr "Název organizační značky/skupiny použitý na hlavní stránce záznamu" + +#: changedetectionio/blueprint/ui/templates/edit.html:85 +msgid "" +"Automatically uses the page title if found, you can also use your own " +"title/description here" +msgstr "" + +#: changedetectionio/blueprint/ui/templates/edit.html:95 +msgid "The interval/amount of time between each check." +msgstr "Interval/doba mezi jednotlivými kontrolami." + +#: changedetectionio/blueprint/ui/templates/edit.html:110 +msgid "" +"Sends a notification when the filter can no longer be seen on the page, " +"good for knowing when the page changed and your filter will not work " +"anymore." +msgstr "" + +#: changedetectionio/blueprint/ui/templates/edit.html:123 +msgid "Use the" +msgstr "Použijte" + +#: changedetectionio/blueprint/ui/templates/edit.html:123 +msgid "Basic" +msgstr "Základní" + +#: changedetectionio/blueprint/ui/templates/edit.html:123 +msgid "" +"method (default) where your watched site doesn't need Javascript to " +"render." +msgstr "" + +#: changedetectionio/blueprint/ui/templates/edit.html:124 +msgid "The" +msgstr "The" + +#: changedetectionio/blueprint/ui/templates/edit.html:124 +msgid "Chrome/Javascript" +msgstr "Chrome/Javascript" + +#: changedetectionio/blueprint/ui/templates/edit.html:124 +msgid "" +"method requires a network connection to a running WebDriver+Chrome " +"server, set by the ENV var 'WEBDRIVER_URL'." +msgstr "" + +#: changedetectionio/blueprint/ui/templates/edit.html:125 +msgid "Connect using Bright Data and Oxylabs Proxies, find out more here." +msgstr "Připojte se pomocí Bright Data a Oxylabs Proxies, více se dozvíte zde." + +#: changedetectionio/blueprint/ui/templates/edit.html:130 +msgid "Check/Scan all" +msgstr "Znovu zkontrolujte vše" + +#: changedetectionio/blueprint/ui/templates/edit.html:133 +msgid "Choose a proxy for this watch" +msgstr "RSS kanál pro tyto hodinky" + +#: changedetectionio/blueprint/ui/templates/edit.html:143 +msgid "" +"If you're having trouble waiting for the page to be fully rendered (text " +"missing etc), try increasing the 'wait' time here." +msgstr "" + +#: changedetectionio/blueprint/ui/templates/edit.html:145 +msgid "This will wait" +msgstr "Tohle počká" + +#: changedetectionio/blueprint/ui/templates/edit.html:145 +msgid "seconds before extracting the text." +msgstr "sekund před extrahováním textu." + +#: changedetectionio/blueprint/ui/templates/edit.html:147 +msgid "Using the current global default settings" +msgstr "Použití aktuálního globálního výchozího nastavení" + +#: changedetectionio/blueprint/ui/templates/edit.html:152 +#: changedetectionio/blueprint/ui/templates/edit.html:165 +msgid "Show advanced options" +msgstr "Zobrazit pokročilé možnosti" + +#: changedetectionio/blueprint/ui/templates/edit.html:157 +msgid "" +"Run this code before performing change detection, handy for filling in " +"fields and other actions" +msgstr "" + +#: changedetectionio/blueprint/ui/templates/edit.html:158 +msgid "More help and examples here" +msgstr "Další nápověda a příklady zde" + +#: changedetectionio/blueprint/ui/templates/edit.html:180 +msgid "Variables are supported in the request body" +msgstr "V těle požadavku jsou podporovány proměnné" + +#: changedetectionio/blueprint/ui/templates/edit.html:189 +msgid "Variables are supported in the request header values" +msgstr "Proměnné jsou podporovány v hodnotách hlavičky požadavku" + +#: changedetectionio/blueprint/ui/templates/edit.html:192 +msgid "Alert! Extra headers file found and will be added to this watch!" +msgstr "" +"Upozornění! Byl nalezen další soubor záhlaví a bude přidán do těchto " +"hodinek!Upozornění! Byl nalezen další soubor záhlaví a bude přidán do " +"těchto hodinek!Upozornění! Byl nalezen další soubor záhlaví a bude přidán" +" do těchto hodinek!" + +#: changedetectionio/blueprint/ui/templates/edit.html:194 +msgid "Headers can be also read from a file in your data-directory" +msgstr "Záhlaví lze také číst ze souboru ve vašem datovém adresáři" + +#: changedetectionio/blueprint/ui/templates/edit.html:194 +msgid "Read more here" +msgstr "Přečtěte si více zde" + +#: changedetectionio/blueprint/ui/templates/edit.html:197 +msgid "Not supported by Selenium browser" +msgstr "Není podporováno prohlížečem Selenium" + +#: changedetectionio/blueprint/ui/templates/edit.html:221 +msgid "Turn on text finder" +msgstr "Zapněte vyhledávač textu" + +#: changedetectionio/blueprint/ui/templates/edit.html:224 +msgid "Please wait, first browser step can take a little time to load.." +msgstr "Čekejte prosím, načtení prvního kroku prohlížeče může chvíli trvat." + +#: changedetectionio/blueprint/ui/templates/edit.html:231 +msgid "Click here to Start" +msgstr "Začněte kliknutím sem" + +#: changedetectionio/blueprint/ui/templates/edit.html:233 +msgid "Please allow 10-15 seconds for the browser to connect." +msgstr "Počkejte prosím 10–15 sekund, než se prohlížeč připojí." + +#: changedetectionio/blueprint/ui/templates/edit.html:242 +msgid "Press \"Play\" to start." +msgstr "" + +#: changedetectionio/blueprint/ui/templates/edit.html:249 +#: changedetectionio/blueprint/ui/templates/edit.html:419 +msgid "Visual Selector data is not ready, watch needs to be checked atleast once." +msgstr "" +"Data Visual Selector nejsou připravena, hodinky je třeba alespoň jednou " +"zkontrolovat.Data Visual Selector nejsou připravena, hodinky je třeba " +"alespoň jednou zkontrolovat.Data Visual Selector nejsou připravena, " +"hodinky je třeba alespoň jednou zkontrolovat." + +#: changedetectionio/blueprint/ui/templates/edit.html:253 +msgid "" +"Sorry, this functionality only works with fetchers that support " +"interactive Javascript (so far only Playwright based fetchers)" +msgstr "" + +#: changedetectionio/blueprint/ui/templates/edit.html:254 +#: changedetectionio/blueprint/ui/templates/edit.html:424 +msgid "You need to" +msgstr "musíte" + +#: changedetectionio/blueprint/ui/templates/edit.html:254 +#: changedetectionio/blueprint/ui/templates/edit.html:424 +msgid "Set the fetch method" +msgstr "Nastavte metodu načítání" + +#: changedetectionio/blueprint/ui/templates/edit.html:254 +msgid "to one that supports interactive Javascript." +msgstr "na ten, který podporuje interaktivní Javascript." + +#: changedetectionio/blueprint/ui/templates/edit.html:297 +msgid "" +"Use the verify (✓) button to test if a condition passes against the " +"current snapshot." +msgstr "" + +#: changedetectionio/blueprint/ui/templates/edit.html:298 +msgid "Read a quick tutorial about" +msgstr "Přečtěte si rychlý tutoriál o" + +#: changedetectionio/blueprint/ui/templates/edit.html:298 +msgid "using conditional web page changes here" +msgstr "pomocí podmíněných změn webové stránky zde" + +#: changedetectionio/blueprint/ui/templates/edit.html:303 +msgid "Activate preview" +msgstr "Náhled" + +#: changedetectionio/blueprint/ui/templates/edit.html:307 +msgid "Pro-tips:" +msgstr "Pro-tipy:" + +#: changedetectionio/blueprint/ui/templates/edit.html:310 +msgid "Use the preview page to see your filters and triggers highlighted." +msgstr "Pomocí stránky náhledu uvidíte zvýrazněné filtry a spouštěče." + +#: changedetectionio/blueprint/ui/templates/edit.html:322 +msgid "Limit trigger/ignore/block/extract to;" +msgstr "Omezit spouštění/ignorovat/blokovat/extrahovat na;" + +#: changedetectionio/blueprint/ui/templates/edit.html:326 +msgid "" +"Note: Depending on the length and similarity of the text on each line, " +"the algorithm may consider an" +msgstr "" + +#: changedetectionio/blueprint/ui/templates/edit.html:326 +#: changedetectionio/blueprint/ui/templates/edit.html:328 +msgid "addition" +msgstr "přidání" + +#: changedetectionio/blueprint/ui/templates/edit.html:326 +msgid "instead of" +msgstr "místo" + +#: changedetectionio/blueprint/ui/templates/edit.html:326 +msgid "replacement" +msgstr "nahrazení" + +#: changedetectionio/blueprint/ui/templates/edit.html:326 +msgid "for example." +msgstr "například." + +#: changedetectionio/blueprint/ui/templates/edit.html:327 +msgid "So it's always better to select" +msgstr "Vždy je tedy lepší vybírat" + +#: changedetectionio/blueprint/ui/templates/edit.html:327 +msgid "when you're interested in new content." +msgstr "když vás zajímá nový obsah." + +#: changedetectionio/blueprint/ui/templates/edit.html:328 +msgid "When content is merely moved in a list, it will also trigger an" +msgstr "Když se obsah pouze přesune v seznamu, spustí se také" + +#: changedetectionio/blueprint/ui/templates/edit.html:328 +msgid "consider enabling" +msgstr "zvážit povolení" + +#: changedetectionio/blueprint/ui/templates/edit.html:328 +msgid "Only trigger when unique lines appear" +msgstr "Spustit pouze tehdy, když se objeví jedinečné čáry" + +#: changedetectionio/blueprint/ui/templates/edit.html:332 +msgid "" +"Good for websites that just move the content around, and you want to know" +" when NEW content is added, compares new lines against all history for " +"this watch." +msgstr "" + +#: changedetectionio/blueprint/ui/templates/edit.html:340 +msgid "" +"Helps reduce changes detected caused by sites shuffling lines around, " +"combine with" +msgstr "" + +#: changedetectionio/blueprint/ui/templates/edit.html:340 +msgid "check unique lines" +msgstr "zkontrolujte jedinečné řádky" + +#: changedetectionio/blueprint/ui/templates/edit.html:340 +msgid "below." +msgstr "níže." + +#: changedetectionio/blueprint/ui/templates/edit.html:344 +msgid "Remove any whitespace before and after each line of text" +msgstr "Odstraňte všechny mezery před a za každým řádkem textu" + +#: changedetectionio/blueprint/ui/templates/edit.html:358 +#: changedetectionio/blueprint/ui/templates/edit.html:361 +#: changedetectionio/blueprint/ui/templates/edit.html:417 +msgid "Loading..." +msgstr "Načítání..." + +#: changedetectionio/blueprint/ui/templates/edit.html:386 +msgid "The Visual Selector tool lets you select the" +msgstr "Nástroj Visual Selector umožňuje vybrat" + +#: changedetectionio/blueprint/ui/templates/edit.html:386 +msgid "text" +msgstr "text" + +#: changedetectionio/blueprint/ui/templates/edit.html:386 +msgid "" +"elements that will be used for the change detection. It automatically " +"fills-in the filters in the \"CSS/JSONPath/JQ/XPath Filters\" box of the" +msgstr "" + +#: changedetectionio/blueprint/ui/templates/edit.html:386 +msgid "tab. Use" +msgstr "Pauza" + +#: changedetectionio/blueprint/ui/templates/edit.html:386 +msgid "Shift+Click" +msgstr "Shift+kliknutí" + +#: changedetectionio/blueprint/ui/templates/edit.html:386 +msgid "to select multiple items." +msgstr "pro výběr více položek." + +#: changedetectionio/blueprint/ui/templates/edit.html:391 +msgid "Selection Mode:" +msgstr "Režim výběru:" + +#: changedetectionio/blueprint/ui/templates/edit.html:394 +msgid "Select by element" +msgstr "Vyberte podle prvku" + +#: changedetectionio/blueprint/ui/templates/edit.html:398 +msgid "Draw area" +msgstr "Kreslit oblast" + +#: changedetectionio/blueprint/ui/templates/edit.html:406 +msgid "Clear selection" +msgstr "Jasný výběr" + +#: changedetectionio/blueprint/ui/templates/edit.html:408 +msgid "One moment, fetching screenshot and element information.." +msgstr "Okamžik, načítání snímku obrazovky a informací o prvku." + +#: changedetectionio/blueprint/ui/templates/edit.html:417 +msgid "Currently:" +msgstr "V současné době:" + +#: changedetectionio/blueprint/ui/templates/edit.html:423 +msgid "" +"Sorry, this functionality only works with fetchers that support " +"Javascript and screenshots (such as playwright etc)." +msgstr "" + +#: changedetectionio/blueprint/ui/templates/edit.html:424 +msgid "to one that supports Javascript and screenshots." +msgstr "na ten, který podporuje Javascript a snímky obrazovky." + +#: changedetectionio/blueprint/ui/templates/edit.html:441 +msgid "Check count" +msgstr "Zkontrolujte počet" + +#: changedetectionio/blueprint/ui/templates/edit.html:445 +msgid "Consecutive filter failures" +msgstr "Následná selhání filtru" + +#: changedetectionio/blueprint/ui/templates/edit.html:449 +msgid "History length" +msgstr "Dějiny" + +#: changedetectionio/blueprint/ui/templates/edit.html:453 +msgid "Last fetch duration" +msgstr "Trvání posledního načtení" + +#: changedetectionio/blueprint/ui/templates/edit.html:457 +msgid "Notification alert count" +msgstr "Počet upozornění na upozornění" + +#: changedetectionio/blueprint/ui/templates/edit.html:461 +msgid "Server type reply" +msgstr "Odpověď typu serveru" + +#: changedetectionio/blueprint/ui/templates/edit.html:475 +msgid "Download latest HTML snapshot" +msgstr "Stáhněte si nejnovější HTML snímek" + +#: changedetectionio/blueprint/ui/templates/edit.html:488 +msgid "Delete Watch?" +msgstr "Smazat hodinky?" + +#: changedetectionio/blueprint/ui/templates/edit.html:489 +msgid "Are you sure you want to delete the watch for:" +msgstr "Opravdu chcete smazat hodinky pro:" + +#: changedetectionio/blueprint/ui/templates/edit.html:489 +msgid "This action cannot be undone." +msgstr "Tuto akci nelze vrátit zpět." + +#: changedetectionio/blueprint/ui/templates/edit.html:495 +msgid "Clear History?" +msgstr "Jasné historie" + +#: changedetectionio/blueprint/ui/templates/edit.html:496 +msgid "Are you sure you want to clear all history for:" +msgstr "Opravdu chcete vymazat celou historii pro:" + +#: changedetectionio/blueprint/ui/templates/edit.html:496 +msgid "" +"This will remove all snapshots and previous versions. This action cannot " +"be undone." +msgstr "" + +#: changedetectionio/blueprint/ui/templates/edit.html:497 +msgid "Clear History" +msgstr "Jasné historie" + +#: changedetectionio/blueprint/ui/templates/edit.html:499 +msgid "Clone & Edit" +msgstr "Klonovat a upravovat" + +#: changedetectionio/blueprint/ui/templates/preview.html:22 +msgid "Select timestamp" +msgstr "Vyberte časové razítko" + +#: changedetectionio/blueprint/ui/templates/preview.html:31 +msgid "Go" +msgstr "Jít" + +#: changedetectionio/blueprint/ui/templates/preview.html:69 +msgid "Current erroring screenshot from most recent request" +msgstr "Aktuální chybový snímek obrazovky z posledního požadavku" + +#: changedetectionio/blueprint/ui/templates/preview.html:91 +msgid "" +"Screenshot requires a Content Fetcher ( Sockpuppetbrowser, selenium, etc " +") that supports screenshots." +msgstr "" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:31 +msgid "Add a new web page change detection watch" +msgstr "Přidejte nové hodinky zjišťování změn webové stránky" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:34 +msgid "Watch this URL!" +msgstr "Sledujte tuto adresu URL!" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:35 +msgid "Edit first then Watch" +msgstr "Nejprve upravte a poté sledujte" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:45 +msgid "Create a shareable link" +msgstr "Vytvořte odkaz ke sdílení" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:45 +msgid "Tip: You can also add 'shared' watches." +msgstr "Tip: Můžete také přidat „sdílené“ hodinky." + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:45 +msgid "More info" +msgstr "Více informací" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:53 +msgid "Pause" +msgstr "Pauza" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:54 +msgid "UnPause" +msgstr "Zrušit pozastavení" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:55 +msgid "Mute" +msgstr "Ztlumit" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:56 +msgid "UnMute" +msgstr "Zrušit ztlumení" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:57 +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:248 +msgid "Recheck" +msgstr "Znovu zkontrolujte" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:58 +msgid "Tag" +msgstr "Štítek" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:59 +msgid "Mark viewed" +msgstr "Mark zobrazil" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:60 +msgid "Use default notification" +msgstr "Použít výchozí oznámení" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:61 +msgid "Clear errors" +msgstr "Vymazat chyby" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:65 +msgid "Clear Histories" +msgstr "Jasné historie" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:66 +msgid "" +"<p>Are you sure you want to clear history for the selected " +"items?</p><p>This action cannot be undone.</p>" +msgstr "" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:67 +msgid "OK" +msgstr "OK" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:67 +msgid "Clear/reset history" +msgstr "Vymazat/resetovat historii" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:71 +msgid "Delete Watches?" +msgstr "Smazat hodinky?" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:72 +msgid "" +"<p>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:78 +msgid "Searching" +msgstr "Hledání" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:80 +msgid "All" +msgstr "Vše" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:118 +msgid "Website" +msgstr "webové stránky" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:120 +msgid "Restock & Price" +msgstr "Doplnění zásob a cena" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:122 +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:123 +msgid "Last" +msgstr "Poslední" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:122 +msgid "Checked" +msgstr "Zkontrolováno" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:123 +msgid "Changed" +msgstr "Změněno" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:130 +msgid "No website watches configured, please add a URL in the box above, or" +msgstr "" +"Nejsou nakonfigurována žádná sledování webových stránek, do výše " +"uvedeného pole přidejte adresu URL neboNejsou nakonfigurována žádná " +"sledování webových stránek, do výše uvedeného pole přidejte adresu URL " +"neboNejsou nakonfigurována žádná sledování webových stránek, do výše " +"uvedeného pole přidejte adresu URL neboNejsou nakonfigurována žádná " +"sledování webových stránek, do výše uvedeného pole přidejte adresu URL " +"nebo" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:130 +msgid "import a list" +msgstr "importovat seznam" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:213 +msgid "Detecting restock and price" +msgstr "Detekce zásob a ceny" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:215 +msgid "In stock" +msgstr "Skladem" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:215 +msgid "Not in stock" +msgstr "Není skladem" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:221 +msgid "Price" +msgstr "Cena" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:226 +msgid "No information" +msgstr "Žádné informace" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:234 +#: changedetectionio/templates/base.html:248 +msgid "Checking now" +msgstr "Probíhá kontrola" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:247 +msgid "Queued" +msgstr "Ve frontě" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:250 +msgid "History" +msgstr "Dějiny" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:251 +msgid "Preview" +msgstr "Náhled" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:260 +msgid "With errors" +msgstr "S chybami" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:263 +msgid "Mark all viewed" +msgstr "Označit všechny prohlížené" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:267 +#, python-format +msgid "Mark all viewed in '%(title)s'" +msgstr "Označit vše prohlížené v '%(title)s'" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:271 +msgid "Unread" +msgstr "Nepřečtený" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:274 +msgid "Recheck all" +msgstr "Znovu zkontrolujte vše" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:274 +#, python-format +msgid "in '%(title)s'" +msgstr "v '%(title)s'" + +#: changedetectionio/processors/image_ssim_diff/forms.py:19 +#: changedetectionio/processors/image_ssim_diff/forms.py:69 +msgid "Bounding box value is too long" +msgstr "Hodnota ohraničujícího rámečku je příliš dlouhá" + +#: changedetectionio/processors/image_ssim_diff/forms.py:23 +msgid "Bounding box must be in format: x,y,width,height (integers only)" +msgstr "" +"Ohraničovací rámeček musí být ve formátu: x,y,šířka,výška (pouze celá " +"čísla)Ohraničovací rámeček musí být ve formátu: x,y,šířka,výška (pouze " +"celá čísla)" + +#: changedetectionio/processors/image_ssim_diff/forms.py:29 +msgid "Bounding box values must be non-negative" +msgstr "Hodnoty ohraničujícího rámečku musí být nezáporné" + +#: changedetectionio/processors/image_ssim_diff/forms.py:31 +msgid "Bounding box values are too large" +msgstr "Hodnoty ohraničujícího rámečku jsou příliš velké" + +#: changedetectionio/processors/image_ssim_diff/forms.py:40 +msgid "Selection mode must be either \"element\" or \"draw\"" +msgstr "" + +#: changedetectionio/processors/image_ssim_diff/forms.py:47 +msgid "Minimum Change Percentage" +msgstr "Procento minimální změny" + +#: changedetectionio/processors/image_ssim_diff/forms.py:56 +msgid "Pixel Difference Sensitivity" +msgstr "Rozdílová citlivost pixelů" + +#: changedetectionio/processors/image_ssim_diff/forms.py:58 +msgid "Use global default" +msgstr "Použít výchozí nastavení systému" + +#: changedetectionio/processors/image_ssim_diff/forms.py:66 +msgid "Bounding Box" +msgstr "Bounding Box" + +#: changedetectionio/processors/image_ssim_diff/forms.py:76 +msgid "Selection Mode" +msgstr "Režim výběru:" + +#: changedetectionio/processors/image_ssim_diff/forms.py:79 +msgid "Selection mode value is too long" +msgstr "Hodnota režimu výběru je příliš dlouhá" + +#: changedetectionio/processors/image_ssim_diff/forms.py:87 +msgid "Screenshot Comparison" +msgstr "Porovnání snímků obrazovky" + +#: changedetectionio/processors/image_ssim_diff/processor.py:20 +msgid "Visual / Image screenshot change detection" +msgstr "Vizuální / Obrazová detekce změny snímku obrazovky" + +#: changedetectionio/processors/image_ssim_diff/processor.py:21 +msgid "Compares screenshots using fast OpenCV algorithm, 10-100x faster than SSIM" +msgstr "Porovnává snímky obrazovky pomocí rychlého algoritmu OpenCV, 10-100x rychlejší než SSIM" + +#: changedetectionio/processors/image_ssim_diff/processor.py:23 +msgid "Visual" +msgstr "Vizuální" + +#: changedetectionio/processors/restock_diff/forms.py:15 +msgid "Re-stock detection" +msgstr "Detekce doplnění zásob" + +#: changedetectionio/processors/restock_diff/forms.py:16 +msgid "In Stock only (Out Of Stock -> In Stock only)" +msgstr "Pouze skladem (Není skladem -> Pouze skladem)" + +#: changedetectionio/processors/restock_diff/forms.py:17 +msgid "Any availability changes" +msgstr "Jakékoli změny dostupnosti" + +#: changedetectionio/processors/restock_diff/forms.py:18 +msgid "Off, don't follow availability/restock" +msgstr "Vypnuto, nesledujte dostupnost/doskladnění" + +#: changedetectionio/processors/restock_diff/forms.py:21 +msgid "Below price to trigger notification" +msgstr "Pod cenou pro spuštění upozornění" + +#: changedetectionio/processors/restock_diff/forms.py:22 +#: changedetectionio/processors/restock_diff/forms.py:24 +msgid "No limit" +msgstr "Bez omezení" + +#: changedetectionio/processors/restock_diff/forms.py:23 +msgid "Above price to trigger notification" +msgstr "Vyšší cena pro spuštění upozornění" + +#: changedetectionio/processors/restock_diff/forms.py:25 +#, python-format +msgid "Threshold in %% for price changes since the original price" +msgstr "Prahová hodnota v % pro změny ceny od původní ceny" + +#: changedetectionio/processors/restock_diff/forms.py:28 +msgid "Should be between 0 and 100" +msgstr "Mělo by být mezi 0 a 100" + +#: changedetectionio/processors/restock_diff/forms.py:31 +msgid "Follow price changes" +msgstr "Sledujte změny cen" + +#: changedetectionio/processors/restock_diff/forms.py:37 +msgid "Restock & Price Detection" +msgstr "Doplnění zásob a cena" + +#: changedetectionio/processors/restock_diff/processor.py:11 +msgid "Re-stock & Price detection for pages with a SINGLE product" +msgstr "Doplnění zásob a zjištění ceny pro stránky s JEDINÝM produktem" + +#: changedetectionio/processors/restock_diff/processor.py:12 +msgid "Detects if the product goes back to in-stock" +msgstr "Zjistí, zda se produkt vrátí na sklad" + +#: changedetectionio/processors/restock_diff/processor.py:14 +msgid "Restock" +msgstr "Doplnění zásob" + +#: changedetectionio/processors/text_json_diff/processor.py:21 +msgid "Webpage Text/HTML, JSON and PDF changes" +msgstr "Změny textu webové stránky/HTML, JSON a PDF" + +#: changedetectionio/processors/text_json_diff/processor.py:22 +msgid "Detects all text changes where possible" +msgstr "Detekuje všechny změny textu, kde je to možné" + +#: changedetectionio/templates/base.html:77 +msgid "GROUPS" +msgstr "SKUPINY" + +#: changedetectionio/templates/base.html:80 +msgid "SETTINGS" +msgstr "NASTAVENÍ" + +#: changedetectionio/templates/base.html:83 +msgid "IMPORT" +msgstr "IMPORTOVAT" + +#: changedetectionio/templates/base.html:86 +msgid "BACKUPS" +msgstr "ZÁLOHY" + +#: changedetectionio/templates/base.html:90 +msgid "EDIT" +msgstr "UPRAVIT" + +#: changedetectionio/templates/base.html:100 +msgid "LOG OUT" +msgstr "ODHLÁSIT SE" + +#: changedetectionio/templates/base.html:109 +msgid "Search, or Use Alt+S Key" +msgstr "Vyhledejte nebo použijte klávesu Alt+S" + +#: changedetectionio/templates/base.html:116 +msgid "Toggle Light/Dark Mode" +msgstr "Přepnout režim Světlý/Tmavý" + +#: changedetectionio/templates/base.html:117 +msgid "Toggle light/dark mode" +msgstr "Přepínání mezi světlým/tmavým režimem" + +#: changedetectionio/templates/base.html:127 +msgid "Change Language" +msgstr "Změnit jazyk" + +#: changedetectionio/templates/base.html:128 +msgid "Change language" +msgstr "Změnit jazyk" + +#: changedetectionio/templates/base.html:249 +msgid "Real-time updates offline" +msgstr "Aktualizace v reálném čase offline" + +#: changedetectionio/templates/base.html:259 +msgid "Select Language" +msgstr "Vyberte Jazyk" + +#: changedetectionio/templates/login.html:10 +msgid "Password" +msgstr "Heslo" + +#: changedetectionio/templates/login.html:16 +msgid "Login" +msgstr "Přihlášení" + diff --git a/changedetectionio/translations/de/LC_MESSAGES/messages.mo b/changedetectionio/translations/de/LC_MESSAGES/messages.mo new file mode 100644 index 000000000..97db815df Binary files /dev/null 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 new file mode 100644 index 000000000..e8e7ee6ae --- /dev/null +++ b/changedetectionio/translations/de/LC_MESSAGES/messages.po @@ -0,0 +1,2011 @@ +# German translations for PROJECT. +# Copyright (C) 2026 ORGANIZATION +# This file is distributed under the same license as the PROJECT project. +# FIRST AUTHOR <EMAIL@ADDRESS>, 2026. +# +msgid "" +msgstr "" +"Project-Id-Version: PROJECT VERSION\n" +"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" +"POT-Creation-Date: 2026-01-02 13:32+0100\n" +"PO-Revision-Date: 2026-01-02 11:40+0100\n" +"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" +"Language: de\n" +"Language-Team: de <LL@li.org>\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=utf-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.17.0\n" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:241 +#: changedetectionio/flask_app.py:213 changedetectionio/flask_app.py:225 +#: changedetectionio/flask_app.py:246 +#: changedetectionio/realtime/socket_server.py:171 +msgid "Not yet" +msgstr "Noch nicht" + +#: changedetectionio/forms.py:62 changedetectionio/forms.py:242 +msgid "" +"At least one time interval (weeks, days, hours, minutes, or seconds) must" +" be specified." +msgstr "" + +#: changedetectionio/forms.py:63 +msgid "" +"At least one time interval (weeks, days, hours, minutes, or seconds) must" +" be specified when not using global settings." +msgstr "" + +#: changedetectionio/forms.py:163 +msgid "Invalid time format. Use HH:MM." +msgstr "Ungültiges Zeitformat. Verwenden Sie HH:MM." + +#: changedetectionio/forms.py:179 +msgid "Not a valid timezone name" +msgstr "Kein gültiger Zeitzonenname" + +#: changedetectionio/forms.py:182 +msgid "not set" +msgstr "Noch nicht" + +#: changedetectionio/forms.py:183 +msgid "Start At" +msgstr "EINSTELLUNGEN" + +#: changedetectionio/forms.py:184 +msgid "Run duration" +msgstr "Keine Informationen" + +#: changedetectionio/forms.py:187 +msgid "Use time scheduler" +msgstr "Verwenden Sie einen Zeitplaner" + +#: changedetectionio/forms.py:197 +msgid "Optional timezone to run in" +msgstr "Optionale Zeitzone zum Ausführen" + +#: changedetectionio/forms.py:211 +msgid "Monday" +msgstr "Montag" + +#: changedetectionio/forms.py:212 +msgid "Tuesday" +msgstr "Dienstag" + +#: changedetectionio/forms.py:213 +msgid "Wednesday" +msgstr "Mittwoch" + +#: changedetectionio/forms.py:214 +msgid "Thursday" +msgstr "Donnerstag" + +#: changedetectionio/forms.py:215 +msgid "Friday" +msgstr "Freitag" + +#: changedetectionio/forms.py:216 +msgid "Saturday" +msgstr "Samstag" + +#: changedetectionio/forms.py:217 +msgid "Sunday" +msgstr "Sonntag" + +#: changedetectionio/forms.py:250 +msgid "Weeks" +msgstr "Wochen" + +#: changedetectionio/forms.py:250 changedetectionio/forms.py:251 +#: changedetectionio/forms.py:252 changedetectionio/forms.py:253 +#: changedetectionio/forms.py:254 changedetectionio/forms.py:957 +msgid "Should contain zero or more seconds" +msgstr "Sollte null oder mehr Sekunden enthalten" + +#: changedetectionio/forms.py:251 +msgid "Days" +msgstr "Tage" + +#: changedetectionio/forms.py:252 +msgid "Hours" +msgstr "Passwort" + +#: changedetectionio/forms.py:253 +msgid "Minutes" +msgstr "Stumm" + +#: changedetectionio/forms.py:254 +msgid "Seconds" +msgstr "Sekunden" + +#: changedetectionio/forms.py:459 +msgid "Notification Body and Title is required when a Notification URL is used" +msgstr "" +"Benachrichtigungstext und Titel sind erforderlich, wenn eine " +"Benachrichtigungs-URL verwendet wird" + +#: changedetectionio/forms.py:488 +#, python-format +msgid "'%s' is not a valid AppRise URL." +msgstr "„%s“ ist keine gültige AppRise-URL." + +#: changedetectionio/forms.py:561 changedetectionio/forms.py:580 +#, python-format +msgid "RegEx '%s' is not a valid regular expression." +msgstr "RegEx „%s“ ist kein gültiger regulärer Ausdruck." + +#: changedetectionio/forms.py:621 changedetectionio/forms.py:636 +#, python-format +msgid "'%s' is not a valid XPath expression. (%s)" +msgstr "„%s“ ist kein gültiger XPath-Ausdruck. (%s)" + +#: changedetectionio/forms.py:656 +#, python-format +msgid "'%s' is not a valid JSONPath expression. (%s)" +msgstr "„%s“ ist kein gültiger JSONPath-Ausdruck. (%s)" + +#: changedetectionio/forms.py:678 +#, python-format +msgid "'%s' is not a valid jq expression. (%s)" +msgstr "„%s“ ist kein gültiger JQ-Ausdruck. (%s)" + +#: changedetectionio/forms.py:724 +msgid "Empty value not allowed." +msgstr "Leerer Wert nicht zulässig." + +#: changedetectionio/forms.py:726 +msgid "Invalid value." +msgstr "Ungültiger Wert." + +#: changedetectionio/forms.py:733 +msgid "Watch" +msgstr "# Uhren" + +#: changedetectionio/forms.py:734 changedetectionio/forms.py:768 +msgid "Processor" +msgstr "Prozessor" + +#: changedetectionio/forms.py:735 +msgid "Edit > Watch" +msgstr "Zuerst bearbeiten, dann ansehen" + +#: changedetectionio/forms.py:748 changedetectionio/forms.py:996 +msgid "Fetch Method" +msgstr "Legen Sie die Abrufmethode fest" + +#: changedetectionio/forms.py:749 +msgid "Notification Body" +msgstr "Keine Informationen" + +#: changedetectionio/forms.py:750 +msgid "Notification format" +msgstr "Keine Informationen" + +#: changedetectionio/forms.py:751 +msgid "Notification Title" +msgstr "Keine Informationen" + +#: changedetectionio/forms.py:752 +msgid "Notification URL List" +msgstr "Keine Informationen" + +#: changedetectionio/forms.py:753 +msgid "Processor - What do you want to achieve?" +msgstr "Prozessor – Was möchten Sie erreichen?" + +#: changedetectionio/forms.py:754 +msgid "Default timezone for watch check scheduler" +msgstr "Standardzeitzone für den Watch-Check-Planer" + +#: changedetectionio/forms.py:755 +msgid "Wait seconds before extracting text" +msgstr "Sekunden, bevor der Text extrahiert wird." + +#: changedetectionio/forms.py:755 +msgid "Should contain one or more seconds" +msgstr "Sollte eine oder mehrere Sekunden enthalten" + +#: changedetectionio/forms.py:769 +msgid "URLs" +msgstr "URL" + +#: changedetectionio/forms.py:770 +msgid "Upload .xlsx file" +msgstr "Laden Sie die XLSX-Datei hoch" + +#: changedetectionio/forms.py:770 +msgid "Must be .xlsx file!" +msgstr "Muss eine XLSX-Datei sein!" + +#: changedetectionio/forms.py:771 +msgid "File mapping" +msgstr "Dateizuordnungstyp." + +#: changedetectionio/forms.py:775 +msgid "Operation" +msgstr "UI-Optionen" + +#: changedetectionio/forms.py:778 +msgid "Selector" +msgstr "Auswahlmodus:" + +#: changedetectionio/forms.py:779 +msgid "value" +msgstr "Pause" + +#: changedetectionio/forms.py:798 +msgid "Use global settings for time between check and scheduler." +msgstr "" +"Verwenden Sie globale Einstellungen für die Zeit zwischen Prüfung und " +"Planer." + +#: changedetectionio/forms.py:800 +msgid "CSS/JSONPath/JQ/XPath Filters" +msgstr "CSS/xPath-Filter" + +#: changedetectionio/forms.py:802 changedetectionio/forms.py:998 +msgid "Remove elements" +msgstr "ENTFERNT" + +#: changedetectionio/forms.py:804 +msgid "Extract text" +msgstr "Daten extrahieren" + +#: changedetectionio/blueprint/imports/templates/import.html:106 +#: changedetectionio/forms.py:806 +msgid "Title" +msgstr "Titel" + +#: changedetectionio/forms.py:808 +msgid "Ignore lines containing" +msgstr "Ignorieren Sie alle übereinstimmenden Zeilen" + +#: changedetectionio/forms.py:810 +msgid "Request body" +msgstr "Anfrage" + +#: changedetectionio/forms.py:811 +msgid "Request method" +msgstr "Anfrage" + +#: changedetectionio/forms.py:812 +msgid "Ignore status codes (process non-2xx status codes as normal)" +msgstr "Statuscodes ignorieren (Nicht-2xx-Statuscodes wie gewohnt verarbeiten)" + +#: changedetectionio/forms.py:813 +msgid "Only trigger when unique lines appear in all history" +msgstr "Wird nur ausgelöst, wenn eindeutige Zeilen angezeigt werden" + +#: changedetectionio/blueprint/ui/templates/edit.html:336 +#: changedetectionio/forms.py:814 +msgid "Remove duplicate lines of text" +msgstr "Entfernen Sie doppelte Textzeilen" + +#: changedetectionio/forms.py:815 +msgid "Sort text alphabetically" +msgstr "Sortieren Sie den Text alphabetisch" + +#: changedetectionio/forms.py:816 changedetectionio/forms.py:1025 +msgid "Strip ignored lines" +msgstr "Entfernen Sie ignorierte Zeilen" + +#: changedetectionio/forms.py:817 +msgid "Trim whitespace before and after text" +msgstr "Entfernen Sie alle Leerzeichen vor und nach jeder Textzeile" + +#: changedetectionio/forms.py:819 +msgid "Added lines" +msgstr "Login" + +#: changedetectionio/forms.py:820 +msgid "Replaced/changed lines" +msgstr "Zeilen ersetzt/geändert" + +#: changedetectionio/forms.py:821 +msgid "Removed lines" +msgstr "ENTFERNT" + +#: changedetectionio/forms.py:823 +msgid "Keyword triggers - Trigger/wait for text" +msgstr "Schlüsselwort-Trigger – Auslösen/Warten auf Text" + +#: changedetectionio/forms.py:826 +msgid "Block change-detection while text matches" +msgstr "Blockieren Sie die Änderungserkennung, während der Text übereinstimmt" + +#: changedetectionio/forms.py:827 +msgid "Execute JavaScript before change detection" +msgstr "Führen Sie JavaScript vor der Änderungserkennung aus" + +#: changedetectionio/blueprint/tags/templates/groups-overview.html:17 +#: changedetectionio/forms.py:829 changedetectionio/forms.py:1053 +msgid "Save" +msgstr "Speichern" + +#: changedetectionio/forms.py:831 +msgid "Proxy" +msgstr "Stellvertreter" + +#: changedetectionio/forms.py:833 +msgid "Send a notification when the filter can no longer be found on the page" +msgstr "" +"Senden Sie eine Benachrichtigung, wenn der Filter nicht mehr auf der " +"Seite gefunden werden kann" + +#: changedetectionio/blueprint/settings/templates/settings.html:22 +#: changedetectionio/blueprint/tags/templates/edit-tag.html:32 +#: changedetectionio/blueprint/ui/templates/edit.html:59 +#: changedetectionio/forms.py:834 +msgid "Notifications" +msgstr "Keine Informationen" + +#: changedetectionio/forms.py:834 +msgid "Muted" +msgstr "Stumm" + +#: changedetectionio/forms.py:834 +msgid "On" +msgstr "keiner" + +#: changedetectionio/forms.py:835 +msgid "Attach screenshot to notification (where possible)" +msgstr "Screenshot an Benachrichtigung anhängen (sofern möglich)" + +#: changedetectionio/forms.py:837 +msgid "Match" +msgstr "# Uhren" + +#: changedetectionio/forms.py:837 +msgid "Match all of the following" +msgstr "Passen Sie alle folgenden Punkte an" + +#: changedetectionio/forms.py:837 +msgid "Match any of the following" +msgstr "Passen Sie zu einem der folgenden Punkte" + +#: changedetectionio/forms.py:839 +msgid "Use page <title> in list" +msgstr "Verwenden Sie Seite <Titel> in der Liste" + +#: changedetectionio/forms.py:856 +msgid "Body must be empty when Request Method is set to GET" +msgstr "" +"Der Textkörper muss leer sein, wenn die Anforderungsmethode auf GET " +"gesetzt ist" + +#: changedetectionio/forms.py:865 changedetectionio/forms.py:879 +#: changedetectionio/forms.py:894 +#, python-format +msgid "Invalid template syntax configuration: %(error)s" +msgstr "Ungültige Vorlagensyntaxkonfiguration: %(error)s" + +#: changedetectionio/forms.py:869 changedetectionio/forms.py:883 +#, python-format +msgid "Invalid template syntax: %(error)s" +msgstr "Ungültige Vorlagensyntax: %(error)s" + +#: changedetectionio/forms.py:898 +#, python-format +msgid "Invalid template syntax in \"%(header)s\" header: %(error)s" +msgstr "" + +#: changedetectionio/forms.py:922 changedetectionio/forms.py:934 +msgid "Name" +msgstr "Stummschaltung aufheben" + +#: changedetectionio/forms.py:923 +msgid "Proxy URL" +msgstr "Proxy-URL" + +#: changedetectionio/forms.py:928 +msgid "Proxy URLs must start with http://, https:// or socks5://" +msgstr "Proxy-URLs müssen mit http://, https:// oder sock5:// beginnen." + +#: changedetectionio/forms.py:935 +msgid "Browser connection URL" +msgstr "Browser-Verbindungs-URL" + +#: changedetectionio/forms.py:940 +msgid "Browser URLs must start with wss:// or ws://" +msgstr "Browser-URLs müssen mit wss:// oder ws:// beginnen." + +#: changedetectionio/forms.py:946 +msgid "Plaintext requests" +msgstr "Klartextanfragen" + +#: changedetectionio/forms.py:948 +msgid "Chrome requests" +msgstr "Anfrage" + +#: changedetectionio/forms.py:954 +msgid "Default proxy" +msgstr "Standard-Proxy" + +#: changedetectionio/forms.py:955 +msgid "Random jitter seconds ± check" +msgstr "Zufällige Jitter-Sekunden ± überprüfen" + +#: changedetectionio/forms.py:959 +msgid "Number of fetch workers" +msgstr "Anzahl der Abrufarbeiter" + +#: changedetectionio/forms.py:962 +msgid "Should be between 1 and 50" +msgstr "Sollte zwischen 1 und 50 liegen" + +#: changedetectionio/forms.py:964 +msgid "Requests timeout in seconds" +msgstr "Anforderungs-Timeout in Sekunden" + +#: changedetectionio/forms.py:967 +msgid "Should be between 1 and 999" +msgstr "Sollte zwischen 1 und 999 liegen" + +#: changedetectionio/forms.py:972 +msgid "Default User-Agent overrides" +msgstr "Standardmäßige Benutzer-Agent-Überschreibungen" + +#: changedetectionio/forms.py:978 +msgid "Both a name, and a Proxy URL is required." +msgstr "Es sind sowohl ein Name als auch eine Proxy-URL erforderlich." + +#: changedetectionio/forms.py:982 +msgid "Open 'History' page in a new tab" +msgstr "Öffnen Sie die Seite „Verlauf“ in einem neuen Tab" + +#: changedetectionio/forms.py:983 +msgid "Realtime UI Updates Enabled" +msgstr "Echtzeit-Updates offline" + +#: changedetectionio/forms.py:984 +msgid "Favicons Enabled" +msgstr "Erwägen Sie die Aktivierung" + +#: changedetectionio/forms.py:985 +msgid "Use page <title> in watch overview list" +msgstr "Verwenden Sie die Seite <Titel> in der Watch-Übersichtsliste" + +#: changedetectionio/forms.py:990 +msgid "API access token security check enabled" +msgstr "Sicherheitsüberprüfung des API-Zugriffstokens aktiviert" + +#: changedetectionio/forms.py:991 +msgid "Notification base URL override" +msgstr "Anzahl der Benachrichtigungsalarme" + +#: changedetectionio/forms.py:995 +msgid "Treat empty pages as a change?" +msgstr "Leere Seiten als Abwechslung behandeln?" + +#: changedetectionio/forms.py:997 +msgid "Ignore Text" +msgstr "Fehlertext" + +#: changedetectionio/forms.py:999 +msgid "Ignore whitespace" +msgstr "Leerzeichen ignorieren" + +#: changedetectionio/forms.py:1006 +#: changedetectionio/processors/image_ssim_diff/forms.py:50 +msgid "Must be between 0 and 100" +msgstr "Muss zwischen 0 und 100 liegen" + +#: changedetectionio/forms.py:1013 +msgid "Pager size" +msgstr "Pagergröße" + +#: changedetectionio/forms.py:1016 +msgid "Should be atleast zero (disabled)" +msgstr "Sollte mindestens Null sein (deaktiviert)" + +#: changedetectionio/forms.py:1018 +msgid "RSS Content format" +msgstr "RSS-Inhaltsformat" + +#: changedetectionio/forms.py:1019 +msgid "RSS <description> body built from" +msgstr "RSS-<Beschreibung>-Körper erstellt aus" + +#: changedetectionio/forms.py:1020 +msgid "RSS \"System default\" template override" +msgstr "" + +#: changedetectionio/forms.py:1022 +msgid "Remove password" +msgstr "Passwort" + +#: changedetectionio/forms.py:1023 +msgid "Render anchor tag content" +msgstr "Rendern Sie den Inhalt des Ankertags" + +#: changedetectionio/forms.py:1024 +msgid "Allow anonymous access to watch history page when password is enabled" +msgstr "" +"Erlauben Sie anonymen Zugriff auf die Seite mit dem Wiedergabeverlauf, " +"wenn das Passwort aktiviert ist" + +#: changedetectionio/forms.py:1026 +msgid "Hide muted watches from RSS feed" +msgstr "Stummgeschaltete Uhren aus dem RSS-Feed ausblenden" + +#: changedetectionio/forms.py:1029 +msgid "Enable RSS reader mode " +msgstr "Aktivieren Sie den RSS-Reader-Modus" + +#: changedetectionio/forms.py:1030 +msgid "Number of changes to show in watch RSS feed" +msgstr "Anzahl der Änderungen, die im RSS-Feed der Uhr angezeigt werden sollen" + +#: changedetectionio/forms.py:1032 changedetectionio/forms.py:1037 +msgid "Should contain zero or more attempts" +msgstr "Sollte null oder mehr Versuche enthalten" + +#: changedetectionio/forms.py:1034 +msgid "Number of times the filter can be missing before sending a notification" +msgstr "" +"Häufigkeit, mit der der Filter fehlen darf, bevor eine Benachrichtigung " +"gesendet wird" + +#: changedetectionio/forms.py:1057 +msgid "RegEx to extract" +msgstr "RegEx zum Extrahieren" + +#: changedetectionio/forms.py:1058 +msgid "Extract as CSV" +msgstr "Daten extrahieren" + +#: changedetectionio/blueprint/backups/templates/overview.html:6 +msgid "Backups" +msgstr "BACKUPS" + +#: changedetectionio/blueprint/backups/templates/overview.html:9 +msgid "A backup is running!" +msgstr "Ein Backup läuft!" + +#: changedetectionio/blueprint/backups/templates/overview.html:13 +msgid "" +"Here you can download and request a new backup, when a backup is " +"completed you will see it listed below." +msgstr "" + +#: changedetectionio/blueprint/backups/templates/overview.html:19 +msgid "Mb" +msgstr "Mb" + +#: changedetectionio/blueprint/backups/templates/overview.html:24 +msgid "No backups found." +msgstr "Keine Backups gefunden." + +#: changedetectionio/blueprint/backups/templates/overview.html:28 +msgid "Create backup" +msgstr "BACKUPS" + +#: changedetectionio/blueprint/backups/templates/overview.html:30 +msgid "Remove backups" +msgstr "BACKUPS" + +#: changedetectionio/blueprint/imports/templates/import.html:9 +msgid "URL List" +msgstr "URL-Liste" + +#: changedetectionio/blueprint/imports/templates/import.html:10 +msgid "Distill.io" +msgstr "Distill.io" + +#: changedetectionio/blueprint/imports/templates/import.html:11 +msgid ".XLSX & Wachete" +msgstr ".XLSX & Wachete" + +#: changedetectionio/blueprint/imports/templates/import.html:20 +msgid "" +"Enter one URL per line, and optionally add tags for each URL after a " +"space, delineated by comma (,):" +msgstr "" + +#: changedetectionio/blueprint/imports/templates/import.html:22 +msgid "Example:" +msgstr "Beispiel:" + +#: changedetectionio/blueprint/imports/templates/import.html:23 +msgid "URLs which do not pass validation will stay in the textarea." +msgstr "URLs, die die Validierung nicht bestehen, bleiben im Textbereich." + +#: changedetectionio/blueprint/imports/templates/import.html:44 +msgid "" +"Copy and Paste your Distill.io watch 'export' file, this should be a JSON" +" file." +msgstr "" + +#: changedetectionio/blueprint/imports/templates/import.html:45 +msgid "This is" +msgstr "Das ist" + +#: changedetectionio/blueprint/imports/templates/import.html:45 +msgid "experimental" +msgstr "Experimental-" + +#: changedetectionio/blueprint/imports/templates/import.html:45 +msgid "supported fields are" +msgstr "Unterstützte Felder sind" + +#: changedetectionio/blueprint/imports/templates/import.html:45 +msgid "the rest (including" +msgstr "der Rest (inkl" + +#: changedetectionio/blueprint/imports/templates/import.html:45 +msgid "are ignored." +msgstr "werden ignoriert." + +#: changedetectionio/blueprint/imports/templates/import.html:48 +msgid "How to export?" +msgstr "Wie exportiere ich?" + +#: changedetectionio/blueprint/imports/templates/import.html:49 +msgid "Be sure to set your default fetcher to Chrome if required." +msgstr "" +"Stellen Sie bei Bedarf sicher, dass Ihr Standardabrufer auf Chrome " +"eingestellt ist.\"Stellen Sie bei Bedarf sicher, dass Ihr Standardabrufer" +" auf Chrome eingestellt ist.Stellen Sie bei Bedarf sicher, dass Ihr " +"Standardabrufer auf Chrome eingestellt ist." + +#: changedetectionio/blueprint/imports/templates/import.html:91 +msgid "Table of custom column and data types mapping for the" +msgstr "Tabelle der benutzerdefinierten Spalten- und Datentypzuordnung für" + +#: changedetectionio/blueprint/imports/templates/import.html:91 +msgid "Custom mapping" +msgstr "Benutzerdefinierte Zuordnung" + +#: changedetectionio/blueprint/imports/templates/import.html:91 +msgid "File mapping type." +msgstr "Dateizuordnungstyp." + +#: changedetectionio/blueprint/imports/templates/import.html:95 +msgid "Column #" +msgstr "Spalte #" + +#: changedetectionio/blueprint/imports/templates/import.html:101 +msgid "Type" +msgstr "Typ" + +#: changedetectionio/blueprint/imports/templates/import.html:104 +msgid "none" +msgstr "keiner" + +#: changedetectionio/blueprint/imports/templates/import.html:105 +msgid "URL" +msgstr "URL" + +#: changedetectionio/blueprint/imports/templates/import.html:107 +msgid "CSS/xPath filter" +msgstr "CSS/xPath-Filter" + +#: changedetectionio/blueprint/imports/templates/import.html:108 +msgid "Group / Tag name(s)" +msgstr "Gruppe/Tag beobachten" + +#: changedetectionio/blueprint/imports/templates/import.html:109 +msgid "Recheck time (minutes)" +msgstr "Nachprüfzeit (Minuten)" + +#: changedetectionio/blueprint/imports/templates/import.html:116 +msgid "Import" +msgstr "IMPORT" + +#: changedetectionio/blueprint/settings/templates/notification-log.html:7 +msgid "Notification debug log" +msgstr "Benachrichtigungs-Debug-Protokoll" + +#: changedetectionio/blueprint/settings/templates/settings.html:21 +#: changedetectionio/blueprint/tags/templates/edit-tag.html:27 +#: changedetectionio/blueprint/ui/templates/edit.html:47 +msgid "General" +msgstr "Allgemein" + +#: changedetectionio/blueprint/settings/templates/settings.html:23 +msgid "Fetching" +msgstr "Suchen" + +#: changedetectionio/blueprint/settings/templates/settings.html:24 +msgid "Global Filters" +msgstr "Globale Filter" + +#: changedetectionio/blueprint/settings/templates/settings.html:25 +msgid "UI Options" +msgstr "UI-Optionen" + +#: changedetectionio/blueprint/settings/templates/settings.html:26 +msgid "API" +msgstr "API" + +#: changedetectionio/blueprint/settings/templates/settings.html:27 +msgid "RSS" +msgstr "RSS" + +#: changedetectionio/blueprint/settings/templates/settings.html:28 +msgid "Time & Date" +msgstr "Uhrzeit und Datum" + +#: changedetectionio/blueprint/settings/templates/settings.html:29 +msgid "CAPTCHA & Proxies" +msgstr "CAPTCHA & Proxys" + +#: changedetectionio/blueprint/settings/templates/settings.html:35 +msgid "Info" +msgstr "Weitere Informationen" + +#: changedetectionio/blueprint/settings/templates/settings.html:46 +msgid "Default recheck time for all watches, current system minimum is" +msgstr "" +"Standardzeit für erneute Überprüfungen für alle Uhren, aktuelles " +"Systemminimum\"Standardzeit für erneute Überprüfungen für alle Uhren, " +"aktuelles SystemminimumStandardzeit für erneute Überprüfungen für alle " +"Uhren, aktuelles Systemminimum" + +#: changedetectionio/blueprint/settings/templates/settings.html:46 +msgid "seconds" +msgstr "Sekunden" + +#: changedetectionio/blueprint/settings/templates/settings.html:46 +msgid "more info" +msgstr "Weitere Informationen" + +#: changedetectionio/blueprint/settings/templates/settings.html:390 +msgid "Python version:" +msgstr "Python-Version:" + +#: changedetectionio/blueprint/settings/templates/settings.html:391 +msgid "Plugins active:" +msgstr "Aktive Plugins:" + +#: changedetectionio/blueprint/settings/templates/settings.html:399 +msgid "No plugins active" +msgstr "Keine Plugins aktiv" + +#: changedetectionio/blueprint/settings/templates/settings.html:405 +msgid "Back" +msgstr "BACKUPS" + +#: changedetectionio/blueprint/settings/templates/settings.html:406 +msgid "Clear Snapshot History" +msgstr "Verlauf löschen/zurücksetzen" + +#: changedetectionio/blueprint/tags/templates/edit-tag.html:28 +#: changedetectionio/blueprint/ui/templates/edit.html:56 +#: changedetectionio/blueprint/ui/templates/edit.html:386 +msgid "Filters & Triggers" +msgstr "Filter und Trigger" + +#: changedetectionio/blueprint/tags/templates/edit-tag.html:50 +msgid "These settings are" +msgstr "EINSTELLUNGEN" + +#: changedetectionio/blueprint/tags/templates/edit-tag.html:50 +msgid "added" +msgstr "hinzugefügt" + +#: changedetectionio/blueprint/tags/templates/edit-tag.html:50 +msgid "to any existing watch configurations." +msgstr "zu allen vorhandenen Uhrenkonfigurationen." + +#: changedetectionio/blueprint/tags/templates/edit-tag.html:53 +#: changedetectionio/blueprint/ui/templates/edit.html:321 +msgid "Text filtering" +msgstr "Textfilterung" + +#: changedetectionio/blueprint/tags/templates/edit-tag.html:73 +#: changedetectionio/blueprint/ui/templates/edit.html:269 +msgid "Use with caution!" +msgstr "Mit Vorsicht verwenden!" + +#: changedetectionio/blueprint/tags/templates/edit-tag.html:73 +#: changedetectionio/blueprint/ui/templates/edit.html:269 +msgid "This will easily fill up your email storage quota or flood other storages." +msgstr "" +"Dadurch wird Ihr E-Mail-Speicherkontingent leicht ausgeschöpft oder " +"andere Speicher überflutet.\"Dadurch wird Ihr E-Mail-Speicherkontingent " +"leicht ausgeschöpft oder andere Speicher überflutet.Dadurch wird Ihr E" +"-Mail-Speicherkontingent leicht ausgeschöpft oder andere Speicher " +"überflutet." + +#: changedetectionio/blueprint/tags/templates/edit-tag.html:80 +#: changedetectionio/blueprint/ui/templates/edit.html:276 +msgid "Look out!" +msgstr "Abmelden" + +#: changedetectionio/blueprint/tags/templates/edit-tag.html:80 +#: changedetectionio/blueprint/ui/templates/edit.html:276 +msgid "Lookout!" +msgstr "Abmelden" + +#: changedetectionio/blueprint/tags/templates/edit-tag.html:81 +#: changedetectionio/blueprint/ui/templates/edit.html:277 +msgid "There are" +msgstr "Es gibt" + +#: changedetectionio/blueprint/tags/templates/edit-tag.html:81 +#: changedetectionio/blueprint/ui/templates/edit.html:277 +msgid "system-wide notification URLs enabled" +msgstr "Systemweite Benachrichtigungs-URLs aktiviert" + +#: changedetectionio/blueprint/tags/templates/edit-tag.html:81 +#: changedetectionio/blueprint/ui/templates/edit.html:277 +msgid "this form will override notification settings for this watch only" +msgstr "" +"Dieses Formular überschreibt nur die Benachrichtigungseinstellungen für " +"diese Uhr\"Dieses Formular überschreibt nur die " +"Benachrichtigungseinstellungen für diese UhrDieses Formular überschreibt " +"nur die Benachrichtigungseinstellungen für diese Uhr" + +#: changedetectionio/blueprint/tags/templates/edit-tag.html:81 +#: changedetectionio/blueprint/ui/templates/edit.html:277 +msgid "an empty Notification URL list here will still send notifications." +msgstr "" +"Eine leere Benachrichtigungs-URL-Liste hier sendet weiterhin " +"Benachrichtigungen.\"Eine leere Benachrichtigungs-URL-Liste hier sendet " +"weiterhin Benachrichtigungen.Eine leere Benachrichtigungs-URL-Liste hier " +"sendet weiterhin Benachrichtigungen." + +#: changedetectionio/blueprint/tags/templates/edit-tag.html:84 +#: changedetectionio/blueprint/ui/templates/edit.html:280 +msgid "Use system defaults" +msgstr "Verwenden Sie Systemstandards" + +#: changedetectionio/blueprint/tags/templates/groups-overview.html:11 +msgid "Add a new organisational tag" +msgstr "Fügen Sie ein neues Organisations-Tag hinzu" + +#: changedetectionio/blueprint/tags/templates/groups-overview.html:14 +msgid "Watch group / tag" +msgstr "Gruppe/Tag beobachten" + +#: changedetectionio/blueprint/tags/templates/groups-overview.html:21 +msgid "" +"Groups allows you to manage filters and notifications for multiple " +"watches under a single organisational tag." +msgstr "" + +#: changedetectionio/blueprint/tags/templates/groups-overview.html:31 +msgid "# Watches" +msgstr "# Uhren" + +#: changedetectionio/blueprint/tags/templates/groups-overview.html:32 +msgid "Tag / Label name" +msgstr "Tag-/Labelname" + +#: changedetectionio/blueprint/tags/templates/groups-overview.html:42 +msgid "No website organisational tags/groups configured" +msgstr "Keine Website-Organisations-Tags/-Gruppen konfiguriert" + +#: changedetectionio/blueprint/tags/templates/groups-overview.html:53 +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:249 +msgid "Edit" +msgstr "Bearbeiten" + +#: changedetectionio/blueprint/tags/templates/groups-overview.html:58 +msgid "Delete Group?" +msgstr "Gruppe löschen?" + +#: changedetectionio/blueprint/tags/templates/groups-overview.html:59 +#, python-format +msgid "" +"<p>Are you sure you want to delete group " +"<strong>%(title)s</strong>?</p><p>This action cannot be undone.</p>" +msgstr "" + +#: changedetectionio/blueprint/tags/templates/groups-overview.html:60 +#: changedetectionio/blueprint/tags/templates/groups-overview.html:61 +#: changedetectionio/blueprint/ui/templates/edit.html:490 +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:73 +msgid "Delete" +msgstr "Löschen" + +#: changedetectionio/blueprint/tags/templates/groups-overview.html:61 +msgid "Deletes and removes tag" +msgstr "Löscht und entfernt das Tag" + +#: changedetectionio/blueprint/tags/templates/groups-overview.html:66 +msgid "Unlink Group?" +msgstr "Gruppenverknüpfung aufheben?" + +#: changedetectionio/blueprint/tags/templates/groups-overview.html:67 +#, python-format +msgid "" +"<p>Are you sure you want to unlink all watches from group " +"<strong>%(title)s</strong>?</p><p>The tag will be kept but watches will " +"be removed from it.</p>" +msgstr "" + +#: changedetectionio/blueprint/tags/templates/groups-overview.html:68 +#: changedetectionio/blueprint/tags/templates/groups-overview.html:69 +msgid "Unlink" +msgstr "Verknüpfung aufheben" + +#: changedetectionio/blueprint/tags/templates/groups-overview.html:69 +msgid "Keep the tag but unlink any watches" +msgstr "Behalten Sie das Tag, aber heben Sie die Verknüpfung aller Uhren auf" + +#: changedetectionio/blueprint/tags/templates/groups-overview.html:70 +#: changedetectionio/blueprint/ui/templates/edit.html:500 +msgid "RSS Feed for this watch" +msgstr "RSS-Feed für diese Uhr" + +#: changedetectionio/blueprint/ui/templates/clear_all_history.html:12 +msgid "" +"This will remove version history (snapshots) for ALL watches, but keep " +"your list of URLs!" +msgstr "" + +#: changedetectionio/blueprint/ui/templates/clear_all_history.html:13 +msgid "You may like to use the" +msgstr "Möglicherweise möchten Sie die verwenden" + +#: changedetectionio/blueprint/ui/templates/clear_all_history.html:13 +msgid "BACKUP" +msgstr "BACKUPS" + +#: changedetectionio/blueprint/ui/templates/clear_all_history.html:13 +msgid "link first." +msgstr "Link zuerst." + +#: changedetectionio/blueprint/ui/templates/clear_all_history.html:17 +msgid "Confirmation text" +msgstr "Keine Informationen" + +#: changedetectionio/blueprint/ui/templates/clear_all_history.html:27 +msgid "Type in the word" +msgstr "Geben Sie das Wort ein" + +#: changedetectionio/blueprint/ui/templates/clear_all_history.html:27 +msgid "clear" +msgstr "klar" + +#: changedetectionio/blueprint/ui/templates/clear_all_history.html:27 +msgid "to confirm that you understand." +msgstr "um zu bestätigen, dass Sie es verstanden haben." + +#: changedetectionio/blueprint/ui/templates/clear_all_history.html:33 +msgid "Clear History!" +msgstr "Klare Historien" + +#: changedetectionio/blueprint/ui/templates/clear_all_history.html:39 +#: changedetectionio/templates/base.html:271 +msgid "Cancel" +msgstr "Stornieren" + +#: changedetectionio/blueprint/ui/templates/diff-offscreen-options.html:3 +msgid "Share diff as image" +msgstr "Diff als Bild teilen" + +#: changedetectionio/blueprint/ui/templates/diff-offscreen-options.html:3 +msgid "Share as Image" +msgstr "Als Bild teilen" + +#: changedetectionio/blueprint/ui/templates/diff-offscreen-options.html:6 +msgid "Ignore any lines matching" +msgstr "Ignorieren Sie alle übereinstimmenden Zeilen" + +#: changedetectionio/blueprint/ui/templates/diff-offscreen-options.html:9 +msgid "Ignore any lines matching excluding digits" +msgstr "Ignorieren Sie alle übereinstimmenden Zeilen mit Ausnahme von Ziffern" + +#: changedetectionio/blueprint/ui/templates/diff.html:28 +msgid "From" +msgstr "Aus" + +#: changedetectionio/blueprint/ui/templates/diff.html:38 +msgid "To" +msgstr "Zu" + +#: changedetectionio/blueprint/ui/templates/diff.html:53 +msgid "Words" +msgstr "Passwort" + +#: changedetectionio/blueprint/ui/templates/diff.html:57 +msgid "Lines" +msgstr "Login" + +#: changedetectionio/blueprint/ui/templates/diff.html:61 +msgid "Ignore Whitespace" +msgstr "Leerzeichen ignorieren" + +#: changedetectionio/blueprint/ui/templates/diff.html:65 +msgid "Same/non-changed" +msgstr "Geändert" + +#: changedetectionio/blueprint/ui/templates/diff.html:69 +msgid "Removed" +msgstr "ENTFERNT" + +#: changedetectionio/blueprint/ui/templates/diff.html:73 +#: changedetectionio/blueprint/ui/templates/edit.html:327 +msgid "Added" +msgstr "Hinzugefügt" + +#: changedetectionio/blueprint/ui/templates/diff.html:77 +#: changedetectionio/blueprint/ui/templates/edit.html:327 +msgid "Replaced" +msgstr "Ersetzt" + +#: changedetectionio/blueprint/ui/templates/diff.html:82 +#: changedetectionio/blueprint/ui/templates/preview.html:36 +msgid "Keyboard:" +msgstr "Tastatur:" + +#: changedetectionio/blueprint/ui/templates/diff.html:83 +#: changedetectionio/blueprint/ui/templates/preview.html:37 +msgid "Previous" +msgstr "Vorschau" + +#: changedetectionio/blueprint/ui/templates/diff.html:84 +#: changedetectionio/blueprint/ui/templates/preview.html:38 +msgid "Next" +msgstr "Nächste" + +#: changedetectionio/blueprint/ui/templates/diff.html:91 +msgid "Jump to next difference" +msgstr "Springe zum nächsten Unterschied" + +#: changedetectionio/blueprint/ui/templates/diff.html:91 +msgid "Jump" +msgstr "Springen" + +#: changedetectionio/blueprint/ui/templates/diff.html:97 +#: changedetectionio/blueprint/ui/templates/preview.html:45 +msgid "Error Text" +msgstr "Fehlertext" + +#: changedetectionio/blueprint/ui/templates/diff.html:98 +#: changedetectionio/blueprint/ui/templates/preview.html:47 +msgid "Error Screenshot" +msgstr "Fehler-Screenshot" + +#: changedetectionio/blueprint/ui/templates/diff.html:99 +#: changedetectionio/blueprint/ui/templates/preview.html:50 +#: changedetectionio/processors/text_json_diff/processor.py:24 +msgid "Text" +msgstr "Text" + +#: changedetectionio/blueprint/ui/templates/diff.html:100 +#: changedetectionio/blueprint/ui/templates/preview.html:51 +msgid "Current screenshot" +msgstr "Aktueller Screenshot" + +#: changedetectionio/blueprint/ui/templates/diff.html:101 +msgid "Extract Data" +msgstr "Daten extrahieren" + +#: changedetectionio/blueprint/ui/templates/diff.html:107 +msgid "seconds ago." +msgstr "vor Sekunden." + +#: changedetectionio/blueprint/ui/templates/diff.html:114 +#: changedetectionio/blueprint/ui/templates/preview.html:59 +#: changedetectionio/blueprint/ui/templates/preview.html:66 +msgid "seconds ago" +msgstr "vor Sekunden" + +#: changedetectionio/blueprint/ui/templates/diff.html:115 +msgid "Current error-ing screenshot from most recent request" +msgstr "Aktueller fehlerhafter Screenshot der letzten Anfrage" + +#: changedetectionio/blueprint/ui/templates/diff.html:127 +msgid "Pro-tip: You can enable" +msgstr "Profi-Tipp: Sie können es aktivieren" + +#: changedetectionio/blueprint/ui/templates/diff.html:127 +msgid "\"share access when password is enabled\"" +msgstr "" + +#: changedetectionio/blueprint/ui/templates/diff.html:127 +msgid "from settings." +msgstr "EINSTELLUNGEN" + +#: changedetectionio/blueprint/ui/templates/diff.html:133 +msgid "Goto single snapshot" +msgstr "Gehe zu einem einzelnen Schnappschuss" + +#: changedetectionio/blueprint/ui/templates/diff.html:138 +#: changedetectionio/blueprint/ui/templates/edit.html:125 +msgid "Tip:" +msgstr "Tipp:" + +#: changedetectionio/blueprint/ui/templates/diff.html:138 +msgid "Highlight text to share or add to ignore lists." +msgstr "Markieren Sie Text zum Teilen oder zum Hinzufügen zu Ignorierlisten." + +#: changedetectionio/blueprint/ui/templates/diff.html:144 +#: changedetectionio/blueprint/ui/templates/preview.html:80 +msgid "" +"For now, Differences are performed on text, not graphically, only the " +"latest screenshot is available." +msgstr "" + +#: changedetectionio/blueprint/ui/templates/diff.html:149 +#: changedetectionio/blueprint/ui/templates/preview.html:86 +msgid "Current screenshot from most recent request" +msgstr "Aktueller Screenshot der letzten Anfrage" + +#: changedetectionio/blueprint/ui/templates/diff.html:151 +#: changedetectionio/blueprint/ui/templates/preview.html:88 +msgid "No screenshot available just yet! Try rechecking the page." +msgstr "" +"Noch kein Screenshot verfügbar! Versuchen Sie, die Seite noch einmal zu " +"überprüfen.\"Noch kein Screenshot verfügbar! Versuchen Sie, die Seite " +"noch einmal zu überprüfen.Noch kein Screenshot verfügbar! Versuchen Sie, " +"die Seite noch einmal zu überprüfen." + +#: changedetectionio/blueprint/ui/templates/diff.html:154 +msgid "Screenshot requires Playwright/WebDriver enabled" +msgstr "" +"Für den Screenshot ist die Aktivierung von Playwright/WebDriver " +"erforderlich\"Für den Screenshot ist die Aktivierung von " +"Playwright/WebDriver erforderlichFür den Screenshot ist die Aktivierung " +"von Playwright/WebDriver erforderlich" + +#: changedetectionio/blueprint/ui/templates/edit.html:48 +msgid "Request" +msgstr "Anfrage" + +#: changedetectionio/blueprint/ui/templates/edit.html:52 +msgid "Browser Steps" +msgstr "Browserschritte" + +#: changedetectionio/blueprint/ui/templates/edit.html:55 +msgid "Visual Filter Selector" +msgstr "Visuelle Filterauswahl" + +#: changedetectionio/blueprint/ui/templates/edit.html:57 +msgid "Conditions" +msgstr "Bedingungen" + +#: changedetectionio/blueprint/ui/templates/edit.html:60 +msgid "Stats" +msgstr "EINSTELLUNGEN" + +#: changedetectionio/blueprint/ui/templates/edit.html:73 +#: changedetectionio/blueprint/ui/templates/edit.html:313 +msgid "Some sites use JavaScript to create the content, for this you should" +msgstr "" +"Einige Websites verwenden JavaScript, um den Inhalt zu erstellen. Dies " +"sollten Sie tun\"Einige Websites verwenden JavaScript, um den Inhalt zu " +"erstellen. Dies sollten Sie tunEinige Websites verwenden JavaScript, um " +"den Inhalt zu erstellen. Dies sollten Sie tun" + +#: changedetectionio/blueprint/ui/templates/edit.html:73 +#: changedetectionio/blueprint/ui/templates/edit.html:313 +msgid "use the Chrome/WebDriver Fetcher" +msgstr "Verwenden Sie den Chrome/WebDriver Fetcher" + +#: changedetectionio/blueprint/ui/templates/edit.html:74 +msgid "Variables are supported in the URL" +msgstr "Variablen werden in der URL unterstützt" + +#: changedetectionio/blueprint/ui/templates/edit.html:74 +#: changedetectionio/blueprint/ui/templates/edit.html:180 +#: changedetectionio/blueprint/ui/templates/edit.html:189 +msgid "help and examples here" +msgstr "Hilfe und Beispiele finden Sie hier" + +#: changedetectionio/blueprint/ui/templates/edit.html:78 +msgid "Organisational tag/group name used in the main listing page" +msgstr "" +"Organisations-Tag/Gruppenname, der auf der Haupteintragsseite verwendet " +"wird\"Organisations-Tag/Gruppenname, der auf der Haupteintragsseite " +"verwendet wirdOrganisations-Tag/Gruppenname, der auf der " +"Haupteintragsseite verwendet wird" + +#: changedetectionio/blueprint/ui/templates/edit.html:85 +msgid "" +"Automatically uses the page title if found, you can also use your own " +"title/description here" +msgstr "" + +#: changedetectionio/blueprint/ui/templates/edit.html:95 +msgid "The interval/amount of time between each check." +msgstr "Das Intervall/die Zeitdauer zwischen den einzelnen Überprüfungen." + +#: changedetectionio/blueprint/ui/templates/edit.html:110 +msgid "" +"Sends a notification when the filter can no longer be seen on the page, " +"good for knowing when the page changed and your filter will not work " +"anymore." +msgstr "" + +#: changedetectionio/blueprint/ui/templates/edit.html:123 +msgid "Use the" +msgstr "Benutzen Sie die" + +#: changedetectionio/blueprint/ui/templates/edit.html:123 +msgid "Basic" +msgstr "Basic" + +#: changedetectionio/blueprint/ui/templates/edit.html:123 +msgid "" +"method (default) where your watched site doesn't need Javascript to " +"render." +msgstr "" + +#: changedetectionio/blueprint/ui/templates/edit.html:124 +msgid "The" +msgstr "Der" + +#: changedetectionio/blueprint/ui/templates/edit.html:124 +msgid "Chrome/Javascript" +msgstr "Chrome/Javascript" + +#: changedetectionio/blueprint/ui/templates/edit.html:124 +msgid "" +"method requires a network connection to a running WebDriver+Chrome " +"server, set by the ENV var 'WEBDRIVER_URL'." +msgstr "" + +#: changedetectionio/blueprint/ui/templates/edit.html:125 +msgid "Connect using Bright Data and Oxylabs Proxies, find out more here." +msgstr "" +"Stellen Sie eine Verbindung über Bright Data und Oxylabs Proxies her, " +"erfahren Sie hier mehr.\"Stellen Sie eine Verbindung über Bright Data und" +" Oxylabs Proxies her, erfahren Sie hier mehr.Stellen Sie eine Verbindung " +"über Bright Data und Oxylabs Proxies her, erfahren Sie hier mehr." + +#: changedetectionio/blueprint/ui/templates/edit.html:130 +msgid "Check/Scan all" +msgstr "Überprüfen Sie alles noch einmal" + +#: changedetectionio/blueprint/ui/templates/edit.html:133 +msgid "Choose a proxy for this watch" +msgstr "RSS-Feed für diese Uhr" + +#: changedetectionio/blueprint/ui/templates/edit.html:143 +msgid "" +"If you're having trouble waiting for the page to be fully rendered (text " +"missing etc), try increasing the 'wait' time here." +msgstr "" + +#: changedetectionio/blueprint/ui/templates/edit.html:145 +msgid "This will wait" +msgstr "Das wird warten" + +#: changedetectionio/blueprint/ui/templates/edit.html:145 +msgid "seconds before extracting the text." +msgstr "Sekunden, bevor der Text extrahiert wird." + +#: changedetectionio/blueprint/ui/templates/edit.html:147 +msgid "Using the current global default settings" +msgstr "Verwendung der aktuellen globalen Standardeinstellungen" + +#: changedetectionio/blueprint/ui/templates/edit.html:152 +#: changedetectionio/blueprint/ui/templates/edit.html:165 +msgid "Show advanced options" +msgstr "Erweiterte Optionen anzeigen" + +#: changedetectionio/blueprint/ui/templates/edit.html:157 +msgid "" +"Run this code before performing change detection, handy for filling in " +"fields and other actions" +msgstr "" + +#: changedetectionio/blueprint/ui/templates/edit.html:158 +msgid "More help and examples here" +msgstr "Weitere Hilfe und Beispiele finden Sie hier" + +#: changedetectionio/blueprint/ui/templates/edit.html:180 +msgid "Variables are supported in the request body" +msgstr "Variablen werden im Anforderungstext unterstützt" + +#: changedetectionio/blueprint/ui/templates/edit.html:189 +msgid "Variables are supported in the request header values" +msgstr "Variablen werden in den Anforderungsheaderwerten unterstützt" + +#: changedetectionio/blueprint/ui/templates/edit.html:192 +msgid "Alert! Extra headers file found and will be added to this watch!" +msgstr "Alarm! Zusätzliche Header-Datei gefunden und wird dieser Uhr hinzugefügt!" + +#: changedetectionio/blueprint/ui/templates/edit.html:194 +msgid "Headers can be also read from a file in your data-directory" +msgstr "" +"Header können auch aus einer Datei in Ihrem Datenverzeichnis gelesen " +"werden\"Header können auch aus einer Datei in Ihrem Datenverzeichnis " +"gelesen werdenHeader können auch aus einer Datei in Ihrem " +"Datenverzeichnis gelesen werden" + +#: changedetectionio/blueprint/ui/templates/edit.html:194 +msgid "Read more here" +msgstr "Lesen Sie hier mehr" + +#: changedetectionio/blueprint/ui/templates/edit.html:197 +msgid "Not supported by Selenium browser" +msgstr "Wird vom Selenium-Browser nicht unterstützt" + +#: changedetectionio/blueprint/ui/templates/edit.html:221 +msgid "Turn on text finder" +msgstr "Schalten Sie den Textfinder ein" + +#: changedetectionio/blueprint/ui/templates/edit.html:224 +msgid "Please wait, first browser step can take a little time to load.." +msgstr "Bitte warten Sie, das Laden des ersten Browserschritts kann etwas dauern." + +#: changedetectionio/blueprint/ui/templates/edit.html:231 +msgid "Click here to Start" +msgstr "Klicken Sie hier, um zu starten" + +#: changedetectionio/blueprint/ui/templates/edit.html:233 +msgid "Please allow 10-15 seconds for the browser to connect." +msgstr "" +"Bitte warten Sie 10–15 Sekunden, bis der Browser eine Verbindung " +"herstellt.\"Bitte warten Sie 10–15 Sekunden, bis der Browser eine " +"Verbindung herstellt.Bitte warten Sie 10–15 Sekunden, bis der Browser " +"eine Verbindung herstellt." + +#: changedetectionio/blueprint/ui/templates/edit.html:242 +msgid "Press \"Play\" to start." +msgstr "" + +#: changedetectionio/blueprint/ui/templates/edit.html:249 +#: changedetectionio/blueprint/ui/templates/edit.html:419 +msgid "Visual Selector data is not ready, watch needs to be checked atleast once." +msgstr "" +"Die Visual Selector-Daten sind nicht bereit, die Uhr muss mindestens " +"einmal überprüft werden.\"Die Visual Selector-Daten sind nicht bereit, " +"die Uhr muss mindestens einmal überprüft werden.Die Visual Selector-Daten" +" sind nicht bereit, die Uhr muss mindestens einmal überprüft werden." + +#: changedetectionio/blueprint/ui/templates/edit.html:253 +msgid "" +"Sorry, this functionality only works with fetchers that support " +"interactive Javascript (so far only Playwright based fetchers)" +msgstr "" + +#: changedetectionio/blueprint/ui/templates/edit.html:254 +#: changedetectionio/blueprint/ui/templates/edit.html:424 +msgid "You need to" +msgstr "Das musst du" + +#: changedetectionio/blueprint/ui/templates/edit.html:254 +#: changedetectionio/blueprint/ui/templates/edit.html:424 +msgid "Set the fetch method" +msgstr "Legen Sie die Abrufmethode fest" + +#: changedetectionio/blueprint/ui/templates/edit.html:254 +msgid "to one that supports interactive Javascript." +msgstr "zu einer, die interaktives Javascript unterstützt." + +#: changedetectionio/blueprint/ui/templates/edit.html:297 +msgid "" +"Use the verify (✓) button to test if a condition passes against the " +"current snapshot." +msgstr "" + +#: changedetectionio/blueprint/ui/templates/edit.html:298 +msgid "Read a quick tutorial about" +msgstr "Lesen Sie ein kurzes Tutorial darüber" + +#: changedetectionio/blueprint/ui/templates/edit.html:298 +msgid "using conditional web page changes here" +msgstr "Verwenden Sie hier bedingte Webseitenänderungen" + +#: changedetectionio/blueprint/ui/templates/edit.html:303 +msgid "Activate preview" +msgstr "Vorschau" + +#: changedetectionio/blueprint/ui/templates/edit.html:307 +msgid "Pro-tips:" +msgstr "Profi-Tipps:" + +#: changedetectionio/blueprint/ui/templates/edit.html:310 +msgid "Use the preview page to see your filters and triggers highlighted." +msgstr "" +"Verwenden Sie die Vorschauseite, um Ihre Filter und Auslöser " +"hervorgehoben anzuzeigen.\"Verwenden Sie die Vorschauseite, um Ihre " +"Filter und Auslöser hervorgehoben anzuzeigen.Verwenden Sie die " +"Vorschauseite, um Ihre Filter und Auslöser hervorgehoben anzuzeigen." + +#: changedetectionio/blueprint/ui/templates/edit.html:322 +msgid "Limit trigger/ignore/block/extract to;" +msgstr "Auslösen/Ignorieren/Blockieren/Extrahieren beschränken auf;" + +#: changedetectionio/blueprint/ui/templates/edit.html:326 +msgid "" +"Note: Depending on the length and similarity of the text on each line, " +"the algorithm may consider an" +msgstr "" + +#: changedetectionio/blueprint/ui/templates/edit.html:326 +#: changedetectionio/blueprint/ui/templates/edit.html:328 +msgid "addition" +msgstr "Zusatz" + +#: changedetectionio/blueprint/ui/templates/edit.html:326 +msgid "instead of" +msgstr "anstatt" + +#: changedetectionio/blueprint/ui/templates/edit.html:326 +msgid "replacement" +msgstr "Ersatz" + +#: changedetectionio/blueprint/ui/templates/edit.html:326 +msgid "for example." +msgstr "Zum Beispiel." + +#: changedetectionio/blueprint/ui/templates/edit.html:327 +msgid "So it's always better to select" +msgstr "Es ist also immer besser, auszuwählen" + +#: changedetectionio/blueprint/ui/templates/edit.html:327 +msgid "when you're interested in new content." +msgstr "wenn Sie an neuen Inhalten interessiert sind." + +#: changedetectionio/blueprint/ui/templates/edit.html:328 +msgid "When content is merely moved in a list, it will also trigger an" +msgstr "" +"Wenn Inhalte lediglich in einer Liste verschoben werden, wird auch ein " +"Fehler ausgelöst\"Wenn Inhalte lediglich in einer Liste verschoben " +"werden, wird auch ein Fehler ausgelöstWenn Inhalte lediglich in einer " +"Liste verschoben werden, wird auch ein Fehler ausgelöst" + +#: changedetectionio/blueprint/ui/templates/edit.html:328 +msgid "consider enabling" +msgstr "Erwägen Sie die Aktivierung" + +#: changedetectionio/blueprint/ui/templates/edit.html:328 +msgid "Only trigger when unique lines appear" +msgstr "Wird nur ausgelöst, wenn eindeutige Zeilen angezeigt werden" + +#: changedetectionio/blueprint/ui/templates/edit.html:332 +msgid "" +"Good for websites that just move the content around, and you want to know" +" when NEW content is added, compares new lines against all history for " +"this watch." +msgstr "" + +#: changedetectionio/blueprint/ui/templates/edit.html:340 +msgid "" +"Helps reduce changes detected caused by sites shuffling lines around, " +"combine with" +msgstr "" + +#: changedetectionio/blueprint/ui/templates/edit.html:340 +msgid "check unique lines" +msgstr "Überprüfen Sie eindeutige Zeilen" + +#: changedetectionio/blueprint/ui/templates/edit.html:340 +msgid "below." +msgstr "unten." + +#: changedetectionio/blueprint/ui/templates/edit.html:344 +msgid "Remove any whitespace before and after each line of text" +msgstr "Entfernen Sie alle Leerzeichen vor und nach jeder Textzeile" + +#: changedetectionio/blueprint/ui/templates/edit.html:358 +#: changedetectionio/blueprint/ui/templates/edit.html:361 +#: changedetectionio/blueprint/ui/templates/edit.html:417 +msgid "Loading..." +msgstr "Laden..." + +#: changedetectionio/blueprint/ui/templates/edit.html:386 +msgid "The Visual Selector tool lets you select the" +msgstr "Mit dem visuellen Auswahltool können Sie Folgendes auswählen" + +#: changedetectionio/blueprint/ui/templates/edit.html:386 +msgid "text" +msgstr "Text" + +#: changedetectionio/blueprint/ui/templates/edit.html:386 +msgid "" +"elements that will be used for the change detection. It automatically " +"fills-in the filters in the \"CSS/JSONPath/JQ/XPath Filters\" box of the" +msgstr "" + +#: changedetectionio/blueprint/ui/templates/edit.html:386 +msgid "tab. Use" +msgstr "Pause" + +#: changedetectionio/blueprint/ui/templates/edit.html:386 +msgid "Shift+Click" +msgstr "Umschalt+Klick" + +#: changedetectionio/blueprint/ui/templates/edit.html:386 +msgid "to select multiple items." +msgstr "um mehrere Elemente auszuwählen." + +#: changedetectionio/blueprint/ui/templates/edit.html:391 +msgid "Selection Mode:" +msgstr "Auswahlmodus:" + +#: changedetectionio/blueprint/ui/templates/edit.html:394 +msgid "Select by element" +msgstr "Nach Element auswählen" + +#: changedetectionio/blueprint/ui/templates/edit.html:398 +msgid "Draw area" +msgstr "Bereich zeichnen" + +#: changedetectionio/blueprint/ui/templates/edit.html:406 +msgid "Clear selection" +msgstr "Klare Auswahl" + +#: changedetectionio/blueprint/ui/templates/edit.html:408 +msgid "One moment, fetching screenshot and element information.." +msgstr "Einen Moment, Screenshot und Elementinformationen abrufen." + +#: changedetectionio/blueprint/ui/templates/edit.html:417 +msgid "Currently:" +msgstr "Momentan:" + +#: changedetectionio/blueprint/ui/templates/edit.html:423 +msgid "" +"Sorry, this functionality only works with fetchers that support " +"Javascript and screenshots (such as playwright etc)." +msgstr "" + +#: changedetectionio/blueprint/ui/templates/edit.html:424 +msgid "to one that supports Javascript and screenshots." +msgstr "zu einer, die Javascript und Screenshots unterstützt." + +#: changedetectionio/blueprint/ui/templates/edit.html:441 +msgid "Check count" +msgstr "Anzahl prüfen" + +#: changedetectionio/blueprint/ui/templates/edit.html:445 +msgid "Consecutive filter failures" +msgstr "Aufeinanderfolgende Filterausfälle" + +#: changedetectionio/blueprint/ui/templates/edit.html:449 +msgid "History length" +msgstr "Geschichte" + +#: changedetectionio/blueprint/ui/templates/edit.html:453 +msgid "Last fetch duration" +msgstr "Dauer des letzten Abrufs" + +#: changedetectionio/blueprint/ui/templates/edit.html:457 +msgid "Notification alert count" +msgstr "Anzahl der Benachrichtigungsalarme" + +#: changedetectionio/blueprint/ui/templates/edit.html:461 +msgid "Server type reply" +msgstr "Antwort vom Servertyp" + +#: changedetectionio/blueprint/ui/templates/edit.html:475 +msgid "Download latest HTML snapshot" +msgstr "Laden Sie den neuesten HTML-Snapshot herunter" + +#: changedetectionio/blueprint/ui/templates/edit.html:488 +msgid "Delete Watch?" +msgstr "Uhren löschen?" + +#: changedetectionio/blueprint/ui/templates/edit.html:489 +msgid "Are you sure you want to delete the watch for:" +msgstr "Sind Sie sicher, dass Sie die Überwachung löschen möchten für:" + +#: changedetectionio/blueprint/ui/templates/edit.html:489 +msgid "This action cannot be undone." +msgstr "Diese Aktion kann nicht rückgängig gemacht werden." + +#: changedetectionio/blueprint/ui/templates/edit.html:495 +msgid "Clear History?" +msgstr "Klare Historien" + +#: changedetectionio/blueprint/ui/templates/edit.html:496 +msgid "Are you sure you want to clear all history for:" +msgstr "Sind Sie sicher, dass Sie den gesamten Verlauf löschen möchten für:" + +#: changedetectionio/blueprint/ui/templates/edit.html:496 +msgid "" +"This will remove all snapshots and previous versions. This action cannot " +"be undone." +msgstr "" + +#: changedetectionio/blueprint/ui/templates/edit.html:497 +msgid "Clear History" +msgstr "Klare Historien" + +#: changedetectionio/blueprint/ui/templates/edit.html:499 +msgid "Clone & Edit" +msgstr "Klonen und bearbeiten" + +#: changedetectionio/blueprint/ui/templates/preview.html:22 +msgid "Select timestamp" +msgstr "Zeitstempel auswählen" + +#: changedetectionio/blueprint/ui/templates/preview.html:31 +msgid "Go" +msgstr "Gehen" + +#: changedetectionio/blueprint/ui/templates/preview.html:69 +msgid "Current erroring screenshot from most recent request" +msgstr "Aktueller fehlerhafter Screenshot aus der letzten Anfrage" + +#: changedetectionio/blueprint/ui/templates/preview.html:91 +msgid "" +"Screenshot requires a Content Fetcher ( Sockpuppetbrowser, selenium, etc " +") that supports screenshots." +msgstr "" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:31 +msgid "Add a new web page change detection watch" +msgstr "" +"Fügen Sie eine neue Überwachung zur Erkennung von Webseitenänderungen " +"hinzu" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:34 +msgid "Watch this URL!" +msgstr "Sehen Sie sich diese URL an!" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:35 +msgid "Edit first then Watch" +msgstr "Zuerst bearbeiten, dann ansehen" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:45 +msgid "Create a shareable link" +msgstr "Erstellen Sie einen gemeinsam nutzbaren Link" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:45 +msgid "Tip: You can also add 'shared' watches." +msgstr "Tipp: Sie können auch „gemeinsame“ Uhren hinzufügen." + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:45 +msgid "More info" +msgstr "Weitere Informationen" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:53 +msgid "Pause" +msgstr "Pause" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:54 +msgid "UnPause" +msgstr "Pause aufheben" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:55 +msgid "Mute" +msgstr "Stumm" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:56 +msgid "UnMute" +msgstr "Stummschaltung aufheben" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:57 +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:248 +msgid "Recheck" +msgstr "Neu prüfen" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:58 +msgid "Tag" +msgstr "Etikett" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:59 +msgid "Mark viewed" +msgstr "Mark angesehen" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:60 +msgid "Use default notification" +msgstr "Standardbenachrichtigung verwenden" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:61 +msgid "Clear errors" +msgstr "Klare Fehler" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:65 +msgid "Clear Histories" +msgstr "Klare Historien" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:66 +msgid "" +"<p>Are you sure you want to clear history for the selected " +"items?</p><p>This action cannot be undone.</p>" +msgstr "" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:67 +msgid "OK" +msgstr "OK" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:67 +msgid "Clear/reset history" +msgstr "Verlauf löschen/zurücksetzen" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:71 +msgid "Delete Watches?" +msgstr "Uhren löschen?" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:72 +msgid "" +"<p>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:78 +msgid "Searching" +msgstr "Suchen" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:80 +msgid "All" +msgstr "Alle" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:118 +msgid "Website" +msgstr "Webseite" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:120 +msgid "Restock & Price" +msgstr "Auffüllen und Preis" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:122 +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:123 +msgid "Last" +msgstr "Zuletzt" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:122 +msgid "Checked" +msgstr "Geprüft" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:123 +msgid "Changed" +msgstr "Geändert" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:130 +msgid "No website watches configured, please add a URL in the box above, or" +msgstr "" +"Es sind keine Website-Überwachungen konfiguriert. Bitte fügen Sie im Feld" +" oben eine URL hinzu, oder\"Es sind keine Website-Überwachungen " +"konfiguriert. Bitte fügen Sie im Feld oben eine URL hinzu, oderEs sind " +"keine Website-Überwachungen konfiguriert. Bitte fügen Sie im Feld oben " +"eine URL hinzu, oderEs sind keine Website-Überwachungen konfiguriert. " +"Bitte fügen Sie im Feld oben eine URL hinzu, oder" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:130 +msgid "import a list" +msgstr "eine Liste importieren" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:213 +msgid "Detecting restock and price" +msgstr "Erkennen von Lagerbeständen und Preisen" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:215 +msgid "In stock" +msgstr "Auf Lager" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:215 +msgid "Not in stock" +msgstr "Nicht auf Lager" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:221 +msgid "Price" +msgstr "Preis" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:226 +msgid "No information" +msgstr "Keine Informationen" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:234 +#: changedetectionio/templates/base.html:248 +msgid "Checking now" +msgstr "Jetzt prüfen" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:247 +msgid "Queued" +msgstr "Wartend" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:250 +msgid "History" +msgstr "Verlauf" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:251 +msgid "Preview" +msgstr "Vorschau" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:260 +msgid "With errors" +msgstr "Mit Fehlern" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:263 +msgid "Mark all viewed" +msgstr "Alle angesehen markieren" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:267 +#, python-format +msgid "Mark all viewed in '%(title)s'" +msgstr "Alle in „%(title)s“ angezeigten Elemente markieren" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:271 +msgid "Unread" +msgstr "Ungelesen" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:274 +msgid "Recheck all" +msgstr "Überprüfen Sie alles noch einmal" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:274 +#, python-format +msgid "in '%(title)s'" +msgstr "in '%(title)s'" + +#: changedetectionio/processors/image_ssim_diff/forms.py:19 +#: changedetectionio/processors/image_ssim_diff/forms.py:69 +msgid "Bounding box value is too long" +msgstr "Der Wert des Begrenzungsrahmens ist zu lang" + +#: changedetectionio/processors/image_ssim_diff/forms.py:23 +msgid "Bounding box must be in format: x,y,width,height (integers only)" +msgstr "" +"Der Begrenzungsrahmen muss folgendes Format haben: x, y, Breite, Höhe " +"(nur Ganzzahlen)" + +#: changedetectionio/processors/image_ssim_diff/forms.py:29 +msgid "Bounding box values must be non-negative" +msgstr "Begrenzungsrahmenwerte dürfen nicht negativ sein" + +#: changedetectionio/processors/image_ssim_diff/forms.py:31 +msgid "Bounding box values are too large" +msgstr "Die Werte des Begrenzungsrahmens sind zu groß" + +#: changedetectionio/processors/image_ssim_diff/forms.py:40 +msgid "Selection mode must be either \"element\" or \"draw\"" +msgstr "" + +#: changedetectionio/processors/image_ssim_diff/forms.py:47 +msgid "Minimum Change Percentage" +msgstr "Mindeständerungsprozentsatz" + +#: changedetectionio/processors/image_ssim_diff/forms.py:56 +msgid "Pixel Difference Sensitivity" +msgstr "Pixeldifferenzempfindlichkeit" + +#: changedetectionio/processors/image_ssim_diff/forms.py:58 +msgid "Use global default" +msgstr "Verwenden Sie Systemstandards" + +#: changedetectionio/processors/image_ssim_diff/forms.py:66 +msgid "Bounding Box" +msgstr "Begrenzungsrahmen" + +#: changedetectionio/processors/image_ssim_diff/forms.py:76 +msgid "Selection Mode" +msgstr "Auswahlmodus:" + +#: changedetectionio/processors/image_ssim_diff/forms.py:79 +msgid "Selection mode value is too long" +msgstr "Der Wert für den Auswahlmodus ist zu lang" + +#: changedetectionio/processors/image_ssim_diff/forms.py:87 +msgid "Screenshot Comparison" +msgstr "Screenshot-Vergleich" + +#: changedetectionio/processors/image_ssim_diff/processor.py:20 +msgid "Visual / Image screenshot change detection" +msgstr "Erkennung von visuellen / Bild-Screenshot-Änderungen" + +#: changedetectionio/processors/image_ssim_diff/processor.py:21 +msgid "Compares screenshots using fast OpenCV algorithm, 10-100x faster than SSIM" +msgstr "Vergleicht Screenshots mit dem schnellen OpenCV-Algorithmus, 10-100x schneller als SSIM" + +#: changedetectionio/processors/image_ssim_diff/processor.py:23 +msgid "Visual" +msgstr "Visuell" + +#: changedetectionio/processors/restock_diff/forms.py:15 +msgid "Re-stock detection" +msgstr "Erkennung von Wiederbeständen" + +#: changedetectionio/processors/restock_diff/forms.py:16 +msgid "In Stock only (Out Of Stock -> In Stock only)" +msgstr "Nur auf Lager (Ausverkauft -> Nur auf Lager)" + +#: changedetectionio/processors/restock_diff/forms.py:17 +msgid "Any availability changes" +msgstr "Eventuelle Änderungen der Verfügbarkeit" + +#: changedetectionio/processors/restock_diff/forms.py:18 +msgid "Off, don't follow availability/restock" +msgstr "Aus, Verfügbarkeit/Auffüllung nicht verfolgen" + +#: changedetectionio/processors/restock_diff/forms.py:21 +msgid "Below price to trigger notification" +msgstr "Unterhalb des Preises, um eine Benachrichtigung auszulösen" + +#: changedetectionio/processors/restock_diff/forms.py:22 +#: changedetectionio/processors/restock_diff/forms.py:24 +msgid "No limit" +msgstr "Keine Begrenzung" + +#: changedetectionio/processors/restock_diff/forms.py:23 +msgid "Above price to trigger notification" +msgstr "Über dem Preis, um eine Benachrichtigung auszulösen" + +#: changedetectionio/processors/restock_diff/forms.py:25 +#, python-format +msgid "Threshold in %% for price changes since the original price" +msgstr "Schwellenwert in % für Preisänderungen seit dem ursprünglichen Preis" + +#: changedetectionio/processors/restock_diff/forms.py:28 +msgid "Should be between 0 and 100" +msgstr "Sollte zwischen 0 und 100 liegen" + +#: changedetectionio/processors/restock_diff/forms.py:31 +msgid "Follow price changes" +msgstr "Verfolgen Sie Preisänderungen" + +#: changedetectionio/processors/restock_diff/forms.py:37 +msgid "Restock & Price Detection" +msgstr "Auffüllen und Preis" + +#: changedetectionio/processors/restock_diff/processor.py:11 +msgid "Re-stock & Price detection for pages with a SINGLE product" +msgstr "Wiederauffüllung und Preiserkennung für Seiten mit einem EINZELNEN Produkt" + +#: changedetectionio/processors/restock_diff/processor.py:12 +msgid "Detects if the product goes back to in-stock" +msgstr "Erkennt, ob das Produkt wieder auf Lager ist" + +#: changedetectionio/processors/restock_diff/processor.py:14 +msgid "Restock" +msgstr "Auffüllen" + +#: changedetectionio/processors/text_json_diff/processor.py:21 +msgid "Webpage Text/HTML, JSON and PDF changes" +msgstr "Änderungen an Webseitentext/HTML, JSON und PDF" + +#: changedetectionio/processors/text_json_diff/processor.py:22 +msgid "Detects all text changes where possible" +msgstr "Erkennt nach Möglichkeit alle Textänderungen" + +#: changedetectionio/templates/base.html:77 +msgid "GROUPS" +msgstr "GRUPPEN" + +#: changedetectionio/templates/base.html:80 +msgid "SETTINGS" +msgstr "EINSTELLUNGEN" + +#: changedetectionio/templates/base.html:83 +msgid "IMPORT" +msgstr "IMPORT" + +#: changedetectionio/templates/base.html:86 +msgid "BACKUPS" +msgstr "BACKUPS" + +#: changedetectionio/templates/base.html:90 +msgid "EDIT" +msgstr "BEARBEITEN" + +#: changedetectionio/templates/base.html:100 +msgid "LOG OUT" +msgstr "Abmelden" + +#: changedetectionio/templates/base.html:109 +msgid "Search, or Use Alt+S Key" +msgstr "Suchen oder Alt+S-Taste verwenden" + +#: changedetectionio/templates/base.html:116 +msgid "Toggle Light/Dark Mode" +msgstr "Hell-/Dunkelmodus umschalten" + +#: changedetectionio/templates/base.html:117 +msgid "Toggle light/dark mode" +msgstr "Hell-/Dunkelmodus umschalten" + +#: changedetectionio/templates/base.html:127 +msgid "Change Language" +msgstr "Sprache ändern" + +#: changedetectionio/templates/base.html:128 +msgid "Change language" +msgstr "Sprache ändern" + +#: changedetectionio/templates/base.html:249 +msgid "Real-time updates offline" +msgstr "Echtzeit-Updates offline" + +#: changedetectionio/templates/base.html:259 +msgid "Select Language" +msgstr "Wählen Sie Sprache aus" + +#: changedetectionio/templates/login.html:10 +msgid "Password" +msgstr "Passwort" + +#: changedetectionio/templates/login.html:16 +msgid "Login" +msgstr "Login" + diff --git a/changedetectionio/translations/fr/LC_MESSAGES/messages.mo b/changedetectionio/translations/fr/LC_MESSAGES/messages.mo new file mode 100644 index 000000000..7002ddf6a Binary files /dev/null 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 new file mode 100644 index 000000000..78eafe1d8 --- /dev/null +++ b/changedetectionio/translations/fr/LC_MESSAGES/messages.po @@ -0,0 +1,2033 @@ +# French translations for PROJECT. +# Copyright (C) 2026 ORGANIZATION +# This file is distributed under the same license as the PROJECT project. +# FIRST AUTHOR <EMAIL@ADDRESS>, 2026. +# +msgid "" +msgstr "" +"Project-Id-Version: PROJECT VERSION\n" +"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" +"POT-Creation-Date: 2026-01-02 13:32+0100\n" +"PO-Revision-Date: 2026-01-02 11:40+0100\n" +"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" +"Language: fr\n" +"Language-Team: fr <LL@li.org>\n" +"Plural-Forms: nplurals=2; plural=(n > 1);\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=utf-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.17.0\n" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:241 +#: changedetectionio/flask_app.py:213 changedetectionio/flask_app.py:225 +#: changedetectionio/flask_app.py:246 +#: changedetectionio/realtime/socket_server.py:171 +msgid "Not yet" +msgstr "Pas encore" + +#: changedetectionio/forms.py:62 changedetectionio/forms.py:242 +msgid "" +"At least one time interval (weeks, days, hours, minutes, or seconds) must" +" be specified." +msgstr "" + +#: changedetectionio/forms.py:63 +msgid "" +"At least one time interval (weeks, days, hours, minutes, or seconds) must" +" be specified when not using global settings." +msgstr "" + +#: changedetectionio/forms.py:163 +msgid "Invalid time format. Use HH:MM." +msgstr "Format d'heure invalide. Utilisez HH:MM." + +#: changedetectionio/forms.py:179 +msgid "Not a valid timezone name" +msgstr "Ce n'est pas un nom de fuseau horaire valide" + +#: changedetectionio/forms.py:182 +msgid "not set" +msgstr "Pas encore" + +#: changedetectionio/forms.py:183 +msgid "Start At" +msgstr "PARAMÈTRES" + +#: changedetectionio/forms.py:184 +msgid "Run duration" +msgstr "Aucune information" + +#: changedetectionio/forms.py:187 +msgid "Use time scheduler" +msgstr "Utiliser le planificateur de temps" + +#: changedetectionio/forms.py:197 +msgid "Optional timezone to run in" +msgstr "Fuseau horaire facultatif dans lequel exécuter" + +#: changedetectionio/forms.py:211 +msgid "Monday" +msgstr "Lundi" + +#: changedetectionio/forms.py:212 +msgid "Tuesday" +msgstr "Mardi" + +#: changedetectionio/forms.py:213 +msgid "Wednesday" +msgstr "Mercredi" + +#: changedetectionio/forms.py:214 +msgid "Thursday" +msgstr "Jeudi" + +#: changedetectionio/forms.py:215 +msgid "Friday" +msgstr "Vendredi" + +#: changedetectionio/forms.py:216 +msgid "Saturday" +msgstr "Samedi" + +#: changedetectionio/forms.py:217 +msgid "Sunday" +msgstr "Dimanche" + +#: changedetectionio/forms.py:250 +msgid "Weeks" +msgstr "Semaines" + +#: changedetectionio/forms.py:250 changedetectionio/forms.py:251 +#: changedetectionio/forms.py:252 changedetectionio/forms.py:253 +#: changedetectionio/forms.py:254 changedetectionio/forms.py:957 +msgid "Should contain zero or more seconds" +msgstr "Doit contenir zéro ou plusieurs secondes" + +#: changedetectionio/forms.py:251 +msgid "Days" +msgstr "Jours" + +#: changedetectionio/forms.py:252 +msgid "Hours" +msgstr "Mot de passe" + +#: changedetectionio/forms.py:253 +msgid "Minutes" +msgstr "Muet" + +#: changedetectionio/forms.py:254 +msgid "Seconds" +msgstr "secondes" + +#: changedetectionio/forms.py:459 +msgid "Notification Body and Title is required when a Notification URL is used" +msgstr "" +"Le corps et le titre de la notification sont requis lorsqu'une URL de " +"notification est utiliséeLe corps et le titre de la notification sont " +"requis lorsqu'une URL de notification est utiliséeLe corps et le titre de" +" la notification sont requis lorsqu'une URL de notification est " +"utiliséeLe corps et le titre de la notification sont requis lorsqu'une " +"URL de notification est utilisée" + +#: changedetectionio/forms.py:488 +#, python-format +msgid "'%s' is not a valid AppRise URL." +msgstr "'%s' n'est pas une URL AppRise valide." + +#: changedetectionio/forms.py:561 changedetectionio/forms.py:580 +#, python-format +msgid "RegEx '%s' is not a valid regular expression." +msgstr "RegEx '%s' n'est pas une expression régulière valide." + +#: changedetectionio/forms.py:621 changedetectionio/forms.py:636 +#, python-format +msgid "'%s' is not a valid XPath expression. (%s)" +msgstr "'%s' n'est pas une expression XPath valide. (%s)" + +#: changedetectionio/forms.py:656 +#, python-format +msgid "'%s' is not a valid JSONPath expression. (%s)" +msgstr "'%s' n'est pas une expression JSONPath valide. (%s)" + +#: changedetectionio/forms.py:678 +#, python-format +msgid "'%s' is not a valid jq expression. (%s)" +msgstr "'%s' n'est pas une expression jq valide. (%s)" + +#: changedetectionio/forms.py:724 +msgid "Empty value not allowed." +msgstr "Valeur vide non autorisée." + +#: changedetectionio/forms.py:726 +msgid "Invalid value." +msgstr "Valeur invalide." + +#: changedetectionio/forms.py:733 +msgid "Watch" +msgstr "# Montres" + +#: changedetectionio/forms.py:734 changedetectionio/forms.py:768 +msgid "Processor" +msgstr "Processeur" + +#: changedetectionio/forms.py:735 +msgid "Edit > Watch" +msgstr "Modifiez d'abord, puis regardez" + +#: changedetectionio/forms.py:748 changedetectionio/forms.py:996 +msgid "Fetch Method" +msgstr "Définir la méthode de récupération" + +#: changedetectionio/forms.py:749 +msgid "Notification Body" +msgstr "Aucune information" + +#: changedetectionio/forms.py:750 +msgid "Notification format" +msgstr "Aucune information" + +#: changedetectionio/forms.py:751 +msgid "Notification Title" +msgstr "Aucune information" + +#: changedetectionio/forms.py:752 +msgid "Notification URL List" +msgstr "Aucune information" + +#: changedetectionio/forms.py:753 +msgid "Processor - What do you want to achieve?" +msgstr "Processeur – Que souhaitez-vous réaliser ?" + +#: changedetectionio/forms.py:754 +msgid "Default timezone for watch check scheduler" +msgstr "" +"Fuseau horaire par défaut pour le planificateur de contrôle de " +"surveillanceFuseau horaire par défaut pour le planificateur de contrôle " +"de surveillance" + +#: changedetectionio/forms.py:755 +msgid "Wait seconds before extracting text" +msgstr "secondes avant d’extraire le texte." + +#: changedetectionio/forms.py:755 +msgid "Should contain one or more seconds" +msgstr "Doit contenir une ou plusieurs secondes" + +#: changedetectionio/forms.py:769 +msgid "URLs" +msgstr "URL" + +#: changedetectionio/forms.py:770 +msgid "Upload .xlsx file" +msgstr "Téléchargez le fichier .xlsx" + +#: changedetectionio/forms.py:770 +msgid "Must be .xlsx file!" +msgstr "Il doit s'agir d'un fichier .xlsx !" + +#: changedetectionio/forms.py:771 +msgid "File mapping" +msgstr "Type de mappage de fichiers." + +#: changedetectionio/forms.py:775 +msgid "Operation" +msgstr "Options de l'interface utilisateur" + +#: changedetectionio/forms.py:778 +msgid "Selector" +msgstr "Mode de sélection :" + +#: changedetectionio/forms.py:779 +msgid "value" +msgstr "Pause" + +#: changedetectionio/forms.py:798 +msgid "Use global settings for time between check and scheduler." +msgstr "" +"Utilisez les paramètres globaux pour le temps entre la vérification et le" +" planificateur.Utilisez les paramètres globaux pour le temps entre la " +"vérification et le planificateur." + +#: changedetectionio/forms.py:800 +msgid "CSS/JSONPath/JQ/XPath Filters" +msgstr "Filtre CSS/xPath" + +#: changedetectionio/forms.py:802 changedetectionio/forms.py:998 +msgid "Remove elements" +msgstr "Supprimé" + +#: changedetectionio/forms.py:804 +msgid "Extract text" +msgstr "Extraire des données" + +#: changedetectionio/blueprint/imports/templates/import.html:106 +#: changedetectionio/forms.py:806 +msgid "Title" +msgstr "Titre" + +#: changedetectionio/forms.py:808 +msgid "Ignore lines containing" +msgstr "Ignorer toutes les lignes correspondant" + +#: changedetectionio/forms.py:810 +msgid "Request body" +msgstr "Demande" + +#: changedetectionio/forms.py:811 +msgid "Request method" +msgstr "Demande" + +#: changedetectionio/forms.py:812 +msgid "Ignore status codes (process non-2xx status codes as normal)" +msgstr "" +"Ignorer les codes d'état (traiter les codes d'état non-2xx comme " +"d'habitude)Ignorer les codes d'état (traiter les codes d'état non-2xx " +"comme d'habitude)" + +#: changedetectionio/forms.py:813 +msgid "Only trigger when unique lines appear in all history" +msgstr "Se déclenche uniquement lorsque des lignes uniques apparaissent" + +#: changedetectionio/blueprint/ui/templates/edit.html:336 +#: changedetectionio/forms.py:814 +msgid "Remove duplicate lines of text" +msgstr "Supprimer les lignes de texte en double" + +#: changedetectionio/forms.py:815 +msgid "Sort text alphabetically" +msgstr "Trier le texte par ordre alphabétique" + +#: changedetectionio/forms.py:816 changedetectionio/forms.py:1025 +msgid "Strip ignored lines" +msgstr "Supprimer les lignes ignorées" + +#: changedetectionio/forms.py:817 +msgid "Trim whitespace before and after text" +msgstr "Supprimez tout espace avant et après chaque ligne de texte" + +#: changedetectionio/forms.py:819 +msgid "Added lines" +msgstr "Se connecter" + +#: changedetectionio/forms.py:820 +msgid "Replaced/changed lines" +msgstr "Lignes remplacées/modifiées" + +#: changedetectionio/forms.py:821 +msgid "Removed lines" +msgstr "Supprimé" + +#: changedetectionio/forms.py:823 +msgid "Keyword triggers - Trigger/wait for text" +msgstr "Déclencheurs de mots clés – Déclencher/attendre du texte" + +#: changedetectionio/forms.py:826 +msgid "Block change-detection while text matches" +msgstr "Bloquer la détection des modifications lorsque le texte correspond" + +#: changedetectionio/forms.py:827 +msgid "Execute JavaScript before change detection" +msgstr "Exécutez JavaScript avant la détection des modifications" + +#: changedetectionio/blueprint/tags/templates/groups-overview.html:17 +#: changedetectionio/forms.py:829 changedetectionio/forms.py:1053 +msgid "Save" +msgstr "Sauvegarder" + +#: changedetectionio/forms.py:831 +msgid "Proxy" +msgstr "Procuration" + +#: changedetectionio/forms.py:833 +msgid "Send a notification when the filter can no longer be found on the page" +msgstr "Envoyer une notification lorsque le filtre n'est plus trouvé sur la page" + +#: changedetectionio/blueprint/settings/templates/settings.html:22 +#: changedetectionio/blueprint/tags/templates/edit-tag.html:32 +#: changedetectionio/blueprint/ui/templates/edit.html:59 +#: changedetectionio/forms.py:834 +msgid "Notifications" +msgstr "Aucune information" + +#: changedetectionio/forms.py:834 +msgid "Muted" +msgstr "Muet" + +#: changedetectionio/forms.py:834 +msgid "On" +msgstr "aucun" + +#: changedetectionio/forms.py:835 +msgid "Attach screenshot to notification (where possible)" +msgstr "Joindre une capture d'écran à la notification (si possible)" + +#: changedetectionio/forms.py:837 +msgid "Match" +msgstr "# Montres" + +#: changedetectionio/forms.py:837 +msgid "Match all of the following" +msgstr "Faites correspondre tous les éléments suivants" + +#: changedetectionio/forms.py:837 +msgid "Match any of the following" +msgstr "Faites correspondre l'un des éléments suivants" + +#: changedetectionio/forms.py:839 +msgid "Use page <title> in list" +msgstr "Utiliser la page <titre> dans la liste" + +#: changedetectionio/forms.py:856 +msgid "Body must be empty when Request Method is set to GET" +msgstr "Le corps doit être vide lorsque la méthode de requête est définie sur GET" + +#: changedetectionio/forms.py:865 changedetectionio/forms.py:879 +#: changedetectionio/forms.py:894 +#, python-format +msgid "Invalid template syntax configuration: %(error)s" +msgstr "Configuration de syntaxe de modèle non valide : %(error)s" + +#: changedetectionio/forms.py:869 changedetectionio/forms.py:883 +#, python-format +msgid "Invalid template syntax: %(error)s" +msgstr "Syntaxe de modèle non valide : %(error)s" + +#: changedetectionio/forms.py:898 +#, python-format +msgid "Invalid template syntax in \"%(header)s\" header: %(error)s" +msgstr "" + +#: changedetectionio/forms.py:922 changedetectionio/forms.py:934 +msgid "Name" +msgstr "Réactiver le son" + +#: changedetectionio/forms.py:923 +msgid "Proxy URL" +msgstr "URL du proxy" + +#: changedetectionio/forms.py:928 +msgid "Proxy URLs must start with http://, https:// or socks5://" +msgstr "Les URL proxy doivent commencer par http://, https:// ou chaussettes5://" + +#: changedetectionio/forms.py:935 +msgid "Browser connection URL" +msgstr "URL de connexion au navigateur" + +#: changedetectionio/forms.py:940 +msgid "Browser URLs must start with wss:// or ws://" +msgstr "Les URL du navigateur doivent commencer par wss:// ou ws://" + +#: changedetectionio/forms.py:946 +msgid "Plaintext requests" +msgstr "Requêtes en texte brut" + +#: changedetectionio/forms.py:948 +msgid "Chrome requests" +msgstr "Demande" + +#: changedetectionio/forms.py:954 +msgid "Default proxy" +msgstr "Proxy par défaut" + +#: changedetectionio/forms.py:955 +msgid "Random jitter seconds ± check" +msgstr "Secondes de gigue aléatoire ± vérification" + +#: changedetectionio/forms.py:959 +msgid "Number of fetch workers" +msgstr "Nombre de travailleurs de récupération" + +#: changedetectionio/forms.py:962 +msgid "Should be between 1 and 50" +msgstr "Doit être compris entre 1 et 50" + +#: changedetectionio/forms.py:964 +msgid "Requests timeout in seconds" +msgstr "Délai d'expiration des demandes en secondes" + +#: changedetectionio/forms.py:967 +msgid "Should be between 1 and 999" +msgstr "Doit être compris entre 1 et 999" + +#: changedetectionio/forms.py:972 +msgid "Default User-Agent overrides" +msgstr "Remplacements de l'agent utilisateur par défaut" + +#: changedetectionio/forms.py:978 +msgid "Both a name, and a Proxy URL is required." +msgstr "Un nom et une URL de proxy sont requis." + +#: changedetectionio/forms.py:982 +msgid "Open 'History' page in a new tab" +msgstr "Ouvrir la page \"Historique\" dans un nouvel onglet" + +#: changedetectionio/forms.py:983 +msgid "Realtime UI Updates Enabled" +msgstr "Mises à jour en temps réel hors ligne" + +#: changedetectionio/forms.py:984 +msgid "Favicons Enabled" +msgstr "envisager d'activer" + +#: changedetectionio/forms.py:985 +msgid "Use page <title> in watch overview list" +msgstr "Utiliser la page <titre> dans la liste de présentation des montres" + +#: changedetectionio/forms.py:990 +msgid "API access token security check enabled" +msgstr "Contrôle de sécurité du jeton d'accès à l'API activé" + +#: changedetectionio/forms.py:991 +msgid "Notification base URL override" +msgstr "Nombre d'alertes de notification" + +#: changedetectionio/forms.py:995 +msgid "Treat empty pages as a change?" +msgstr "Considérer les pages vides comme un changement ?" + +#: changedetectionio/forms.py:997 +msgid "Ignore Text" +msgstr "Texte d'erreur" + +#: changedetectionio/forms.py:999 +msgid "Ignore whitespace" +msgstr "Ignorer les espaces" + +#: changedetectionio/forms.py:1006 +#: changedetectionio/processors/image_ssim_diff/forms.py:50 +msgid "Must be between 0 and 100" +msgstr "Doit être compris entre 0 et 100" + +#: changedetectionio/forms.py:1013 +msgid "Pager size" +msgstr "Taille du téléavertisseur" + +#: changedetectionio/forms.py:1016 +msgid "Should be atleast zero (disabled)" +msgstr "Doit être au moins zéro (désactivé)" + +#: changedetectionio/forms.py:1018 +msgid "RSS Content format" +msgstr "Format du contenu RSS" + +#: changedetectionio/forms.py:1019 +msgid "RSS <description> body built from" +msgstr "RSS <description> corps construit à partir de" + +#: changedetectionio/forms.py:1020 +msgid "RSS \"System default\" template override" +msgstr "" + +#: changedetectionio/forms.py:1022 +msgid "Remove password" +msgstr "Mot de passe" + +#: changedetectionio/forms.py:1023 +msgid "Render anchor tag content" +msgstr "Afficher le contenu de la balise d'ancrage" + +#: changedetectionio/forms.py:1024 +msgid "Allow anonymous access to watch history page when password is enabled" +msgstr "" +"Autoriser l'accès anonyme à la page de l'historique des vidéos regardées " +"lorsque le mot de passe est activéAutoriser l'accès anonyme à la page de " +"l'historique des vidéos regardées lorsque le mot de passe est activé" + +#: changedetectionio/forms.py:1026 +msgid "Hide muted watches from RSS feed" +msgstr "Masquer les montres en sourdine du flux RSS" + +#: changedetectionio/forms.py:1029 +msgid "Enable RSS reader mode " +msgstr "Activer le mode lecteur RSS" + +#: changedetectionio/forms.py:1030 +msgid "Number of changes to show in watch RSS feed" +msgstr "Nombre de modifications à afficher dans le flux RSS de la montre" + +#: changedetectionio/forms.py:1032 changedetectionio/forms.py:1037 +msgid "Should contain zero or more attempts" +msgstr "Doit contenir zéro ou plusieurs tentatives" + +#: changedetectionio/forms.py:1034 +msgid "Number of times the filter can be missing before sending a notification" +msgstr "" +"Nombre de fois où le filtre peut être manquant avant l'envoi d'une " +"notificationNombre de fois où le filtre peut être manquant avant l'envoi " +"d'une notification" + +#: changedetectionio/forms.py:1057 +msgid "RegEx to extract" +msgstr "RegEx à extraire" + +#: changedetectionio/forms.py:1058 +msgid "Extract as CSV" +msgstr "Extraire des données" + +#: changedetectionio/blueprint/backups/templates/overview.html:6 +msgid "Backups" +msgstr "SAUVEGARDES" + +#: changedetectionio/blueprint/backups/templates/overview.html:9 +msgid "A backup is running!" +msgstr "Une sauvegarde est en cours !" + +#: changedetectionio/blueprint/backups/templates/overview.html:13 +msgid "" +"Here you can download and request a new backup, when a backup is " +"completed you will see it listed below." +msgstr "" + +#: changedetectionio/blueprint/backups/templates/overview.html:19 +msgid "Mb" +msgstr "Mo" + +#: changedetectionio/blueprint/backups/templates/overview.html:24 +msgid "No backups found." +msgstr "Aucune sauvegarde trouvée." + +#: changedetectionio/blueprint/backups/templates/overview.html:28 +msgid "Create backup" +msgstr "SAUVEGARDES" + +#: changedetectionio/blueprint/backups/templates/overview.html:30 +msgid "Remove backups" +msgstr "SAUVEGARDES" + +#: changedetectionio/blueprint/imports/templates/import.html:9 +msgid "URL List" +msgstr "Liste d'URL" + +#: changedetectionio/blueprint/imports/templates/import.html:10 +msgid "Distill.io" +msgstr "Distill.io" + +#: changedetectionio/blueprint/imports/templates/import.html:11 +msgid ".XLSX & Wachete" +msgstr ".XLSX et Wachete" + +#: changedetectionio/blueprint/imports/templates/import.html:20 +msgid "" +"Enter one URL per line, and optionally add tags for each URL after a " +"space, delineated by comma (,):" +msgstr "" + +#: changedetectionio/blueprint/imports/templates/import.html:22 +msgid "Example:" +msgstr "Exemple:" + +#: changedetectionio/blueprint/imports/templates/import.html:23 +msgid "URLs which do not pass validation will stay in the textarea." +msgstr "Les URL qui ne passent pas la validation resteront dans la zone de texte." + +#: changedetectionio/blueprint/imports/templates/import.html:44 +msgid "" +"Copy and Paste your Distill.io watch 'export' file, this should be a JSON" +" file." +msgstr "" + +#: changedetectionio/blueprint/imports/templates/import.html:45 +msgid "This is" +msgstr "C'est" + +#: changedetectionio/blueprint/imports/templates/import.html:45 +msgid "experimental" +msgstr "expérimental" + +#: changedetectionio/blueprint/imports/templates/import.html:45 +msgid "supported fields are" +msgstr "les champs pris en charge sont" + +#: changedetectionio/blueprint/imports/templates/import.html:45 +msgid "the rest (including" +msgstr "le reste (y compris" + +#: changedetectionio/blueprint/imports/templates/import.html:45 +msgid "are ignored." +msgstr "sont ignorés." + +#: changedetectionio/blueprint/imports/templates/import.html:48 +msgid "How to export?" +msgstr "Comment exporter ?" + +#: changedetectionio/blueprint/imports/templates/import.html:49 +msgid "Be sure to set your default fetcher to Chrome if required." +msgstr "" +"Assurez-vous de définir votre outil de récupération par défaut sur Chrome" +" si nécessaire.Assurez-vous de définir votre outil de récupération par " +"défaut sur Chrome si nécessaire.Assurez-vous de définir votre outil de " +"récupération par défaut sur Chrome si nécessaire." + +#: changedetectionio/blueprint/imports/templates/import.html:91 +msgid "Table of custom column and data types mapping for the" +msgstr "" +"Tableau de mappage des colonnes personnalisées et des types de données " +"pour leTableau de mappage des colonnes personnalisées et des types de " +"données pour leTableau de mappage des colonnes personnalisées et des " +"types de données pour le" + +#: changedetectionio/blueprint/imports/templates/import.html:91 +msgid "Custom mapping" +msgstr "Cartographie personnalisée" + +#: changedetectionio/blueprint/imports/templates/import.html:91 +msgid "File mapping type." +msgstr "Type de mappage de fichiers." + +#: changedetectionio/blueprint/imports/templates/import.html:95 +msgid "Column #" +msgstr "Colonne #" + +#: changedetectionio/blueprint/imports/templates/import.html:101 +msgid "Type" +msgstr "Taper" + +#: changedetectionio/blueprint/imports/templates/import.html:104 +msgid "none" +msgstr "aucun" + +#: changedetectionio/blueprint/imports/templates/import.html:105 +msgid "URL" +msgstr "URL" + +#: changedetectionio/blueprint/imports/templates/import.html:107 +msgid "CSS/xPath filter" +msgstr "Filtre CSS/xPath" + +#: changedetectionio/blueprint/imports/templates/import.html:108 +msgid "Group / Tag name(s)" +msgstr "Groupe de surveillance/tag" + +#: changedetectionio/blueprint/imports/templates/import.html:109 +msgid "Recheck time (minutes)" +msgstr "Temps de revérification (minutes)" + +#: changedetectionio/blueprint/imports/templates/import.html:116 +msgid "Import" +msgstr "IMPORTER" + +#: changedetectionio/blueprint/settings/templates/notification-log.html:7 +msgid "Notification debug log" +msgstr "Journal de débogage des notifications" + +#: changedetectionio/blueprint/settings/templates/settings.html:21 +#: changedetectionio/blueprint/tags/templates/edit-tag.html:27 +#: changedetectionio/blueprint/ui/templates/edit.html:47 +msgid "General" +msgstr "Général" + +#: changedetectionio/blueprint/settings/templates/settings.html:23 +msgid "Fetching" +msgstr "Recherche" + +#: changedetectionio/blueprint/settings/templates/settings.html:24 +msgid "Global Filters" +msgstr "Filtres globaux" + +#: changedetectionio/blueprint/settings/templates/settings.html:25 +msgid "UI Options" +msgstr "Options de l'interface utilisateur" + +#: changedetectionio/blueprint/settings/templates/settings.html:26 +msgid "API" +msgstr "API" + +#: changedetectionio/blueprint/settings/templates/settings.html:27 +msgid "RSS" +msgstr "RSS" + +#: changedetectionio/blueprint/settings/templates/settings.html:28 +msgid "Time & Date" +msgstr "Heure et date" + +#: changedetectionio/blueprint/settings/templates/settings.html:29 +msgid "CAPTCHA & Proxies" +msgstr "CAPTCHA et procurations" + +#: changedetectionio/blueprint/settings/templates/settings.html:35 +msgid "Info" +msgstr "Plus d'informations" + +#: changedetectionio/blueprint/settings/templates/settings.html:46 +msgid "Default recheck time for all watches, current system minimum is" +msgstr "" +"Heure de revérification par défaut pour toutes les montres, le minimum " +"actuel du système estHeure de revérification par défaut pour toutes les " +"montres, le minimum actuel du système estHeure de revérification par " +"défaut pour toutes les montres, le minimum actuel du système est" + +#: changedetectionio/blueprint/settings/templates/settings.html:46 +msgid "seconds" +msgstr "secondes" + +#: changedetectionio/blueprint/settings/templates/settings.html:46 +msgid "more info" +msgstr "Plus d'informations" + +#: changedetectionio/blueprint/settings/templates/settings.html:390 +msgid "Python version:" +msgstr "Version Python :" + +#: changedetectionio/blueprint/settings/templates/settings.html:391 +msgid "Plugins active:" +msgstr "Plugins actifs :" + +#: changedetectionio/blueprint/settings/templates/settings.html:399 +msgid "No plugins active" +msgstr "Aucun plugin actif" + +#: changedetectionio/blueprint/settings/templates/settings.html:405 +msgid "Back" +msgstr "SAUVEGARDES" + +#: changedetectionio/blueprint/settings/templates/settings.html:406 +msgid "Clear Snapshot History" +msgstr "Effacer/réinitialiser l'historique" + +#: changedetectionio/blueprint/tags/templates/edit-tag.html:28 +#: changedetectionio/blueprint/ui/templates/edit.html:56 +#: changedetectionio/blueprint/ui/templates/edit.html:386 +msgid "Filters & Triggers" +msgstr "Filtres et déclencheurs" + +#: changedetectionio/blueprint/tags/templates/edit-tag.html:50 +msgid "These settings are" +msgstr "PARAMÈTRES" + +#: changedetectionio/blueprint/tags/templates/edit-tag.html:50 +msgid "added" +msgstr "ajouté" + +#: changedetectionio/blueprint/tags/templates/edit-tag.html:50 +msgid "to any existing watch configurations." +msgstr "à toutes les configurations de montre existantes." + +#: changedetectionio/blueprint/tags/templates/edit-tag.html:53 +#: changedetectionio/blueprint/ui/templates/edit.html:321 +msgid "Text filtering" +msgstr "Filtrage de texte" + +#: changedetectionio/blueprint/tags/templates/edit-tag.html:73 +#: changedetectionio/blueprint/ui/templates/edit.html:269 +msgid "Use with caution!" +msgstr "A utiliser avec prudence !" + +#: changedetectionio/blueprint/tags/templates/edit-tag.html:73 +#: changedetectionio/blueprint/ui/templates/edit.html:269 +msgid "This will easily fill up your email storage quota or flood other storages." +msgstr "" +"Cela remplira facilement votre quota de stockage de courrier électronique" +" ou inondera d’autres stockages.Cela remplira facilement votre quota de " +"stockage de courrier électronique ou inondera d’autres stockages.Cela " +"remplira facilement votre quota de stockage de courrier électronique ou " +"inondera d’autres stockages." + +#: changedetectionio/blueprint/tags/templates/edit-tag.html:80 +#: changedetectionio/blueprint/ui/templates/edit.html:276 +msgid "Look out!" +msgstr "DÉCONNEXION" + +#: changedetectionio/blueprint/tags/templates/edit-tag.html:80 +#: changedetectionio/blueprint/ui/templates/edit.html:276 +msgid "Lookout!" +msgstr "DÉCONNEXION" + +#: changedetectionio/blueprint/tags/templates/edit-tag.html:81 +#: changedetectionio/blueprint/ui/templates/edit.html:277 +msgid "There are" +msgstr "Il y a" + +#: changedetectionio/blueprint/tags/templates/edit-tag.html:81 +#: changedetectionio/blueprint/ui/templates/edit.html:277 +msgid "system-wide notification URLs enabled" +msgstr "URL de notification à l'échelle du système activées" + +#: changedetectionio/blueprint/tags/templates/edit-tag.html:81 +#: changedetectionio/blueprint/ui/templates/edit.html:277 +msgid "this form will override notification settings for this watch only" +msgstr "" +"ce formulaire remplacera les paramètres de notification pour cette montre" +" uniquementce formulaire remplacera les paramètres de notification pour " +"cette montre uniquementce formulaire remplacera les paramètres de " +"notification pour cette montre uniquement" + +#: changedetectionio/blueprint/tags/templates/edit-tag.html:81 +#: changedetectionio/blueprint/ui/templates/edit.html:277 +msgid "an empty Notification URL list here will still send notifications." +msgstr "" +"une liste d'URL de notification vide ici enverra toujours des " +"notifications.une liste d'URL de notification vide ici enverra toujours " +"des notifications.une liste d'URL de notification vide ici enverra " +"toujours des notifications." + +#: changedetectionio/blueprint/tags/templates/edit-tag.html:84 +#: changedetectionio/blueprint/ui/templates/edit.html:280 +msgid "Use system defaults" +msgstr "Utiliser les paramètres par défaut du système" + +#: changedetectionio/blueprint/tags/templates/groups-overview.html:11 +msgid "Add a new organisational tag" +msgstr "Ajouter une nouvelle balise organisationnelle" + +#: changedetectionio/blueprint/tags/templates/groups-overview.html:14 +msgid "Watch group / tag" +msgstr "Groupe de surveillance/tag" + +#: changedetectionio/blueprint/tags/templates/groups-overview.html:21 +msgid "" +"Groups allows you to manage filters and notifications for multiple " +"watches under a single organisational tag." +msgstr "" + +#: changedetectionio/blueprint/tags/templates/groups-overview.html:31 +msgid "# Watches" +msgstr "# Montres" + +#: changedetectionio/blueprint/tags/templates/groups-overview.html:32 +msgid "Tag / Label name" +msgstr "Nom de l'étiquette/de l'étiquette" + +#: changedetectionio/blueprint/tags/templates/groups-overview.html:42 +msgid "No website organisational tags/groups configured" +msgstr "Aucune balise/groupe organisationnel de site Web configuré" + +#: changedetectionio/blueprint/tags/templates/groups-overview.html:53 +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:249 +msgid "Edit" +msgstr "Modifier" + +#: changedetectionio/blueprint/tags/templates/groups-overview.html:58 +msgid "Delete Group?" +msgstr "Supprimer le groupe ?" + +#: changedetectionio/blueprint/tags/templates/groups-overview.html:59 +#, python-format +msgid "" +"<p>Are you sure you want to delete group " +"<strong>%(title)s</strong>?</p><p>This action cannot be undone.</p>" +msgstr "" + +#: changedetectionio/blueprint/tags/templates/groups-overview.html:60 +#: changedetectionio/blueprint/tags/templates/groups-overview.html:61 +#: changedetectionio/blueprint/ui/templates/edit.html:490 +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:73 +msgid "Delete" +msgstr "Supprimer" + +#: changedetectionio/blueprint/tags/templates/groups-overview.html:61 +msgid "Deletes and removes tag" +msgstr "Supprime et supprime la balise" + +#: changedetectionio/blueprint/tags/templates/groups-overview.html:66 +msgid "Unlink Group?" +msgstr "Dissocier le groupe ?" + +#: changedetectionio/blueprint/tags/templates/groups-overview.html:67 +#, python-format +msgid "" +"<p>Are you sure you want to unlink all watches from group " +"<strong>%(title)s</strong>?</p><p>The tag will be kept but watches will " +"be removed from it.</p>" +msgstr "" + +#: changedetectionio/blueprint/tags/templates/groups-overview.html:68 +#: changedetectionio/blueprint/tags/templates/groups-overview.html:69 +msgid "Unlink" +msgstr "Dissocier" + +#: changedetectionio/blueprint/tags/templates/groups-overview.html:69 +msgid "Keep the tag but unlink any watches" +msgstr "Conservez l'étiquette mais dissociez les montres" + +#: changedetectionio/blueprint/tags/templates/groups-overview.html:70 +#: changedetectionio/blueprint/ui/templates/edit.html:500 +msgid "RSS Feed for this watch" +msgstr "Flux RSS de cette montre" + +#: changedetectionio/blueprint/ui/templates/clear_all_history.html:12 +msgid "" +"This will remove version history (snapshots) for ALL watches, but keep " +"your list of URLs!" +msgstr "" + +#: changedetectionio/blueprint/ui/templates/clear_all_history.html:13 +msgid "You may like to use the" +msgstr "Vous aimerez peut-être utiliser le" + +#: changedetectionio/blueprint/ui/templates/clear_all_history.html:13 +msgid "BACKUP" +msgstr "SAUVEGARDES" + +#: changedetectionio/blueprint/ui/templates/clear_all_history.html:13 +msgid "link first." +msgstr "lien d'abord." + +#: changedetectionio/blueprint/ui/templates/clear_all_history.html:17 +msgid "Confirmation text" +msgstr "Aucune information" + +#: changedetectionio/blueprint/ui/templates/clear_all_history.html:27 +msgid "Type in the word" +msgstr "Tapez le mot" + +#: changedetectionio/blueprint/ui/templates/clear_all_history.html:27 +msgid "clear" +msgstr "clair" + +#: changedetectionio/blueprint/ui/templates/clear_all_history.html:27 +msgid "to confirm that you understand." +msgstr "pour confirmer que vous comprenez." + +#: changedetectionio/blueprint/ui/templates/clear_all_history.html:33 +msgid "Clear History!" +msgstr "Effacer les historiques" + +#: changedetectionio/blueprint/ui/templates/clear_all_history.html:39 +#: changedetectionio/templates/base.html:271 +msgid "Cancel" +msgstr "Annuler" + +#: changedetectionio/blueprint/ui/templates/diff-offscreen-options.html:3 +msgid "Share diff as image" +msgstr "Partager la différence sous forme d'image" + +#: changedetectionio/blueprint/ui/templates/diff-offscreen-options.html:3 +msgid "Share as Image" +msgstr "Partager en tant qu'image" + +#: changedetectionio/blueprint/ui/templates/diff-offscreen-options.html:6 +msgid "Ignore any lines matching" +msgstr "Ignorer toutes les lignes correspondant" + +#: changedetectionio/blueprint/ui/templates/diff-offscreen-options.html:9 +msgid "Ignore any lines matching excluding digits" +msgstr "Ignorer toutes les lignes correspondant à l'exclusion des chiffres" + +#: changedetectionio/blueprint/ui/templates/diff.html:28 +msgid "From" +msgstr "Depuis" + +#: changedetectionio/blueprint/ui/templates/diff.html:38 +msgid "To" +msgstr "À" + +#: changedetectionio/blueprint/ui/templates/diff.html:53 +msgid "Words" +msgstr "Mot de passe" + +#: changedetectionio/blueprint/ui/templates/diff.html:57 +msgid "Lines" +msgstr "Se connecter" + +#: changedetectionio/blueprint/ui/templates/diff.html:61 +msgid "Ignore Whitespace" +msgstr "Ignorer les espaces" + +#: changedetectionio/blueprint/ui/templates/diff.html:65 +msgid "Same/non-changed" +msgstr "Modifié" + +#: changedetectionio/blueprint/ui/templates/diff.html:69 +msgid "Removed" +msgstr "Supprimé" + +#: changedetectionio/blueprint/ui/templates/diff.html:73 +#: changedetectionio/blueprint/ui/templates/edit.html:327 +msgid "Added" +msgstr "Ajouté" + +#: changedetectionio/blueprint/ui/templates/diff.html:77 +#: changedetectionio/blueprint/ui/templates/edit.html:327 +msgid "Replaced" +msgstr "Remplacé" + +#: changedetectionio/blueprint/ui/templates/diff.html:82 +#: changedetectionio/blueprint/ui/templates/preview.html:36 +msgid "Keyboard:" +msgstr "Clavier:" + +#: changedetectionio/blueprint/ui/templates/diff.html:83 +#: changedetectionio/blueprint/ui/templates/preview.html:37 +msgid "Previous" +msgstr "Aperçu" + +#: changedetectionio/blueprint/ui/templates/diff.html:84 +#: changedetectionio/blueprint/ui/templates/preview.html:38 +msgid "Next" +msgstr "Suivant" + +#: changedetectionio/blueprint/ui/templates/diff.html:91 +msgid "Jump to next difference" +msgstr "Passer à la différence suivante" + +#: changedetectionio/blueprint/ui/templates/diff.html:91 +msgid "Jump" +msgstr "Saut" + +#: changedetectionio/blueprint/ui/templates/diff.html:97 +#: changedetectionio/blueprint/ui/templates/preview.html:45 +msgid "Error Text" +msgstr "Texte d'erreur" + +#: changedetectionio/blueprint/ui/templates/diff.html:98 +#: changedetectionio/blueprint/ui/templates/preview.html:47 +msgid "Error Screenshot" +msgstr "Capture d'écran d'erreur" + +#: changedetectionio/blueprint/ui/templates/diff.html:99 +#: changedetectionio/blueprint/ui/templates/preview.html:50 +#: changedetectionio/processors/text_json_diff/processor.py:24 +msgid "Text" +msgstr "Texte" + +#: changedetectionio/blueprint/ui/templates/diff.html:100 +#: changedetectionio/blueprint/ui/templates/preview.html:51 +msgid "Current screenshot" +msgstr "Capture d'écran actuelle" + +#: changedetectionio/blueprint/ui/templates/diff.html:101 +msgid "Extract Data" +msgstr "Extraire des données" + +#: changedetectionio/blueprint/ui/templates/diff.html:107 +msgid "seconds ago." +msgstr "il y a quelques secondes." + +#: changedetectionio/blueprint/ui/templates/diff.html:114 +#: changedetectionio/blueprint/ui/templates/preview.html:59 +#: changedetectionio/blueprint/ui/templates/preview.html:66 +msgid "seconds ago" +msgstr "il y a quelques secondes" + +#: changedetectionio/blueprint/ui/templates/diff.html:115 +msgid "Current error-ing screenshot from most recent request" +msgstr "Capture d'écran d'erreur actuelle de la demande la plus récente" + +#: changedetectionio/blueprint/ui/templates/diff.html:127 +msgid "Pro-tip: You can enable" +msgstr "Conseil de pro : vous pouvez activer" + +#: changedetectionio/blueprint/ui/templates/diff.html:127 +msgid "\"share access when password is enabled\"" +msgstr "" + +#: changedetectionio/blueprint/ui/templates/diff.html:127 +msgid "from settings." +msgstr "PARAMÈTRES" + +#: changedetectionio/blueprint/ui/templates/diff.html:133 +msgid "Goto single snapshot" +msgstr "Accéder à un seul instantané" + +#: changedetectionio/blueprint/ui/templates/diff.html:138 +#: changedetectionio/blueprint/ui/templates/edit.html:125 +msgid "Tip:" +msgstr "Conseil:" + +#: changedetectionio/blueprint/ui/templates/diff.html:138 +msgid "Highlight text to share or add to ignore lists." +msgstr "" +"Mettez en surbrillance le texte à partager ou à ajouter pour ignorer les " +"listes.Mettez en surbrillance le texte à partager ou à ajouter pour " +"ignorer les listes.Mettez en surbrillance le texte à partager ou à " +"ajouter pour ignorer les listes." + +#: changedetectionio/blueprint/ui/templates/diff.html:144 +#: changedetectionio/blueprint/ui/templates/preview.html:80 +msgid "" +"For now, Differences are performed on text, not graphically, only the " +"latest screenshot is available." +msgstr "" + +#: changedetectionio/blueprint/ui/templates/diff.html:149 +#: changedetectionio/blueprint/ui/templates/preview.html:86 +msgid "Current screenshot from most recent request" +msgstr "Capture d'écran actuelle de la demande la plus récente" + +#: changedetectionio/blueprint/ui/templates/diff.html:151 +#: changedetectionio/blueprint/ui/templates/preview.html:88 +msgid "No screenshot available just yet! Try rechecking the page." +msgstr "" +"Aucune capture d'écran disponible pour l'instant ! Essayez de revérifier " +"la page.Aucune capture d'écran disponible pour l'instant ! Essayez de " +"revérifier la page.Aucune capture d'écran disponible pour l'instant ! " +"Essayez de revérifier la page." + +#: changedetectionio/blueprint/ui/templates/diff.html:154 +msgid "Screenshot requires Playwright/WebDriver enabled" +msgstr "La capture d'écran nécessite l'activation de Playwright/WebDriver" + +#: changedetectionio/blueprint/ui/templates/edit.html:48 +msgid "Request" +msgstr "Demande" + +#: changedetectionio/blueprint/ui/templates/edit.html:52 +msgid "Browser Steps" +msgstr "Étapes du navigateur" + +#: changedetectionio/blueprint/ui/templates/edit.html:55 +msgid "Visual Filter Selector" +msgstr "Sélecteur de filtre visuel" + +#: changedetectionio/blueprint/ui/templates/edit.html:57 +msgid "Conditions" +msgstr "Conditions" + +#: changedetectionio/blueprint/ui/templates/edit.html:60 +msgid "Stats" +msgstr "PARAMÈTRES" + +#: changedetectionio/blueprint/ui/templates/edit.html:73 +#: changedetectionio/blueprint/ui/templates/edit.html:313 +msgid "Some sites use JavaScript to create the content, for this you should" +msgstr "" +"Certains sites utilisent JavaScript pour créer le contenu, pour cela vous" +" devezCertains sites utilisent JavaScript pour créer le contenu, pour " +"cela vous devezCertains sites utilisent JavaScript pour créer le contenu," +" pour cela vous devez" + +#: changedetectionio/blueprint/ui/templates/edit.html:73 +#: changedetectionio/blueprint/ui/templates/edit.html:313 +msgid "use the Chrome/WebDriver Fetcher" +msgstr "utilisez le récupérateur Chrome/WebDriver" + +#: changedetectionio/blueprint/ui/templates/edit.html:74 +msgid "Variables are supported in the URL" +msgstr "Les variables sont prises en charge dans l'URL" + +#: changedetectionio/blueprint/ui/templates/edit.html:74 +#: changedetectionio/blueprint/ui/templates/edit.html:180 +#: changedetectionio/blueprint/ui/templates/edit.html:189 +msgid "help and examples here" +msgstr "aide et exemples ici" + +#: changedetectionio/blueprint/ui/templates/edit.html:78 +msgid "Organisational tag/group name used in the main listing page" +msgstr "" +"Balise organisationnelle/nom de groupe utilisé dans la page de liste " +"principaleBalise organisationnelle/nom de groupe utilisé dans la page de " +"liste principaleBalise organisationnelle/nom de groupe utilisé dans la " +"page de liste principale" + +#: changedetectionio/blueprint/ui/templates/edit.html:85 +msgid "" +"Automatically uses the page title if found, you can also use your own " +"title/description here" +msgstr "" + +#: changedetectionio/blueprint/ui/templates/edit.html:95 +msgid "The interval/amount of time between each check." +msgstr "L'intervalle/la durée entre chaque vérification." + +#: changedetectionio/blueprint/ui/templates/edit.html:110 +msgid "" +"Sends a notification when the filter can no longer be seen on the page, " +"good for knowing when the page changed and your filter will not work " +"anymore." +msgstr "" + +#: changedetectionio/blueprint/ui/templates/edit.html:123 +msgid "Use the" +msgstr "Utilisez le" + +#: changedetectionio/blueprint/ui/templates/edit.html:123 +msgid "Basic" +msgstr "Basique" + +#: changedetectionio/blueprint/ui/templates/edit.html:123 +msgid "" +"method (default) where your watched site doesn't need Javascript to " +"render." +msgstr "" + +#: changedetectionio/blueprint/ui/templates/edit.html:124 +msgid "The" +msgstr "Le" + +#: changedetectionio/blueprint/ui/templates/edit.html:124 +msgid "Chrome/Javascript" +msgstr "Chrome/Javascript" + +#: changedetectionio/blueprint/ui/templates/edit.html:124 +msgid "" +"method requires a network connection to a running WebDriver+Chrome " +"server, set by the ENV var 'WEBDRIVER_URL'." +msgstr "" + +#: changedetectionio/blueprint/ui/templates/edit.html:125 +msgid "Connect using Bright Data and Oxylabs Proxies, find out more here." +msgstr "" +"Connectez-vous à l'aide des proxys Bright Data et Oxylabs, découvrez-en " +"plus ici.Connectez-vous à l'aide des proxys Bright Data et Oxylabs, " +"découvrez-en plus ici.Connectez-vous à l'aide des proxys Bright Data et " +"Oxylabs, découvrez-en plus ici." + +#: changedetectionio/blueprint/ui/templates/edit.html:130 +msgid "Check/Scan all" +msgstr "Revérifiez tout" + +#: changedetectionio/blueprint/ui/templates/edit.html:133 +msgid "Choose a proxy for this watch" +msgstr "Flux RSS de cette montre" + +#: changedetectionio/blueprint/ui/templates/edit.html:143 +msgid "" +"If you're having trouble waiting for the page to be fully rendered (text " +"missing etc), try increasing the 'wait' time here." +msgstr "" + +#: changedetectionio/blueprint/ui/templates/edit.html:145 +msgid "This will wait" +msgstr "Cela attendra" + +#: changedetectionio/blueprint/ui/templates/edit.html:145 +msgid "seconds before extracting the text." +msgstr "secondes avant d’extraire le texte." + +#: changedetectionio/blueprint/ui/templates/edit.html:147 +msgid "Using the current global default settings" +msgstr "Utilisation des paramètres globaux par défaut actuels" + +#: changedetectionio/blueprint/ui/templates/edit.html:152 +#: changedetectionio/blueprint/ui/templates/edit.html:165 +msgid "Show advanced options" +msgstr "Afficher les options avancées" + +#: changedetectionio/blueprint/ui/templates/edit.html:157 +msgid "" +"Run this code before performing change detection, handy for filling in " +"fields and other actions" +msgstr "" + +#: changedetectionio/blueprint/ui/templates/edit.html:158 +msgid "More help and examples here" +msgstr "Plus d'aide et d'exemples ici" + +#: changedetectionio/blueprint/ui/templates/edit.html:180 +msgid "Variables are supported in the request body" +msgstr "Les variables sont prises en charge dans le corps de la requête" + +#: changedetectionio/blueprint/ui/templates/edit.html:189 +msgid "Variables are supported in the request header values" +msgstr "Les variables sont prises en charge dans les valeurs d'en-tête de requête" + +#: changedetectionio/blueprint/ui/templates/edit.html:192 +msgid "Alert! Extra headers file found and will be added to this watch!" +msgstr "" +"Alerte! Fichier d'en-têtes supplémentaire trouvé et sera ajouté à cette " +"montre !Alerte! Fichier d'en-têtes supplémentaire trouvé et sera ajouté à" +" cette montre !Alerte! Fichier d'en-têtes supplémentaire trouvé et sera " +"ajouté à cette montre !" + +#: changedetectionio/blueprint/ui/templates/edit.html:194 +msgid "Headers can be also read from a file in your data-directory" +msgstr "" +"Les en-têtes peuvent également être lus à partir d'un fichier dans votre " +"répertoire de donnéesLes en-têtes peuvent également être lus à partir " +"d'un fichier dans votre répertoire de donnéesLes en-têtes peuvent " +"également être lus à partir d'un fichier dans votre répertoire de données" + +#: changedetectionio/blueprint/ui/templates/edit.html:194 +msgid "Read more here" +msgstr "Lire la suite ici" + +#: changedetectionio/blueprint/ui/templates/edit.html:197 +msgid "Not supported by Selenium browser" +msgstr "Non pris en charge par le navigateur Selenium" + +#: changedetectionio/blueprint/ui/templates/edit.html:221 +msgid "Turn on text finder" +msgstr "Activer la recherche de texte" + +#: changedetectionio/blueprint/ui/templates/edit.html:224 +msgid "Please wait, first browser step can take a little time to load.." +msgstr "" +"Veuillez patienter, le chargement de la première étape du navigateur peut" +" prendre un peu de temps.Veuillez patienter, le chargement de la première" +" étape du navigateur peut prendre un peu de temps.Veuillez patienter, le " +"chargement de la première étape du navigateur peut prendre un peu de " +"temps." + +#: changedetectionio/blueprint/ui/templates/edit.html:231 +msgid "Click here to Start" +msgstr "Cliquez ici pour commencer" + +#: changedetectionio/blueprint/ui/templates/edit.html:233 +msgid "Please allow 10-15 seconds for the browser to connect." +msgstr "Veuillez attendre 10 à 15 secondes pour que le navigateur se connecte." + +#: changedetectionio/blueprint/ui/templates/edit.html:242 +msgid "Press \"Play\" to start." +msgstr "" + +#: changedetectionio/blueprint/ui/templates/edit.html:249 +#: changedetectionio/blueprint/ui/templates/edit.html:419 +msgid "Visual Selector data is not ready, watch needs to be checked atleast once." +msgstr "" +"Les données du sélecteur visuel ne sont pas prêtes, la montre doit être " +"vérifiée au moins une fois.Les données du sélecteur visuel ne sont pas " +"prêtes, la montre doit être vérifiée au moins une fois.Les données du " +"sélecteur visuel ne sont pas prêtes, la montre doit être vérifiée au " +"moins une fois." + +#: changedetectionio/blueprint/ui/templates/edit.html:253 +msgid "" +"Sorry, this functionality only works with fetchers that support " +"interactive Javascript (so far only Playwright based fetchers)" +msgstr "" + +#: changedetectionio/blueprint/ui/templates/edit.html:254 +#: changedetectionio/blueprint/ui/templates/edit.html:424 +msgid "You need to" +msgstr "Vous devez" + +#: changedetectionio/blueprint/ui/templates/edit.html:254 +#: changedetectionio/blueprint/ui/templates/edit.html:424 +msgid "Set the fetch method" +msgstr "Définir la méthode de récupération" + +#: changedetectionio/blueprint/ui/templates/edit.html:254 +msgid "to one that supports interactive Javascript." +msgstr "à celui qui prend en charge Javascript interactif." + +#: changedetectionio/blueprint/ui/templates/edit.html:297 +msgid "" +"Use the verify (✓) button to test if a condition passes against the " +"current snapshot." +msgstr "" + +#: changedetectionio/blueprint/ui/templates/edit.html:298 +msgid "Read a quick tutorial about" +msgstr "Lisez un tutoriel rapide sur" + +#: changedetectionio/blueprint/ui/templates/edit.html:298 +msgid "using conditional web page changes here" +msgstr "en utilisant les modifications conditionnelles de page Web ici" + +#: changedetectionio/blueprint/ui/templates/edit.html:303 +msgid "Activate preview" +msgstr "Aperçu" + +#: changedetectionio/blueprint/ui/templates/edit.html:307 +msgid "Pro-tips:" +msgstr "Conseils de pro :" + +#: changedetectionio/blueprint/ui/templates/edit.html:310 +msgid "Use the preview page to see your filters and triggers highlighted." +msgstr "" +"Utilisez la page d'aperçu pour voir vos filtres et déclencheurs mis en " +"surbrillance.Utilisez la page d'aperçu pour voir vos filtres et " +"déclencheurs mis en surbrillance.Utilisez la page d'aperçu pour voir vos " +"filtres et déclencheurs mis en surbrillance." + +#: changedetectionio/blueprint/ui/templates/edit.html:322 +msgid "Limit trigger/ignore/block/extract to;" +msgstr "Limiter le déclenchement/ignorer/bloquer/extraire à ;" + +#: changedetectionio/blueprint/ui/templates/edit.html:326 +msgid "" +"Note: Depending on the length and similarity of the text on each line, " +"the algorithm may consider an" +msgstr "" + +#: changedetectionio/blueprint/ui/templates/edit.html:326 +#: changedetectionio/blueprint/ui/templates/edit.html:328 +msgid "addition" +msgstr "ajout" + +#: changedetectionio/blueprint/ui/templates/edit.html:326 +msgid "instead of" +msgstr "au lieu de" + +#: changedetectionio/blueprint/ui/templates/edit.html:326 +msgid "replacement" +msgstr "remplacement" + +#: changedetectionio/blueprint/ui/templates/edit.html:326 +msgid "for example." +msgstr "Par exemple." + +#: changedetectionio/blueprint/ui/templates/edit.html:327 +msgid "So it's always better to select" +msgstr "Il est donc toujours préférable de sélectionner" + +#: changedetectionio/blueprint/ui/templates/edit.html:327 +msgid "when you're interested in new content." +msgstr "lorsque vous êtes intéressé par du nouveau contenu." + +#: changedetectionio/blueprint/ui/templates/edit.html:328 +msgid "When content is merely moved in a list, it will also trigger an" +msgstr "" +"Lorsque le contenu est simplement déplacé dans une liste, cela " +"déclenchera également unLorsque le contenu est simplement déplacé dans " +"une liste, cela déclenchera également unLorsque le contenu est simplement" +" déplacé dans une liste, cela déclenchera également un" + +#: changedetectionio/blueprint/ui/templates/edit.html:328 +msgid "consider enabling" +msgstr "envisager d'activer" + +#: changedetectionio/blueprint/ui/templates/edit.html:328 +msgid "Only trigger when unique lines appear" +msgstr "Se déclenche uniquement lorsque des lignes uniques apparaissent" + +#: changedetectionio/blueprint/ui/templates/edit.html:332 +msgid "" +"Good for websites that just move the content around, and you want to know" +" when NEW content is added, compares new lines against all history for " +"this watch." +msgstr "" + +#: changedetectionio/blueprint/ui/templates/edit.html:340 +msgid "" +"Helps reduce changes detected caused by sites shuffling lines around, " +"combine with" +msgstr "" + +#: changedetectionio/blueprint/ui/templates/edit.html:340 +msgid "check unique lines" +msgstr "vérifier les lignes uniques" + +#: changedetectionio/blueprint/ui/templates/edit.html:340 +msgid "below." +msgstr "ci-dessous." + +#: changedetectionio/blueprint/ui/templates/edit.html:344 +msgid "Remove any whitespace before and after each line of text" +msgstr "Supprimez tout espace avant et après chaque ligne de texte" + +#: changedetectionio/blueprint/ui/templates/edit.html:358 +#: changedetectionio/blueprint/ui/templates/edit.html:361 +#: changedetectionio/blueprint/ui/templates/edit.html:417 +msgid "Loading..." +msgstr "Chargement..." + +#: changedetectionio/blueprint/ui/templates/edit.html:386 +msgid "The Visual Selector tool lets you select the" +msgstr "L'outil Visual Selector vous permet de sélectionner le" + +#: changedetectionio/blueprint/ui/templates/edit.html:386 +msgid "text" +msgstr "texte" + +#: changedetectionio/blueprint/ui/templates/edit.html:386 +msgid "" +"elements that will be used for the change detection. It automatically " +"fills-in the filters in the \"CSS/JSONPath/JQ/XPath Filters\" box of the" +msgstr "" + +#: changedetectionio/blueprint/ui/templates/edit.html:386 +msgid "tab. Use" +msgstr "Pause" + +#: changedetectionio/blueprint/ui/templates/edit.html:386 +msgid "Shift+Click" +msgstr "Maj+Clic" + +#: changedetectionio/blueprint/ui/templates/edit.html:386 +msgid "to select multiple items." +msgstr "pour sélectionner plusieurs éléments." + +#: changedetectionio/blueprint/ui/templates/edit.html:391 +msgid "Selection Mode:" +msgstr "Mode de sélection :" + +#: changedetectionio/blueprint/ui/templates/edit.html:394 +msgid "Select by element" +msgstr "Sélectionner par élément" + +#: changedetectionio/blueprint/ui/templates/edit.html:398 +msgid "Draw area" +msgstr "Zone de dessin" + +#: changedetectionio/blueprint/ui/templates/edit.html:406 +msgid "Clear selection" +msgstr "Effacer la sélection" + +#: changedetectionio/blueprint/ui/templates/edit.html:408 +msgid "One moment, fetching screenshot and element information.." +msgstr "" +"Un instant, récupération de la capture d'écran et des informations sur " +"les éléments.Un instant, récupération de la capture d'écran et des " +"informations sur les éléments.Un instant, récupération de la capture " +"d'écran et des informations sur les éléments." + +#: changedetectionio/blueprint/ui/templates/edit.html:417 +msgid "Currently:" +msgstr "Actuellement:" + +#: changedetectionio/blueprint/ui/templates/edit.html:423 +msgid "" +"Sorry, this functionality only works with fetchers that support " +"Javascript and screenshots (such as playwright etc)." +msgstr "" + +#: changedetectionio/blueprint/ui/templates/edit.html:424 +msgid "to one that supports Javascript and screenshots." +msgstr "à celui qui prend en charge Javascript et les captures d'écran." + +#: changedetectionio/blueprint/ui/templates/edit.html:441 +msgid "Check count" +msgstr "Nombre de chèques" + +#: changedetectionio/blueprint/ui/templates/edit.html:445 +msgid "Consecutive filter failures" +msgstr "Pannes de filtre consécutives" + +#: changedetectionio/blueprint/ui/templates/edit.html:449 +msgid "History length" +msgstr "Histoire" + +#: changedetectionio/blueprint/ui/templates/edit.html:453 +msgid "Last fetch duration" +msgstr "Durée de la dernière récupération" + +#: changedetectionio/blueprint/ui/templates/edit.html:457 +msgid "Notification alert count" +msgstr "Nombre d'alertes de notification" + +#: changedetectionio/blueprint/ui/templates/edit.html:461 +msgid "Server type reply" +msgstr "Réponse du type de serveur" + +#: changedetectionio/blueprint/ui/templates/edit.html:475 +msgid "Download latest HTML snapshot" +msgstr "Télécharger le dernier instantané HTML" + +#: changedetectionio/blueprint/ui/templates/edit.html:488 +msgid "Delete Watch?" +msgstr "Supprimer les montres ?" + +#: changedetectionio/blueprint/ui/templates/edit.html:489 +msgid "Are you sure you want to delete the watch for:" +msgstr "Êtes-vous sûr de vouloir supprimer la montre pour :" + +#: changedetectionio/blueprint/ui/templates/edit.html:489 +msgid "This action cannot be undone." +msgstr "Cette action ne peut pas être annulée." + +#: changedetectionio/blueprint/ui/templates/edit.html:495 +msgid "Clear History?" +msgstr "Effacer les historiques" + +#: changedetectionio/blueprint/ui/templates/edit.html:496 +msgid "Are you sure you want to clear all history for:" +msgstr "Êtes-vous sûr de vouloir effacer tout l'historique pour :" + +#: changedetectionio/blueprint/ui/templates/edit.html:496 +msgid "" +"This will remove all snapshots and previous versions. This action cannot " +"be undone." +msgstr "" + +#: changedetectionio/blueprint/ui/templates/edit.html:497 +msgid "Clear History" +msgstr "Effacer les historiques" + +#: changedetectionio/blueprint/ui/templates/edit.html:499 +msgid "Clone & Edit" +msgstr "Cloner et modifier" + +#: changedetectionio/blueprint/ui/templates/preview.html:22 +msgid "Select timestamp" +msgstr "Sélectionnez l'horodatage" + +#: changedetectionio/blueprint/ui/templates/preview.html:31 +msgid "Go" +msgstr "Aller" + +#: changedetectionio/blueprint/ui/templates/preview.html:69 +msgid "Current erroring screenshot from most recent request" +msgstr "Capture d'écran erronée actuelle de la demande la plus récente" + +#: changedetectionio/blueprint/ui/templates/preview.html:91 +msgid "" +"Screenshot requires a Content Fetcher ( Sockpuppetbrowser, selenium, etc " +") that supports screenshots." +msgstr "" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:31 +msgid "Add a new web page change detection watch" +msgstr "Ajouter une nouvelle surveillance de détection de changement de page Web" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:34 +msgid "Watch this URL!" +msgstr "Surveillez cette URL !" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:35 +msgid "Edit first then Watch" +msgstr "Modifiez d'abord, puis regardez" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:45 +msgid "Create a shareable link" +msgstr "Créer un lien partageable" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:45 +msgid "Tip: You can also add 'shared' watches." +msgstr "Astuce : Vous pouvez également ajouter des montres « partagées »." + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:45 +msgid "More info" +msgstr "Plus d'informations" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:53 +msgid "Pause" +msgstr "Pause" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:54 +msgid "UnPause" +msgstr "Reprendre la pause" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:55 +msgid "Mute" +msgstr "Muet" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:56 +msgid "UnMute" +msgstr "Réactiver le son" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:57 +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:248 +msgid "Recheck" +msgstr "Revérifier" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:58 +msgid "Tag" +msgstr "Étiqueter" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:59 +msgid "Mark viewed" +msgstr "Marquer consulté" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:60 +msgid "Use default notification" +msgstr "Utiliser la notification par défaut" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:61 +msgid "Clear errors" +msgstr "Effacer les erreurs" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:65 +msgid "Clear Histories" +msgstr "Effacer les historiques" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:66 +msgid "" +"<p>Are you sure you want to clear history for the selected " +"items?</p><p>This action cannot be undone.</p>" +msgstr "" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:67 +msgid "OK" +msgstr "D'ACCORD" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:67 +msgid "Clear/reset history" +msgstr "Effacer/réinitialiser l'historique" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:71 +msgid "Delete Watches?" +msgstr "Supprimer les montres ?" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:72 +msgid "" +"<p>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:78 +msgid "Searching" +msgstr "Recherche" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:80 +msgid "All" +msgstr "Tous" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:118 +msgid "Website" +msgstr "Site web" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:120 +msgid "Restock & Price" +msgstr "Réapprovisionnement et prix" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:122 +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:123 +msgid "Last" +msgstr "Dernier" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:122 +msgid "Checked" +msgstr "À carreaux" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:123 +msgid "Changed" +msgstr "Modifié" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:130 +msgid "No website watches configured, please add a URL in the box above, or" +msgstr "" +"Aucune surveillance de site Web configurée, veuillez ajouter une URL dans" +" la case ci-dessus, ouAucune surveillance de site Web configurée, " +"veuillez ajouter une URL dans la case ci-dessus, ouAucune surveillance de" +" site Web configurée, veuillez ajouter une URL dans la case ci-dessus, " +"ouAucune surveillance de site Web configurée, veuillez ajouter une URL " +"dans la case ci-dessus, ou" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:130 +msgid "import a list" +msgstr "importer une liste" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:213 +msgid "Detecting restock and price" +msgstr "Détection du réapprovisionnement et du prix" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:215 +msgid "In stock" +msgstr "En stock" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:215 +msgid "Not in stock" +msgstr "Pas en stock" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:221 +msgid "Price" +msgstr "Prix" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:226 +msgid "No information" +msgstr "Aucune information" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:234 +#: changedetectionio/templates/base.html:248 +msgid "Checking now" +msgstr "Vérifier maintenant" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:247 +msgid "Queued" +msgstr "En file d'attente" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:250 +msgid "History" +msgstr "Histoire" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:251 +msgid "Preview" +msgstr "Aperçu" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:260 +msgid "With errors" +msgstr "Avec des erreurs" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:263 +msgid "Mark all viewed" +msgstr "Marquer tous les articles consultés" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:267 +#, python-format +msgid "Mark all viewed in '%(title)s'" +msgstr "Marquer tout vu dans '%(title)s'" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:271 +msgid "Unread" +msgstr "Non lu" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:274 +msgid "Recheck all" +msgstr "Revérifiez tout" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:274 +#, python-format +msgid "in '%(title)s'" +msgstr "dans '%(title)s'" + +#: changedetectionio/processors/image_ssim_diff/forms.py:19 +#: changedetectionio/processors/image_ssim_diff/forms.py:69 +msgid "Bounding box value is too long" +msgstr "La valeur du cadre de sélection est trop longue" + +#: changedetectionio/processors/image_ssim_diff/forms.py:23 +msgid "Bounding box must be in format: x,y,width,height (integers only)" +msgstr "" +"Le cadre de délimitation doit être au format : x,y,largeur,hauteur " +"(entiers uniquement)Le cadre de délimitation doit être au format : " +"x,y,largeur,hauteur (entiers uniquement)" + +#: changedetectionio/processors/image_ssim_diff/forms.py:29 +msgid "Bounding box values must be non-negative" +msgstr "Les valeurs du cadre de délimitation doivent être non négatives" + +#: changedetectionio/processors/image_ssim_diff/forms.py:31 +msgid "Bounding box values are too large" +msgstr "Les valeurs du cadre de délimitation sont trop grandes" + +#: changedetectionio/processors/image_ssim_diff/forms.py:40 +msgid "Selection mode must be either \"element\" or \"draw\"" +msgstr "" + +#: changedetectionio/processors/image_ssim_diff/forms.py:47 +msgid "Minimum Change Percentage" +msgstr "Pourcentage de changement minimum" + +#: changedetectionio/processors/image_ssim_diff/forms.py:56 +msgid "Pixel Difference Sensitivity" +msgstr "Sensibilité de différence de pixel" + +#: changedetectionio/processors/image_ssim_diff/forms.py:58 +msgid "Use global default" +msgstr "Utiliser les paramètres par défaut du système" + +#: changedetectionio/processors/image_ssim_diff/forms.py:66 +msgid "Bounding Box" +msgstr "Boîte englobante" + +#: changedetectionio/processors/image_ssim_diff/forms.py:76 +msgid "Selection Mode" +msgstr "Mode de sélection :" + +#: changedetectionio/processors/image_ssim_diff/forms.py:79 +msgid "Selection mode value is too long" +msgstr "La valeur du mode de sélection est trop longue" + +#: changedetectionio/processors/image_ssim_diff/forms.py:87 +msgid "Screenshot Comparison" +msgstr "Comparaison de captures d'écran" + +#: changedetectionio/processors/image_ssim_diff/processor.py:20 +msgid "Visual / Image screenshot change detection" +msgstr "Détection des changements de capture d'écran visuel/image" + +#: changedetectionio/processors/image_ssim_diff/processor.py:21 +msgid "Compares screenshots using fast OpenCV algorithm, 10-100x faster than SSIM" +msgstr "Compare les captures d'écran à l'aide de l'algorithme OpenCV rapide, 10 à 100 fois plus rapide que SSIM" + +#: changedetectionio/processors/image_ssim_diff/processor.py:23 +msgid "Visual" +msgstr "Visuel" + +#: changedetectionio/processors/restock_diff/forms.py:15 +msgid "Re-stock detection" +msgstr "Détection de réapprovisionnement" + +#: changedetectionio/processors/restock_diff/forms.py:16 +msgid "In Stock only (Out Of Stock -> In Stock only)" +msgstr "En stock uniquement (En rupture de stock -> En stock uniquement)" + +#: changedetectionio/processors/restock_diff/forms.py:17 +msgid "Any availability changes" +msgstr "Tout changement de disponibilité" + +#: changedetectionio/processors/restock_diff/forms.py:18 +msgid "Off, don't follow availability/restock" +msgstr "Désactivé, ne suivez pas la disponibilité/réapprovisionnement" + +#: changedetectionio/processors/restock_diff/forms.py:21 +msgid "Below price to trigger notification" +msgstr "En dessous du prix pour déclencher une notification" + +#: changedetectionio/processors/restock_diff/forms.py:22 +#: changedetectionio/processors/restock_diff/forms.py:24 +msgid "No limit" +msgstr "Aucune limite" + +#: changedetectionio/processors/restock_diff/forms.py:23 +msgid "Above price to trigger notification" +msgstr "Au-dessus du prix pour déclencher une notification" + +#: changedetectionio/processors/restock_diff/forms.py:25 +#, python-format +msgid "Threshold in %% for price changes since the original price" +msgstr "Seuil en % pour les changements de prix depuis le prix initial" + +#: changedetectionio/processors/restock_diff/forms.py:28 +msgid "Should be between 0 and 100" +msgstr "Doit être compris entre 0 et 100" + +#: changedetectionio/processors/restock_diff/forms.py:31 +msgid "Follow price changes" +msgstr "Suivre les changements de prix" + +#: changedetectionio/processors/restock_diff/forms.py:37 +msgid "Restock & Price Detection" +msgstr "Réapprovisionnement et prix" + +#: changedetectionio/processors/restock_diff/processor.py:11 +msgid "Re-stock & Price detection for pages with a SINGLE product" +msgstr "Détection de réapprovisionnement et de prix pour les pages avec un SEUL produit" + +#: changedetectionio/processors/restock_diff/processor.py:12 +msgid "Detects if the product goes back to in-stock" +msgstr "Détecte si le produit revient en stock" + +#: changedetectionio/processors/restock_diff/processor.py:14 +msgid "Restock" +msgstr "Réapprovisionner" + +#: changedetectionio/processors/text_json_diff/processor.py:21 +msgid "Webpage Text/HTML, JSON and PDF changes" +msgstr "Modifications du texte de la page Web/HTML, JSON et PDF" + +#: changedetectionio/processors/text_json_diff/processor.py:22 +msgid "Detects all text changes where possible" +msgstr "Détecte toutes les modifications de texte lorsque cela est possible" + +#: changedetectionio/templates/base.html:77 +msgid "GROUPS" +msgstr "GROUPES" + +#: changedetectionio/templates/base.html:80 +msgid "SETTINGS" +msgstr "PARAMÈTRES" + +#: changedetectionio/templates/base.html:83 +msgid "IMPORT" +msgstr "IMPORTER" + +#: changedetectionio/templates/base.html:86 +msgid "BACKUPS" +msgstr "SAUVEGARDES" + +#: changedetectionio/templates/base.html:90 +msgid "EDIT" +msgstr "MODIFIER" + +#: changedetectionio/templates/base.html:100 +msgid "LOG OUT" +msgstr "DÉCONNEXION" + +#: changedetectionio/templates/base.html:109 +msgid "Search, or Use Alt+S Key" +msgstr "Recherchez ou utilisez la touche Alt+S" + +#: changedetectionio/templates/base.html:116 +msgid "Toggle Light/Dark Mode" +msgstr "Basculer le mode clair/sombre" + +#: changedetectionio/templates/base.html:117 +msgid "Toggle light/dark mode" +msgstr "Basculer en mode clair/sombre" + +#: changedetectionio/templates/base.html:127 +msgid "Change Language" +msgstr "Changer de langue" + +#: changedetectionio/templates/base.html:128 +msgid "Change language" +msgstr "Changer de langue" + +#: changedetectionio/templates/base.html:249 +msgid "Real-time updates offline" +msgstr "Mises à jour en temps réel hors ligne" + +#: changedetectionio/templates/base.html:259 +msgid "Select Language" +msgstr "Sélectionnez la langue" + +#: changedetectionio/templates/login.html:10 +msgid "Password" +msgstr "Mot de passe" + +#: changedetectionio/templates/login.html:16 +msgid "Login" +msgstr "Se connecter" + diff --git a/changedetectionio/translations/ko/LC_MESSAGES/messages.mo b/changedetectionio/translations/ko/LC_MESSAGES/messages.mo new file mode 100644 index 000000000..7ec76a8fc Binary files /dev/null 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 new file mode 100644 index 000000000..4e4ad744b --- /dev/null +++ b/changedetectionio/translations/ko/LC_MESSAGES/messages.po @@ -0,0 +1,1928 @@ +# Korean translations for PROJECT. +# Copyright (C) 2026 ORGANIZATION +# This file is distributed under the same license as the PROJECT project. +# FIRST AUTHOR <EMAIL@ADDRESS>, 2026. +# +msgid "" +msgstr "" +"Project-Id-Version: PROJECT VERSION\n" +"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" +"POT-Creation-Date: 2026-01-02 13:32+0100\n" +"PO-Revision-Date: 2026-01-02 11:40+0100\n" +"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" +"Language: ko\n" +"Language-Team: ko <LL@li.org>\n" +"Plural-Forms: nplurals=1; plural=0;\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=utf-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.17.0\n" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:241 +#: changedetectionio/flask_app.py:213 changedetectionio/flask_app.py:225 +#: changedetectionio/flask_app.py:246 +#: changedetectionio/realtime/socket_server.py:171 +msgid "Not yet" +msgstr "아직 아님" + +#: changedetectionio/forms.py:62 changedetectionio/forms.py:242 +msgid "" +"At least one time interval (weeks, days, hours, minutes, or seconds) must" +" be specified." +msgstr "" + +#: changedetectionio/forms.py:63 +msgid "" +"At least one time interval (weeks, days, hours, minutes, or seconds) must" +" be specified when not using global settings." +msgstr "" + +#: changedetectionio/forms.py:163 +msgid "Invalid time format. Use HH:MM." +msgstr "시간 형식이 잘못되었습니다. HH:MM을 사용하세요." + +#: changedetectionio/forms.py:179 +msgid "Not a valid timezone name" +msgstr "유효한 시간대 이름이 아닙니다." + +#: changedetectionio/forms.py:182 +msgid "not set" +msgstr "아직 아님" + +#: changedetectionio/forms.py:183 +msgid "Start At" +msgstr "설정" + +#: changedetectionio/forms.py:184 +msgid "Run duration" +msgstr "정보 없음" + +#: changedetectionio/forms.py:187 +msgid "Use time scheduler" +msgstr "시간 스케줄러 사용" + +#: changedetectionio/forms.py:197 +msgid "Optional timezone to run in" +msgstr "실행할 선택적 시간대" + +#: changedetectionio/forms.py:211 +msgid "Monday" +msgstr "월요일" + +#: changedetectionio/forms.py:212 +msgid "Tuesday" +msgstr "화요일" + +#: changedetectionio/forms.py:213 +msgid "Wednesday" +msgstr "수요일" + +#: changedetectionio/forms.py:214 +msgid "Thursday" +msgstr "목요일" + +#: changedetectionio/forms.py:215 +msgid "Friday" +msgstr "금요일" + +#: changedetectionio/forms.py:216 +msgid "Saturday" +msgstr "토요일" + +#: changedetectionio/forms.py:217 +msgid "Sunday" +msgstr "일요일" + +#: changedetectionio/forms.py:250 +msgid "Weeks" +msgstr "주" + +#: changedetectionio/forms.py:250 changedetectionio/forms.py:251 +#: changedetectionio/forms.py:252 changedetectionio/forms.py:253 +#: changedetectionio/forms.py:254 changedetectionio/forms.py:957 +msgid "Should contain zero or more seconds" +msgstr "0초 이상을 포함해야 합니다." + +#: changedetectionio/forms.py:251 +msgid "Days" +msgstr "날" + +#: changedetectionio/forms.py:252 +msgid "Hours" +msgstr "비밀번호" + +#: changedetectionio/forms.py:253 +msgid "Minutes" +msgstr "무음" + +#: changedetectionio/forms.py:254 +msgid "Seconds" +msgstr "초" + +#: changedetectionio/forms.py:459 +msgid "Notification Body and Title is required when a Notification URL is used" +msgstr "알림 URL을 사용하는 경우 알림 본문 및 제목이 필요합니다." + +#: changedetectionio/forms.py:488 +#, python-format +msgid "'%s' is not a valid AppRise URL." +msgstr "'%s'은(는) 유효한 AppRise URL이 아닙니다." + +#: changedetectionio/forms.py:561 changedetectionio/forms.py:580 +#, python-format +msgid "RegEx '%s' is not a valid regular expression." +msgstr "RegEx '%s'은(는) 유효한 정규식이 아닙니다." + +#: changedetectionio/forms.py:621 changedetectionio/forms.py:636 +#, python-format +msgid "'%s' is not a valid XPath expression. (%s)" +msgstr "'%s'은(는) 유효한 XPath 표현식이 아닙니다. (%s)" + +#: changedetectionio/forms.py:656 +#, python-format +msgid "'%s' is not a valid JSONPath expression. (%s)" +msgstr "'%s'은(는) 유효한 JSONPath 표현식이 아닙니다. (%s)" + +#: changedetectionio/forms.py:678 +#, python-format +msgid "'%s' is not a valid jq expression. (%s)" +msgstr "'%s'은(는) 유효한 jq 표현식이 아닙니다. (%s)" + +#: changedetectionio/forms.py:724 +msgid "Empty value not allowed." +msgstr "빈 값은 허용되지 않습니다." + +#: changedetectionio/forms.py:726 +msgid "Invalid value." +msgstr "값이 잘못되었습니다." + +#: changedetectionio/forms.py:733 +msgid "Watch" +msgstr "# 시계" + +#: changedetectionio/forms.py:734 changedetectionio/forms.py:768 +msgid "Processor" +msgstr "프로세서" + +#: changedetectionio/forms.py:735 +msgid "Edit > Watch" +msgstr "먼저 편집한 다음 보기" + +#: changedetectionio/forms.py:748 changedetectionio/forms.py:996 +msgid "Fetch Method" +msgstr "가져오기 방법 설정" + +#: changedetectionio/forms.py:749 +msgid "Notification Body" +msgstr "정보 없음" + +#: changedetectionio/forms.py:750 +msgid "Notification format" +msgstr "정보 없음" + +#: changedetectionio/forms.py:751 +msgid "Notification Title" +msgstr "정보 없음" + +#: changedetectionio/forms.py:752 +msgid "Notification URL List" +msgstr "정보 없음" + +#: changedetectionio/forms.py:753 +msgid "Processor - What do you want to achieve?" +msgstr "프로세서 - 무엇을 달성하고 싶나요?" + +#: changedetectionio/forms.py:754 +msgid "Default timezone for watch check scheduler" +msgstr "시계 확인 스케줄러의 기본 시간대" + +#: changedetectionio/forms.py:755 +msgid "Wait seconds before extracting text" +msgstr "텍스트를 추출하기 몇 초 전입니다." + +#: changedetectionio/forms.py:755 +msgid "Should contain one or more seconds" +msgstr "1초 이상을 포함해야 합니다." + +#: changedetectionio/forms.py:769 +msgid "URLs" +msgstr "URL" + +#: changedetectionio/forms.py:770 +msgid "Upload .xlsx file" +msgstr ".xlsx 파일 업로드" + +#: changedetectionio/forms.py:770 +msgid "Must be .xlsx file!" +msgstr ".xlsx 파일이어야 합니다!" + +#: changedetectionio/forms.py:771 +msgid "File mapping" +msgstr "파일 매핑 유형." + +#: changedetectionio/forms.py:775 +msgid "Operation" +msgstr "UI 옵션" + +#: changedetectionio/forms.py:778 +msgid "Selector" +msgstr "선택 모드:" + +#: changedetectionio/forms.py:779 +msgid "value" +msgstr "정지시키다" + +#: changedetectionio/forms.py:798 +msgid "Use global settings for time between check and scheduler." +msgstr "확인과 스케줄러 사이의 시간에 대한 전역 설정을 사용합니다." + +#: changedetectionio/forms.py:800 +msgid "CSS/JSONPath/JQ/XPath Filters" +msgstr "CSS/xPath 필터" + +#: changedetectionio/forms.py:802 changedetectionio/forms.py:998 +msgid "Remove elements" +msgstr "제거됨" + +#: changedetectionio/forms.py:804 +msgid "Extract text" +msgstr "데이터 추출" + +#: changedetectionio/blueprint/imports/templates/import.html:106 +#: changedetectionio/forms.py:806 +msgid "Title" +msgstr "제목" + +#: changedetectionio/forms.py:808 +msgid "Ignore lines containing" +msgstr "일치하는 줄을 무시하세요." + +#: changedetectionio/forms.py:810 +msgid "Request body" +msgstr "요구" + +#: changedetectionio/forms.py:811 +msgid "Request method" +msgstr "요구" + +#: changedetectionio/forms.py:812 +msgid "Ignore status codes (process non-2xx status codes as normal)" +msgstr "상태 코드 무시(2xx가 아닌 상태 코드를 정상적으로 처리)" + +#: changedetectionio/forms.py:813 +msgid "Only trigger when unique lines appear in all history" +msgstr "고유한 줄이 나타날 때만 트리거됩니다." + +#: changedetectionio/blueprint/ui/templates/edit.html:336 +#: changedetectionio/forms.py:814 +msgid "Remove duplicate lines of text" +msgstr "중복된 텍스트 줄 제거" + +#: changedetectionio/forms.py:815 +msgid "Sort text alphabetically" +msgstr "텍스트를 알파벳순으로 정렬" + +#: changedetectionio/forms.py:816 changedetectionio/forms.py:1025 +msgid "Strip ignored lines" +msgstr "무시된 줄 제거" + +#: changedetectionio/forms.py:817 +msgid "Trim whitespace before and after text" +msgstr "각 텍스트 줄 앞과 뒤의 공백을 제거하세요." + +#: changedetectionio/forms.py:819 +msgid "Added lines" +msgstr "로그인" + +#: changedetectionio/forms.py:820 +msgid "Replaced/changed lines" +msgstr "교체/변경된 라인" + +#: changedetectionio/forms.py:821 +msgid "Removed lines" +msgstr "제거됨" + +#: changedetectionio/forms.py:823 +msgid "Keyword triggers - Trigger/wait for text" +msgstr "키워드 트리거 - 텍스트 트리거/대기" + +#: changedetectionio/forms.py:826 +msgid "Block change-detection while text matches" +msgstr "텍스트가 일치하는 동안 변경 감지 차단" + +#: changedetectionio/forms.py:827 +msgid "Execute JavaScript before change detection" +msgstr "변경 감지 전에 JavaScript 실행" + +#: changedetectionio/blueprint/tags/templates/groups-overview.html:17 +#: changedetectionio/forms.py:829 changedetectionio/forms.py:1053 +msgid "Save" +msgstr "구하다" + +#: changedetectionio/forms.py:831 +msgid "Proxy" +msgstr "대리" + +#: changedetectionio/forms.py:833 +msgid "Send a notification when the filter can no longer be found on the page" +msgstr "페이지에서 필터를 더 이상 찾을 수 없으면 알림 보내기" + +#: changedetectionio/blueprint/settings/templates/settings.html:22 +#: changedetectionio/blueprint/tags/templates/edit-tag.html:32 +#: changedetectionio/blueprint/ui/templates/edit.html:59 +#: changedetectionio/forms.py:834 +msgid "Notifications" +msgstr "정보 없음" + +#: changedetectionio/forms.py:834 +msgid "Muted" +msgstr "무음" + +#: changedetectionio/forms.py:834 +msgid "On" +msgstr "없음" + +#: changedetectionio/forms.py:835 +msgid "Attach screenshot to notification (where possible)" +msgstr "알림에 스크린샷 첨부(가능한 경우)" + +#: changedetectionio/forms.py:837 +msgid "Match" +msgstr "# 시계" + +#: changedetectionio/forms.py:837 +msgid "Match all of the following" +msgstr "다음을 모두 일치시키세요." + +#: changedetectionio/forms.py:837 +msgid "Match any of the following" +msgstr "다음 중 하나와 일치" + +#: changedetectionio/forms.py:839 +msgid "Use page <title> in list" +msgstr "목록의 <제목> 페이지 사용" + +#: changedetectionio/forms.py:856 +msgid "Body must be empty when Request Method is set to GET" +msgstr "요청 방법이 GET으로 설정된 경우 본문이 비어 있어야 합니다." + +#: changedetectionio/forms.py:865 changedetectionio/forms.py:879 +#: changedetectionio/forms.py:894 +#, python-format +msgid "Invalid template syntax configuration: %(error)s" +msgstr "잘못된 템플릿 구문 구성: %(error)s" + +#: changedetectionio/forms.py:869 changedetectionio/forms.py:883 +#, python-format +msgid "Invalid template syntax: %(error)s" +msgstr "잘못된 템플릿 구문: %(error)s" + +#: changedetectionio/forms.py:898 +#, python-format +msgid "Invalid template syntax in \"%(header)s\" header: %(error)s" +msgstr "" + +#: changedetectionio/forms.py:922 changedetectionio/forms.py:934 +msgid "Name" +msgstr "음소거 해제" + +#: changedetectionio/forms.py:923 +msgid "Proxy URL" +msgstr "프록시 URL" + +#: changedetectionio/forms.py:928 +msgid "Proxy URLs must start with http://, https:// or socks5://" +msgstr "프록시 URL은 http://, https:// 또는 sock5://로 시작해야 합니다." + +#: changedetectionio/forms.py:935 +msgid "Browser connection URL" +msgstr "브라우저 연결 URL" + +#: changedetectionio/forms.py:940 +msgid "Browser URLs must start with wss:// or ws://" +msgstr "브라우저 URL은 wss:// 또는 ws://로 시작해야 합니다." + +#: changedetectionio/forms.py:946 +msgid "Plaintext requests" +msgstr "일반 텍스트 요청" + +#: changedetectionio/forms.py:948 +msgid "Chrome requests" +msgstr "요구" + +#: changedetectionio/forms.py:954 +msgid "Default proxy" +msgstr "기본 프록시" + +#: changedetectionio/forms.py:955 +msgid "Random jitter seconds ± check" +msgstr "랜덤 지터 초 ± 확인" + +#: changedetectionio/forms.py:959 +msgid "Number of fetch workers" +msgstr "가져오기 작업자 수" + +#: changedetectionio/forms.py:962 +msgid "Should be between 1 and 50" +msgstr "1에서 50 사이여야 합니다." + +#: changedetectionio/forms.py:964 +msgid "Requests timeout in seconds" +msgstr "요청 시간 초과(초)" + +#: changedetectionio/forms.py:967 +msgid "Should be between 1 and 999" +msgstr "1에서 999 사이여야 합니다." + +#: changedetectionio/forms.py:972 +msgid "Default User-Agent overrides" +msgstr "기본 사용자 에이전트 재정의" + +#: changedetectionio/forms.py:978 +msgid "Both a name, and a Proxy URL is required." +msgstr "이름과 프록시 URL이 모두 필요합니다." + +#: changedetectionio/forms.py:982 +msgid "Open 'History' page in a new tab" +msgstr "새 탭에서 '기록' 페이지 열기" + +#: changedetectionio/forms.py:983 +msgid "Realtime UI Updates Enabled" +msgstr "실시간 업데이트 오프라인" + +#: changedetectionio/forms.py:984 +msgid "Favicons Enabled" +msgstr "활성화하는 것을 고려해보세요" + +#: changedetectionio/forms.py:985 +msgid "Use page <title> in watch overview list" +msgstr "시청 개요 목록에서 <제목> 페이지를 사용하세요." + +#: changedetectionio/forms.py:990 +msgid "API access token security check enabled" +msgstr "API 액세스 토큰 보안 확인이 활성화되었습니다." + +#: changedetectionio/forms.py:991 +msgid "Notification base URL override" +msgstr "알림 경고 수" + +#: changedetectionio/forms.py:995 +msgid "Treat empty pages as a change?" +msgstr "빈 페이지를 변경 사항으로 처리하시겠습니까?" + +#: changedetectionio/forms.py:997 +msgid "Ignore Text" +msgstr "오류 텍스트" + +#: changedetectionio/forms.py:999 +msgid "Ignore whitespace" +msgstr "공백 무시" + +#: changedetectionio/forms.py:1006 +#: changedetectionio/processors/image_ssim_diff/forms.py:50 +msgid "Must be between 0 and 100" +msgstr "0에서 100 사이여야 합니다." + +#: changedetectionio/forms.py:1013 +msgid "Pager size" +msgstr "호출기 크기" + +#: changedetectionio/forms.py:1016 +msgid "Should be atleast zero (disabled)" +msgstr "0 이상이어야 합니다(비활성화됨)." + +#: changedetectionio/forms.py:1018 +msgid "RSS Content format" +msgstr "RSS 콘텐츠 형식" + +#: changedetectionio/forms.py:1019 +msgid "RSS <description> body built from" +msgstr "RSS <설명> 본문은 다음에서 작성되었습니다." + +#: changedetectionio/forms.py:1020 +msgid "RSS \"System default\" template override" +msgstr "" + +#: changedetectionio/forms.py:1022 +msgid "Remove password" +msgstr "비밀번호" + +#: changedetectionio/forms.py:1023 +msgid "Render anchor tag content" +msgstr "앵커 태그 콘텐츠 렌더링" + +#: changedetectionio/forms.py:1024 +msgid "Allow anonymous access to watch history page when password is enabled" +msgstr "비밀번호가 활성화되면 시청 기록 페이지에 대한 익명 액세스를 허용합니다." + +#: changedetectionio/forms.py:1026 +msgid "Hide muted watches from RSS feed" +msgstr "RSS 피드에서 음소거된 시계 숨기기" + +#: changedetectionio/forms.py:1029 +msgid "Enable RSS reader mode " +msgstr "RSS 리더 모드 활성화" + +#: changedetectionio/forms.py:1030 +msgid "Number of changes to show in watch RSS feed" +msgstr "시계 RSS 피드에 표시할 변경 사항 수" + +#: changedetectionio/forms.py:1032 changedetectionio/forms.py:1037 +msgid "Should contain zero or more attempts" +msgstr "0개 이상의 시도를 포함해야 합니다." + +#: changedetectionio/forms.py:1034 +msgid "Number of times the filter can be missing before sending a notification" +msgstr "알림을 보내기 전에 필터가 누락될 수 있는 횟수" + +#: changedetectionio/forms.py:1057 +msgid "RegEx to extract" +msgstr "추출할 RegEx" + +#: changedetectionio/forms.py:1058 +msgid "Extract as CSV" +msgstr "데이터 추출" + +#: changedetectionio/blueprint/backups/templates/overview.html:6 +msgid "Backups" +msgstr "백업" + +#: changedetectionio/blueprint/backups/templates/overview.html:9 +msgid "A backup is running!" +msgstr "백업이 실행 중입니다!" + +#: changedetectionio/blueprint/backups/templates/overview.html:13 +msgid "" +"Here you can download and request a new backup, when a backup is " +"completed you will see it listed below." +msgstr "" + +#: changedetectionio/blueprint/backups/templates/overview.html:19 +msgid "Mb" +msgstr "MB" + +#: changedetectionio/blueprint/backups/templates/overview.html:24 +msgid "No backups found." +msgstr "백업을 찾을 수 없습니다." + +#: changedetectionio/blueprint/backups/templates/overview.html:28 +msgid "Create backup" +msgstr "백업" + +#: changedetectionio/blueprint/backups/templates/overview.html:30 +msgid "Remove backups" +msgstr "백업" + +#: changedetectionio/blueprint/imports/templates/import.html:9 +msgid "URL List" +msgstr "URL 목록" + +#: changedetectionio/blueprint/imports/templates/import.html:10 +msgid "Distill.io" +msgstr "Distill.io" + +#: changedetectionio/blueprint/imports/templates/import.html:11 +msgid ".XLSX & Wachete" +msgstr ".XLSX 및 와체테" + +#: changedetectionio/blueprint/imports/templates/import.html:20 +msgid "" +"Enter one URL per line, and optionally add tags for each URL after a " +"space, delineated by comma (,):" +msgstr "" + +#: changedetectionio/blueprint/imports/templates/import.html:22 +msgid "Example:" +msgstr "예:" + +#: changedetectionio/blueprint/imports/templates/import.html:23 +msgid "URLs which do not pass validation will stay in the textarea." +msgstr "유효성 검사를 통과하지 못한 URL은 텍스트 영역에 유지됩니다." + +#: changedetectionio/blueprint/imports/templates/import.html:44 +msgid "" +"Copy and Paste your Distill.io watch 'export' file, this should be a JSON" +" file." +msgstr "" + +#: changedetectionio/blueprint/imports/templates/import.html:45 +msgid "This is" +msgstr "이것은" + +#: changedetectionio/blueprint/imports/templates/import.html:45 +msgid "experimental" +msgstr "실험적인" + +#: changedetectionio/blueprint/imports/templates/import.html:45 +msgid "supported fields are" +msgstr "지원되는 필드는" + +#: changedetectionio/blueprint/imports/templates/import.html:45 +msgid "the rest (including" +msgstr "나머지 (포함" + +#: changedetectionio/blueprint/imports/templates/import.html:45 +msgid "are ignored." +msgstr "무시됩니다." + +#: changedetectionio/blueprint/imports/templates/import.html:48 +msgid "How to export?" +msgstr "수출하는 방법?" + +#: changedetectionio/blueprint/imports/templates/import.html:49 +msgid "Be sure to set your default fetcher to Chrome if required." +msgstr "필요한 경우 기본 가져오기 프로그램을 Chrome으로 설정하세요." + +#: changedetectionio/blueprint/imports/templates/import.html:91 +msgid "Table of custom column and data types mapping for the" +msgstr "사용자 정의 열 및 데이터 유형 매핑 표" + +#: changedetectionio/blueprint/imports/templates/import.html:91 +msgid "Custom mapping" +msgstr "맞춤 매핑" + +#: changedetectionio/blueprint/imports/templates/import.html:91 +msgid "File mapping type." +msgstr "파일 매핑 유형." + +#: changedetectionio/blueprint/imports/templates/import.html:95 +msgid "Column #" +msgstr "열 #" + +#: changedetectionio/blueprint/imports/templates/import.html:101 +msgid "Type" +msgstr "유형" + +#: changedetectionio/blueprint/imports/templates/import.html:104 +msgid "none" +msgstr "없음" + +#: changedetectionio/blueprint/imports/templates/import.html:105 +msgid "URL" +msgstr "URL" + +#: changedetectionio/blueprint/imports/templates/import.html:107 +msgid "CSS/xPath filter" +msgstr "CSS/xPath 필터" + +#: changedetectionio/blueprint/imports/templates/import.html:108 +msgid "Group / Tag name(s)" +msgstr "감시 그룹/태그" + +#: changedetectionio/blueprint/imports/templates/import.html:109 +msgid "Recheck time (minutes)" +msgstr "재확인 시간(분)" + +#: changedetectionio/blueprint/imports/templates/import.html:116 +msgid "Import" +msgstr "수입" + +#: changedetectionio/blueprint/settings/templates/notification-log.html:7 +msgid "Notification debug log" +msgstr "알림 디버그 로그" + +#: changedetectionio/blueprint/settings/templates/settings.html:21 +#: changedetectionio/blueprint/tags/templates/edit-tag.html:27 +#: changedetectionio/blueprint/ui/templates/edit.html:47 +msgid "General" +msgstr "일반적인" + +#: changedetectionio/blueprint/settings/templates/settings.html:23 +msgid "Fetching" +msgstr "수색" + +#: changedetectionio/blueprint/settings/templates/settings.html:24 +msgid "Global Filters" +msgstr "글로벌 필터" + +#: changedetectionio/blueprint/settings/templates/settings.html:25 +msgid "UI Options" +msgstr "UI 옵션" + +#: changedetectionio/blueprint/settings/templates/settings.html:26 +msgid "API" +msgstr "API" + +#: changedetectionio/blueprint/settings/templates/settings.html:27 +msgid "RSS" +msgstr "RSS" + +#: changedetectionio/blueprint/settings/templates/settings.html:28 +msgid "Time & Date" +msgstr "시간 및 날짜" + +#: changedetectionio/blueprint/settings/templates/settings.html:29 +msgid "CAPTCHA & Proxies" +msgstr "보안 문자 및 프록시" + +#: changedetectionio/blueprint/settings/templates/settings.html:35 +msgid "Info" +msgstr "추가 정보" + +#: changedetectionio/blueprint/settings/templates/settings.html:46 +msgid "Default recheck time for all watches, current system minimum is" +msgstr "모든 시계의 기본 재확인 시간, 현재 시스템 최소값은 다음과 같습니다." + +#: changedetectionio/blueprint/settings/templates/settings.html:46 +msgid "seconds" +msgstr "초" + +#: changedetectionio/blueprint/settings/templates/settings.html:46 +msgid "more info" +msgstr "추가 정보" + +#: changedetectionio/blueprint/settings/templates/settings.html:390 +msgid "Python version:" +msgstr "파이썬 버전:" + +#: changedetectionio/blueprint/settings/templates/settings.html:391 +msgid "Plugins active:" +msgstr "활성화된 플러그인:" + +#: changedetectionio/blueprint/settings/templates/settings.html:399 +msgid "No plugins active" +msgstr "활성화된 플러그인이 없습니다." + +#: changedetectionio/blueprint/settings/templates/settings.html:405 +msgid "Back" +msgstr "백업" + +#: changedetectionio/blueprint/settings/templates/settings.html:406 +msgid "Clear Snapshot History" +msgstr "기록 지우기/재설정" + +#: changedetectionio/blueprint/tags/templates/edit-tag.html:28 +#: changedetectionio/blueprint/ui/templates/edit.html:56 +#: changedetectionio/blueprint/ui/templates/edit.html:386 +msgid "Filters & Triggers" +msgstr "필터 및 트리거" + +#: changedetectionio/blueprint/tags/templates/edit-tag.html:50 +msgid "These settings are" +msgstr "설정" + +#: changedetectionio/blueprint/tags/templates/edit-tag.html:50 +msgid "added" +msgstr "추가됨" + +#: changedetectionio/blueprint/tags/templates/edit-tag.html:50 +msgid "to any existing watch configurations." +msgstr "기존 시계 구성에 적용됩니다." + +#: changedetectionio/blueprint/tags/templates/edit-tag.html:53 +#: changedetectionio/blueprint/ui/templates/edit.html:321 +msgid "Text filtering" +msgstr "텍스트 필터링" + +#: changedetectionio/blueprint/tags/templates/edit-tag.html:73 +#: changedetectionio/blueprint/ui/templates/edit.html:269 +msgid "Use with caution!" +msgstr "주의해서 사용하세요!" + +#: changedetectionio/blueprint/tags/templates/edit-tag.html:73 +#: changedetectionio/blueprint/ui/templates/edit.html:269 +msgid "This will easily fill up your email storage quota or flood other storages." +msgstr "이로 인해 이메일 저장 할당량이 쉽게 채워지거나 다른 저장 공간이 넘치게 됩니다." + +#: changedetectionio/blueprint/tags/templates/edit-tag.html:80 +#: changedetectionio/blueprint/ui/templates/edit.html:276 +msgid "Look out!" +msgstr "로그아웃" + +#: changedetectionio/blueprint/tags/templates/edit-tag.html:80 +#: changedetectionio/blueprint/ui/templates/edit.html:276 +msgid "Lookout!" +msgstr "로그아웃" + +#: changedetectionio/blueprint/tags/templates/edit-tag.html:81 +#: changedetectionio/blueprint/ui/templates/edit.html:277 +msgid "There are" +msgstr "있다" + +#: changedetectionio/blueprint/tags/templates/edit-tag.html:81 +#: changedetectionio/blueprint/ui/templates/edit.html:277 +msgid "system-wide notification URLs enabled" +msgstr "시스템 전체 알림 URL이 활성화되었습니다." + +#: changedetectionio/blueprint/tags/templates/edit-tag.html:81 +#: changedetectionio/blueprint/ui/templates/edit.html:277 +msgid "this form will override notification settings for this watch only" +msgstr "이 양식은 이 시계에 대해서만 알림 설정을 재정의합니다." + +#: changedetectionio/blueprint/tags/templates/edit-tag.html:81 +#: changedetectionio/blueprint/ui/templates/edit.html:277 +msgid "an empty Notification URL list here will still send notifications." +msgstr "여기의 빈 알림 URL 목록은 여전히 ​​알림을 보냅니다." + +#: changedetectionio/blueprint/tags/templates/edit-tag.html:84 +#: changedetectionio/blueprint/ui/templates/edit.html:280 +msgid "Use system defaults" +msgstr "시스템 기본값 사용" + +#: changedetectionio/blueprint/tags/templates/groups-overview.html:11 +msgid "Add a new organisational tag" +msgstr "새 조직 태그 추가" + +#: changedetectionio/blueprint/tags/templates/groups-overview.html:14 +msgid "Watch group / tag" +msgstr "감시 그룹/태그" + +#: changedetectionio/blueprint/tags/templates/groups-overview.html:21 +msgid "" +"Groups allows you to manage filters and notifications for multiple " +"watches under a single organisational tag." +msgstr "" + +#: changedetectionio/blueprint/tags/templates/groups-overview.html:31 +msgid "# Watches" +msgstr "# 시계" + +#: changedetectionio/blueprint/tags/templates/groups-overview.html:32 +msgid "Tag / Label name" +msgstr "태그/라벨 이름" + +#: changedetectionio/blueprint/tags/templates/groups-overview.html:42 +msgid "No website organisational tags/groups configured" +msgstr "구성된 웹사이트 조직 태그/그룹이 없습니다." + +#: changedetectionio/blueprint/tags/templates/groups-overview.html:53 +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:249 +msgid "Edit" +msgstr "편집하다" + +#: changedetectionio/blueprint/tags/templates/groups-overview.html:58 +msgid "Delete Group?" +msgstr "그룹을 삭제하시겠습니까?" + +#: changedetectionio/blueprint/tags/templates/groups-overview.html:59 +#, python-format +msgid "" +"<p>Are you sure you want to delete group " +"<strong>%(title)s</strong>?</p><p>This action cannot be undone.</p>" +msgstr "" + +#: changedetectionio/blueprint/tags/templates/groups-overview.html:60 +#: changedetectionio/blueprint/tags/templates/groups-overview.html:61 +#: changedetectionio/blueprint/ui/templates/edit.html:490 +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:73 +msgid "Delete" +msgstr "삭제" + +#: changedetectionio/blueprint/tags/templates/groups-overview.html:61 +msgid "Deletes and removes tag" +msgstr "태그 삭제 및 제거" + +#: changedetectionio/blueprint/tags/templates/groups-overview.html:66 +msgid "Unlink Group?" +msgstr "그룹을 연결 해제하시겠습니까?" + +#: changedetectionio/blueprint/tags/templates/groups-overview.html:67 +#, python-format +msgid "" +"<p>Are you sure you want to unlink all watches from group " +"<strong>%(title)s</strong>?</p><p>The tag will be kept but watches will " +"be removed from it.</p>" +msgstr "" + +#: changedetectionio/blueprint/tags/templates/groups-overview.html:68 +#: changedetectionio/blueprint/tags/templates/groups-overview.html:69 +msgid "Unlink" +msgstr "풀리다" + +#: changedetectionio/blueprint/tags/templates/groups-overview.html:69 +msgid "Keep the tag but unlink any watches" +msgstr "태그는 유지하되 시계 연결을 해제하세요." + +#: changedetectionio/blueprint/tags/templates/groups-overview.html:70 +#: changedetectionio/blueprint/ui/templates/edit.html:500 +msgid "RSS Feed for this watch" +msgstr "이 시계에 대한 RSS 피드" + +#: changedetectionio/blueprint/ui/templates/clear_all_history.html:12 +msgid "" +"This will remove version history (snapshots) for ALL watches, but keep " +"your list of URLs!" +msgstr "" + +#: changedetectionio/blueprint/ui/templates/clear_all_history.html:13 +msgid "You may like to use the" +msgstr "당신은" + +#: changedetectionio/blueprint/ui/templates/clear_all_history.html:13 +msgid "BACKUP" +msgstr "백업" + +#: changedetectionio/blueprint/ui/templates/clear_all_history.html:13 +msgid "link first." +msgstr "먼저 링크하세요." + +#: changedetectionio/blueprint/ui/templates/clear_all_history.html:17 +msgid "Confirmation text" +msgstr "정보 없음" + +#: changedetectionio/blueprint/ui/templates/clear_all_history.html:27 +msgid "Type in the word" +msgstr "단어를 입력하세요" + +#: changedetectionio/blueprint/ui/templates/clear_all_history.html:27 +msgid "clear" +msgstr "분명한" + +#: changedetectionio/blueprint/ui/templates/clear_all_history.html:27 +msgid "to confirm that you understand." +msgstr "당신이 이해했는지 확인하기 위해." + +#: changedetectionio/blueprint/ui/templates/clear_all_history.html:33 +msgid "Clear History!" +msgstr "기록 지우기" + +#: changedetectionio/blueprint/ui/templates/clear_all_history.html:39 +#: changedetectionio/templates/base.html:271 +msgid "Cancel" +msgstr "취소" + +#: changedetectionio/blueprint/ui/templates/diff-offscreen-options.html:3 +msgid "Share diff as image" +msgstr "차이점을 이미지로 공유" + +#: changedetectionio/blueprint/ui/templates/diff-offscreen-options.html:3 +msgid "Share as Image" +msgstr "이미지로 공유" + +#: changedetectionio/blueprint/ui/templates/diff-offscreen-options.html:6 +msgid "Ignore any lines matching" +msgstr "일치하는 줄을 무시하세요." + +#: changedetectionio/blueprint/ui/templates/diff-offscreen-options.html:9 +msgid "Ignore any lines matching excluding digits" +msgstr "숫자를 제외하고 일치하는 줄을 무시합니다." + +#: changedetectionio/blueprint/ui/templates/diff.html:28 +msgid "From" +msgstr "에서" + +#: changedetectionio/blueprint/ui/templates/diff.html:38 +msgid "To" +msgstr "에게" + +#: changedetectionio/blueprint/ui/templates/diff.html:53 +msgid "Words" +msgstr "비밀번호" + +#: changedetectionio/blueprint/ui/templates/diff.html:57 +msgid "Lines" +msgstr "로그인" + +#: changedetectionio/blueprint/ui/templates/diff.html:61 +msgid "Ignore Whitespace" +msgstr "공백 무시" + +#: changedetectionio/blueprint/ui/templates/diff.html:65 +msgid "Same/non-changed" +msgstr "변경됨" + +#: changedetectionio/blueprint/ui/templates/diff.html:69 +msgid "Removed" +msgstr "제거됨" + +#: changedetectionio/blueprint/ui/templates/diff.html:73 +#: changedetectionio/blueprint/ui/templates/edit.html:327 +msgid "Added" +msgstr "추가됨" + +#: changedetectionio/blueprint/ui/templates/diff.html:77 +#: changedetectionio/blueprint/ui/templates/edit.html:327 +msgid "Replaced" +msgstr "교체됨" + +#: changedetectionio/blueprint/ui/templates/diff.html:82 +#: changedetectionio/blueprint/ui/templates/preview.html:36 +msgid "Keyboard:" +msgstr "건반:" + +#: changedetectionio/blueprint/ui/templates/diff.html:83 +#: changedetectionio/blueprint/ui/templates/preview.html:37 +msgid "Previous" +msgstr "시사" + +#: changedetectionio/blueprint/ui/templates/diff.html:84 +#: changedetectionio/blueprint/ui/templates/preview.html:38 +msgid "Next" +msgstr "다음" + +#: changedetectionio/blueprint/ui/templates/diff.html:91 +msgid "Jump to next difference" +msgstr "다음 차이점으로 이동" + +#: changedetectionio/blueprint/ui/templates/diff.html:91 +msgid "Jump" +msgstr "도약" + +#: changedetectionio/blueprint/ui/templates/diff.html:97 +#: changedetectionio/blueprint/ui/templates/preview.html:45 +msgid "Error Text" +msgstr "오류 텍스트" + +#: changedetectionio/blueprint/ui/templates/diff.html:98 +#: changedetectionio/blueprint/ui/templates/preview.html:47 +msgid "Error Screenshot" +msgstr "오류 스크린샷" + +#: changedetectionio/blueprint/ui/templates/diff.html:99 +#: changedetectionio/blueprint/ui/templates/preview.html:50 +#: changedetectionio/processors/text_json_diff/processor.py:24 +msgid "Text" +msgstr "텍스트" + +#: changedetectionio/blueprint/ui/templates/diff.html:100 +#: changedetectionio/blueprint/ui/templates/preview.html:51 +msgid "Current screenshot" +msgstr "현재 스크린샷" + +#: changedetectionio/blueprint/ui/templates/diff.html:101 +msgid "Extract Data" +msgstr "데이터 추출" + +#: changedetectionio/blueprint/ui/templates/diff.html:107 +msgid "seconds ago." +msgstr "초 전." + +#: changedetectionio/blueprint/ui/templates/diff.html:114 +#: changedetectionio/blueprint/ui/templates/preview.html:59 +#: changedetectionio/blueprint/ui/templates/preview.html:66 +msgid "seconds ago" +msgstr "초 전" + +#: changedetectionio/blueprint/ui/templates/diff.html:115 +msgid "Current error-ing screenshot from most recent request" +msgstr "가장 최근 요청의 현재 오류 스크린샷" + +#: changedetectionio/blueprint/ui/templates/diff.html:127 +msgid "Pro-tip: You can enable" +msgstr "전문가 팁: 활성화할 수 있습니다." + +#: changedetectionio/blueprint/ui/templates/diff.html:127 +msgid "\"share access when password is enabled\"" +msgstr "" + +#: changedetectionio/blueprint/ui/templates/diff.html:127 +msgid "from settings." +msgstr "설정" + +#: changedetectionio/blueprint/ui/templates/diff.html:133 +msgid "Goto single snapshot" +msgstr "단일 스냅샷으로 이동" + +#: changedetectionio/blueprint/ui/templates/diff.html:138 +#: changedetectionio/blueprint/ui/templates/edit.html:125 +msgid "Tip:" +msgstr "팁:" + +#: changedetectionio/blueprint/ui/templates/diff.html:138 +msgid "Highlight text to share or add to ignore lists." +msgstr "공유하거나 무시 목록에 추가할 텍스트를 강조 표시합니다." + +#: changedetectionio/blueprint/ui/templates/diff.html:144 +#: changedetectionio/blueprint/ui/templates/preview.html:80 +msgid "" +"For now, Differences are performed on text, not graphically, only the " +"latest screenshot is available." +msgstr "" + +#: changedetectionio/blueprint/ui/templates/diff.html:149 +#: changedetectionio/blueprint/ui/templates/preview.html:86 +msgid "Current screenshot from most recent request" +msgstr "가장 최근 요청의 현재 스크린샷" + +#: changedetectionio/blueprint/ui/templates/diff.html:151 +#: changedetectionio/blueprint/ui/templates/preview.html:88 +msgid "No screenshot available just yet! Try rechecking the page." +msgstr "아직 스크린샷이 없습니다! 페이지를 다시 확인해 보세요." + +#: changedetectionio/blueprint/ui/templates/diff.html:154 +msgid "Screenshot requires Playwright/WebDriver enabled" +msgstr "스크린샷을 찍으려면 Playwright/WebDriver를 활성화해야 합니다." + +#: changedetectionio/blueprint/ui/templates/edit.html:48 +msgid "Request" +msgstr "요구" + +#: changedetectionio/blueprint/ui/templates/edit.html:52 +msgid "Browser Steps" +msgstr "브라우저 단계" + +#: changedetectionio/blueprint/ui/templates/edit.html:55 +msgid "Visual Filter Selector" +msgstr "시각적 필터 선택기" + +#: changedetectionio/blueprint/ui/templates/edit.html:57 +msgid "Conditions" +msgstr "정황" + +#: changedetectionio/blueprint/ui/templates/edit.html:60 +msgid "Stats" +msgstr "설정" + +#: changedetectionio/blueprint/ui/templates/edit.html:73 +#: changedetectionio/blueprint/ui/templates/edit.html:313 +msgid "Some sites use JavaScript to create the content, for this you should" +msgstr "일부 사이트에서는 JavaScript를 사용하여 콘텐츠를 생성합니다." + +#: changedetectionio/blueprint/ui/templates/edit.html:73 +#: changedetectionio/blueprint/ui/templates/edit.html:313 +msgid "use the Chrome/WebDriver Fetcher" +msgstr "Chrome/WebDriver Fetcher를 사용하세요." + +#: changedetectionio/blueprint/ui/templates/edit.html:74 +msgid "Variables are supported in the URL" +msgstr "URL에서 변수가 지원됩니다." + +#: changedetectionio/blueprint/ui/templates/edit.html:74 +#: changedetectionio/blueprint/ui/templates/edit.html:180 +#: changedetectionio/blueprint/ui/templates/edit.html:189 +msgid "help and examples here" +msgstr "여기에 도움말과 예시가 있습니다" + +#: changedetectionio/blueprint/ui/templates/edit.html:78 +msgid "Organisational tag/group name used in the main listing page" +msgstr "기본 목록 페이지에 사용되는 조직 태그/그룹 이름" + +#: changedetectionio/blueprint/ui/templates/edit.html:85 +msgid "" +"Automatically uses the page title if found, you can also use your own " +"title/description here" +msgstr "" + +#: changedetectionio/blueprint/ui/templates/edit.html:95 +msgid "The interval/amount of time between each check." +msgstr "각 확인 사이의 간격/시간입니다." + +#: changedetectionio/blueprint/ui/templates/edit.html:110 +msgid "" +"Sends a notification when the filter can no longer be seen on the page, " +"good for knowing when the page changed and your filter will not work " +"anymore." +msgstr "" + +#: changedetectionio/blueprint/ui/templates/edit.html:123 +msgid "Use the" +msgstr "사용" + +#: changedetectionio/blueprint/ui/templates/edit.html:123 +msgid "Basic" +msgstr "기초적인" + +#: changedetectionio/blueprint/ui/templates/edit.html:123 +msgid "" +"method (default) where your watched site doesn't need Javascript to " +"render." +msgstr "" + +#: changedetectionio/blueprint/ui/templates/edit.html:124 +msgid "The" +msgstr "그만큼" + +#: changedetectionio/blueprint/ui/templates/edit.html:124 +msgid "Chrome/Javascript" +msgstr "크롬/자바스크립트" + +#: changedetectionio/blueprint/ui/templates/edit.html:124 +msgid "" +"method requires a network connection to a running WebDriver+Chrome " +"server, set by the ENV var 'WEBDRIVER_URL'." +msgstr "" + +#: changedetectionio/blueprint/ui/templates/edit.html:125 +msgid "Connect using Bright Data and Oxylabs Proxies, find out more here." +msgstr "Bright Data 및 Oxylabs 프록시를 사용하여 연결하세요. 여기에서 자세한 내용을 알아보세요." + +#: changedetectionio/blueprint/ui/templates/edit.html:130 +msgid "Check/Scan all" +msgstr "모두 다시 확인하세요" + +#: changedetectionio/blueprint/ui/templates/edit.html:133 +msgid "Choose a proxy for this watch" +msgstr "이 시계에 대한 RSS 피드" + +#: changedetectionio/blueprint/ui/templates/edit.html:143 +msgid "" +"If you're having trouble waiting for the page to be fully rendered (text " +"missing etc), try increasing the 'wait' time here." +msgstr "" + +#: changedetectionio/blueprint/ui/templates/edit.html:145 +msgid "This will wait" +msgstr "이것은 기다릴 것이다" + +#: changedetectionio/blueprint/ui/templates/edit.html:145 +msgid "seconds before extracting the text." +msgstr "텍스트를 추출하기 몇 초 전입니다." + +#: changedetectionio/blueprint/ui/templates/edit.html:147 +msgid "Using the current global default settings" +msgstr "현재 전역 기본 설정 사용" + +#: changedetectionio/blueprint/ui/templates/edit.html:152 +#: changedetectionio/blueprint/ui/templates/edit.html:165 +msgid "Show advanced options" +msgstr "고급 옵션 표시" + +#: changedetectionio/blueprint/ui/templates/edit.html:157 +msgid "" +"Run this code before performing change detection, handy for filling in " +"fields and other actions" +msgstr "" + +#: changedetectionio/blueprint/ui/templates/edit.html:158 +msgid "More help and examples here" +msgstr "여기에 더 많은 도움말과 예시가 있습니다." + +#: changedetectionio/blueprint/ui/templates/edit.html:180 +msgid "Variables are supported in the request body" +msgstr "요청 본문에서 변수가 지원됩니다." + +#: changedetectionio/blueprint/ui/templates/edit.html:189 +msgid "Variables are supported in the request header values" +msgstr "요청 헤더 값에서 변수가 지원됩니다." + +#: changedetectionio/blueprint/ui/templates/edit.html:192 +msgid "Alert! Extra headers file found and will be added to this watch!" +msgstr "알리다! 추가 헤더 파일이 발견되어 이 시계에 추가됩니다!" + +#: changedetectionio/blueprint/ui/templates/edit.html:194 +msgid "Headers can be also read from a file in your data-directory" +msgstr "데이터 디렉터리의 파일에서도 헤더를 읽을 수 있습니다." + +#: changedetectionio/blueprint/ui/templates/edit.html:194 +msgid "Read more here" +msgstr "여기서 더 읽어보세요" + +#: changedetectionio/blueprint/ui/templates/edit.html:197 +msgid "Not supported by Selenium browser" +msgstr "Selenium 브라우저에서는 지원되지 않습니다." + +#: changedetectionio/blueprint/ui/templates/edit.html:221 +msgid "Turn on text finder" +msgstr "텍스트 찾기 켜기" + +#: changedetectionio/blueprint/ui/templates/edit.html:224 +msgid "Please wait, first browser step can take a little time to load.." +msgstr "잠시 기다려 주십시오. 첫 번째 브라우저 단계를 로드하는 데 약간의 시간이 걸릴 수 있습니다." + +#: changedetectionio/blueprint/ui/templates/edit.html:231 +msgid "Click here to Start" +msgstr "시작하려면 여기를 클릭하세요" + +#: changedetectionio/blueprint/ui/templates/edit.html:233 +msgid "Please allow 10-15 seconds for the browser to connect." +msgstr "브라우저가 연결되는 데 10~15초 정도 기다려 주십시오." + +#: changedetectionio/blueprint/ui/templates/edit.html:242 +msgid "Press \"Play\" to start." +msgstr "" + +#: changedetectionio/blueprint/ui/templates/edit.html:249 +#: changedetectionio/blueprint/ui/templates/edit.html:419 +msgid "Visual Selector data is not ready, watch needs to be checked atleast once." +msgstr "시각적 선택기 데이터가 준비되지 않았습니다. 시계를 한 번 이상 확인해야 합니다." + +#: changedetectionio/blueprint/ui/templates/edit.html:253 +msgid "" +"Sorry, this functionality only works with fetchers that support " +"interactive Javascript (so far only Playwright based fetchers)" +msgstr "" + +#: changedetectionio/blueprint/ui/templates/edit.html:254 +#: changedetectionio/blueprint/ui/templates/edit.html:424 +msgid "You need to" +msgstr "당신은" + +#: changedetectionio/blueprint/ui/templates/edit.html:254 +#: changedetectionio/blueprint/ui/templates/edit.html:424 +msgid "Set the fetch method" +msgstr "가져오기 방법 설정" + +#: changedetectionio/blueprint/ui/templates/edit.html:254 +msgid "to one that supports interactive Javascript." +msgstr "대화형 Javascript를 지원하는 것입니다." + +#: changedetectionio/blueprint/ui/templates/edit.html:297 +msgid "" +"Use the verify (✓) button to test if a condition passes against the " +"current snapshot." +msgstr "" + +#: changedetectionio/blueprint/ui/templates/edit.html:298 +msgid "Read a quick tutorial about" +msgstr "다음에 대한 빠른 튜토리얼을 읽어보세요." + +#: changedetectionio/blueprint/ui/templates/edit.html:298 +msgid "using conditional web page changes here" +msgstr "여기에서 조건부 웹페이지 변경 사항을 사용합니다." + +#: changedetectionio/blueprint/ui/templates/edit.html:303 +msgid "Activate preview" +msgstr "시사" + +#: changedetectionio/blueprint/ui/templates/edit.html:307 +msgid "Pro-tips:" +msgstr "전문가 팁:" + +#: changedetectionio/blueprint/ui/templates/edit.html:310 +msgid "Use the preview page to see your filters and triggers highlighted." +msgstr "미리보기 페이지를 사용하여 강조 표시된 필터와 트리거를 확인하세요." + +#: changedetectionio/blueprint/ui/templates/edit.html:322 +msgid "Limit trigger/ignore/block/extract to;" +msgstr "트리거/무시/차단/추출을 다음으로 제한합니다." + +#: changedetectionio/blueprint/ui/templates/edit.html:326 +msgid "" +"Note: Depending on the length and similarity of the text on each line, " +"the algorithm may consider an" +msgstr "" + +#: changedetectionio/blueprint/ui/templates/edit.html:326 +#: changedetectionio/blueprint/ui/templates/edit.html:328 +msgid "addition" +msgstr "덧셈" + +#: changedetectionio/blueprint/ui/templates/edit.html:326 +msgid "instead of" +msgstr "대신에" + +#: changedetectionio/blueprint/ui/templates/edit.html:326 +msgid "replacement" +msgstr "대사" + +#: changedetectionio/blueprint/ui/templates/edit.html:326 +msgid "for example." +msgstr "예를 들어." + +#: changedetectionio/blueprint/ui/templates/edit.html:327 +msgid "So it's always better to select" +msgstr "따라서 항상 선택하는 것이 좋습니다." + +#: changedetectionio/blueprint/ui/templates/edit.html:327 +msgid "when you're interested in new content." +msgstr "새로운 콘텐츠에 관심이 있을 때." + +#: changedetectionio/blueprint/ui/templates/edit.html:328 +msgid "When content is merely moved in a list, it will also trigger an" +msgstr "콘텐츠가 목록에서 단순히 이동되는 경우에도" + +#: changedetectionio/blueprint/ui/templates/edit.html:328 +msgid "consider enabling" +msgstr "활성화하는 것을 고려해보세요" + +#: changedetectionio/blueprint/ui/templates/edit.html:328 +msgid "Only trigger when unique lines appear" +msgstr "고유한 줄이 나타날 때만 트리거됩니다." + +#: changedetectionio/blueprint/ui/templates/edit.html:332 +msgid "" +"Good for websites that just move the content around, and you want to know" +" when NEW content is added, compares new lines against all history for " +"this watch." +msgstr "" + +#: changedetectionio/blueprint/ui/templates/edit.html:340 +msgid "" +"Helps reduce changes detected caused by sites shuffling lines around, " +"combine with" +msgstr "" + +#: changedetectionio/blueprint/ui/templates/edit.html:340 +msgid "check unique lines" +msgstr "고유 라인 확인" + +#: changedetectionio/blueprint/ui/templates/edit.html:340 +msgid "below." +msgstr "아래에." + +#: changedetectionio/blueprint/ui/templates/edit.html:344 +msgid "Remove any whitespace before and after each line of text" +msgstr "각 텍스트 줄 앞과 뒤의 공백을 제거하세요." + +#: changedetectionio/blueprint/ui/templates/edit.html:358 +#: changedetectionio/blueprint/ui/templates/edit.html:361 +#: changedetectionio/blueprint/ui/templates/edit.html:417 +msgid "Loading..." +msgstr "로드 중..." + +#: changedetectionio/blueprint/ui/templates/edit.html:386 +msgid "The Visual Selector tool lets you select the" +msgstr "시각적 선택 도구를 사용하면 다음을 선택할 수 있습니다." + +#: changedetectionio/blueprint/ui/templates/edit.html:386 +msgid "text" +msgstr "텍스트" + +#: changedetectionio/blueprint/ui/templates/edit.html:386 +msgid "" +"elements that will be used for the change detection. It automatically " +"fills-in the filters in the \"CSS/JSONPath/JQ/XPath Filters\" box of the" +msgstr "" + +#: changedetectionio/blueprint/ui/templates/edit.html:386 +msgid "tab. Use" +msgstr "정지시키다" + +#: changedetectionio/blueprint/ui/templates/edit.html:386 +msgid "Shift+Click" +msgstr "Shift+클릭" + +#: changedetectionio/blueprint/ui/templates/edit.html:386 +msgid "to select multiple items." +msgstr "여러 항목을 선택하려면" + +#: changedetectionio/blueprint/ui/templates/edit.html:391 +msgid "Selection Mode:" +msgstr "선택 모드:" + +#: changedetectionio/blueprint/ui/templates/edit.html:394 +msgid "Select by element" +msgstr "요소별로 선택" + +#: changedetectionio/blueprint/ui/templates/edit.html:398 +msgid "Draw area" +msgstr "그리기 영역" + +#: changedetectionio/blueprint/ui/templates/edit.html:406 +msgid "Clear selection" +msgstr "선택 취소" + +#: changedetectionio/blueprint/ui/templates/edit.html:408 +msgid "One moment, fetching screenshot and element information.." +msgstr "잠시만 기다려 주세요. 스크린샷과 요소 정보를 가져오는 중입니다." + +#: changedetectionio/blueprint/ui/templates/edit.html:417 +msgid "Currently:" +msgstr "현재:" + +#: changedetectionio/blueprint/ui/templates/edit.html:423 +msgid "" +"Sorry, this functionality only works with fetchers that support " +"Javascript and screenshots (such as playwright etc)." +msgstr "" + +#: changedetectionio/blueprint/ui/templates/edit.html:424 +msgid "to one that supports Javascript and screenshots." +msgstr "Javascript와 스크린샷을 지원하는 것입니다." + +#: changedetectionio/blueprint/ui/templates/edit.html:441 +msgid "Check count" +msgstr "수표 수" + +#: changedetectionio/blueprint/ui/templates/edit.html:445 +msgid "Consecutive filter failures" +msgstr "연속적인 필터 실패" + +#: changedetectionio/blueprint/ui/templates/edit.html:449 +msgid "History length" +msgstr "역사" + +#: changedetectionio/blueprint/ui/templates/edit.html:453 +msgid "Last fetch duration" +msgstr "마지막 가져오기 기간" + +#: changedetectionio/blueprint/ui/templates/edit.html:457 +msgid "Notification alert count" +msgstr "알림 경고 수" + +#: changedetectionio/blueprint/ui/templates/edit.html:461 +msgid "Server type reply" +msgstr "서버 유형 응답" + +#: changedetectionio/blueprint/ui/templates/edit.html:475 +msgid "Download latest HTML snapshot" +msgstr "최신 HTML 스냅샷 다운로드" + +#: changedetectionio/blueprint/ui/templates/edit.html:488 +msgid "Delete Watch?" +msgstr "시계를 삭제하시겠습니까?" + +#: changedetectionio/blueprint/ui/templates/edit.html:489 +msgid "Are you sure you want to delete the watch for:" +msgstr "정말로 다음의 시계를 삭제하시겠습니까?" + +#: changedetectionio/blueprint/ui/templates/edit.html:489 +msgid "This action cannot be undone." +msgstr "이 작업은 취소할 수 없습니다." + +#: changedetectionio/blueprint/ui/templates/edit.html:495 +msgid "Clear History?" +msgstr "기록 지우기" + +#: changedetectionio/blueprint/ui/templates/edit.html:496 +msgid "Are you sure you want to clear all history for:" +msgstr "정말로 다음의 기록을 모두 지우시겠습니까?" + +#: changedetectionio/blueprint/ui/templates/edit.html:496 +msgid "" +"This will remove all snapshots and previous versions. This action cannot " +"be undone." +msgstr "" + +#: changedetectionio/blueprint/ui/templates/edit.html:497 +msgid "Clear History" +msgstr "기록 지우기" + +#: changedetectionio/blueprint/ui/templates/edit.html:499 +msgid "Clone & Edit" +msgstr "복제 및 편집" + +#: changedetectionio/blueprint/ui/templates/preview.html:22 +msgid "Select timestamp" +msgstr "타임스탬프 선택" + +#: changedetectionio/blueprint/ui/templates/preview.html:31 +msgid "Go" +msgstr "가다" + +#: changedetectionio/blueprint/ui/templates/preview.html:69 +msgid "Current erroring screenshot from most recent request" +msgstr "가장 최근 요청의 현재 오류 스크린샷" + +#: changedetectionio/blueprint/ui/templates/preview.html:91 +msgid "" +"Screenshot requires a Content Fetcher ( Sockpuppetbrowser, selenium, etc " +") that supports screenshots." +msgstr "" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:31 +msgid "Add a new web page change detection watch" +msgstr "새로운 웹 페이지 변경 감지 감시 추가" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:34 +msgid "Watch this URL!" +msgstr "이 URL을 시청하세요!" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:35 +msgid "Edit first then Watch" +msgstr "먼저 편집한 다음 보기" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:45 +msgid "Create a shareable link" +msgstr "공유 가능한 링크 만들기" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:45 +msgid "Tip: You can also add 'shared' watches." +msgstr "팁: '공유' 시계를 추가할 수도 있습니다." + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:45 +msgid "More info" +msgstr "추가 정보" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:53 +msgid "Pause" +msgstr "정지시키다" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:54 +msgid "UnPause" +msgstr "일시정지 해제" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:55 +msgid "Mute" +msgstr "무음" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:56 +msgid "UnMute" +msgstr "음소거 해제" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:57 +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:248 +msgid "Recheck" +msgstr "재확인" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:58 +msgid "Tag" +msgstr "꼬리표" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:59 +msgid "Mark viewed" +msgstr "본 것으로 표시" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:60 +msgid "Use default notification" +msgstr "기본 알림 사용" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:61 +msgid "Clear errors" +msgstr "오류 지우기" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:65 +msgid "Clear Histories" +msgstr "기록 지우기" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:66 +msgid "" +"<p>Are you sure you want to clear history for the selected " +"items?</p><p>This action cannot be undone.</p>" +msgstr "" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:67 +msgid "OK" +msgstr "좋아요" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:67 +msgid "Clear/reset history" +msgstr "기록 지우기/재설정" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:71 +msgid "Delete Watches?" +msgstr "시계를 삭제하시겠습니까?" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:72 +msgid "" +"<p>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:78 +msgid "Searching" +msgstr "수색" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:80 +msgid "All" +msgstr "모두" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:118 +msgid "Website" +msgstr "웹사이트" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:120 +msgid "Restock & Price" +msgstr "재입고 및 가격" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:122 +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:123 +msgid "Last" +msgstr "마지막" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:122 +msgid "Checked" +msgstr "체크됨" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:123 +msgid "Changed" +msgstr "변경됨" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:130 +msgid "No website watches configured, please add a URL in the box above, or" +msgstr "구성된 웹사이트 시계가 없습니다. 위 상자에 URL을 추가하세요. 또는" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:130 +msgid "import a list" +msgstr "목록 가져오기" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:213 +msgid "Detecting restock and price" +msgstr "재입고 및 가격 감지" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:215 +msgid "In stock" +msgstr "재고 있음" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:215 +msgid "Not in stock" +msgstr "재고가 없습니다" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:221 +msgid "Price" +msgstr "가격" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:226 +msgid "No information" +msgstr "정보 없음" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:234 +#: changedetectionio/templates/base.html:248 +msgid "Checking now" +msgstr "지금 확인 중" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:247 +msgid "Queued" +msgstr "대기 중" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:250 +msgid "History" +msgstr "역사" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:251 +msgid "Preview" +msgstr "시사" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:260 +msgid "With errors" +msgstr "오류가 있음" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:263 +msgid "Mark all viewed" +msgstr "모두 본 것으로 표시" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:267 +#, python-format +msgid "Mark all viewed in '%(title)s'" +msgstr "'%(title)s'에서 모두 본 것으로 표시" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:271 +msgid "Unread" +msgstr "읽히지 않는" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:274 +msgid "Recheck all" +msgstr "모두 다시 확인하세요" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:274 +#, python-format +msgid "in '%(title)s'" +msgstr "'%(title)s'에서" + +#: changedetectionio/processors/image_ssim_diff/forms.py:19 +#: changedetectionio/processors/image_ssim_diff/forms.py:69 +msgid "Bounding box value is too long" +msgstr "경계 상자 값이 너무 깁니다." + +#: changedetectionio/processors/image_ssim_diff/forms.py:23 +msgid "Bounding box must be in format: x,y,width,height (integers only)" +msgstr "경계 상자는 x,y,너비,높이(정수만) 형식이어야 합니다." + +#: changedetectionio/processors/image_ssim_diff/forms.py:29 +msgid "Bounding box values must be non-negative" +msgstr "경계 상자 값은 음수가 아니어야 합니다." + +#: changedetectionio/processors/image_ssim_diff/forms.py:31 +msgid "Bounding box values are too large" +msgstr "경계 상자 값이 너무 큽니다." + +#: changedetectionio/processors/image_ssim_diff/forms.py:40 +msgid "Selection mode must be either \"element\" or \"draw\"" +msgstr "" + +#: changedetectionio/processors/image_ssim_diff/forms.py:47 +msgid "Minimum Change Percentage" +msgstr "최소 변경 비율" + +#: changedetectionio/processors/image_ssim_diff/forms.py:56 +msgid "Pixel Difference Sensitivity" +msgstr "픽셀 차이 감도" + +#: changedetectionio/processors/image_ssim_diff/forms.py:58 +msgid "Use global default" +msgstr "시스템 기본값 사용" + +#: changedetectionio/processors/image_ssim_diff/forms.py:66 +msgid "Bounding Box" +msgstr "경계 상자" + +#: changedetectionio/processors/image_ssim_diff/forms.py:76 +msgid "Selection Mode" +msgstr "선택 모드:" + +#: changedetectionio/processors/image_ssim_diff/forms.py:79 +msgid "Selection mode value is too long" +msgstr "선택 모드 값이 너무 깁니다." + +#: changedetectionio/processors/image_ssim_diff/forms.py:87 +msgid "Screenshot Comparison" +msgstr "스크린샷 비교" + +#: changedetectionio/processors/image_ssim_diff/processor.py:20 +msgid "Visual / Image screenshot change detection" +msgstr "시각적/이미지 스크린샷 변경 감지" + +#: changedetectionio/processors/image_ssim_diff/processor.py:21 +msgid "Compares screenshots using fast OpenCV algorithm, 10-100x faster than SSIM" +msgstr "SSIM보다 10~100배 빠른 빠른 OpenCV 알고리즘을 사용하여 스크린샷을 비교합니다." + +#: changedetectionio/processors/image_ssim_diff/processor.py:23 +msgid "Visual" +msgstr "시각적" + +#: changedetectionio/processors/restock_diff/forms.py:15 +msgid "Re-stock detection" +msgstr "재입고 감지" + +#: changedetectionio/processors/restock_diff/forms.py:16 +msgid "In Stock only (Out Of Stock -> In Stock only)" +msgstr "재고만 있음 (품절 -> 재고만 있음)" + +#: changedetectionio/processors/restock_diff/forms.py:17 +msgid "Any availability changes" +msgstr "이용 가능 여부 변경" + +#: changedetectionio/processors/restock_diff/forms.py:18 +msgid "Off, don't follow availability/restock" +msgstr "끄기, 재고 여부를 따르지 않음/재입고" + +#: changedetectionio/processors/restock_diff/forms.py:21 +msgid "Below price to trigger notification" +msgstr "알림을 실행할 가격 미만" + +#: changedetectionio/processors/restock_diff/forms.py:22 +#: changedetectionio/processors/restock_diff/forms.py:24 +msgid "No limit" +msgstr "제한 없음" + +#: changedetectionio/processors/restock_diff/forms.py:23 +msgid "Above price to trigger notification" +msgstr "가격보다 높으면 알림이 실행됩니다." + +#: changedetectionio/processors/restock_diff/forms.py:25 +#, python-format +msgid "Threshold in %% for price changes since the original price" +msgstr "원래 가격 이후 가격 변동에 대한 기준점(%)" + +#: changedetectionio/processors/restock_diff/forms.py:28 +msgid "Should be between 0 and 100" +msgstr "0에서 100 사이여야 합니다." + +#: changedetectionio/processors/restock_diff/forms.py:31 +msgid "Follow price changes" +msgstr "가격 변동을 따르세요" + +#: changedetectionio/processors/restock_diff/forms.py:37 +msgid "Restock & Price Detection" +msgstr "재입고 및 가격" + +#: changedetectionio/processors/restock_diff/processor.py:11 +msgid "Re-stock & Price detection for pages with a SINGLE product" +msgstr "단일 제품이 포함된 페이지의 재입고 및 가격 감지" + +#: changedetectionio/processors/restock_diff/processor.py:12 +msgid "Detects if the product goes back to in-stock" +msgstr "제품이 다시 재고로 돌아왔는지 감지합니다." + +#: changedetectionio/processors/restock_diff/processor.py:14 +msgid "Restock" +msgstr "재입고" + +#: changedetectionio/processors/text_json_diff/processor.py:21 +msgid "Webpage Text/HTML, JSON and PDF changes" +msgstr "웹페이지 텍스트/HTML, JSON 및 PDF 변경" + +#: changedetectionio/processors/text_json_diff/processor.py:22 +msgid "Detects all text changes where possible" +msgstr "가능한 경우 모든 텍스트 변경 사항을 감지합니다." + +#: changedetectionio/templates/base.html:77 +msgid "GROUPS" +msgstr "여러 떼" + +#: changedetectionio/templates/base.html:80 +msgid "SETTINGS" +msgstr "설정" + +#: changedetectionio/templates/base.html:83 +msgid "IMPORT" +msgstr "수입" + +#: changedetectionio/templates/base.html:86 +msgid "BACKUPS" +msgstr "백업" + +#: changedetectionio/templates/base.html:90 +msgid "EDIT" +msgstr "편집하다" + +#: changedetectionio/templates/base.html:100 +msgid "LOG OUT" +msgstr "로그아웃" + +#: changedetectionio/templates/base.html:109 +msgid "Search, or Use Alt+S Key" +msgstr "검색 또는 Alt+S 키 사용" + +#: changedetectionio/templates/base.html:116 +msgid "Toggle Light/Dark Mode" +msgstr "밝은/어두운 모드 전환" + +#: changedetectionio/templates/base.html:117 +msgid "Toggle light/dark mode" +msgstr "밝은/어두운 모드 전환" + +#: changedetectionio/templates/base.html:127 +msgid "Change Language" +msgstr "언어 변경" + +#: changedetectionio/templates/base.html:128 +msgid "Change language" +msgstr "언어 변경" + +#: changedetectionio/templates/base.html:249 +msgid "Real-time updates offline" +msgstr "실시간 업데이트 오프라인" + +#: changedetectionio/templates/base.html:259 +msgid "Select Language" +msgstr "언어 선택" + +#: changedetectionio/templates/login.html:10 +msgid "Password" +msgstr "비밀번호" + +#: changedetectionio/templates/login.html:16 +msgid "Login" +msgstr "로그인" + diff --git a/changedetectionio/translations/zh/LC_MESSAGES/messages.mo b/changedetectionio/translations/zh/LC_MESSAGES/messages.mo new file mode 100644 index 000000000..ee6310289 Binary files /dev/null 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 new file mode 100644 index 000000000..09d64dd04 --- /dev/null +++ b/changedetectionio/translations/zh/LC_MESSAGES/messages.po @@ -0,0 +1,1928 @@ +# Chinese translations for PROJECT. +# Copyright (C) 2026 ORGANIZATION +# This file is distributed under the same license as the PROJECT project. +# FIRST AUTHOR <EMAIL@ADDRESS>, 2026. +# +msgid "" +msgstr "" +"Project-Id-Version: PROJECT VERSION\n" +"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" +"POT-Creation-Date: 2026-01-02 13:32+0100\n" +"PO-Revision-Date: 2026-01-02 11:54+0100\n" +"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" +"Language: zh\n" +"Language-Team: zh <LL@li.org>\n" +"Plural-Forms: nplurals=1; plural=0;\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=utf-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.17.0\n" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:241 +#: changedetectionio/flask_app.py:213 changedetectionio/flask_app.py:225 +#: changedetectionio/flask_app.py:246 +#: changedetectionio/realtime/socket_server.py:171 +msgid "Not yet" +msgstr "还没有" + +#: changedetectionio/forms.py:62 changedetectionio/forms.py:242 +msgid "" +"At least one time interval (weeks, days, hours, minutes, or seconds) must" +" be specified." +msgstr "" + +#: changedetectionio/forms.py:63 +msgid "" +"At least one time interval (weeks, days, hours, minutes, or seconds) must" +" be specified when not using global settings." +msgstr "" + +#: changedetectionio/forms.py:163 +msgid "Invalid time format. Use HH:MM." +msgstr "时间格式无效。使用时:分。" + +#: changedetectionio/forms.py:179 +msgid "Not a valid timezone name" +msgstr "不是有效的时区名称" + +#: changedetectionio/forms.py:182 +msgid "not set" +msgstr "还没有" + +#: changedetectionio/forms.py:183 +msgid "Start At" +msgstr "设置" + +#: changedetectionio/forms.py:184 +msgid "Run duration" +msgstr "暂无信息" + +#: changedetectionio/forms.py:187 +msgid "Use time scheduler" +msgstr "使用时间调度器" + +#: changedetectionio/forms.py:197 +msgid "Optional timezone to run in" +msgstr "运行时的可选时区" + +#: changedetectionio/forms.py:211 +msgid "Monday" +msgstr "周一" + +#: changedetectionio/forms.py:212 +msgid "Tuesday" +msgstr "周二" + +#: changedetectionio/forms.py:213 +msgid "Wednesday" +msgstr "周三" + +#: changedetectionio/forms.py:214 +msgid "Thursday" +msgstr "周四" + +#: changedetectionio/forms.py:215 +msgid "Friday" +msgstr "星期五" + +#: changedetectionio/forms.py:216 +msgid "Saturday" +msgstr "周六" + +#: changedetectionio/forms.py:217 +msgid "Sunday" +msgstr "星期日" + +#: changedetectionio/forms.py:250 +msgid "Weeks" +msgstr "周数" + +#: changedetectionio/forms.py:250 changedetectionio/forms.py:251 +#: changedetectionio/forms.py:252 changedetectionio/forms.py:253 +#: changedetectionio/forms.py:254 changedetectionio/forms.py:957 +msgid "Should contain zero or more seconds" +msgstr "应包含零或更多秒" + +#: changedetectionio/forms.py:251 +msgid "Days" +msgstr "天" + +#: changedetectionio/forms.py:252 +msgid "Hours" +msgstr "密码" + +#: changedetectionio/forms.py:253 +msgid "Minutes" +msgstr "沉默的" + +#: changedetectionio/forms.py:254 +msgid "Seconds" +msgstr "秒" + +#: changedetectionio/forms.py:459 +msgid "Notification Body and Title is required when a Notification URL is used" +msgstr "使用通知 URL 时需要通知正文和标题" + +#: changedetectionio/forms.py:488 +#, python-format +msgid "'%s' is not a valid AppRise URL." +msgstr "“%s”不是有效的 AppRise URL。" + +#: changedetectionio/forms.py:561 changedetectionio/forms.py:580 +#, python-format +msgid "RegEx '%s' is not a valid regular expression." +msgstr "RegEx“%s”不是有效的正则表达式。" + +#: changedetectionio/forms.py:621 changedetectionio/forms.py:636 +#, python-format +msgid "'%s' is not a valid XPath expression. (%s)" +msgstr "“%s”不是有效的 XPath 表达式。 (%s)" + +#: changedetectionio/forms.py:656 +#, python-format +msgid "'%s' is not a valid JSONPath expression. (%s)" +msgstr "“%s”不是有效的 JSONPath 表达式。 (%s)" + +#: changedetectionio/forms.py:678 +#, python-format +msgid "'%s' is not a valid jq expression. (%s)" +msgstr "“%s”不是有效的 jq 表达式。 (%s)" + +#: changedetectionio/forms.py:724 +msgid "Empty value not allowed." +msgstr "不允许为空值。" + +#: changedetectionio/forms.py:726 +msgid "Invalid value." +msgstr "无效值。" + +#: changedetectionio/forms.py:733 +msgid "Watch" +msgstr "# 手表" + +#: changedetectionio/forms.py:734 changedetectionio/forms.py:768 +msgid "Processor" +msgstr "处理器" + +#: changedetectionio/forms.py:735 +msgid "Edit > Watch" +msgstr "先编辑后观看" + +#: changedetectionio/forms.py:748 changedetectionio/forms.py:996 +msgid "Fetch Method" +msgstr "设置获取方法" + +#: changedetectionio/forms.py:749 +msgid "Notification Body" +msgstr "暂无信息" + +#: changedetectionio/forms.py:750 +msgid "Notification format" +msgstr "暂无信息" + +#: changedetectionio/forms.py:751 +msgid "Notification Title" +msgstr "暂无信息" + +#: changedetectionio/forms.py:752 +msgid "Notification URL List" +msgstr "暂无信息" + +#: changedetectionio/forms.py:753 +msgid "Processor - What do you want to achieve?" +msgstr "处理器 - 您想要实现什么?" + +#: changedetectionio/forms.py:754 +msgid "Default timezone for watch check scheduler" +msgstr "手表检查调度程序的默认时区" + +#: changedetectionio/forms.py:755 +msgid "Wait seconds before extracting text" +msgstr "提取文本前几秒。" + +#: changedetectionio/forms.py:755 +msgid "Should contain one or more seconds" +msgstr "应包含一秒或多秒" + +#: changedetectionio/forms.py:769 +msgid "URLs" +msgstr "网址" + +#: changedetectionio/forms.py:770 +msgid "Upload .xlsx file" +msgstr "上传 .xlsx 文件" + +#: changedetectionio/forms.py:770 +msgid "Must be .xlsx file!" +msgstr "必须是 .xlsx 文件!" + +#: changedetectionio/forms.py:771 +msgid "File mapping" +msgstr "文件映射类型。" + +#: changedetectionio/forms.py:775 +msgid "Operation" +msgstr "用户界面选项" + +#: changedetectionio/forms.py:778 +msgid "Selector" +msgstr "选择方式:" + +#: changedetectionio/forms.py:779 +msgid "value" +msgstr "暂停" + +#: changedetectionio/forms.py:798 +msgid "Use global settings for time between check and scheduler." +msgstr "使用全局设置检查和调度程序之间的时间。" + +#: changedetectionio/forms.py:800 +msgid "CSS/JSONPath/JQ/XPath Filters" +msgstr "CSS/xPath 过滤器" + +#: changedetectionio/forms.py:802 changedetectionio/forms.py:998 +msgid "Remove elements" +msgstr "已删除" + +#: changedetectionio/forms.py:804 +msgid "Extract text" +msgstr "提取数据" + +#: changedetectionio/blueprint/imports/templates/import.html:106 +#: changedetectionio/forms.py:806 +msgid "Title" +msgstr "标题" + +#: changedetectionio/forms.py:808 +msgid "Ignore lines containing" +msgstr "忽略任何匹配的行" + +#: changedetectionio/forms.py:810 +msgid "Request body" +msgstr "要求" + +#: changedetectionio/forms.py:811 +msgid "Request method" +msgstr "要求" + +#: changedetectionio/forms.py:812 +msgid "Ignore status codes (process non-2xx status codes as normal)" +msgstr "忽略状态代码(正常处理非 2xx 状态代码)" + +#: changedetectionio/forms.py:813 +msgid "Only trigger when unique lines appear in all history" +msgstr "仅当出现唯一线条时触发" + +#: changedetectionio/blueprint/ui/templates/edit.html:336 +#: changedetectionio/forms.py:814 +msgid "Remove duplicate lines of text" +msgstr "删除重复的文本行" + +#: changedetectionio/forms.py:815 +msgid "Sort text alphabetically" +msgstr "按字母顺序对文本进行排序" + +#: changedetectionio/forms.py:816 changedetectionio/forms.py:1025 +msgid "Strip ignored lines" +msgstr "去掉忽略的行" + +#: changedetectionio/forms.py:817 +msgid "Trim whitespace before and after text" +msgstr "删除每行文本前后的所有空格" + +#: changedetectionio/forms.py:819 +msgid "Added lines" +msgstr "登录" + +#: changedetectionio/forms.py:820 +msgid "Replaced/changed lines" +msgstr "更换/更改线路" + +#: changedetectionio/forms.py:821 +msgid "Removed lines" +msgstr "已删除" + +#: changedetectionio/forms.py:823 +msgid "Keyword triggers - Trigger/wait for text" +msgstr "关键字触发器 - 触发/等待文本" + +#: changedetectionio/forms.py:826 +msgid "Block change-detection while text matches" +msgstr "文本匹配时阻止更改检测" + +#: changedetectionio/forms.py:827 +msgid "Execute JavaScript before change detection" +msgstr "在更改检测之前执行 JavaScript" + +#: changedetectionio/blueprint/tags/templates/groups-overview.html:17 +#: changedetectionio/forms.py:829 changedetectionio/forms.py:1053 +msgid "Save" +msgstr "节省" + +#: changedetectionio/forms.py:831 +msgid "Proxy" +msgstr "代理人" + +#: changedetectionio/forms.py:833 +msgid "Send a notification when the filter can no longer be found on the page" +msgstr "当页面上找不到过滤器时发送通知" + +#: changedetectionio/blueprint/settings/templates/settings.html:22 +#: changedetectionio/blueprint/tags/templates/edit-tag.html:32 +#: changedetectionio/blueprint/ui/templates/edit.html:59 +#: changedetectionio/forms.py:834 +msgid "Notifications" +msgstr "暂无信息" + +#: changedetectionio/forms.py:834 +msgid "Muted" +msgstr "沉默的" + +#: changedetectionio/forms.py:834 +msgid "On" +msgstr "没有任何" + +#: changedetectionio/forms.py:835 +msgid "Attach screenshot to notification (where possible)" +msgstr "将屏幕截图附加到通知(如果可能)" + +#: changedetectionio/forms.py:837 +msgid "Match" +msgstr "# 手表" + +#: changedetectionio/forms.py:837 +msgid "Match all of the following" +msgstr "匹配以下所有内容" + +#: changedetectionio/forms.py:837 +msgid "Match any of the following" +msgstr "匹配以下任意一项" + +#: changedetectionio/forms.py:839 +msgid "Use page <title> in list" +msgstr "使用列表中的页面<标题>" + +#: changedetectionio/forms.py:856 +msgid "Body must be empty when Request Method is set to GET" +msgstr "当请求方法设置为 GET 时,正文必须为空" + +#: changedetectionio/forms.py:865 changedetectionio/forms.py:879 +#: changedetectionio/forms.py:894 +#, python-format +msgid "Invalid template syntax configuration: %(error)s" +msgstr "模板语法配置无效:%(error)s" + +#: changedetectionio/forms.py:869 changedetectionio/forms.py:883 +#, python-format +msgid "Invalid template syntax: %(error)s" +msgstr "无效的模板语法:%(error)s" + +#: changedetectionio/forms.py:898 +#, python-format +msgid "Invalid template syntax in \"%(header)s\" header: %(error)s" +msgstr "" + +#: changedetectionio/forms.py:922 changedetectionio/forms.py:934 +msgid "Name" +msgstr "取消静音" + +#: changedetectionio/forms.py:923 +msgid "Proxy URL" +msgstr "代理网址" + +#: changedetectionio/forms.py:928 +msgid "Proxy URLs must start with http://, https:// or socks5://" +msgstr "代理 URL 必须以 http://、https:// 或ocks5:// 开头" + +#: changedetectionio/forms.py:935 +msgid "Browser connection URL" +msgstr "浏览器连接网址" + +#: changedetectionio/forms.py:940 +msgid "Browser URLs must start with wss:// or ws://" +msgstr "浏览器 URL 必须以 wss:// 或 ws:// 开头" + +#: changedetectionio/forms.py:946 +msgid "Plaintext requests" +msgstr "明文请求" + +#: changedetectionio/forms.py:948 +msgid "Chrome requests" +msgstr "要求" + +#: changedetectionio/forms.py:954 +msgid "Default proxy" +msgstr "默认代理" + +#: changedetectionio/forms.py:955 +msgid "Random jitter seconds ± check" +msgstr "随机抖动秒±检查" + +#: changedetectionio/forms.py:959 +msgid "Number of fetch workers" +msgstr "取货工人数量" + +#: changedetectionio/forms.py:962 +msgid "Should be between 1 and 50" +msgstr "应介于 1 到 50 之间" + +#: changedetectionio/forms.py:964 +msgid "Requests timeout in seconds" +msgstr "请求超时(以秒为单位)" + +#: changedetectionio/forms.py:967 +msgid "Should be between 1 and 999" +msgstr "应介于 1 到 999 之间" + +#: changedetectionio/forms.py:972 +msgid "Default User-Agent overrides" +msgstr "默认用户代理覆盖" + +#: changedetectionio/forms.py:978 +msgid "Both a name, and a Proxy URL is required." +msgstr "名称和代理 URL 都是必需的。" + +#: changedetectionio/forms.py:982 +msgid "Open 'History' page in a new tab" +msgstr "在新选项卡中打开“历史记录”页面" + +#: changedetectionio/forms.py:983 +msgid "Realtime UI Updates Enabled" +msgstr "离线实时更新" + +#: changedetectionio/forms.py:984 +msgid "Favicons Enabled" +msgstr "考虑启用" + +#: changedetectionio/forms.py:985 +msgid "Use page <title> in watch overview list" +msgstr "在观看概览列表中使用页面<标题>" + +#: changedetectionio/forms.py:990 +msgid "API access token security check enabled" +msgstr "已启用 API 访问令牌安全检查" + +#: changedetectionio/forms.py:991 +msgid "Notification base URL override" +msgstr "通知警报计数" + +#: changedetectionio/forms.py:995 +msgid "Treat empty pages as a change?" +msgstr "将空页视为更改?" + +#: changedetectionio/forms.py:997 +msgid "Ignore Text" +msgstr "错误文本" + +#: changedetectionio/forms.py:999 +msgid "Ignore whitespace" +msgstr "忽略空格" + +#: changedetectionio/forms.py:1006 +#: changedetectionio/processors/image_ssim_diff/forms.py:50 +msgid "Must be between 0 and 100" +msgstr "必须介于 0 到 100 之间" + +#: changedetectionio/forms.py:1013 +msgid "Pager size" +msgstr "寻呼机尺寸" + +#: changedetectionio/forms.py:1016 +msgid "Should be atleast zero (disabled)" +msgstr "应至少为零(禁用)" + +#: changedetectionio/forms.py:1018 +msgid "RSS Content format" +msgstr "RSS 内容格式" + +#: changedetectionio/forms.py:1019 +msgid "RSS <description> body built from" +msgstr "RSS <描述> 正文构建于" + +#: changedetectionio/forms.py:1020 +msgid "RSS \"System default\" template override" +msgstr "" + +#: changedetectionio/forms.py:1022 +msgid "Remove password" +msgstr "密码" + +#: changedetectionio/forms.py:1023 +msgid "Render anchor tag content" +msgstr "渲染锚标记内容" + +#: changedetectionio/forms.py:1024 +msgid "Allow anonymous access to watch history page when password is enabled" +msgstr "启用密码后允许匿名访问观看历史页面" + +#: changedetectionio/forms.py:1026 +msgid "Hide muted watches from RSS feed" +msgstr "从 RSS 源中隐藏静音的手表" + +#: changedetectionio/forms.py:1029 +msgid "Enable RSS reader mode " +msgstr "启用 RSS 阅读器模式" + +#: changedetectionio/forms.py:1030 +msgid "Number of changes to show in watch RSS feed" +msgstr "观看 RSS 源中显示的更改数量" + +#: changedetectionio/forms.py:1032 changedetectionio/forms.py:1037 +msgid "Should contain zero or more attempts" +msgstr "应包含零次或多次尝试" + +#: changedetectionio/forms.py:1034 +msgid "Number of times the filter can be missing before sending a notification" +msgstr "发送通知之前过滤器可能丢失的次数" + +#: changedetectionio/forms.py:1057 +msgid "RegEx to extract" +msgstr "要提取的正则表达式" + +#: changedetectionio/forms.py:1058 +msgid "Extract as CSV" +msgstr "提取数据" + +#: changedetectionio/blueprint/backups/templates/overview.html:6 +msgid "Backups" +msgstr "备份" + +#: changedetectionio/blueprint/backups/templates/overview.html:9 +msgid "A backup is running!" +msgstr "备份正在运行!" + +#: changedetectionio/blueprint/backups/templates/overview.html:13 +msgid "" +"Here you can download and request a new backup, when a backup is " +"completed you will see it listed below." +msgstr "" + +#: changedetectionio/blueprint/backups/templates/overview.html:19 +msgid "Mb" +msgstr "MB" + +#: changedetectionio/blueprint/backups/templates/overview.html:24 +msgid "No backups found." +msgstr "未找到备份。" + +#: changedetectionio/blueprint/backups/templates/overview.html:28 +msgid "Create backup" +msgstr "备份" + +#: changedetectionio/blueprint/backups/templates/overview.html:30 +msgid "Remove backups" +msgstr "备份" + +#: changedetectionio/blueprint/imports/templates/import.html:9 +msgid "URL List" +msgstr "网址列表" + +#: changedetectionio/blueprint/imports/templates/import.html:10 +msgid "Distill.io" +msgstr "Distill.io" + +#: changedetectionio/blueprint/imports/templates/import.html:11 +msgid ".XLSX & Wachete" +msgstr ".XLSX 和瓦切特" + +#: changedetectionio/blueprint/imports/templates/import.html:20 +msgid "" +"Enter one URL per line, and optionally add tags for each URL after a " +"space, delineated by comma (,):" +msgstr "" + +#: changedetectionio/blueprint/imports/templates/import.html:22 +msgid "Example:" +msgstr "例子:" + +#: changedetectionio/blueprint/imports/templates/import.html:23 +msgid "URLs which do not pass validation will stay in the textarea." +msgstr "未通过验证的 URL 将保留在文本区域中。" + +#: changedetectionio/blueprint/imports/templates/import.html:44 +msgid "" +"Copy and Paste your Distill.io watch 'export' file, this should be a JSON" +" file." +msgstr "" + +#: changedetectionio/blueprint/imports/templates/import.html:45 +msgid "This is" +msgstr "这是" + +#: changedetectionio/blueprint/imports/templates/import.html:45 +msgid "experimental" +msgstr "实验性的" + +#: changedetectionio/blueprint/imports/templates/import.html:45 +msgid "supported fields are" +msgstr "支持的字段有" + +#: changedetectionio/blueprint/imports/templates/import.html:45 +msgid "the rest (including" +msgstr "其余的(包括" + +#: changedetectionio/blueprint/imports/templates/import.html:45 +msgid "are ignored." +msgstr "被忽略。" + +#: changedetectionio/blueprint/imports/templates/import.html:48 +msgid "How to export?" +msgstr "如何导出?" + +#: changedetectionio/blueprint/imports/templates/import.html:49 +msgid "Be sure to set your default fetcher to Chrome if required." +msgstr "如果需要,请务必将默认提取器设置为 Chrome。" + +#: changedetectionio/blueprint/imports/templates/import.html:91 +msgid "Table of custom column and data types mapping for the" +msgstr "自定义列和数据类型映射表" + +#: changedetectionio/blueprint/imports/templates/import.html:91 +msgid "Custom mapping" +msgstr "自定义映射" + +#: changedetectionio/blueprint/imports/templates/import.html:91 +msgid "File mapping type." +msgstr "文件映射类型。" + +#: changedetectionio/blueprint/imports/templates/import.html:95 +msgid "Column #" +msgstr "柱子 #" + +#: changedetectionio/blueprint/imports/templates/import.html:101 +msgid "Type" +msgstr "类型" + +#: changedetectionio/blueprint/imports/templates/import.html:104 +msgid "none" +msgstr "没有任何" + +#: changedetectionio/blueprint/imports/templates/import.html:105 +msgid "URL" +msgstr "网址" + +#: changedetectionio/blueprint/imports/templates/import.html:107 +msgid "CSS/xPath filter" +msgstr "CSS/xPath 过滤器" + +#: changedetectionio/blueprint/imports/templates/import.html:108 +msgid "Group / Tag name(s)" +msgstr "观看组/标签" + +#: changedetectionio/blueprint/imports/templates/import.html:109 +msgid "Recheck time (minutes)" +msgstr "复检时间(分钟)" + +#: changedetectionio/blueprint/imports/templates/import.html:116 +msgid "Import" +msgstr "进口" + +#: changedetectionio/blueprint/settings/templates/notification-log.html:7 +msgid "Notification debug log" +msgstr "通知调试日志" + +#: changedetectionio/blueprint/settings/templates/settings.html:21 +#: changedetectionio/blueprint/tags/templates/edit-tag.html:27 +#: changedetectionio/blueprint/ui/templates/edit.html:47 +msgid "General" +msgstr "一般的" + +#: changedetectionio/blueprint/settings/templates/settings.html:23 +msgid "Fetching" +msgstr "搜寻中" + +#: changedetectionio/blueprint/settings/templates/settings.html:24 +msgid "Global Filters" +msgstr "全局过滤器" + +#: changedetectionio/blueprint/settings/templates/settings.html:25 +msgid "UI Options" +msgstr "用户界面选项" + +#: changedetectionio/blueprint/settings/templates/settings.html:26 +msgid "API" +msgstr "应用程序编程接口" + +#: changedetectionio/blueprint/settings/templates/settings.html:27 +msgid "RSS" +msgstr "RSS" + +#: changedetectionio/blueprint/settings/templates/settings.html:28 +msgid "Time & Date" +msgstr "时间和日期" + +#: changedetectionio/blueprint/settings/templates/settings.html:29 +msgid "CAPTCHA & Proxies" +msgstr "验证码和代理" + +#: changedetectionio/blueprint/settings/templates/settings.html:35 +msgid "Info" +msgstr "更多信息" + +#: changedetectionio/blueprint/settings/templates/settings.html:46 +msgid "Default recheck time for all watches, current system minimum is" +msgstr "所有手表默认复检时间,当前系统最小值为" + +#: changedetectionio/blueprint/settings/templates/settings.html:46 +msgid "seconds" +msgstr "秒" + +#: changedetectionio/blueprint/settings/templates/settings.html:46 +msgid "more info" +msgstr "更多信息" + +#: changedetectionio/blueprint/settings/templates/settings.html:390 +msgid "Python version:" +msgstr "Python版本:" + +#: changedetectionio/blueprint/settings/templates/settings.html:391 +msgid "Plugins active:" +msgstr "插件活跃:" + +#: changedetectionio/blueprint/settings/templates/settings.html:399 +msgid "No plugins active" +msgstr "没有激活的插件" + +#: changedetectionio/blueprint/settings/templates/settings.html:405 +msgid "Back" +msgstr "备份" + +#: changedetectionio/blueprint/settings/templates/settings.html:406 +msgid "Clear Snapshot History" +msgstr "清除/重置历史记录" + +#: changedetectionio/blueprint/tags/templates/edit-tag.html:28 +#: changedetectionio/blueprint/ui/templates/edit.html:56 +#: changedetectionio/blueprint/ui/templates/edit.html:386 +msgid "Filters & Triggers" +msgstr "过滤器和触发器" + +#: changedetectionio/blueprint/tags/templates/edit-tag.html:50 +msgid "These settings are" +msgstr "设置" + +#: changedetectionio/blueprint/tags/templates/edit-tag.html:50 +msgid "added" +msgstr "额外" + +#: changedetectionio/blueprint/tags/templates/edit-tag.html:50 +msgid "to any existing watch configurations." +msgstr "任何现有的手表配置。" + +#: changedetectionio/blueprint/tags/templates/edit-tag.html:53 +#: changedetectionio/blueprint/ui/templates/edit.html:321 +msgid "Text filtering" +msgstr "文本过滤" + +#: changedetectionio/blueprint/tags/templates/edit-tag.html:73 +#: changedetectionio/blueprint/ui/templates/edit.html:269 +msgid "Use with caution!" +msgstr "谨慎使用!" + +#: changedetectionio/blueprint/tags/templates/edit-tag.html:73 +#: changedetectionio/blueprint/ui/templates/edit.html:269 +msgid "This will easily fill up your email storage quota or flood other storages." +msgstr "这将很容易填满您的电子邮件存储配额或淹没其他存储。" + +#: changedetectionio/blueprint/tags/templates/edit-tag.html:80 +#: changedetectionio/blueprint/ui/templates/edit.html:276 +msgid "Look out!" +msgstr "退出" + +#: changedetectionio/blueprint/tags/templates/edit-tag.html:80 +#: changedetectionio/blueprint/ui/templates/edit.html:276 +msgid "Lookout!" +msgstr "退出" + +#: changedetectionio/blueprint/tags/templates/edit-tag.html:81 +#: changedetectionio/blueprint/ui/templates/edit.html:277 +msgid "There are" +msgstr "有" + +#: changedetectionio/blueprint/tags/templates/edit-tag.html:81 +#: changedetectionio/blueprint/ui/templates/edit.html:277 +msgid "system-wide notification URLs enabled" +msgstr "启用系统范围的通知 URL" + +#: changedetectionio/blueprint/tags/templates/edit-tag.html:81 +#: changedetectionio/blueprint/ui/templates/edit.html:277 +msgid "this form will override notification settings for this watch only" +msgstr "此表单将仅覆盖此手表的通知设置" + +#: changedetectionio/blueprint/tags/templates/edit-tag.html:81 +#: changedetectionio/blueprint/ui/templates/edit.html:277 +msgid "an empty Notification URL list here will still send notifications." +msgstr "此处的通知 URL 列表为空仍会发送通知。" + +#: changedetectionio/blueprint/tags/templates/edit-tag.html:84 +#: changedetectionio/blueprint/ui/templates/edit.html:280 +msgid "Use system defaults" +msgstr "使用系统默认值" + +#: changedetectionio/blueprint/tags/templates/groups-overview.html:11 +msgid "Add a new organisational tag" +msgstr "添加新的组织标签" + +#: changedetectionio/blueprint/tags/templates/groups-overview.html:14 +msgid "Watch group / tag" +msgstr "观看组/标签" + +#: changedetectionio/blueprint/tags/templates/groups-overview.html:21 +msgid "" +"Groups allows you to manage filters and notifications for multiple " +"watches under a single organisational tag." +msgstr "" + +#: changedetectionio/blueprint/tags/templates/groups-overview.html:31 +msgid "# Watches" +msgstr "# 手表" + +#: changedetectionio/blueprint/tags/templates/groups-overview.html:32 +msgid "Tag / Label name" +msgstr "标签/标签名称" + +#: changedetectionio/blueprint/tags/templates/groups-overview.html:42 +msgid "No website organisational tags/groups configured" +msgstr "未配置网站组织标签/组" + +#: changedetectionio/blueprint/tags/templates/groups-overview.html:53 +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:249 +msgid "Edit" +msgstr "编辑" + +#: changedetectionio/blueprint/tags/templates/groups-overview.html:58 +msgid "Delete Group?" +msgstr "删除群组?" + +#: changedetectionio/blueprint/tags/templates/groups-overview.html:59 +#, python-format +msgid "" +"<p>Are you sure you want to delete group " +"<strong>%(title)s</strong>?</p><p>This action cannot be undone.</p>" +msgstr "" + +#: changedetectionio/blueprint/tags/templates/groups-overview.html:60 +#: changedetectionio/blueprint/tags/templates/groups-overview.html:61 +#: changedetectionio/blueprint/ui/templates/edit.html:490 +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:73 +msgid "Delete" +msgstr "删除" + +#: changedetectionio/blueprint/tags/templates/groups-overview.html:61 +msgid "Deletes and removes tag" +msgstr "删除并移除标签" + +#: changedetectionio/blueprint/tags/templates/groups-overview.html:66 +msgid "Unlink Group?" +msgstr "取消群组链接?" + +#: changedetectionio/blueprint/tags/templates/groups-overview.html:67 +#, python-format +msgid "" +"<p>Are you sure you want to unlink all watches from group " +"<strong>%(title)s</strong>?</p><p>The tag will be kept but watches will " +"be removed from it.</p>" +msgstr "" + +#: changedetectionio/blueprint/tags/templates/groups-overview.html:68 +#: changedetectionio/blueprint/tags/templates/groups-overview.html:69 +msgid "Unlink" +msgstr "取消链接" + +#: changedetectionio/blueprint/tags/templates/groups-overview.html:69 +msgid "Keep the tag but unlink any watches" +msgstr "保留标签但取消所有手表的链接" + +#: changedetectionio/blueprint/tags/templates/groups-overview.html:70 +#: changedetectionio/blueprint/ui/templates/edit.html:500 +msgid "RSS Feed for this watch" +msgstr "此手表的 RSS 源" + +#: changedetectionio/blueprint/ui/templates/clear_all_history.html:12 +msgid "" +"This will remove version history (snapshots) for ALL watches, but keep " +"your list of URLs!" +msgstr "" + +#: changedetectionio/blueprint/ui/templates/clear_all_history.html:13 +msgid "You may like to use the" +msgstr "您可能喜欢使用" + +#: changedetectionio/blueprint/ui/templates/clear_all_history.html:13 +msgid "BACKUP" +msgstr "备份" + +#: changedetectionio/blueprint/ui/templates/clear_all_history.html:13 +msgid "link first." +msgstr "先链接。" + +#: changedetectionio/blueprint/ui/templates/clear_all_history.html:17 +msgid "Confirmation text" +msgstr "暂无信息" + +#: changedetectionio/blueprint/ui/templates/clear_all_history.html:27 +msgid "Type in the word" +msgstr "输入单词" + +#: changedetectionio/blueprint/ui/templates/clear_all_history.html:27 +msgid "clear" +msgstr "清除" + +#: changedetectionio/blueprint/ui/templates/clear_all_history.html:27 +msgid "to confirm that you understand." +msgstr "以确认您已理解。" + +#: changedetectionio/blueprint/ui/templates/clear_all_history.html:33 +msgid "Clear History!" +msgstr "清晰的历史记录" + +#: changedetectionio/blueprint/ui/templates/clear_all_history.html:39 +#: changedetectionio/templates/base.html:271 +msgid "Cancel" +msgstr "取消" + +#: changedetectionio/blueprint/ui/templates/diff-offscreen-options.html:3 +msgid "Share diff as image" +msgstr "将差异共享为图像" + +#: changedetectionio/blueprint/ui/templates/diff-offscreen-options.html:3 +msgid "Share as Image" +msgstr "分享为图片" + +#: changedetectionio/blueprint/ui/templates/diff-offscreen-options.html:6 +msgid "Ignore any lines matching" +msgstr "忽略任何匹配的行" + +#: changedetectionio/blueprint/ui/templates/diff-offscreen-options.html:9 +msgid "Ignore any lines matching excluding digits" +msgstr "忽略任何匹配排除数字的行" + +#: changedetectionio/blueprint/ui/templates/diff.html:28 +msgid "From" +msgstr "从" + +#: changedetectionio/blueprint/ui/templates/diff.html:38 +msgid "To" +msgstr "到" + +#: changedetectionio/blueprint/ui/templates/diff.html:53 +msgid "Words" +msgstr "密码" + +#: changedetectionio/blueprint/ui/templates/diff.html:57 +msgid "Lines" +msgstr "登录" + +#: changedetectionio/blueprint/ui/templates/diff.html:61 +msgid "Ignore Whitespace" +msgstr "忽略空格" + +#: changedetectionio/blueprint/ui/templates/diff.html:65 +msgid "Same/non-changed" +msgstr "改变了" + +#: changedetectionio/blueprint/ui/templates/diff.html:69 +msgid "Removed" +msgstr "已删除" + +#: changedetectionio/blueprint/ui/templates/diff.html:73 +#: changedetectionio/blueprint/ui/templates/edit.html:327 +msgid "Added" +msgstr "额外" + +#: changedetectionio/blueprint/ui/templates/diff.html:77 +#: changedetectionio/blueprint/ui/templates/edit.html:327 +msgid "Replaced" +msgstr "已更换" + +#: changedetectionio/blueprint/ui/templates/diff.html:82 +#: changedetectionio/blueprint/ui/templates/preview.html:36 +msgid "Keyboard:" +msgstr "键盘:" + +#: changedetectionio/blueprint/ui/templates/diff.html:83 +#: changedetectionio/blueprint/ui/templates/preview.html:37 +msgid "Previous" +msgstr "预览" + +#: changedetectionio/blueprint/ui/templates/diff.html:84 +#: changedetectionio/blueprint/ui/templates/preview.html:38 +msgid "Next" +msgstr "下一个" + +#: changedetectionio/blueprint/ui/templates/diff.html:91 +msgid "Jump to next difference" +msgstr "跳转到下一个差异" + +#: changedetectionio/blueprint/ui/templates/diff.html:91 +msgid "Jump" +msgstr "跳" + +#: changedetectionio/blueprint/ui/templates/diff.html:97 +#: changedetectionio/blueprint/ui/templates/preview.html:45 +msgid "Error Text" +msgstr "错误文本" + +#: changedetectionio/blueprint/ui/templates/diff.html:98 +#: changedetectionio/blueprint/ui/templates/preview.html:47 +msgid "Error Screenshot" +msgstr "错误截图" + +#: changedetectionio/blueprint/ui/templates/diff.html:99 +#: changedetectionio/blueprint/ui/templates/preview.html:50 +#: changedetectionio/processors/text_json_diff/processor.py:24 +msgid "Text" +msgstr "文本" + +#: changedetectionio/blueprint/ui/templates/diff.html:100 +#: changedetectionio/blueprint/ui/templates/preview.html:51 +msgid "Current screenshot" +msgstr "当前截图" + +#: changedetectionio/blueprint/ui/templates/diff.html:101 +msgid "Extract Data" +msgstr "提取数据" + +#: changedetectionio/blueprint/ui/templates/diff.html:107 +msgid "seconds ago." +msgstr "几秒钟前。" + +#: changedetectionio/blueprint/ui/templates/diff.html:114 +#: changedetectionio/blueprint/ui/templates/preview.html:59 +#: changedetectionio/blueprint/ui/templates/preview.html:66 +msgid "seconds ago" +msgstr "几秒钟前" + +#: changedetectionio/blueprint/ui/templates/diff.html:115 +msgid "Current error-ing screenshot from most recent request" +msgstr "最近请求的当前错误屏幕截图" + +#: changedetectionio/blueprint/ui/templates/diff.html:127 +msgid "Pro-tip: You can enable" +msgstr "专业提示:您可以启用" + +#: changedetectionio/blueprint/ui/templates/diff.html:127 +msgid "\"share access when password is enabled\"" +msgstr "" + +#: changedetectionio/blueprint/ui/templates/diff.html:127 +msgid "from settings." +msgstr "设置" + +#: changedetectionio/blueprint/ui/templates/diff.html:133 +msgid "Goto single snapshot" +msgstr "转到单个快照" + +#: changedetectionio/blueprint/ui/templates/diff.html:138 +#: changedetectionio/blueprint/ui/templates/edit.html:125 +msgid "Tip:" +msgstr "提示:" + +#: changedetectionio/blueprint/ui/templates/diff.html:138 +msgid "Highlight text to share or add to ignore lists." +msgstr "突出显示要共享或添加到忽略列表的文本。" + +#: changedetectionio/blueprint/ui/templates/diff.html:144 +#: changedetectionio/blueprint/ui/templates/preview.html:80 +msgid "" +"For now, Differences are performed on text, not graphically, only the " +"latest screenshot is available." +msgstr "" + +#: changedetectionio/blueprint/ui/templates/diff.html:149 +#: changedetectionio/blueprint/ui/templates/preview.html:86 +msgid "Current screenshot from most recent request" +msgstr "最近请求的当前屏幕截图" + +#: changedetectionio/blueprint/ui/templates/diff.html:151 +#: changedetectionio/blueprint/ui/templates/preview.html:88 +msgid "No screenshot available just yet! Try rechecking the page." +msgstr "目前还没有截图!尝试重新检查页面。" + +#: changedetectionio/blueprint/ui/templates/diff.html:154 +msgid "Screenshot requires Playwright/WebDriver enabled" +msgstr "屏幕截图需要启用 Playwright/WebDriver" + +#: changedetectionio/blueprint/ui/templates/edit.html:48 +msgid "Request" +msgstr "要求" + +#: changedetectionio/blueprint/ui/templates/edit.html:52 +msgid "Browser Steps" +msgstr "浏览器步骤" + +#: changedetectionio/blueprint/ui/templates/edit.html:55 +msgid "Visual Filter Selector" +msgstr "视觉过滤器选择器" + +#: changedetectionio/blueprint/ui/templates/edit.html:57 +msgid "Conditions" +msgstr "状况" + +#: changedetectionio/blueprint/ui/templates/edit.html:60 +msgid "Stats" +msgstr "设置" + +#: changedetectionio/blueprint/ui/templates/edit.html:73 +#: changedetectionio/blueprint/ui/templates/edit.html:313 +msgid "Some sites use JavaScript to create the content, for this you should" +msgstr "有些网站使用 JavaScript 来创建内容,为此您应该" + +#: changedetectionio/blueprint/ui/templates/edit.html:73 +#: changedetectionio/blueprint/ui/templates/edit.html:313 +msgid "use the Chrome/WebDriver Fetcher" +msgstr "使用 Chrome/WebDriver Fetcher" + +#: changedetectionio/blueprint/ui/templates/edit.html:74 +msgid "Variables are supported in the URL" +msgstr "URL 中支持变量" + +#: changedetectionio/blueprint/ui/templates/edit.html:74 +#: changedetectionio/blueprint/ui/templates/edit.html:180 +#: changedetectionio/blueprint/ui/templates/edit.html:189 +msgid "help and examples here" +msgstr "帮助和示例在这里" + +#: changedetectionio/blueprint/ui/templates/edit.html:78 +msgid "Organisational tag/group name used in the main listing page" +msgstr "主列表页面中使用的组织标签/组名称" + +#: changedetectionio/blueprint/ui/templates/edit.html:85 +msgid "" +"Automatically uses the page title if found, you can also use your own " +"title/description here" +msgstr "" + +#: changedetectionio/blueprint/ui/templates/edit.html:95 +msgid "The interval/amount of time between each check." +msgstr "每次检查之间的间隔/时间量。" + +#: changedetectionio/blueprint/ui/templates/edit.html:110 +msgid "" +"Sends a notification when the filter can no longer be seen on the page, " +"good for knowing when the page changed and your filter will not work " +"anymore." +msgstr "" + +#: changedetectionio/blueprint/ui/templates/edit.html:123 +msgid "Use the" +msgstr "使用" + +#: changedetectionio/blueprint/ui/templates/edit.html:123 +msgid "Basic" +msgstr "基本的" + +#: changedetectionio/blueprint/ui/templates/edit.html:123 +msgid "" +"method (default) where your watched site doesn't need Javascript to " +"render." +msgstr "" + +#: changedetectionio/blueprint/ui/templates/edit.html:124 +msgid "The" +msgstr "这" + +#: changedetectionio/blueprint/ui/templates/edit.html:124 +msgid "Chrome/Javascript" +msgstr "Chrome/Javascript" + +#: changedetectionio/blueprint/ui/templates/edit.html:124 +msgid "" +"method requires a network connection to a running WebDriver+Chrome " +"server, set by the ENV var 'WEBDRIVER_URL'." +msgstr "" + +#: changedetectionio/blueprint/ui/templates/edit.html:125 +msgid "Connect using Bright Data and Oxylabs Proxies, find out more here." +msgstr "使用 Bright Data 和 Oxylabs Proxies 进行连接,在此处了解更多信息。" + +#: changedetectionio/blueprint/ui/templates/edit.html:130 +msgid "Check/Scan all" +msgstr "重新检查所有" + +#: changedetectionio/blueprint/ui/templates/edit.html:133 +msgid "Choose a proxy for this watch" +msgstr "此手表的 RSS 源" + +#: changedetectionio/blueprint/ui/templates/edit.html:143 +msgid "" +"If you're having trouble waiting for the page to be fully rendered (text " +"missing etc), try increasing the 'wait' time here." +msgstr "" + +#: changedetectionio/blueprint/ui/templates/edit.html:145 +msgid "This will wait" +msgstr "这会等待" + +#: changedetectionio/blueprint/ui/templates/edit.html:145 +msgid "seconds before extracting the text." +msgstr "提取文本前几秒。" + +#: changedetectionio/blueprint/ui/templates/edit.html:147 +msgid "Using the current global default settings" +msgstr "使用当前全局默认设置" + +#: changedetectionio/blueprint/ui/templates/edit.html:152 +#: changedetectionio/blueprint/ui/templates/edit.html:165 +msgid "Show advanced options" +msgstr "显示高级选项" + +#: changedetectionio/blueprint/ui/templates/edit.html:157 +msgid "" +"Run this code before performing change detection, handy for filling in " +"fields and other actions" +msgstr "" + +#: changedetectionio/blueprint/ui/templates/edit.html:158 +msgid "More help and examples here" +msgstr "更多帮助和示例请参见此处" + +#: changedetectionio/blueprint/ui/templates/edit.html:180 +msgid "Variables are supported in the request body" +msgstr "请求正文中支持变量" + +#: changedetectionio/blueprint/ui/templates/edit.html:189 +msgid "Variables are supported in the request header values" +msgstr "请求标头值支持变量" + +#: changedetectionio/blueprint/ui/templates/edit.html:192 +msgid "Alert! Extra headers file found and will be added to this watch!" +msgstr "警报!找到额外的头文件并将其添加到此手表中!" + +#: changedetectionio/blueprint/ui/templates/edit.html:194 +msgid "Headers can be also read from a file in your data-directory" +msgstr "还可以从数据目录中的文件中读取标头" + +#: changedetectionio/blueprint/ui/templates/edit.html:194 +msgid "Read more here" +msgstr "在这里阅读更多内容" + +#: changedetectionio/blueprint/ui/templates/edit.html:197 +msgid "Not supported by Selenium browser" +msgstr "Selenium 浏览器不支持" + +#: changedetectionio/blueprint/ui/templates/edit.html:221 +msgid "Turn on text finder" +msgstr "打开文本查找器" + +#: changedetectionio/blueprint/ui/templates/edit.html:224 +msgid "Please wait, first browser step can take a little time to load.." +msgstr "请稍候,第一个浏览器步骤可能需要一些时间来加载。" + +#: changedetectionio/blueprint/ui/templates/edit.html:231 +msgid "Click here to Start" +msgstr "单击此处开始" + +#: changedetectionio/blueprint/ui/templates/edit.html:233 +msgid "Please allow 10-15 seconds for the browser to connect." +msgstr "请等待 10-15 秒让浏览器连接。" + +#: changedetectionio/blueprint/ui/templates/edit.html:242 +msgid "Press \"Play\" to start." +msgstr "" + +#: changedetectionio/blueprint/ui/templates/edit.html:249 +#: changedetectionio/blueprint/ui/templates/edit.html:419 +msgid "Visual Selector data is not ready, watch needs to be checked atleast once." +msgstr "视觉选择器数据尚未准备好,至少需要检查一次手表。" + +#: changedetectionio/blueprint/ui/templates/edit.html:253 +msgid "" +"Sorry, this functionality only works with fetchers that support " +"interactive Javascript (so far only Playwright based fetchers)" +msgstr "" + +#: changedetectionio/blueprint/ui/templates/edit.html:254 +#: changedetectionio/blueprint/ui/templates/edit.html:424 +msgid "You need to" +msgstr "你需要" + +#: changedetectionio/blueprint/ui/templates/edit.html:254 +#: changedetectionio/blueprint/ui/templates/edit.html:424 +msgid "Set the fetch method" +msgstr "设置获取方法" + +#: changedetectionio/blueprint/ui/templates/edit.html:254 +msgid "to one that supports interactive Javascript." +msgstr "到支持交互式 Javascript 的一个。" + +#: changedetectionio/blueprint/ui/templates/edit.html:297 +msgid "" +"Use the verify (✓) button to test if a condition passes against the " +"current snapshot." +msgstr "" + +#: changedetectionio/blueprint/ui/templates/edit.html:298 +msgid "Read a quick tutorial about" +msgstr "阅读有关以下内容的快速教程" + +#: changedetectionio/blueprint/ui/templates/edit.html:298 +msgid "using conditional web page changes here" +msgstr "此处使用条件网页更改" + +#: changedetectionio/blueprint/ui/templates/edit.html:303 +msgid "Activate preview" +msgstr "预览" + +#: changedetectionio/blueprint/ui/templates/edit.html:307 +msgid "Pro-tips:" +msgstr "专业提示:" + +#: changedetectionio/blueprint/ui/templates/edit.html:310 +msgid "Use the preview page to see your filters and triggers highlighted." +msgstr "使用预览页面查看突出显示的过滤器和触发器。" + +#: changedetectionio/blueprint/ui/templates/edit.html:322 +msgid "Limit trigger/ignore/block/extract to;" +msgstr "将触发/忽略/阻止/提取限制为;" + +#: changedetectionio/blueprint/ui/templates/edit.html:326 +msgid "" +"Note: Depending on the length and similarity of the text on each line, " +"the algorithm may consider an" +msgstr "" + +#: changedetectionio/blueprint/ui/templates/edit.html:326 +#: changedetectionio/blueprint/ui/templates/edit.html:328 +msgid "addition" +msgstr "添加" + +#: changedetectionio/blueprint/ui/templates/edit.html:326 +msgid "instead of" +msgstr "而不是" + +#: changedetectionio/blueprint/ui/templates/edit.html:326 +msgid "replacement" +msgstr "替代品" + +#: changedetectionio/blueprint/ui/templates/edit.html:326 +msgid "for example." +msgstr "例如。" + +#: changedetectionio/blueprint/ui/templates/edit.html:327 +msgid "So it's always better to select" +msgstr "所以选择总是更好" + +#: changedetectionio/blueprint/ui/templates/edit.html:327 +msgid "when you're interested in new content." +msgstr "当您对新内容感兴趣时。" + +#: changedetectionio/blueprint/ui/templates/edit.html:328 +msgid "When content is merely moved in a list, it will also trigger an" +msgstr "当内容仅在列表中移动时,也会触发" + +#: changedetectionio/blueprint/ui/templates/edit.html:328 +msgid "consider enabling" +msgstr "考虑启用" + +#: changedetectionio/blueprint/ui/templates/edit.html:328 +msgid "Only trigger when unique lines appear" +msgstr "仅当出现唯一线条时触发" + +#: changedetectionio/blueprint/ui/templates/edit.html:332 +msgid "" +"Good for websites that just move the content around, and you want to know" +" when NEW content is added, compares new lines against all history for " +"this watch." +msgstr "" + +#: changedetectionio/blueprint/ui/templates/edit.html:340 +msgid "" +"Helps reduce changes detected caused by sites shuffling lines around, " +"combine with" +msgstr "" + +#: changedetectionio/blueprint/ui/templates/edit.html:340 +msgid "check unique lines" +msgstr "检查独特的线路" + +#: changedetectionio/blueprint/ui/templates/edit.html:340 +msgid "below." +msgstr "以下。" + +#: changedetectionio/blueprint/ui/templates/edit.html:344 +msgid "Remove any whitespace before and after each line of text" +msgstr "删除每行文本前后的所有空格" + +#: changedetectionio/blueprint/ui/templates/edit.html:358 +#: changedetectionio/blueprint/ui/templates/edit.html:361 +#: changedetectionio/blueprint/ui/templates/edit.html:417 +msgid "Loading..." +msgstr "加载中..." + +#: changedetectionio/blueprint/ui/templates/edit.html:386 +msgid "The Visual Selector tool lets you select the" +msgstr "视觉选择器工具可让您选择" + +#: changedetectionio/blueprint/ui/templates/edit.html:386 +msgid "text" +msgstr "文本" + +#: changedetectionio/blueprint/ui/templates/edit.html:386 +msgid "" +"elements that will be used for the change detection. It automatically " +"fills-in the filters in the \"CSS/JSONPath/JQ/XPath Filters\" box of the" +msgstr "" + +#: changedetectionio/blueprint/ui/templates/edit.html:386 +msgid "tab. Use" +msgstr "暂停" + +#: changedetectionio/blueprint/ui/templates/edit.html:386 +msgid "Shift+Click" +msgstr "Shift+单击" + +#: changedetectionio/blueprint/ui/templates/edit.html:386 +msgid "to select multiple items." +msgstr "选择多个项目。" + +#: changedetectionio/blueprint/ui/templates/edit.html:391 +msgid "Selection Mode:" +msgstr "选择方式:" + +#: changedetectionio/blueprint/ui/templates/edit.html:394 +msgid "Select by element" +msgstr "按元素选择" + +#: changedetectionio/blueprint/ui/templates/edit.html:398 +msgid "Draw area" +msgstr "绘图区" + +#: changedetectionio/blueprint/ui/templates/edit.html:406 +msgid "Clear selection" +msgstr "清除选择" + +#: changedetectionio/blueprint/ui/templates/edit.html:408 +msgid "One moment, fetching screenshot and element information.." +msgstr "一会儿,正在获取屏幕截图和元素信息.." + +#: changedetectionio/blueprint/ui/templates/edit.html:417 +msgid "Currently:" +msgstr "现在:" + +#: changedetectionio/blueprint/ui/templates/edit.html:423 +msgid "" +"Sorry, this functionality only works with fetchers that support " +"Javascript and screenshots (such as playwright etc)." +msgstr "" + +#: changedetectionio/blueprint/ui/templates/edit.html:424 +msgid "to one that supports Javascript and screenshots." +msgstr "到支持 Javascript 和屏幕截图的一个。" + +#: changedetectionio/blueprint/ui/templates/edit.html:441 +msgid "Check count" +msgstr "检查计数" + +#: changedetectionio/blueprint/ui/templates/edit.html:445 +msgid "Consecutive filter failures" +msgstr "连续过滤器故障" + +#: changedetectionio/blueprint/ui/templates/edit.html:449 +msgid "History length" +msgstr "历史" + +#: changedetectionio/blueprint/ui/templates/edit.html:453 +msgid "Last fetch duration" +msgstr "上次获取持续时间" + +#: changedetectionio/blueprint/ui/templates/edit.html:457 +msgid "Notification alert count" +msgstr "通知警报计数" + +#: changedetectionio/blueprint/ui/templates/edit.html:461 +msgid "Server type reply" +msgstr "服务器类型回复" + +#: changedetectionio/blueprint/ui/templates/edit.html:475 +msgid "Download latest HTML snapshot" +msgstr "下载最新的 HTML 快照" + +#: changedetectionio/blueprint/ui/templates/edit.html:488 +msgid "Delete Watch?" +msgstr "删除手表?" + +#: changedetectionio/blueprint/ui/templates/edit.html:489 +msgid "Are you sure you want to delete the watch for:" +msgstr "您确定要删除以下对象的手表吗:" + +#: changedetectionio/blueprint/ui/templates/edit.html:489 +msgid "This action cannot be undone." +msgstr "此操作无法撤消。" + +#: changedetectionio/blueprint/ui/templates/edit.html:495 +msgid "Clear History?" +msgstr "清晰的历史记录" + +#: changedetectionio/blueprint/ui/templates/edit.html:496 +msgid "Are you sure you want to clear all history for:" +msgstr "您确定要清除以下内容的所有历史记录:" + +#: changedetectionio/blueprint/ui/templates/edit.html:496 +msgid "" +"This will remove all snapshots and previous versions. This action cannot " +"be undone." +msgstr "" + +#: changedetectionio/blueprint/ui/templates/edit.html:497 +msgid "Clear History" +msgstr "清晰的历史记录" + +#: changedetectionio/blueprint/ui/templates/edit.html:499 +msgid "Clone & Edit" +msgstr "克隆和编辑" + +#: changedetectionio/blueprint/ui/templates/preview.html:22 +msgid "Select timestamp" +msgstr "选择时间戳" + +#: changedetectionio/blueprint/ui/templates/preview.html:31 +msgid "Go" +msgstr "去" + +#: changedetectionio/blueprint/ui/templates/preview.html:69 +msgid "Current erroring screenshot from most recent request" +msgstr "最近请求的当前错误屏幕截图" + +#: changedetectionio/blueprint/ui/templates/preview.html:91 +msgid "" +"Screenshot requires a Content Fetcher ( Sockpuppetbrowser, selenium, etc " +") that supports screenshots." +msgstr "" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:31 +msgid "Add a new web page change detection watch" +msgstr "添加新的网页更改检测监视" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:34 +msgid "Watch this URL!" +msgstr "关注这个网址!" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:35 +msgid "Edit first then Watch" +msgstr "先编辑后观看" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:45 +msgid "Create a shareable link" +msgstr "创建可共享链接" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:45 +msgid "Tip: You can also add 'shared' watches." +msgstr "提示:您还可以添加“共享”手表。" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:45 +msgid "More info" +msgstr "更多信息" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:53 +msgid "Pause" +msgstr "暂停" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:54 +msgid "UnPause" +msgstr "取消暂停" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:55 +msgid "Mute" +msgstr "沉默的" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:56 +msgid "UnMute" +msgstr "取消静音" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:57 +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:248 +msgid "Recheck" +msgstr "复查" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:58 +msgid "Tag" +msgstr "标签" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:59 +msgid "Mark viewed" +msgstr "标记已查看" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:60 +msgid "Use default notification" +msgstr "使用默认通知" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:61 +msgid "Clear errors" +msgstr "清除错误" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:65 +msgid "Clear Histories" +msgstr "清晰的历史记录" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:66 +msgid "" +"<p>Are you sure you want to clear history for the selected " +"items?</p><p>This action cannot be undone.</p>" +msgstr "" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:67 +msgid "OK" +msgstr "好的" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:67 +msgid "Clear/reset history" +msgstr "清除/重置历史记录" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:71 +msgid "Delete Watches?" +msgstr "删除手表?" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:72 +msgid "" +"<p>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:78 +msgid "Searching" +msgstr "搜寻中" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:80 +msgid "All" +msgstr "全部" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:118 +msgid "Website" +msgstr "网站" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:120 +msgid "Restock & Price" +msgstr "补货及价格" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:122 +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:123 +msgid "Last" +msgstr "最后的" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:122 +msgid "Checked" +msgstr "已检查" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:123 +msgid "Changed" +msgstr "改变了" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:130 +msgid "No website watches configured, please add a URL in the box above, or" +msgstr "未配置网站监视,请在上面的框中添加 URL,或者" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:130 +msgid "import a list" +msgstr "导入列表" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:213 +msgid "Detecting restock and price" +msgstr "检测补货和价格" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:215 +msgid "In stock" +msgstr "有存货" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:215 +msgid "Not in stock" +msgstr "没有库存" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:221 +msgid "Price" +msgstr "价格" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:226 +msgid "No information" +msgstr "暂无信息" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:234 +#: changedetectionio/templates/base.html:248 +msgid "Checking now" +msgstr "立即检查" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:247 +msgid "Queued" +msgstr "排队" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:250 +msgid "History" +msgstr "历史" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:251 +msgid "Preview" +msgstr "预览" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:260 +msgid "With errors" +msgstr "有错误" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:263 +msgid "Mark all viewed" +msgstr "标记所有已查看" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:267 +#, python-format +msgid "Mark all viewed in '%(title)s'" +msgstr "标记所有在“%(title)s”中查看过的内容" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:271 +msgid "Unread" +msgstr "未读" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:274 +msgid "Recheck all" +msgstr "重新检查所有" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:274 +#, python-format +msgid "in '%(title)s'" +msgstr "在“%(title)s”中" + +#: changedetectionio/processors/image_ssim_diff/forms.py:19 +#: changedetectionio/processors/image_ssim_diff/forms.py:69 +msgid "Bounding box value is too long" +msgstr "边界框值太长" + +#: changedetectionio/processors/image_ssim_diff/forms.py:23 +msgid "Bounding box must be in format: x,y,width,height (integers only)" +msgstr "边界框的格式必须为:x,y,宽度,高度(仅限整数)" + +#: changedetectionio/processors/image_ssim_diff/forms.py:29 +msgid "Bounding box values must be non-negative" +msgstr "边界框值必须是非负数" + +#: changedetectionio/processors/image_ssim_diff/forms.py:31 +msgid "Bounding box values are too large" +msgstr "边界框值太大" + +#: changedetectionio/processors/image_ssim_diff/forms.py:40 +msgid "Selection mode must be either \"element\" or \"draw\"" +msgstr "" + +#: changedetectionio/processors/image_ssim_diff/forms.py:47 +msgid "Minimum Change Percentage" +msgstr "最小变化百分比" + +#: changedetectionio/processors/image_ssim_diff/forms.py:56 +msgid "Pixel Difference Sensitivity" +msgstr "像素差异灵敏度" + +#: changedetectionio/processors/image_ssim_diff/forms.py:58 +msgid "Use global default" +msgstr "使用系统默认值" + +#: changedetectionio/processors/image_ssim_diff/forms.py:66 +msgid "Bounding Box" +msgstr "边界框" + +#: changedetectionio/processors/image_ssim_diff/forms.py:76 +msgid "Selection Mode" +msgstr "选择方式:" + +#: changedetectionio/processors/image_ssim_diff/forms.py:79 +msgid "Selection mode value is too long" +msgstr "选择模式值太长" + +#: changedetectionio/processors/image_ssim_diff/forms.py:87 +msgid "Screenshot Comparison" +msgstr "截图对比" + +#: changedetectionio/processors/image_ssim_diff/processor.py:20 +msgid "Visual / Image screenshot change detection" +msgstr "视觉/图像截图变化检测" + +#: changedetectionio/processors/image_ssim_diff/processor.py:21 +msgid "Compares screenshots using fast OpenCV algorithm, 10-100x faster than SSIM" +msgstr "使用快速 OpenCV 算法比较屏幕截图,比 SSIM 快 10-100 倍" + +#: changedetectionio/processors/image_ssim_diff/processor.py:23 +msgid "Visual" +msgstr "视觉的" + +#: changedetectionio/processors/restock_diff/forms.py:15 +msgid "Re-stock detection" +msgstr "补货检测" + +#: changedetectionio/processors/restock_diff/forms.py:16 +msgid "In Stock only (Out Of Stock -> In Stock only)" +msgstr "仅有库存(缺货 -> 仅有库存)" + +#: changedetectionio/processors/restock_diff/forms.py:17 +msgid "Any availability changes" +msgstr "任何可用性变更" + +#: changedetectionio/processors/restock_diff/forms.py:18 +msgid "Off, don't follow availability/restock" +msgstr "关闭,不遵循库存/补货情况" + +#: changedetectionio/processors/restock_diff/forms.py:21 +msgid "Below price to trigger notification" +msgstr "低于价格触发通知" + +#: changedetectionio/processors/restock_diff/forms.py:22 +#: changedetectionio/processors/restock_diff/forms.py:24 +msgid "No limit" +msgstr "无限制" + +#: changedetectionio/processors/restock_diff/forms.py:23 +msgid "Above price to trigger notification" +msgstr "高于价格触发通知" + +#: changedetectionio/processors/restock_diff/forms.py:25 +#, python-format +msgid "Threshold in %% for price changes since the original price" +msgstr "自原始价格以来价格变化的阈值(百分比)" + +#: changedetectionio/processors/restock_diff/forms.py:28 +msgid "Should be between 0 and 100" +msgstr "应介于 0 到 100 之间" + +#: changedetectionio/processors/restock_diff/forms.py:31 +msgid "Follow price changes" +msgstr "关注价格变化" + +#: changedetectionio/processors/restock_diff/forms.py:37 +msgid "Restock & Price Detection" +msgstr "补货及价格" + +#: changedetectionio/processors/restock_diff/processor.py:11 +msgid "Re-stock & Price detection for pages with a SINGLE product" +msgstr "单个产品页面的补货和价格检测" + +#: changedetectionio/processors/restock_diff/processor.py:12 +msgid "Detects if the product goes back to in-stock" +msgstr "检测产品是否恢复库存" + +#: changedetectionio/processors/restock_diff/processor.py:14 +msgid "Restock" +msgstr "补货" + +#: changedetectionio/processors/text_json_diff/processor.py:21 +msgid "Webpage Text/HTML, JSON and PDF changes" +msgstr "网页文本/HTML、JSON 和 PDF 更改" + +#: changedetectionio/processors/text_json_diff/processor.py:22 +msgid "Detects all text changes where possible" +msgstr "尽可能检测所有文本更改" + +#: changedetectionio/templates/base.html:77 +msgid "GROUPS" +msgstr "团体" + +#: changedetectionio/templates/base.html:80 +msgid "SETTINGS" +msgstr "设置" + +#: changedetectionio/templates/base.html:83 +msgid "IMPORT" +msgstr "进口" + +#: changedetectionio/templates/base.html:86 +msgid "BACKUPS" +msgstr "备份" + +#: changedetectionio/templates/base.html:90 +msgid "EDIT" +msgstr "编辑" + +#: changedetectionio/templates/base.html:100 +msgid "LOG OUT" +msgstr "退出" + +#: changedetectionio/templates/base.html:109 +msgid "Search, or Use Alt+S Key" +msgstr "搜索或使用 Alt+S 键" + +#: changedetectionio/templates/base.html:116 +msgid "Toggle Light/Dark Mode" +msgstr "切换亮/暗模式" + +#: changedetectionio/templates/base.html:117 +msgid "Toggle light/dark mode" +msgstr "切换亮/暗模式" + +#: changedetectionio/templates/base.html:127 +msgid "Change Language" +msgstr "更改语言" + +#: changedetectionio/templates/base.html:128 +msgid "Change language" +msgstr "更改语言" + +#: changedetectionio/templates/base.html:249 +msgid "Real-time updates offline" +msgstr "离线实时更新" + +#: changedetectionio/templates/base.html:259 +msgid "Select Language" +msgstr "选择语言" + +#: changedetectionio/templates/login.html:10 +msgid "Password" +msgstr "密码" + +#: changedetectionio/templates/login.html:16 +msgid "Login" +msgstr "登录" + diff --git a/changedetectionio/translations/zh_TW/LC_MESSAGES/messages.mo b/changedetectionio/translations/zh_TW/LC_MESSAGES/messages.mo new file mode 100644 index 000000000..f378c4220 Binary files /dev/null and b/changedetectionio/translations/zh_TW/LC_MESSAGES/messages.mo differ diff --git a/changedetectionio/translations/zh_TW/LC_MESSAGES/messages.po b/changedetectionio/translations/zh_TW/LC_MESSAGES/messages.po new file mode 100644 index 000000000..15c2ea8ca --- /dev/null +++ b/changedetectionio/translations/zh_TW/LC_MESSAGES/messages.po @@ -0,0 +1,1928 @@ +# Chinese (Traditional, Taiwan) translations for PROJECT. +# Copyright (C) 2026 ORGANIZATION +# This file is distributed under the same license as the PROJECT project. +# FIRST AUTHOR <EMAIL@ADDRESS>, 2026. +# +msgid "" +msgstr "" +"Project-Id-Version: PROJECT VERSION\n" +"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" +"POT-Creation-Date: 2026-01-02 13:32+0100\n" +"PO-Revision-Date: 2026-01-02 12:37+0100\n" +"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" +"Language: zh_Hant_TW\n" +"Language-Team: zh_Hant_TW <LL@li.org>\n" +"Plural-Forms: nplurals=1; plural=0;\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=utf-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.17.0\n" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:241 +#: changedetectionio/flask_app.py:213 changedetectionio/flask_app.py:225 +#: changedetectionio/flask_app.py:246 +#: changedetectionio/realtime/socket_server.py:171 +msgid "Not yet" +msgstr "還沒有" + +#: changedetectionio/forms.py:62 changedetectionio/forms.py:242 +msgid "" +"At least one time interval (weeks, days, hours, minutes, or seconds) must" +" be specified." +msgstr "" + +#: changedetectionio/forms.py:63 +msgid "" +"At least one time interval (weeks, days, hours, minutes, or seconds) must" +" be specified when not using global settings." +msgstr "" + +#: changedetectionio/forms.py:163 +msgid "Invalid time format. Use HH:MM." +msgstr "時間格式無效。使用時:分。" + +#: changedetectionio/forms.py:179 +msgid "Not a valid timezone name" +msgstr "不是有效的時區名稱" + +#: changedetectionio/forms.py:182 +msgid "not set" +msgstr "還沒有" + +#: changedetectionio/forms.py:183 +msgid "Start At" +msgstr "統計數據" + +#: changedetectionio/forms.py:184 +msgid "Run duration" +msgstr "暫無信息" + +#: changedetectionio/forms.py:187 +msgid "Use time scheduler" +msgstr "使用時間調度器" + +#: changedetectionio/forms.py:197 +msgid "Optional timezone to run in" +msgstr "運行時的可選時區" + +#: changedetectionio/forms.py:211 +msgid "Monday" +msgstr "週一" + +#: changedetectionio/forms.py:212 +msgid "Tuesday" +msgstr "週二" + +#: changedetectionio/forms.py:213 +msgid "Wednesday" +msgstr "週三" + +#: changedetectionio/forms.py:214 +msgid "Thursday" +msgstr "週四" + +#: changedetectionio/forms.py:215 +msgid "Friday" +msgstr "星期五" + +#: changedetectionio/forms.py:216 +msgid "Saturday" +msgstr "週六" + +#: changedetectionio/forms.py:217 +msgid "Sunday" +msgstr "星期日" + +#: changedetectionio/forms.py:250 +msgid "Weeks" +msgstr "週數" + +#: changedetectionio/forms.py:250 changedetectionio/forms.py:251 +#: changedetectionio/forms.py:252 changedetectionio/forms.py:253 +#: changedetectionio/forms.py:254 changedetectionio/forms.py:957 +msgid "Should contain zero or more seconds" +msgstr "應包含零或更多秒" + +#: changedetectionio/forms.py:251 +msgid "Days" +msgstr "天" + +#: changedetectionio/forms.py:252 +msgid "Hours" +msgstr "字" + +#: changedetectionio/forms.py:253 +msgid "Minutes" +msgstr "沉默的" + +#: changedetectionio/forms.py:254 +msgid "Seconds" +msgstr "秒" + +#: changedetectionio/forms.py:459 +msgid "Notification Body and Title is required when a Notification URL is used" +msgstr "使用通知 URL 時需要通知正文和標題" + +#: changedetectionio/forms.py:488 +#, python-format +msgid "'%s' is not a valid AppRise URL." +msgstr "“%s”不是有效的 AppRise URL。" + +#: changedetectionio/forms.py:561 changedetectionio/forms.py:580 +#, python-format +msgid "RegEx '%s' is not a valid regular expression." +msgstr "RegEx“%s”不是有效的正則表達式。" + +#: changedetectionio/forms.py:621 changedetectionio/forms.py:636 +#, python-format +msgid "'%s' is not a valid XPath expression. (%s)" +msgstr "“%s”不是有效的 XPath 表達式。 (%s)" + +#: changedetectionio/forms.py:656 +#, python-format +msgid "'%s' is not a valid JSONPath expression. (%s)" +msgstr "“%s”不是有效的 JSONPath 表達式。 (%s)" + +#: changedetectionio/forms.py:678 +#, python-format +msgid "'%s' is not a valid jq expression. (%s)" +msgstr "“%s”不是有效的 jq 表達式。 (%s)" + +#: changedetectionio/forms.py:724 +msgid "Empty value not allowed." +msgstr "不允許為空值。" + +#: changedetectionio/forms.py:726 +msgid "Invalid value." +msgstr "無效值。" + +#: changedetectionio/forms.py:733 +msgid "Watch" +msgstr "# 手錶" + +#: changedetectionio/forms.py:734 changedetectionio/forms.py:768 +msgid "Processor" +msgstr "處理器" + +#: changedetectionio/forms.py:735 +msgid "Edit > Watch" +msgstr "先編輯後觀看" + +#: changedetectionio/forms.py:748 changedetectionio/forms.py:996 +msgid "Fetch Method" +msgstr "設置獲取方法" + +#: changedetectionio/forms.py:749 +msgid "Notification Body" +msgstr "通知" + +#: changedetectionio/forms.py:750 +msgid "Notification format" +msgstr "通知" + +#: changedetectionio/forms.py:751 +msgid "Notification Title" +msgstr "通知" + +#: changedetectionio/forms.py:752 +msgid "Notification URL List" +msgstr "通知" + +#: changedetectionio/forms.py:753 +msgid "Processor - What do you want to achieve?" +msgstr "處理器 - 您想要實現什麼?" + +#: changedetectionio/forms.py:754 +msgid "Default timezone for watch check scheduler" +msgstr "手錶檢查調度程序的默認時區" + +#: changedetectionio/forms.py:755 +msgid "Wait seconds before extracting text" +msgstr "提取文本前幾秒。" + +#: changedetectionio/forms.py:755 +msgid "Should contain one or more seconds" +msgstr "應包含一秒或多秒" + +#: changedetectionio/forms.py:769 +msgid "URLs" +msgstr "網址" + +#: changedetectionio/forms.py:770 +msgid "Upload .xlsx file" +msgstr "上傳 .xlsx 文件" + +#: changedetectionio/forms.py:770 +msgid "Must be .xlsx file!" +msgstr "必須是 .xlsx 文件!" + +#: changedetectionio/forms.py:771 +msgid "File mapping" +msgstr "文件映射類型。" + +#: changedetectionio/forms.py:775 +msgid "Operation" +msgstr "用戶界面選項" + +#: changedetectionio/forms.py:778 +msgid "Selector" +msgstr "選擇方式:" + +#: changedetectionio/forms.py:779 +msgid "value" +msgstr "暫停" + +#: changedetectionio/forms.py:798 +msgid "Use global settings for time between check and scheduler." +msgstr "使用全局設置檢查和調度程序之間的時間。" + +#: changedetectionio/forms.py:800 +msgid "CSS/JSONPath/JQ/XPath Filters" +msgstr "CSS/xPath 過濾器" + +#: changedetectionio/forms.py:802 changedetectionio/forms.py:998 +msgid "Remove elements" +msgstr "已刪除" + +#: changedetectionio/forms.py:804 +msgid "Extract text" +msgstr "提取數據" + +#: changedetectionio/blueprint/imports/templates/import.html:106 +#: changedetectionio/forms.py:806 +msgid "Title" +msgstr "標題" + +#: changedetectionio/forms.py:808 +msgid "Ignore lines containing" +msgstr "忽略任何匹配的行" + +#: changedetectionio/forms.py:810 +msgid "Request body" +msgstr "要求" + +#: changedetectionio/forms.py:811 +msgid "Request method" +msgstr "要求" + +#: changedetectionio/forms.py:812 +msgid "Ignore status codes (process non-2xx status codes as normal)" +msgstr "忽略狀態代碼(正常處理非 2xx 狀態代碼)" + +#: changedetectionio/forms.py:813 +msgid "Only trigger when unique lines appear in all history" +msgstr "僅當出現唯一線條時觸發" + +#: changedetectionio/blueprint/ui/templates/edit.html:336 +#: changedetectionio/forms.py:814 +msgid "Remove duplicate lines of text" +msgstr "刪除重複的文本行" + +#: changedetectionio/forms.py:815 +msgid "Sort text alphabetically" +msgstr "按字母順序對文本進行排序" + +#: changedetectionio/forms.py:816 changedetectionio/forms.py:1025 +msgid "Strip ignored lines" +msgstr "去掉忽略的行" + +#: changedetectionio/forms.py:817 +msgid "Trim whitespace before and after text" +msgstr "刪除每行文本前後的所有空格" + +#: changedetectionio/forms.py:819 +msgid "Added lines" +msgstr "線路" + +#: changedetectionio/forms.py:820 +msgid "Replaced/changed lines" +msgstr "更換/更改線路" + +#: changedetectionio/forms.py:821 +msgid "Removed lines" +msgstr "已刪除" + +#: changedetectionio/forms.py:823 +msgid "Keyword triggers - Trigger/wait for text" +msgstr "關鍵字觸發器 - 觸發/等待文本" + +#: changedetectionio/forms.py:826 +msgid "Block change-detection while text matches" +msgstr "文本匹配時阻止更改檢測" + +#: changedetectionio/forms.py:827 +msgid "Execute JavaScript before change detection" +msgstr "在更改檢測之前執行 JavaScript" + +#: changedetectionio/blueprint/tags/templates/groups-overview.html:17 +#: changedetectionio/forms.py:829 changedetectionio/forms.py:1053 +msgid "Save" +msgstr "節省" + +#: changedetectionio/forms.py:831 +msgid "Proxy" +msgstr "代理人" + +#: changedetectionio/forms.py:833 +msgid "Send a notification when the filter can no longer be found on the page" +msgstr "當頁面上找不到過濾器時發送通知" + +#: changedetectionio/blueprint/settings/templates/settings.html:22 +#: changedetectionio/blueprint/tags/templates/edit-tag.html:32 +#: changedetectionio/blueprint/ui/templates/edit.html:59 +#: changedetectionio/forms.py:834 +msgid "Notifications" +msgstr "通知" + +#: changedetectionio/forms.py:834 +msgid "Muted" +msgstr "沉默的" + +#: changedetectionio/forms.py:834 +msgid "On" +msgstr "沒有任何" + +#: changedetectionio/forms.py:835 +msgid "Attach screenshot to notification (where possible)" +msgstr "將屏幕截圖附加到通知(如果可能)" + +#: changedetectionio/forms.py:837 +msgid "Match" +msgstr "# 手錶" + +#: changedetectionio/forms.py:837 +msgid "Match all of the following" +msgstr "匹配以下所有內容" + +#: changedetectionio/forms.py:837 +msgid "Match any of the following" +msgstr "匹配以下任意一項" + +#: changedetectionio/forms.py:839 +msgid "Use page <title> in list" +msgstr "使用列表中的頁面<標題>" + +#: changedetectionio/forms.py:856 +msgid "Body must be empty when Request Method is set to GET" +msgstr "當請求方法設置為 GET 時,正文必須為空" + +#: changedetectionio/forms.py:865 changedetectionio/forms.py:879 +#: changedetectionio/forms.py:894 +#, python-format +msgid "Invalid template syntax configuration: %(error)s" +msgstr "模板語法配置無效:%(error)s" + +#: changedetectionio/forms.py:869 changedetectionio/forms.py:883 +#, python-format +msgid "Invalid template syntax: %(error)s" +msgstr "無效的模板語法:%(error)s" + +#: changedetectionio/forms.py:898 +#, python-format +msgid "Invalid template syntax in \"%(header)s\" header: %(error)s" +msgstr "" + +#: changedetectionio/forms.py:922 changedetectionio/forms.py:934 +msgid "Name" +msgstr "取消靜音" + +#: changedetectionio/forms.py:923 +msgid "Proxy URL" +msgstr "代理網址" + +#: changedetectionio/forms.py:928 +msgid "Proxy URLs must start with http://, https:// or socks5://" +msgstr "代理 URL 必須以 http://、https:// 或ocks5:// 開頭" + +#: changedetectionio/forms.py:935 +msgid "Browser connection URL" +msgstr "瀏覽器連接網址" + +#: changedetectionio/forms.py:940 +msgid "Browser URLs must start with wss:// or ws://" +msgstr "瀏覽器 URL 必須以 wss:// 或 ws:// 開頭" + +#: changedetectionio/forms.py:946 +msgid "Plaintext requests" +msgstr "明文請求" + +#: changedetectionio/forms.py:948 +msgid "Chrome requests" +msgstr "要求" + +#: changedetectionio/forms.py:954 +msgid "Default proxy" +msgstr "默認代理" + +#: changedetectionio/forms.py:955 +msgid "Random jitter seconds ± check" +msgstr "隨機抖動秒±檢查" + +#: changedetectionio/forms.py:959 +msgid "Number of fetch workers" +msgstr "取貨工人數量" + +#: changedetectionio/forms.py:962 +msgid "Should be between 1 and 50" +msgstr "應介於 1 到 50 之間" + +#: changedetectionio/forms.py:964 +msgid "Requests timeout in seconds" +msgstr "請求超時(以秒為單位)" + +#: changedetectionio/forms.py:967 +msgid "Should be between 1 and 999" +msgstr "應介於 1 到 999 之間" + +#: changedetectionio/forms.py:972 +msgid "Default User-Agent overrides" +msgstr "默認用戶代理覆蓋" + +#: changedetectionio/forms.py:978 +msgid "Both a name, and a Proxy URL is required." +msgstr "名稱和代理 URL 都是必需的。" + +#: changedetectionio/forms.py:982 +msgid "Open 'History' page in a new tab" +msgstr "在新選項卡中打開“歷史記錄”頁面" + +#: changedetectionio/forms.py:983 +msgid "Realtime UI Updates Enabled" +msgstr "離線實時更新" + +#: changedetectionio/forms.py:984 +msgid "Favicons Enabled" +msgstr "考慮啟用" + +#: changedetectionio/forms.py:985 +msgid "Use page <title> in watch overview list" +msgstr "在觀看概覽列表中使用頁面<標題>" + +#: changedetectionio/forms.py:990 +msgid "API access token security check enabled" +msgstr "已啟用 API 訪問令牌安全檢查" + +#: changedetectionio/forms.py:991 +msgid "Notification base URL override" +msgstr "通知警報計數" + +#: changedetectionio/forms.py:995 +msgid "Treat empty pages as a change?" +msgstr "將空頁視為更改?" + +#: changedetectionio/forms.py:997 +msgid "Ignore Text" +msgstr "錯誤文本" + +#: changedetectionio/forms.py:999 +msgid "Ignore whitespace" +msgstr "忽略空格" + +#: changedetectionio/forms.py:1006 +#: changedetectionio/processors/image_ssim_diff/forms.py:50 +msgid "Must be between 0 and 100" +msgstr "必須介於 0 到 100 之間" + +#: changedetectionio/forms.py:1013 +msgid "Pager size" +msgstr "尋呼機尺寸" + +#: changedetectionio/forms.py:1016 +msgid "Should be atleast zero (disabled)" +msgstr "應至少為零(禁用)" + +#: changedetectionio/forms.py:1018 +msgid "RSS Content format" +msgstr "RSS 內容格式" + +#: changedetectionio/forms.py:1019 +msgid "RSS <description> body built from" +msgstr "RSS <描述> 正文構建於" + +#: changedetectionio/forms.py:1020 +msgid "RSS \"System default\" template override" +msgstr "" + +#: changedetectionio/forms.py:1022 +msgid "Remove password" +msgstr "密碼" + +#: changedetectionio/forms.py:1023 +msgid "Render anchor tag content" +msgstr "渲染錨標記內容" + +#: changedetectionio/forms.py:1024 +msgid "Allow anonymous access to watch history page when password is enabled" +msgstr "啟用密碼後允許匿名訪問觀看歷史記錄頁面" + +#: changedetectionio/forms.py:1026 +msgid "Hide muted watches from RSS feed" +msgstr "從 RSS 源中隱藏靜音的手錶" + +#: changedetectionio/forms.py:1029 +msgid "Enable RSS reader mode " +msgstr "啟用 RSS 閱讀器模式" + +#: changedetectionio/forms.py:1030 +msgid "Number of changes to show in watch RSS feed" +msgstr "觀看 RSS 源中顯示的更改數量" + +#: changedetectionio/forms.py:1032 changedetectionio/forms.py:1037 +msgid "Should contain zero or more attempts" +msgstr "應包含零次或多次嘗試" + +#: changedetectionio/forms.py:1034 +msgid "Number of times the filter can be missing before sending a notification" +msgstr "發送通知之前過濾器可能丟失的次數" + +#: changedetectionio/forms.py:1057 +msgid "RegEx to extract" +msgstr "要提取的正則表達式" + +#: changedetectionio/forms.py:1058 +msgid "Extract as CSV" +msgstr "提取數據" + +#: changedetectionio/blueprint/backups/templates/overview.html:6 +msgid "Backups" +msgstr "備份" + +#: changedetectionio/blueprint/backups/templates/overview.html:9 +msgid "A backup is running!" +msgstr "備份正在運行!" + +#: changedetectionio/blueprint/backups/templates/overview.html:13 +msgid "" +"Here you can download and request a new backup, when a backup is " +"completed you will see it listed below." +msgstr "" + +#: changedetectionio/blueprint/backups/templates/overview.html:19 +msgid "Mb" +msgstr "MB" + +#: changedetectionio/blueprint/backups/templates/overview.html:24 +msgid "No backups found." +msgstr "未找到備份。" + +#: changedetectionio/blueprint/backups/templates/overview.html:28 +msgid "Create backup" +msgstr "創建備份" + +#: changedetectionio/blueprint/backups/templates/overview.html:30 +msgid "Remove backups" +msgstr "刪除備份" + +#: changedetectionio/blueprint/imports/templates/import.html:9 +msgid "URL List" +msgstr "網址列表" + +#: changedetectionio/blueprint/imports/templates/import.html:10 +msgid "Distill.io" +msgstr "Distill.io" + +#: changedetectionio/blueprint/imports/templates/import.html:11 +msgid ".XLSX & Wachete" +msgstr ".XLSX 和瓦切特" + +#: changedetectionio/blueprint/imports/templates/import.html:20 +msgid "" +"Enter one URL per line, and optionally add tags for each URL after a " +"space, delineated by comma (,):" +msgstr "" + +#: changedetectionio/blueprint/imports/templates/import.html:22 +msgid "Example:" +msgstr "例子:" + +#: changedetectionio/blueprint/imports/templates/import.html:23 +msgid "URLs which do not pass validation will stay in the textarea." +msgstr "未通過驗證的 URL 將保留在文本區域中。" + +#: changedetectionio/blueprint/imports/templates/import.html:44 +msgid "" +"Copy and Paste your Distill.io watch 'export' file, this should be a JSON" +" file." +msgstr "" + +#: changedetectionio/blueprint/imports/templates/import.html:45 +msgid "This is" +msgstr "這是" + +#: changedetectionio/blueprint/imports/templates/import.html:45 +msgid "experimental" +msgstr "實驗性的" + +#: changedetectionio/blueprint/imports/templates/import.html:45 +msgid "supported fields are" +msgstr "支持的字段有" + +#: changedetectionio/blueprint/imports/templates/import.html:45 +msgid "the rest (including" +msgstr "其餘的(包括" + +#: changedetectionio/blueprint/imports/templates/import.html:45 +msgid "are ignored." +msgstr "被忽略。" + +#: changedetectionio/blueprint/imports/templates/import.html:48 +msgid "How to export?" +msgstr "如何導出?" + +#: changedetectionio/blueprint/imports/templates/import.html:49 +msgid "Be sure to set your default fetcher to Chrome if required." +msgstr "如果需要,請務必將默認提取器設置為 Chrome。" + +#: changedetectionio/blueprint/imports/templates/import.html:91 +msgid "Table of custom column and data types mapping for the" +msgstr "自定義列和數據類型映射表" + +#: changedetectionio/blueprint/imports/templates/import.html:91 +msgid "Custom mapping" +msgstr "自定義映射" + +#: changedetectionio/blueprint/imports/templates/import.html:91 +msgid "File mapping type." +msgstr "文件映射類型。" + +#: changedetectionio/blueprint/imports/templates/import.html:95 +msgid "Column #" +msgstr "柱子 #" + +#: changedetectionio/blueprint/imports/templates/import.html:101 +msgid "Type" +msgstr "類型" + +#: changedetectionio/blueprint/imports/templates/import.html:104 +msgid "none" +msgstr "沒有任何" + +#: changedetectionio/blueprint/imports/templates/import.html:105 +msgid "URL" +msgstr "網址" + +#: changedetectionio/blueprint/imports/templates/import.html:107 +msgid "CSS/xPath filter" +msgstr "CSS/xPath 過濾器" + +#: changedetectionio/blueprint/imports/templates/import.html:108 +msgid "Group / Tag name(s)" +msgstr "組/標籤名稱" + +#: changedetectionio/blueprint/imports/templates/import.html:109 +msgid "Recheck time (minutes)" +msgstr "複檢時間(分鐘)" + +#: changedetectionio/blueprint/imports/templates/import.html:116 +msgid "Import" +msgstr "進口" + +#: changedetectionio/blueprint/settings/templates/notification-log.html:7 +msgid "Notification debug log" +msgstr "通知調試日誌" + +#: changedetectionio/blueprint/settings/templates/settings.html:21 +#: changedetectionio/blueprint/tags/templates/edit-tag.html:27 +#: changedetectionio/blueprint/ui/templates/edit.html:47 +msgid "General" +msgstr "一般的" + +#: changedetectionio/blueprint/settings/templates/settings.html:23 +msgid "Fetching" +msgstr "抓取" + +#: changedetectionio/blueprint/settings/templates/settings.html:24 +msgid "Global Filters" +msgstr "全局過濾器" + +#: changedetectionio/blueprint/settings/templates/settings.html:25 +msgid "UI Options" +msgstr "用戶界面選項" + +#: changedetectionio/blueprint/settings/templates/settings.html:26 +msgid "API" +msgstr "應用程序編程接口" + +#: changedetectionio/blueprint/settings/templates/settings.html:27 +msgid "RSS" +msgstr "RSS" + +#: changedetectionio/blueprint/settings/templates/settings.html:28 +msgid "Time & Date" +msgstr "時間和日期" + +#: changedetectionio/blueprint/settings/templates/settings.html:29 +msgid "CAPTCHA & Proxies" +msgstr "驗證碼和代理" + +#: changedetectionio/blueprint/settings/templates/settings.html:35 +msgid "Info" +msgstr "資訊" + +#: changedetectionio/blueprint/settings/templates/settings.html:46 +msgid "Default recheck time for all watches, current system minimum is" +msgstr "所有手錶默認複檢時間,當前系統最小值為" + +#: changedetectionio/blueprint/settings/templates/settings.html:46 +msgid "seconds" +msgstr "秒" + +#: changedetectionio/blueprint/settings/templates/settings.html:46 +msgid "more info" +msgstr "更多信息" + +#: changedetectionio/blueprint/settings/templates/settings.html:390 +msgid "Python version:" +msgstr "Python版本:" + +#: changedetectionio/blueprint/settings/templates/settings.html:391 +msgid "Plugins active:" +msgstr "插件活躍:" + +#: changedetectionio/blueprint/settings/templates/settings.html:399 +msgid "No plugins active" +msgstr "沒有激活的插件" + +#: changedetectionio/blueprint/settings/templates/settings.html:405 +msgid "Back" +msgstr "後退" + +#: changedetectionio/blueprint/settings/templates/settings.html:406 +msgid "Clear Snapshot History" +msgstr "清除快照歷史記錄" + +#: changedetectionio/blueprint/tags/templates/edit-tag.html:28 +#: changedetectionio/blueprint/ui/templates/edit.html:56 +#: changedetectionio/blueprint/ui/templates/edit.html:386 +msgid "Filters & Triggers" +msgstr "過濾器和触發器" + +#: changedetectionio/blueprint/tags/templates/edit-tag.html:50 +msgid "These settings are" +msgstr "這些設置是" + +#: changedetectionio/blueprint/tags/templates/edit-tag.html:50 +msgid "added" +msgstr "額外" + +#: changedetectionio/blueprint/tags/templates/edit-tag.html:50 +msgid "to any existing watch configurations." +msgstr "任何現有的手錶配置。" + +#: changedetectionio/blueprint/tags/templates/edit-tag.html:53 +#: changedetectionio/blueprint/ui/templates/edit.html:321 +msgid "Text filtering" +msgstr "文本過濾" + +#: changedetectionio/blueprint/tags/templates/edit-tag.html:73 +#: changedetectionio/blueprint/ui/templates/edit.html:269 +msgid "Use with caution!" +msgstr "謹慎使用!" + +#: changedetectionio/blueprint/tags/templates/edit-tag.html:73 +#: changedetectionio/blueprint/ui/templates/edit.html:269 +msgid "This will easily fill up your email storage quota or flood other storages." +msgstr "這將很容易填滿您的電子郵件存儲配額或淹沒其他存儲。" + +#: changedetectionio/blueprint/tags/templates/edit-tag.html:80 +#: changedetectionio/blueprint/ui/templates/edit.html:276 +msgid "Look out!" +msgstr "當心!" + +#: changedetectionio/blueprint/tags/templates/edit-tag.html:80 +#: changedetectionio/blueprint/ui/templates/edit.html:276 +msgid "Lookout!" +msgstr "瞭望!" + +#: changedetectionio/blueprint/tags/templates/edit-tag.html:81 +#: changedetectionio/blueprint/ui/templates/edit.html:277 +msgid "There are" +msgstr "有" + +#: changedetectionio/blueprint/tags/templates/edit-tag.html:81 +#: changedetectionio/blueprint/ui/templates/edit.html:277 +msgid "system-wide notification URLs enabled" +msgstr "啟用系統範圍的通知 URL" + +#: changedetectionio/blueprint/tags/templates/edit-tag.html:81 +#: changedetectionio/blueprint/ui/templates/edit.html:277 +msgid "this form will override notification settings for this watch only" +msgstr "此表單將僅覆蓋此手錶的通知設置" + +#: changedetectionio/blueprint/tags/templates/edit-tag.html:81 +#: changedetectionio/blueprint/ui/templates/edit.html:277 +msgid "an empty Notification URL list here will still send notifications." +msgstr "此處的通知 URL 列表為空仍會發送通知。" + +#: changedetectionio/blueprint/tags/templates/edit-tag.html:84 +#: changedetectionio/blueprint/ui/templates/edit.html:280 +msgid "Use system defaults" +msgstr "使用系統默認值" + +#: changedetectionio/blueprint/tags/templates/groups-overview.html:11 +msgid "Add a new organisational tag" +msgstr "添加新的組織標籤" + +#: changedetectionio/blueprint/tags/templates/groups-overview.html:14 +msgid "Watch group / tag" +msgstr "觀看組/標籤" + +#: changedetectionio/blueprint/tags/templates/groups-overview.html:21 +msgid "" +"Groups allows you to manage filters and notifications for multiple " +"watches under a single organisational tag." +msgstr "" + +#: changedetectionio/blueprint/tags/templates/groups-overview.html:31 +msgid "# Watches" +msgstr "# 手錶" + +#: changedetectionio/blueprint/tags/templates/groups-overview.html:32 +msgid "Tag / Label name" +msgstr "標籤/標籤名稱" + +#: changedetectionio/blueprint/tags/templates/groups-overview.html:42 +msgid "No website organisational tags/groups configured" +msgstr "未配置網站組織標籤/組" + +#: changedetectionio/blueprint/tags/templates/groups-overview.html:53 +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:249 +msgid "Edit" +msgstr "編輯" + +#: changedetectionio/blueprint/tags/templates/groups-overview.html:58 +msgid "Delete Group?" +msgstr "刪除群組?" + +#: changedetectionio/blueprint/tags/templates/groups-overview.html:59 +#, python-format +msgid "" +"<p>Are you sure you want to delete group " +"<strong>%(title)s</strong>?</p><p>This action cannot be undone.</p>" +msgstr "" + +#: changedetectionio/blueprint/tags/templates/groups-overview.html:60 +#: changedetectionio/blueprint/tags/templates/groups-overview.html:61 +#: changedetectionio/blueprint/ui/templates/edit.html:490 +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:73 +msgid "Delete" +msgstr "刪除" + +#: changedetectionio/blueprint/tags/templates/groups-overview.html:61 +msgid "Deletes and removes tag" +msgstr "刪除並移除標籤" + +#: changedetectionio/blueprint/tags/templates/groups-overview.html:66 +msgid "Unlink Group?" +msgstr "取消群組鏈接?" + +#: changedetectionio/blueprint/tags/templates/groups-overview.html:67 +#, python-format +msgid "" +"<p>Are you sure you want to unlink all watches from group " +"<strong>%(title)s</strong>?</p><p>The tag will be kept but watches will " +"be removed from it.</p>" +msgstr "" + +#: changedetectionio/blueprint/tags/templates/groups-overview.html:68 +#: changedetectionio/blueprint/tags/templates/groups-overview.html:69 +msgid "Unlink" +msgstr "取消鏈接" + +#: changedetectionio/blueprint/tags/templates/groups-overview.html:69 +msgid "Keep the tag but unlink any watches" +msgstr "保留標籤但取消所有手錶的鏈接" + +#: changedetectionio/blueprint/tags/templates/groups-overview.html:70 +#: changedetectionio/blueprint/ui/templates/edit.html:500 +msgid "RSS Feed for this watch" +msgstr "此手錶的 RSS 源" + +#: changedetectionio/blueprint/ui/templates/clear_all_history.html:12 +msgid "" +"This will remove version history (snapshots) for ALL watches, but keep " +"your list of URLs!" +msgstr "" + +#: changedetectionio/blueprint/ui/templates/clear_all_history.html:13 +msgid "You may like to use the" +msgstr "您可能喜歡使用" + +#: changedetectionio/blueprint/ui/templates/clear_all_history.html:13 +msgid "BACKUP" +msgstr "備份" + +#: changedetectionio/blueprint/ui/templates/clear_all_history.html:13 +msgid "link first." +msgstr "先鏈接。" + +#: changedetectionio/blueprint/ui/templates/clear_all_history.html:17 +msgid "Confirmation text" +msgstr "確認文字" + +#: changedetectionio/blueprint/ui/templates/clear_all_history.html:27 +msgid "Type in the word" +msgstr "輸入單詞" + +#: changedetectionio/blueprint/ui/templates/clear_all_history.html:27 +msgid "clear" +msgstr "清除" + +#: changedetectionio/blueprint/ui/templates/clear_all_history.html:27 +msgid "to confirm that you understand." +msgstr "以確認您已理解。" + +#: changedetectionio/blueprint/ui/templates/clear_all_history.html:33 +msgid "Clear History!" +msgstr "清除歷史!" + +#: changedetectionio/blueprint/ui/templates/clear_all_history.html:39 +#: changedetectionio/templates/base.html:271 +msgid "Cancel" +msgstr "取消" + +#: changedetectionio/blueprint/ui/templates/diff-offscreen-options.html:3 +msgid "Share diff as image" +msgstr "將差異共享為圖像" + +#: changedetectionio/blueprint/ui/templates/diff-offscreen-options.html:3 +msgid "Share as Image" +msgstr "分享為圖片" + +#: changedetectionio/blueprint/ui/templates/diff-offscreen-options.html:6 +msgid "Ignore any lines matching" +msgstr "忽略任何匹配的行" + +#: changedetectionio/blueprint/ui/templates/diff-offscreen-options.html:9 +msgid "Ignore any lines matching excluding digits" +msgstr "忽略任何匹配排除數字的行" + +#: changedetectionio/blueprint/ui/templates/diff.html:28 +msgid "From" +msgstr "從" + +#: changedetectionio/blueprint/ui/templates/diff.html:38 +msgid "To" +msgstr "到" + +#: changedetectionio/blueprint/ui/templates/diff.html:53 +msgid "Words" +msgstr "字" + +#: changedetectionio/blueprint/ui/templates/diff.html:57 +msgid "Lines" +msgstr "線路" + +#: changedetectionio/blueprint/ui/templates/diff.html:61 +msgid "Ignore Whitespace" +msgstr "忽略空格" + +#: changedetectionio/blueprint/ui/templates/diff.html:65 +msgid "Same/non-changed" +msgstr "相同/未改變" + +#: changedetectionio/blueprint/ui/templates/diff.html:69 +msgid "Removed" +msgstr "已刪除" + +#: changedetectionio/blueprint/ui/templates/diff.html:73 +#: changedetectionio/blueprint/ui/templates/edit.html:327 +msgid "Added" +msgstr "額外" + +#: changedetectionio/blueprint/ui/templates/diff.html:77 +#: changedetectionio/blueprint/ui/templates/edit.html:327 +msgid "Replaced" +msgstr "已更換" + +#: changedetectionio/blueprint/ui/templates/diff.html:82 +#: changedetectionio/blueprint/ui/templates/preview.html:36 +msgid "Keyboard:" +msgstr "鍵盤:" + +#: changedetectionio/blueprint/ui/templates/diff.html:83 +#: changedetectionio/blueprint/ui/templates/preview.html:37 +msgid "Previous" +msgstr "以前的" + +#: changedetectionio/blueprint/ui/templates/diff.html:84 +#: changedetectionio/blueprint/ui/templates/preview.html:38 +msgid "Next" +msgstr "下一個" + +#: changedetectionio/blueprint/ui/templates/diff.html:91 +msgid "Jump to next difference" +msgstr "跳轉到下一個差異" + +#: changedetectionio/blueprint/ui/templates/diff.html:91 +msgid "Jump" +msgstr "跳" + +#: changedetectionio/blueprint/ui/templates/diff.html:97 +#: changedetectionio/blueprint/ui/templates/preview.html:45 +msgid "Error Text" +msgstr "錯誤文本" + +#: changedetectionio/blueprint/ui/templates/diff.html:98 +#: changedetectionio/blueprint/ui/templates/preview.html:47 +msgid "Error Screenshot" +msgstr "錯誤截圖" + +#: changedetectionio/blueprint/ui/templates/diff.html:99 +#: changedetectionio/blueprint/ui/templates/preview.html:50 +#: changedetectionio/processors/text_json_diff/processor.py:24 +msgid "Text" +msgstr "文字" + +#: changedetectionio/blueprint/ui/templates/diff.html:100 +#: changedetectionio/blueprint/ui/templates/preview.html:51 +msgid "Current screenshot" +msgstr "當前截圖" + +#: changedetectionio/blueprint/ui/templates/diff.html:101 +msgid "Extract Data" +msgstr "提取數據" + +#: changedetectionio/blueprint/ui/templates/diff.html:107 +msgid "seconds ago." +msgstr "幾秒鐘前。" + +#: changedetectionio/blueprint/ui/templates/diff.html:114 +#: changedetectionio/blueprint/ui/templates/preview.html:59 +#: changedetectionio/blueprint/ui/templates/preview.html:66 +msgid "seconds ago" +msgstr "幾秒鐘前" + +#: changedetectionio/blueprint/ui/templates/diff.html:115 +msgid "Current error-ing screenshot from most recent request" +msgstr "最近請求的當前錯誤屏幕截圖" + +#: changedetectionio/blueprint/ui/templates/diff.html:127 +msgid "Pro-tip: You can enable" +msgstr "專業提示:您可以啟用" + +#: changedetectionio/blueprint/ui/templates/diff.html:127 +msgid "\"share access when password is enabled\"" +msgstr "" + +#: changedetectionio/blueprint/ui/templates/diff.html:127 +msgid "from settings." +msgstr "從設置。" + +#: changedetectionio/blueprint/ui/templates/diff.html:133 +msgid "Goto single snapshot" +msgstr "轉到單個快照" + +#: changedetectionio/blueprint/ui/templates/diff.html:138 +#: changedetectionio/blueprint/ui/templates/edit.html:125 +msgid "Tip:" +msgstr "提示:" + +#: changedetectionio/blueprint/ui/templates/diff.html:138 +msgid "Highlight text to share or add to ignore lists." +msgstr "突出顯示要共享或添加到忽略列表的文本。" + +#: changedetectionio/blueprint/ui/templates/diff.html:144 +#: changedetectionio/blueprint/ui/templates/preview.html:80 +msgid "" +"For now, Differences are performed on text, not graphically, only the " +"latest screenshot is available." +msgstr "" + +#: changedetectionio/blueprint/ui/templates/diff.html:149 +#: changedetectionio/blueprint/ui/templates/preview.html:86 +msgid "Current screenshot from most recent request" +msgstr "最近請求的當前屏幕截圖" + +#: changedetectionio/blueprint/ui/templates/diff.html:151 +#: changedetectionio/blueprint/ui/templates/preview.html:88 +msgid "No screenshot available just yet! Try rechecking the page." +msgstr "目前還沒有可用的屏幕截圖!嘗試重新檢查頁面。" + +#: changedetectionio/blueprint/ui/templates/diff.html:154 +msgid "Screenshot requires Playwright/WebDriver enabled" +msgstr "屏幕截圖需要啟用 Playwright/WebDriver" + +#: changedetectionio/blueprint/ui/templates/edit.html:48 +msgid "Request" +msgstr "要求" + +#: changedetectionio/blueprint/ui/templates/edit.html:52 +msgid "Browser Steps" +msgstr "瀏覽器步驟" + +#: changedetectionio/blueprint/ui/templates/edit.html:55 +msgid "Visual Filter Selector" +msgstr "視覺過濾器選擇器" + +#: changedetectionio/blueprint/ui/templates/edit.html:57 +msgid "Conditions" +msgstr "狀況" + +#: changedetectionio/blueprint/ui/templates/edit.html:60 +msgid "Stats" +msgstr "統計數據" + +#: changedetectionio/blueprint/ui/templates/edit.html:73 +#: changedetectionio/blueprint/ui/templates/edit.html:313 +msgid "Some sites use JavaScript to create the content, for this you should" +msgstr "有些網站使用 JavaScript 來創建內容,為此您應該" + +#: changedetectionio/blueprint/ui/templates/edit.html:73 +#: changedetectionio/blueprint/ui/templates/edit.html:313 +msgid "use the Chrome/WebDriver Fetcher" +msgstr "使用 Chrome/WebDriver Fetcher" + +#: changedetectionio/blueprint/ui/templates/edit.html:74 +msgid "Variables are supported in the URL" +msgstr "URL 中支持變量" + +#: changedetectionio/blueprint/ui/templates/edit.html:74 +#: changedetectionio/blueprint/ui/templates/edit.html:180 +#: changedetectionio/blueprint/ui/templates/edit.html:189 +msgid "help and examples here" +msgstr "幫助和示例在這裡" + +#: changedetectionio/blueprint/ui/templates/edit.html:78 +msgid "Organisational tag/group name used in the main listing page" +msgstr "主列表頁面中使用的組織標籤/組名稱" + +#: changedetectionio/blueprint/ui/templates/edit.html:85 +msgid "" +"Automatically uses the page title if found, you can also use your own " +"title/description here" +msgstr "" + +#: changedetectionio/blueprint/ui/templates/edit.html:95 +msgid "The interval/amount of time between each check." +msgstr "每次檢查之間的間隔/時間量。" + +#: changedetectionio/blueprint/ui/templates/edit.html:110 +msgid "" +"Sends a notification when the filter can no longer be seen on the page, " +"good for knowing when the page changed and your filter will not work " +"anymore." +msgstr "" + +#: changedetectionio/blueprint/ui/templates/edit.html:123 +msgid "Use the" +msgstr "使用" + +#: changedetectionio/blueprint/ui/templates/edit.html:123 +msgid "Basic" +msgstr "基本的" + +#: changedetectionio/blueprint/ui/templates/edit.html:123 +msgid "" +"method (default) where your watched site doesn't need Javascript to " +"render." +msgstr "" + +#: changedetectionio/blueprint/ui/templates/edit.html:124 +msgid "The" +msgstr "這" + +#: changedetectionio/blueprint/ui/templates/edit.html:124 +msgid "Chrome/Javascript" +msgstr "Chrome/Javascript" + +#: changedetectionio/blueprint/ui/templates/edit.html:124 +msgid "" +"method requires a network connection to a running WebDriver+Chrome " +"server, set by the ENV var 'WEBDRIVER_URL'." +msgstr "" + +#: changedetectionio/blueprint/ui/templates/edit.html:125 +msgid "Connect using Bright Data and Oxylabs Proxies, find out more here." +msgstr "使用 Bright Data 和 Oxylabs Proxies 進行連接,在此處了解更多信息。" + +#: changedetectionio/blueprint/ui/templates/edit.html:130 +msgid "Check/Scan all" +msgstr "檢查/掃描全部" + +#: changedetectionio/blueprint/ui/templates/edit.html:133 +msgid "Choose a proxy for this watch" +msgstr "為該手錶選擇代理" + +#: changedetectionio/blueprint/ui/templates/edit.html:143 +msgid "" +"If you're having trouble waiting for the page to be fully rendered (text " +"missing etc), try increasing the 'wait' time here." +msgstr "" + +#: changedetectionio/blueprint/ui/templates/edit.html:145 +msgid "This will wait" +msgstr "這會等待" + +#: changedetectionio/blueprint/ui/templates/edit.html:145 +msgid "seconds before extracting the text." +msgstr "提取文本前幾秒。" + +#: changedetectionio/blueprint/ui/templates/edit.html:147 +msgid "Using the current global default settings" +msgstr "使用當前全局默認設置" + +#: changedetectionio/blueprint/ui/templates/edit.html:152 +#: changedetectionio/blueprint/ui/templates/edit.html:165 +msgid "Show advanced options" +msgstr "顯示高級選項" + +#: changedetectionio/blueprint/ui/templates/edit.html:157 +msgid "" +"Run this code before performing change detection, handy for filling in " +"fields and other actions" +msgstr "" + +#: changedetectionio/blueprint/ui/templates/edit.html:158 +msgid "More help and examples here" +msgstr "更多幫助和示例請參見此處" + +#: changedetectionio/blueprint/ui/templates/edit.html:180 +msgid "Variables are supported in the request body" +msgstr "請求正文中支持變量" + +#: changedetectionio/blueprint/ui/templates/edit.html:189 +msgid "Variables are supported in the request header values" +msgstr "請求標頭值支持變量" + +#: changedetectionio/blueprint/ui/templates/edit.html:192 +msgid "Alert! Extra headers file found and will be added to this watch!" +msgstr "警報!找到額外的頭文件並將其添加到此手錶中!" + +#: changedetectionio/blueprint/ui/templates/edit.html:194 +msgid "Headers can be also read from a file in your data-directory" +msgstr "還可以從數據目錄中的文件中讀取標頭" + +#: changedetectionio/blueprint/ui/templates/edit.html:194 +msgid "Read more here" +msgstr "在這裡閱讀更多內容" + +#: changedetectionio/blueprint/ui/templates/edit.html:197 +msgid "Not supported by Selenium browser" +msgstr "Selenium 瀏覽器不支持" + +#: changedetectionio/blueprint/ui/templates/edit.html:221 +msgid "Turn on text finder" +msgstr "打開文本查找器" + +#: changedetectionio/blueprint/ui/templates/edit.html:224 +msgid "Please wait, first browser step can take a little time to load.." +msgstr "請稍候,第一個瀏覽器步驟可能需要一些時間來加載。" + +#: changedetectionio/blueprint/ui/templates/edit.html:231 +msgid "Click here to Start" +msgstr "單擊此處開始" + +#: changedetectionio/blueprint/ui/templates/edit.html:233 +msgid "Please allow 10-15 seconds for the browser to connect." +msgstr "請等待 10-15 秒讓瀏覽器連接。" + +#: changedetectionio/blueprint/ui/templates/edit.html:242 +msgid "Press \"Play\" to start." +msgstr "" + +#: changedetectionio/blueprint/ui/templates/edit.html:249 +#: changedetectionio/blueprint/ui/templates/edit.html:419 +msgid "Visual Selector data is not ready, watch needs to be checked atleast once." +msgstr "視覺選擇器數據尚未準備好,至少需要檢查一次手錶。" + +#: changedetectionio/blueprint/ui/templates/edit.html:253 +msgid "" +"Sorry, this functionality only works with fetchers that support " +"interactive Javascript (so far only Playwright based fetchers)" +msgstr "" + +#: changedetectionio/blueprint/ui/templates/edit.html:254 +#: changedetectionio/blueprint/ui/templates/edit.html:424 +msgid "You need to" +msgstr "你需要" + +#: changedetectionio/blueprint/ui/templates/edit.html:254 +#: changedetectionio/blueprint/ui/templates/edit.html:424 +msgid "Set the fetch method" +msgstr "設置獲取方法" + +#: changedetectionio/blueprint/ui/templates/edit.html:254 +msgid "to one that supports interactive Javascript." +msgstr "到支持交互式 Javascript 的一個。" + +#: changedetectionio/blueprint/ui/templates/edit.html:297 +msgid "" +"Use the verify (✓) button to test if a condition passes against the " +"current snapshot." +msgstr "" + +#: changedetectionio/blueprint/ui/templates/edit.html:298 +msgid "Read a quick tutorial about" +msgstr "閱讀有關以下內容的快速教程" + +#: changedetectionio/blueprint/ui/templates/edit.html:298 +msgid "using conditional web page changes here" +msgstr "此處使用條件網頁更改" + +#: changedetectionio/blueprint/ui/templates/edit.html:303 +msgid "Activate preview" +msgstr "激活預覽" + +#: changedetectionio/blueprint/ui/templates/edit.html:307 +msgid "Pro-tips:" +msgstr "專業提示:" + +#: changedetectionio/blueprint/ui/templates/edit.html:310 +msgid "Use the preview page to see your filters and triggers highlighted." +msgstr "使用預覽頁面查看突出顯示的過濾器和触發器。" + +#: changedetectionio/blueprint/ui/templates/edit.html:322 +msgid "Limit trigger/ignore/block/extract to;" +msgstr "將觸發/忽略/阻止/提取限制為;" + +#: changedetectionio/blueprint/ui/templates/edit.html:326 +msgid "" +"Note: Depending on the length and similarity of the text on each line, " +"the algorithm may consider an" +msgstr "" + +#: changedetectionio/blueprint/ui/templates/edit.html:326 +#: changedetectionio/blueprint/ui/templates/edit.html:328 +msgid "addition" +msgstr "添加" + +#: changedetectionio/blueprint/ui/templates/edit.html:326 +msgid "instead of" +msgstr "而不是" + +#: changedetectionio/blueprint/ui/templates/edit.html:326 +msgid "replacement" +msgstr "替代品" + +#: changedetectionio/blueprint/ui/templates/edit.html:326 +msgid "for example." +msgstr "例如。" + +#: changedetectionio/blueprint/ui/templates/edit.html:327 +msgid "So it's always better to select" +msgstr "所以選擇總是更好" + +#: changedetectionio/blueprint/ui/templates/edit.html:327 +msgid "when you're interested in new content." +msgstr "當您對新內容感興趣時。" + +#: changedetectionio/blueprint/ui/templates/edit.html:328 +msgid "When content is merely moved in a list, it will also trigger an" +msgstr "當內容僅在列表中移動時,也會觸發" + +#: changedetectionio/blueprint/ui/templates/edit.html:328 +msgid "consider enabling" +msgstr "考慮啟用" + +#: changedetectionio/blueprint/ui/templates/edit.html:328 +msgid "Only trigger when unique lines appear" +msgstr "僅當出現唯一線條時觸發" + +#: changedetectionio/blueprint/ui/templates/edit.html:332 +msgid "" +"Good for websites that just move the content around, and you want to know" +" when NEW content is added, compares new lines against all history for " +"this watch." +msgstr "" + +#: changedetectionio/blueprint/ui/templates/edit.html:340 +msgid "" +"Helps reduce changes detected caused by sites shuffling lines around, " +"combine with" +msgstr "" + +#: changedetectionio/blueprint/ui/templates/edit.html:340 +msgid "check unique lines" +msgstr "檢查獨特的線路" + +#: changedetectionio/blueprint/ui/templates/edit.html:340 +msgid "below." +msgstr "以下。" + +#: changedetectionio/blueprint/ui/templates/edit.html:344 +msgid "Remove any whitespace before and after each line of text" +msgstr "刪除每行文本前後的所有空格" + +#: changedetectionio/blueprint/ui/templates/edit.html:358 +#: changedetectionio/blueprint/ui/templates/edit.html:361 +#: changedetectionio/blueprint/ui/templates/edit.html:417 +msgid "Loading..." +msgstr "載入中..." + +#: changedetectionio/blueprint/ui/templates/edit.html:386 +msgid "The Visual Selector tool lets you select the" +msgstr "視覺選擇器工具可讓您選擇" + +#: changedetectionio/blueprint/ui/templates/edit.html:386 +msgid "text" +msgstr "文字" + +#: changedetectionio/blueprint/ui/templates/edit.html:386 +msgid "" +"elements that will be used for the change detection. It automatically " +"fills-in the filters in the \"CSS/JSONPath/JQ/XPath Filters\" box of the" +msgstr "" + +#: changedetectionio/blueprint/ui/templates/edit.html:386 +msgid "tab. Use" +msgstr "選項卡。使用" + +#: changedetectionio/blueprint/ui/templates/edit.html:386 +msgid "Shift+Click" +msgstr "Shift+單擊" + +#: changedetectionio/blueprint/ui/templates/edit.html:386 +msgid "to select multiple items." +msgstr "選擇多個項目。" + +#: changedetectionio/blueprint/ui/templates/edit.html:391 +msgid "Selection Mode:" +msgstr "選擇方式:" + +#: changedetectionio/blueprint/ui/templates/edit.html:394 +msgid "Select by element" +msgstr "按元素選擇" + +#: changedetectionio/blueprint/ui/templates/edit.html:398 +msgid "Draw area" +msgstr "繪圖區" + +#: changedetectionio/blueprint/ui/templates/edit.html:406 +msgid "Clear selection" +msgstr "清除選擇" + +#: changedetectionio/blueprint/ui/templates/edit.html:408 +msgid "One moment, fetching screenshot and element information.." +msgstr "一會兒,正在獲取屏幕截圖和元素信息.." + +#: changedetectionio/blueprint/ui/templates/edit.html:417 +msgid "Currently:" +msgstr "現在:" + +#: changedetectionio/blueprint/ui/templates/edit.html:423 +msgid "" +"Sorry, this functionality only works with fetchers that support " +"Javascript and screenshots (such as playwright etc)." +msgstr "" + +#: changedetectionio/blueprint/ui/templates/edit.html:424 +msgid "to one that supports Javascript and screenshots." +msgstr "到支持 Javascript 和屏幕截圖的一個。" + +#: changedetectionio/blueprint/ui/templates/edit.html:441 +msgid "Check count" +msgstr "檢查計數" + +#: changedetectionio/blueprint/ui/templates/edit.html:445 +msgid "Consecutive filter failures" +msgstr "連續過濾器故障" + +#: changedetectionio/blueprint/ui/templates/edit.html:449 +msgid "History length" +msgstr "歷史長度" + +#: changedetectionio/blueprint/ui/templates/edit.html:453 +msgid "Last fetch duration" +msgstr "上次獲取持續時間" + +#: changedetectionio/blueprint/ui/templates/edit.html:457 +msgid "Notification alert count" +msgstr "通知警報計數" + +#: changedetectionio/blueprint/ui/templates/edit.html:461 +msgid "Server type reply" +msgstr "服務器類型回复" + +#: changedetectionio/blueprint/ui/templates/edit.html:475 +msgid "Download latest HTML snapshot" +msgstr "下載最新的 HTML 快照" + +#: changedetectionio/blueprint/ui/templates/edit.html:488 +msgid "Delete Watch?" +msgstr "刪除手錶?" + +#: changedetectionio/blueprint/ui/templates/edit.html:489 +msgid "Are you sure you want to delete the watch for:" +msgstr "您確定要刪除以下對象的手錶嗎:" + +#: changedetectionio/blueprint/ui/templates/edit.html:489 +msgid "This action cannot be undone." +msgstr "此操作無法撤消。" + +#: changedetectionio/blueprint/ui/templates/edit.html:495 +msgid "Clear History?" +msgstr "清除歷史記錄?" + +#: changedetectionio/blueprint/ui/templates/edit.html:496 +msgid "Are you sure you want to clear all history for:" +msgstr "您確定要清除以下內容的所有歷史記錄:" + +#: changedetectionio/blueprint/ui/templates/edit.html:496 +msgid "" +"This will remove all snapshots and previous versions. This action cannot " +"be undone." +msgstr "" + +#: changedetectionio/blueprint/ui/templates/edit.html:497 +msgid "Clear History" +msgstr "清除歷史記錄" + +#: changedetectionio/blueprint/ui/templates/edit.html:499 +msgid "Clone & Edit" +msgstr "克隆和編輯" + +#: changedetectionio/blueprint/ui/templates/preview.html:22 +msgid "Select timestamp" +msgstr "選擇時間戳" + +#: changedetectionio/blueprint/ui/templates/preview.html:31 +msgid "Go" +msgstr "去" + +#: changedetectionio/blueprint/ui/templates/preview.html:69 +msgid "Current erroring screenshot from most recent request" +msgstr "最近請求的當前錯誤屏幕截圖" + +#: changedetectionio/blueprint/ui/templates/preview.html:91 +msgid "" +"Screenshot requires a Content Fetcher ( Sockpuppetbrowser, selenium, etc " +") that supports screenshots." +msgstr "" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:31 +msgid "Add a new web page change detection watch" +msgstr "添加新的網頁更改檢測監視" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:34 +msgid "Watch this URL!" +msgstr "關注這個網址!" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:35 +msgid "Edit first then Watch" +msgstr "先編輯後觀看" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:45 +msgid "Create a shareable link" +msgstr "創建可共享鏈接" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:45 +msgid "Tip: You can also add 'shared' watches." +msgstr "提示:您還可以添加“共享”手錶。" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:45 +msgid "More info" +msgstr "更多信息" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:53 +msgid "Pause" +msgstr "暫停" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:54 +msgid "UnPause" +msgstr "取消暫停" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:55 +msgid "Mute" +msgstr "沉默的" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:56 +msgid "UnMute" +msgstr "取消靜音" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:57 +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:248 +msgid "Recheck" +msgstr "複查" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:58 +msgid "Tag" +msgstr "標籤" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:59 +msgid "Mark viewed" +msgstr "標記已查看" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:60 +msgid "Use default notification" +msgstr "使用默認通知" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:61 +msgid "Clear errors" +msgstr "清除錯誤" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:65 +msgid "Clear Histories" +msgstr "清晰的歷史記錄" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:66 +msgid "" +"<p>Are you sure you want to clear history for the selected " +"items?</p><p>This action cannot be undone.</p>" +msgstr "" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:67 +msgid "OK" +msgstr "好的" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:67 +msgid "Clear/reset history" +msgstr "清除/重置歷史記錄" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:71 +msgid "Delete Watches?" +msgstr "刪除手錶?" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:72 +msgid "" +"<p>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:78 +msgid "Searching" +msgstr "搜尋中" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:80 +msgid "All" +msgstr "全部" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:118 +msgid "Website" +msgstr "網站" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:120 +msgid "Restock & Price" +msgstr "補貨及價格" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:122 +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:123 +msgid "Last" +msgstr "最後的" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:122 +msgid "Checked" +msgstr "已檢查" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:123 +msgid "Changed" +msgstr "改變了" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:130 +msgid "No website watches configured, please add a URL in the box above, or" +msgstr "未配置網站監視,請在上面的框中添加 URL,或者" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:130 +msgid "import a list" +msgstr "導入列表" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:213 +msgid "Detecting restock and price" +msgstr "檢測補貨和價格" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:215 +msgid "In stock" +msgstr "有存貨" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:215 +msgid "Not in stock" +msgstr "沒有庫存" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:221 +msgid "Price" +msgstr "價格" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:226 +msgid "No information" +msgstr "暫無信息" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:234 +#: changedetectionio/templates/base.html:248 +msgid "Checking now" +msgstr "立即檢查" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:247 +msgid "Queued" +msgstr "排隊" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:250 +msgid "History" +msgstr "歷史" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:251 +msgid "Preview" +msgstr "預覽" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:260 +msgid "With errors" +msgstr "有錯誤" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:263 +msgid "Mark all viewed" +msgstr "標記所有已查看" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:267 +#, python-format +msgid "Mark all viewed in '%(title)s'" +msgstr "標記所有在“%(title)s”中查看過的內容" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:271 +msgid "Unread" +msgstr "未讀" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:274 +msgid "Recheck all" +msgstr "重新檢查所有" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html:274 +#, python-format +msgid "in '%(title)s'" +msgstr "在“%(title)s”中" + +#: changedetectionio/processors/image_ssim_diff/forms.py:19 +#: changedetectionio/processors/image_ssim_diff/forms.py:69 +msgid "Bounding box value is too long" +msgstr "邊界框值太長" + +#: changedetectionio/processors/image_ssim_diff/forms.py:23 +msgid "Bounding box must be in format: x,y,width,height (integers only)" +msgstr "邊界框的格式必須為:x,y,寬度,高度(僅限整數)" + +#: changedetectionio/processors/image_ssim_diff/forms.py:29 +msgid "Bounding box values must be non-negative" +msgstr "邊界框值必須是非負數" + +#: changedetectionio/processors/image_ssim_diff/forms.py:31 +msgid "Bounding box values are too large" +msgstr "邊界框值太大" + +#: changedetectionio/processors/image_ssim_diff/forms.py:40 +msgid "Selection mode must be either \"element\" or \"draw\"" +msgstr "" + +#: changedetectionio/processors/image_ssim_diff/forms.py:47 +msgid "Minimum Change Percentage" +msgstr "最小變化百分比" + +#: changedetectionio/processors/image_ssim_diff/forms.py:56 +msgid "Pixel Difference Sensitivity" +msgstr "像素差異靈敏度" + +#: changedetectionio/processors/image_ssim_diff/forms.py:58 +msgid "Use global default" +msgstr "使用系統默認值" + +#: changedetectionio/processors/image_ssim_diff/forms.py:66 +msgid "Bounding Box" +msgstr "邊界框" + +#: changedetectionio/processors/image_ssim_diff/forms.py:76 +msgid "Selection Mode" +msgstr "選擇方式:" + +#: changedetectionio/processors/image_ssim_diff/forms.py:79 +msgid "Selection mode value is too long" +msgstr "選擇模式值太長" + +#: changedetectionio/processors/image_ssim_diff/forms.py:87 +msgid "Screenshot Comparison" +msgstr "截圖對比" + +#: changedetectionio/processors/image_ssim_diff/processor.py:20 +msgid "Visual / Image screenshot change detection" +msgstr "視覺/圖像截圖變化檢測" + +#: changedetectionio/processors/image_ssim_diff/processor.py:21 +msgid "Compares screenshots using fast OpenCV algorithm, 10-100x faster than SSIM" +msgstr "使用快速 OpenCV 算法比較屏幕截圖,比 SSIM 快 10-100 倍" + +#: changedetectionio/processors/image_ssim_diff/processor.py:23 +msgid "Visual" +msgstr "視覺的" + +#: changedetectionio/processors/restock_diff/forms.py:15 +msgid "Re-stock detection" +msgstr "補貨檢測" + +#: changedetectionio/processors/restock_diff/forms.py:16 +msgid "In Stock only (Out Of Stock -> In Stock only)" +msgstr "僅有庫存(缺貨 -> 僅有庫存)" + +#: changedetectionio/processors/restock_diff/forms.py:17 +msgid "Any availability changes" +msgstr "任何可用性變更" + +#: changedetectionio/processors/restock_diff/forms.py:18 +msgid "Off, don't follow availability/restock" +msgstr "關閉,不遵循庫存/補貨情況" + +#: changedetectionio/processors/restock_diff/forms.py:21 +msgid "Below price to trigger notification" +msgstr "低於價格觸發通知" + +#: changedetectionio/processors/restock_diff/forms.py:22 +#: changedetectionio/processors/restock_diff/forms.py:24 +msgid "No limit" +msgstr "無限制" + +#: changedetectionio/processors/restock_diff/forms.py:23 +msgid "Above price to trigger notification" +msgstr "高於價格觸發通知" + +#: changedetectionio/processors/restock_diff/forms.py:25 +#, python-format +msgid "Threshold in %% for price changes since the original price" +msgstr "自原始價格以來價格變化的閾值(百分比)" + +#: changedetectionio/processors/restock_diff/forms.py:28 +msgid "Should be between 0 and 100" +msgstr "應介於 0 到 100 之間" + +#: changedetectionio/processors/restock_diff/forms.py:31 +msgid "Follow price changes" +msgstr "關注價格變化" + +#: changedetectionio/processors/restock_diff/forms.py:37 +msgid "Restock & Price Detection" +msgstr "補貨及價格" + +#: changedetectionio/processors/restock_diff/processor.py:11 +msgid "Re-stock & Price detection for pages with a SINGLE product" +msgstr "單個產品頁面的補貨和價格檢測" + +#: changedetectionio/processors/restock_diff/processor.py:12 +msgid "Detects if the product goes back to in-stock" +msgstr "檢測產品是否恢復庫存" + +#: changedetectionio/processors/restock_diff/processor.py:14 +msgid "Restock" +msgstr "補貨" + +#: changedetectionio/processors/text_json_diff/processor.py:21 +msgid "Webpage Text/HTML, JSON and PDF changes" +msgstr "網頁文本/HTML、JSON 和 PDF 更改" + +#: changedetectionio/processors/text_json_diff/processor.py:22 +msgid "Detects all text changes where possible" +msgstr "盡可能檢測所有文本更改" + +#: changedetectionio/templates/base.html:77 +msgid "GROUPS" +msgstr "團體" + +#: changedetectionio/templates/base.html:80 +msgid "SETTINGS" +msgstr "設定" + +#: changedetectionio/templates/base.html:83 +msgid "IMPORT" +msgstr "進口" + +#: changedetectionio/templates/base.html:86 +msgid "BACKUPS" +msgstr "備份" + +#: changedetectionio/templates/base.html:90 +msgid "EDIT" +msgstr "編輯" + +#: changedetectionio/templates/base.html:100 +msgid "LOG OUT" +msgstr "退出" + +#: changedetectionio/templates/base.html:109 +msgid "Search, or Use Alt+S Key" +msgstr "搜索或使用 Alt+S 鍵" + +#: changedetectionio/templates/base.html:116 +msgid "Toggle Light/Dark Mode" +msgstr "切換亮/暗模式" + +#: changedetectionio/templates/base.html:117 +msgid "Toggle light/dark mode" +msgstr "切換亮/暗模式" + +#: changedetectionio/templates/base.html:127 +msgid "Change Language" +msgstr "更改語言" + +#: changedetectionio/templates/base.html:128 +msgid "Change language" +msgstr "更改語言" + +#: changedetectionio/templates/base.html:249 +msgid "Real-time updates offline" +msgstr "離線實時更新" + +#: changedetectionio/templates/base.html:259 +msgid "Select Language" +msgstr "選擇語言" + +#: changedetectionio/templates/login.html:10 +msgid "Password" +msgstr "密碼" + +#: changedetectionio/templates/login.html:16 +msgid "Login" +msgstr "登入" + diff --git a/requirements.txt b/requirements.txt index 1b1ba3457..9f2a002c6 100644 --- a/requirements.txt +++ b/requirements.txt @@ -113,6 +113,8 @@ extruct # For cleaning up unknown currency formats babel +# For internationalization (i18n) support +Flask-Babel>=4.0.0 levenshtein