xgettext извлекает неправильные литералы

#java #xgettext

#java #xgettext

Вопрос:

Я использую это для извлечения всех строковых литералов, которые нуждаются в переводе:

 xgettext -o $@ -k"Localizer.get" $^ --from-code=utf-8
  

Они должны быть извлечены:

 Localizer.get("Could not find the config file. (This should *not* happen!)")
  

Это не:

 SettingsWrapper.getString("date_format")
  

Но оба они попадают в мой файл .pot:

 msgid "date_format"
msgstr ""
  

Есть ли какой-нибудь способ разобраться в этом?

Ответ №1:

Из руководства getString xgettext это спецификация ключевого слова по умолчанию для Java. Вам нужно будет отключить ключевые слова по умолчанию и явно включить любые требуемые спецификации ключевых слов, которые были отключены, которые вы хотите включить. Попробуйте изменить -k"Localizer.get" на -k -k"Localizer.get" .