[ancient-date]
severity = normal
certainty = certain
description =
 The date refers to the time before the first GNU gettext release. As such,
 it's extremely unlikely to be correct.
references =
 http://git.savannah.gnu.org/cgit/gettext.git/tree/ChangeLog.0#n1767

[arithmetic-error-in-plural-forms]
severity = serious
certainty = possible
description =
 Computing a plural form value triggers division by zero or integer overflow.
 This normally indicates an error in the plural form expression.
references =
 http://www.gnu.org/software/gettext/manual/html_node/Plural-forms.html

[arithmetic-error-in-unused-plural-forms]
severity = normal
certainty = possible
description =
 Computing a plural form value triggers division by zero or integer overflow.
 (But there are no translated messages which use plural forms.)
 This normally indicates an error in the plural form expression.
references =
 http://www.gnu.org/software/gettext/manual/html_node/Plural-forms.html

[boilerplate-in-content-type]
severity = important
certainty = certain
description =
 The Content-Type header field contains xgettext boilerplate.
 It should be in the form ``text/plain; charset=``\ *encoding*.
references =
 http://www.gnu.org/software/gettext/manual/html_node/Header-Entry.html

[boilerplate-in-date]
severity = normal
certainty = certain
description =
 The date header field contains xgettext boilerplate.
 The date format should be ``YYYY-MM-DD hh:mm+ZZzz``,
 e.g. ``2011-11-05 10:14+0100``.

[boilerplate-in-language-team]
severity = minor
certainty = certain
description =
 The Language-Team header field contains xgettext boilerplate.
 It should contain English name of the language, and the email address or
 homepage URL of the language team.
references =
 http://www.gnu.org/software/gettext/manual/html_node/Header-Entry.html

[boilerplate-in-last-translator]
severity = normal
certainty = certain
description =
 The Last-Translator header field contains xgettext boilerplate.
 It should contain the last translator's name and email address.
references =
 http://www.gnu.org/software/gettext/manual/html_node/Header-Entry.html

[boilerplate-in-project-id-version]
severity = minor
certainty = certain
description =
 The Project-Id-Version header field contains xgettext boilerplate.
 It should contain the name and the version of the package.
references =
 http://www.gnu.org/software/gettext/manual/html_node/Header-Entry.html

[boilerplate-in-report-msgid-bugs-to]
severity = normal
certainty = certain
description =
 The Report-Msgid-Bugs-To header field contains xgettext boilerplate.
 It should contain an email address or URL where one can report bugs in the
 untranslated strings.
references =
 http://www.gnu.org/software/gettext/manual/html_node/Header-Entry.html

[broken-encoding]
severity = serious
certainty = possible
description =
 Header fields and messages contained by this file couldn't be decoded to
 Unicode.
 The usual cause of this is incorrect or missing encoding declaration.
 .
 Note that in the absence of encoding declaration, i18nspector assumes ASCII
 encoding.
references =
 http://www.gnu.org/software/gettext/manual/html_node/Header-Entry.html
 http://tools.ietf.org/html/rfc2045#section-5

[codomain-error-in-plural-forms]
severity = serious
certainty = possible
description =
 Either a plural form value is outside the declared range, or some values
 within the declared range can never be reached.
 This normally indicates an error in the plural form expression.
references =
 http://www.gnu.org/software/gettext/manual/html_node/Plural-forms.html

[codomain-error-in-unused-plural-forms]
severity = normal
certainty = possible
description =
 Either a plural form value is outside the declared range, or some values
 within the declared range can never be reached.
 (But there are no translated messages which use plural forms.)
 This normally indicates an error in the plural form expression.
references =
 http://www.gnu.org/software/gettext/manual/html_node/Plural-forms.html

