xgettext
добавляет запись #, fuzzy
вверху при автоматическом создании заголовка проекта в файле сообщения. Комментарий сам по себе не имеет особого значения: он просто отмечает, что человек должен прийти и заполнить пробелы.
Давайте копнем немного глубже в источник.
Когда вы впервые создаете файл сообщения, xgettext
добавляет информацию о проекте в начало сгенерированного файла сообщения (если вы не передадите --omit-header
):
$ cat hello.c
int main() {
printf(gettext("Hello World\n"));
return 0;
}
$ xgettext -o- hello.c
# SOME DESCRIPTIVE TITLE.
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
# This file is distributed under the same license as the PACKAGE package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2017-06-08 11:51-0400\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <[email protected]>\n"
"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=CHARSET\n"
"Content-Transfer-Encoding: 8bit\n"
#: hello.c:3
#, c-format
msgid "Hello World\n"
msgstr ""
Логика, поддерживающая это, находится в xgettext.c:construct_header()
. В самом низу этой функции вновь сгенерированная информация заголовка помечена как нечеткая:
mp->is_fuzzy = true;
Поскольку этот текст помечен как нечеткий, к тексту добавляется тег комментария #, fuzzy
. Намерение здесь состоит в том, чтобы повысить осведомленность: компьютерная программа добавила текст в файл сообщения, и человек должен принять меры. В частности, человек должен прийти и заполнить пробелы: дата редакции, имя переводчика, язык и так далее.
Использование аннотации "#, fuzzy" имеет смысл в этом контексте, как указано в документах:
[Нечеткие записи] обычно требуют исправления переводчиком.
person
bishop
schedule
08.06.2017