{{ _('The diff output - only changes, additions, and removals —') }} {{ _('Without (added) prefix or colors') }}
{{ '{{diff_added}}' }}
{{ _('The diff output - only changes and additions') }}
{{ '{{diff_added_clean}}' }}
{{ _('The diff output - only changes and additions —') }} {{ _('Without (added) prefix or colors') }}
{{ '{{diff_removed}}' }}
{{ _('The diff output - only changes and removals') }}
{{ '{{diff_removed_clean}}' }}
{{ _('The diff output - only changes and removals —') }} {{ _('Without (added) prefix or colors') }}
{{ '{{diff_full}}' }}
{{ _('The diff output - full difference output') }}
{{ '{{diff_full_clean}}' }}
{{ _('The diff output - full difference output —') }} {{ _('Without (added) prefix or colors') }}
{{ '{{diff_patch}}' }}
{{ _('The diff output - patch in unified format') }}
{{ '{{diff_changed_from}}' }}
{{ _('Only the changed words/values from the previous version — e.g. the old price. Best when a single value changes per line; multiple changed fragments are joined by newline.') }}
{{ '{{diff_changed_to}}' }}
{{ _('Only the changed words/values from the new version — e.g. the new price. Best when a single value changes per line; multiple changed fragments are joined by newline.') }}
{{ '{{current_snapshot}}' }}
{{ _('The current snapshot text contents value, useful when combined with JSON or CSS filters') }}
{{ '{{triggered_text}}' }}
{{ _('Text that tripped the trigger from filters') }}
{% if settings_application and settings_application.get('llm', {}).get('model') %}
{{ '{{diff}}' }} {{ _('(upgraded)') }}
{{ _('When AI Change Summary is configured, contains the AI-generated description instead of the raw diff. Falls back to raw diff when not configured.') }}
{{ '{{raw_diff}}' }}
{{ _('Always the raw +/- diff, regardless of AI Change Summary setting.') }}
{{ '{{llm_summary}}' }}
{{ _('The AI Change Summary text (same as the upgraded {{diff}} — explicit reference).') }}
{{ '{{llm_intent}}' }}
{{ _('The AI Change Intent that was evaluated.') }}
{% endif %}
{% if extra_notification_token_placeholder_info %}
{% for token in extra_notification_token_placeholder_info %}
{{ '{{' }}{{ token[0] }}{{ '}}' }}
{{ token[1] }}
{% endfor %}
{% endif %}
{{ _('Warning: Contents of') }} {{ '{{diff}}' }}, {{ '{{diff_removed}}' }}, {{ _('and') }} {{ '{{diff_added}}' }} {{ _('depend on how the difference algorithm perceives the change.') }}
{{ _('For example, an addition or removal could be perceived as a change in some cases.') }} {{ _('More Here') }}
discord:// {{ _('(or') }} https://discord.com/api/webhooks...)) {{ _('only supports a maximum') }} {{ _('2,000 characters') }} {{ _('of notification text, including the title.') }}
tgram:// {{ _('bots can\'t send messages to other bots, so you should specify chat ID of non-bot user.') }}
tgram:// {{ _('only supports very limited HTML and can fail when extra tags are sent,') }} {{ _('read more here') }} {{ _('(or use plaintext/markdown format)') }}
gets://, posts://, puts://, deletes:// {{ _('for direct API calls (or omit the') }} "s" {{ _('for non-SSL ie') }} get://) {{ _('more help here') }}
{{ _('Accepts the %(token)s placeholders listed below', token='{{token}}')|safe }}
{{ render_field(form.notification_format , class="notification-format") }}
{{ _('Format for all notifications') }}
{{ _('Discord does not render HTML — switch to') }} {{ _('Plain Text') }} {{ _('format to avoid') }} {{ _('and other HTML entities appearing literally in your notifications.') }}