[conflict-marker-in-header-entry]
severity = serious
certainty = certain
description =
 The header contains a conflict marker (``#-#-#-#-#`` *…* ``#-#-#-#-#``).
 The conflict will have to be resolved manually.
references =
 http://www.gnu.org/software/gettext/manual/html_node/Creating-Compendia.html#Creating-Compendia

[conflict-marker-in-translation]
severity = serious
certainty = possible
description =
 One of the translated messages appear to contain a conflict marker
 (``#-#-#-#-#`` *…* ``#-#-#-#-#``).
 The conflict will have to be resolved manually.
references =
 http://www.gnu.org/software/gettext/manual/html_node/Creating-Compendia.html#Creating-Compendia

[conflicting-message-flags]
severity = important
certainty = possible
description =
 Two flags with conflicting meanings are associated with one of the messages.
references =
 http://www.gnu.org/software/gettext/manual/html_node/PO-Files.html

[date-from-future]
severity = normal
certainty = certain
description =
 The date refers to the future. As such, it's extremely unlikely to be correct.

[distant-header-entry]
severity = important
certainty = certain
description =
 The header entry in this file is preceded by other entries.
 The header entry should be always the first one.

[duplicate-flag-for-header-entry]
severity = minor
certainty = certain
description =
 Multiple identical flags are associated with the header entry.

[duplicate-header-entry]
severity = serious
certainty = certain
description =
 This file contains multiple header entries.

[duplicate-header-field]
severity = minor
certainty = wild-guess
description =
 This file contains multiple header fields of the same name.

[duplicate-header-field-content-transfer-encoding]
severity = pedantic
certainty = certain
description =
 This file contains multiple Content-Transfer-Encoding header fields.

[duplicate-header-field-content-type]
severity = serious
certainty = certain
description =
 This file contains multiple Content-Type header fields.

[duplicate-header-field-date]
severity = normal
certainty = certain
description =
 This file contains multiple date header fields of the same name.

[duplicate-header-field-language]
severity = important
certainty = certain
description =
 This file contains multiple Language header fields.

[duplicate-header-field-language-team]
severity = normal
certainty = certain
description =
 This file contains multiple Language-Team header fields.

[duplicate-header-field-last-translator]
severity = normal
certainty = certain
description =
 This file contains multiple Last-Translator header fields.

[duplicate-header-field-mime-version]
severity = pedantic
certainty = certain
description =
 This file contains multiple MIME-Version header fields.

[duplicate-header-field-plural-forms]
severity = serious
certainty = certain
description =
 This file contains multiple Plural-Forms header fields.

[duplicate-header-field-project-id-version]
severity = minor
certainty = certain
description =
 This file contains multiple Project-Id-Version header fields.

[duplicate-header-field-report-msgid-bugs-to]
severity = normal
certainty = certain
description =
 This file contains multiple Report-Msgid-Bugs-To header fields.

[duplicate-header-field-x-poedit]
severity = normal
certainty = certain
description =
 This file contains multiple X-Poedit-*\** header fields.

[duplicate-message-definition]
severity = serious
certainty = certain
description =
 This file contains multiple definitions of the same message.

[duplicate-message-flag]
severity = minor
certainty = certain
description =
 Multiple identical flags are associated with one of the messages.

[empty-file]
severity = normal
certainty = certain
description =
 This file doesn't contain any messages.

[empty-msgid-message-with-plural-forms]
severity = serious
certainty = certain
description =
 The message with empty msgid contains plural forms.
 Such messages are reserved by GNU gettext for header entries, and your code
 should not call ``ngettext("", …)``.

[empty-msgid-message-with-source-code-references]
severity = serious
certainty = possible
description =
 The message with empty msgid contains plural forms.
 Such messages are reserved by GNU gettext for header entries, and your code
 should not call ``gettext("")``.

[encoding-in-language-header-field]
severity = minor
certainty = certain
description =
 The language header field contains encoding declaration. Such information
 shouldn't be included in this field.
references =
 http://www.gnu.org/software/gettext/manual/html_node/Header-Entry.html

[fuzzy-header-entry]
severity = pedantic
certainty = certain
description =
 The header entry is marked as fuzzy.
 To increase operability with very old (<< 0.11) **msgfmt**\ (1) versions,
 which didn't support fuzzy header entries, it shouldn't be marked as such.
references =
 http://git.savannah.gnu.org/cgit/gettext.git/tree/NEWS?id=v0.11#n44

[inconsistent-leading-newlines]
severity = important
certainty = possible
description =
 Some strings in an entry start with a newline, but some don't.
 Either all of them should start with a newline, or none of them should.

[inconsistent-number-of-plural-forms]
severity = serious
certainty = certain
description =
 Number of plural forms in a message definition doesn't match number of plural
 forms declared in another message definition.
references =
 http://www.gnu.org/software/gettext/manual/html_node/Plural-forms.html
 http://www.gnu.org/software/gettext/manual/html_node/Translating-plural-forms.html

[inconsistent-trailing-newlines]
severity = important
certainty = possible
description =
 Some strings in an entry end with a newline, but some don't.
 Either all of them should end with a newline, or none of them should.

[incorrect-number-of-plural-forms]
severity = serious
certainty = certain
description =
 Number of plural forms in a message definition doesn't match number of plural
 forms declared in the header.
references =
 http://www.gnu.org/software/gettext/manual/html_node/Plural-forms.html
 http://www.gnu.org/software/gettext/manual/html_node/Translating-plural-forms.html

[incorrect-plural-forms]
severity = serious
certainty = possible
description =
 The Plural-Forms declaration is incorrect, according to i18nspector's
 linguistic data.

[incorrect-unused-plural-forms]
severity = normal
certainty = possible
description =
 The Plural-Forms declaration is incorrect, according to i18nspector's
 linguistic data.
 (But there are no translated messages which use plural forms.)

[invalid-content-transfer-encoding]
severity = pedantic
certainty = certain
description =
 Value of the Content-Transfer-Encoding header field is invalid.
 It should be ``8bit``.
references =
 http://www.gnu.org/software/gettext/manual/html_node/Header-Entry.html
 http://tools.ietf.org/html/rfc2045#section-6.1

[invalid-content-type]
severity = important
certainty = possible
description =
 Value of the Content-Type header field should is invalid.
 It should be in the form ``text/plain; charset=``\ *encoding*.
references =
 http://www.gnu.org/software/gettext/manual/html_node/Header-Entry.html
 http://tools.ietf.org/html/rfc2045#section-5

[invalid-date]
severity = normal
certainty = certain
description =
 The date is invalid or in an invalid format. The format should be
 ``YYYY-MM-DD hh:mm+ZZzz``, e.g. ``2011-11-05 10:14+0100``.
references =
 http://www.gnu.org/software/gettext/manual/html_node/Header-Entry.html

[invalid-language]
severity = important
certainty = possible
description =
 The Language header field couldn't be parsed, or it contains an unknown
 language.
references =
 http://www.gnu.org/software/gettext/manual/html_node/Header-Entry.html

[invalid-language-team]
severity = normal
certainty = possible
description =
 The Language-Team header field contains an e-mail address that uses a
 reserved domain name.
references =
 http://tools.ietf.org/html/rfc2606

[invalid-last-translator]
severity = normal
certainty = possible
description =
 The Last-Translator header field could neither be parsed as an e-mail,
 or the e-mail address uses a reserved domain name.
references =
 http://www.gnu.org/software/gettext/manual/html_node/Header-Entry.html
 http://tools.ietf.org/html/rfc2606

[invalid-mime-version]
severity = pedantic
certainty = certain
description =
 Value of the MIME-Version header field is invalid. It should be ``1.0``.
references =
 http://tools.ietf.org/html/rfc2045#section-4

[invalid-mo-file]
severity = serious
certainty = certain
description =
 This file couldn't be parsed a MO file.

[invalid-range-flag]
severity = important
certainty = certain
description =
 A ``range:`` flag couldn't be parsed, or the designated range contained less
 than two numbers.
 The syntax is ``range:``\  *min*\ ``..``\ *max*, where both values are
 non-negative integers.
references =
 http://www.gnu.org/software/gettext/manual/html_node/PO-Files.html

[invalid-report-msgid-bugs-to]
severity = normal
certainty = possible
description =
 The Report-Msgid-Bugs-To header field could neither be parsed as an e-mail nor
 as a URL, or the e-mail address uses a reserved domain name.
references =
 http://www.gnu.org/software/gettext/manual/html_node/Header-Entry.html
 http://tools.ietf.org/html/rfc2606

[language-disparity]
severity = normal
certainty = possible
description =
 Language of this file has been declared in multiple places, but the
 declarations don't match.

[language-team-equal-to-last-translator]
severity = minor
certainty = possible
description =
 Language-Team and Last-Translator header fields contain the same e-mail
 address.

[language-variant-does-not-affect-translation]
severity = minor
certainty = possible
description =
 The Language header field contains a variant designator that is not relevant
 for the message translation.
references =
 http://www.gnu.org/software/gettext/manual/html_node/Header-Entry.html

[no-content-transfer-encoding-header-field]
severity = pedantic
certainty = certain
description =
 The Content-Transfer-Encoding header field doesn't exist. It should be set to
 ``8bit``.
references =
 http://www.gnu.org/software/gettext/manual/html_node/Header-Entry.html
 http://tools.ietf.org/html/rfc2045#section-6.1

[no-content-type-header-field]
severity = important
certainty = certain
description =
 The Content-Type header field doesn't exist. It should be set to
 ``text/plain; charset=``\ *encoding*.
 .
 Note that in the absence of encoding declaration, i18nspector assumes ASCII
 encoding.
references =
 http://www.gnu.org/software/gettext/manual/html_node/Header-Entry.html
 http://tools.ietf.org/html/rfc2045#section-5

[no-date-header-field]
severity = minor
certainty = certain
description =
 The date header field doesn't exist.
references =
 http://www.gnu.org/software/gettext/manual/html_node/Header-Entry.html

[no-language-header-field]
severity = pedantic
certainty = certain
description =
 The Language header field doesn't exist.
references =
 http://www.gnu.org/software/gettext/manual/html_node/Header-Entry.html

[no-language-team-header-field]
severity = pedantic
certainty = certain
description =
 The Language-Team header field does not exist.
 It should contain English name of the language, and the email address or
 homepage URL of the language team.
references =
 http://www.gnu.org/software/gettext/manual/html_node/Header-Entry.html

[no-last-translator-header-field]
severity = normal
certainty = certain
description =
 The Last-Translator header field doesn't exist.
 It should contain the last translator's name and email address.
references =
 http://www.gnu.org/software/gettext/manual/html_node/Header-Entry.html

[no-mime-version-header-field]
severity = pedantic
certainty = certain
description =
 The MIME-Version header field does't exist. It should be to set to ``1.0``.
references =
 http://tools.ietf.org/html/rfc2045#section-4

[no-package-name-in-project-id-version]
severity = minor
certainty = possible
description =
 The Project-Id-Version header field doesn't appear to contain any name.
 It should contain both the name and the version of the package.
references =
 http://www.gnu.org/software/gettext/manual/html_node/Header-Entry.html

[no-plural-forms-header-field]
severity = minor
certainty = certain
description =
 The Plural-Forms header field does not exist, even though some of the messages
 use plural forms (although none of them have been translated).
references =
 http://www.gnu.org/software/gettext/manual/html_node/Plural-forms.html

[no-project-id-version-header-field]
severity = minor
certainty = certain
description =
 The Project-Id-Version header field does not exist.
 It should contain the name and the version of the package.
references =
 http://www.gnu.org/software/gettext/manual/html_node/Header-Entry.html

[no-report-msgid-bugs-to-header-field]
severity = normal
certainty = certain
description =
 The Report-Msgid-Bugs-To header field does not exist or it is empty.
 It should contain an email address or URL where one can report bugs in the
 untranslated strings.
references =
 http://www.gnu.org/software/gettext/manual/html_node/Header-Entry.html

[no-required-plural-forms-header-field]
severity = serious
certainty = certain
description =
 The Plural-Forms header field does not exist, even though some of the
 translated messages use plural forms.
references =
 http://www.gnu.org/software/gettext/manual/html_node/Plural-forms.html

[no-version-in-project-id-version]
severity = pedantic
certainty = possible
description =
 The Project-Id-Version header field doesn't appear to contain any version.
 It should contain both the name and the version of the package.
references =
 http://www.gnu.org/software/gettext/manual/html_node/Header-Entry.html

[non-ascii-compatible-encoding]
severity = serious
certainty = certain
description =
 This file uses an encoding that is not compatible with ASCII.

[non-portable-encoding]
severity = important
certainty = certain
description =
 This file uses an encoding that is not widely supported by software.
references =
 http://www.gnu.org/software/gettext/manual/html_node/Header-Entry.html

[os-error]
severity = serious
certainty = certain
description =
 An input/output error or another operating system error occurred while
 checking this file.

[range-flag-without-plural-string]
severity = normal
certainty = certain
description =
 A ``range:`` flag is associated with a message that doesn't have plural string.
 ``range:`` flags only make sense for translations involving plural forms.
references =
 http://www.gnu.org/software/gettext/manual/html_node/PO-Files.html

[redundant-message-flag]
severity = pedantic
certainty = certain
description =
 A flags associated with one of the messages is redundant, because it's implied
 by another flag.
references =
 http://www.gnu.org/software/gettext/manual/html_node/PO-Files.html

[stray-header-line]
severity = important
certainty = certain
description =
 The headers contains a line that does not belong to any header.
 Note that RFC-822-style folding of long headers is not supported.
references =
 http://lists.gnu.org/archive/html/bug-gettext/2012-12/msg00010.html

[syntax-error-in-plural-forms]
severity = serious
certainty = possible
description =
 Value of the Plural-Forms header field could not be parsed.
 It should be in the form ``nplurals=``\ *n*\ ``; plural=``\ *expression*.
references =
 http://www.gnu.org/software/gettext/manual/html_node/Plural-forms.html

[syntax-error-in-po-file]
severity = serious
certainty = possible
description =
 This file couldn't be parsed a PO file.
 In some rare cases this is due to incorrect or missing encoding declaration.
references =
 http://www.gnu.org/software/gettext/manual/html_node/PO-Files.html
 http://bugs.debian.org/692283

[syntax-error-in-unused-plural-forms]
severity = important
certainty = possible
description =
 Value of the Plural-Forms header field could not be parsed. (But there are no
 translated messages which use plural forms.)
 It should be in the form ``nplurals=``\ *n*\ ``; plural=``\ *expression*.
references =
 http://www.gnu.org/software/gettext/manual/html_node/Plural-forms.html

[unable-to-determine-language]
severity = normal
certainty = wild-guess
description =
 i18nspector was unable to determine language of this file.
 Absence of this information will prevent it from performing further checks.

[unexpected-flag-for-header-entry]
severity = normal
certainty = possible
description =
 An unexpected flag is associated with the header entry.
 The only flag that makes sense for the header entry is ``fuzzy``.
references =
 http://www.gnu.org/software/gettext/manual/html_node/PO-Files.html

[unknown-encoding]
severity = important
certainty = possible
description =
 This file declares an encoding that couldn't be recognized by i18nspector.
 It might be a typo.
 Absence of encoding information will prevent i18nspector from performing
 further checks.

[unknown-file-type]
severity = normal
certainty = wild-guess
description =
 File format of this file couldn't be recognized.
 It might be a bug in i18nspector.

[unknown-header-field]
severity = minor
certainty = wild-guess
description =
 The header field name is unknown to i18nspector.
 It might be a typo or a capitalization error (header field names are
 case-sensitive).
references =
 http://lists.gnu.org/archive/html/bug-gettext/2012-12/msg00010.html

[unknown-message-flag]
severity = normal
certainty = wild-guess
description =
 An unknown flag is associated with one of the messages.
 It might be a typo.
references =
 http://www.gnu.org/software/gettext/manual/html_node/PO-Files.html

[unknown-poedit-language]
severity = minor
certainty = wild-guess
description =
 Language declared in X-Poedit-Language couldn't be recognized.
 It might be a bug in i18nspector.

[unrepresentable-characters]
severity = serious
certainty = possible
description =
 The declared encoding cannot represent all characters commonly used in this
 language.
 This is a strong indication that the declared encoding is incorrect.

[unusual-character-in-header-entry]
severity = important
certainty = certain
description =
 The header entry contains an unusual character.
 This is usually an indication of an encoding problem, such as:
 .
 * using ISO 2022 escape sequences, or
 * using UTF-8 despite declaring an 8-bit encoding.
references =
 http://www.unicode.org/faq/utf_bom.html#bom6

[unusual-character-in-translation]
severity = important
certainty = possible
description =
 One of the translated messages contains an unusual character.
 This is usually an indication of an encoding problem, such as:
 .
 * using ISO 2022 escape sequences, or
 * using UTF-8 despite declaring an 8-bit encoding.
references =
 http://www.unicode.org/faq/utf_bom.html#bom6

# vim:ft=dosini
