#9 Add macro to prepare XML files for xgettext

Слито
SlavekB слито 3 коммит(ов) из feat/add-prepare-xml в master 5 месяцев назад
SlavekB прокомментировал 6 месяцев назад

During the preparation of CMakeL10n rules in kiosktool I found out that here is the extractxml script, which is used to extract strings from xml file kiosk_data.xml. That’s why I was looking for a solution how to ensure this within CMakeL10n rules.

Using the extractxml script would have the result that location information in the POT file would refer to a non-existent temporary file – as it was in the case of extractrc. Furthermore, I could prepare CMake processing specifically for this one file. Or, I could prepare a generic XML extraction macro that will be useful for other cases as well.

That’s why I chose the generic macro. During the preparation of the macro, I found that the functionality of extractxml and extractrc scripts is largely the same. For this reason, I added several options in the new macro tde_l10n_prepare_xml to make this macro meet the needs for both uses.

By the way, just by testing this macro I noticed the wrong semicolon processing that is fixed in #8.

During the preparation of CMakeL10n rules in kiosktool I found out that here is the [`extractxml`](../kiosktool/src/branch/master/kiosktool/extractxml) script, which is used to extract strings from xml file [`kiosk_data.xml`](../kiosktool/src/branch/master/kiosktool/kiosk_data.xml). That's why I was looking for a solution how to ensure this within CMakeL10n rules. Using the `extractxml` script would have the result that location information in the POT file would refer to a non-existent temporary file – as it was in the case of `extractrc`. Furthermore, I could prepare CMake processing specifically for this one file. Or, I could prepare a generic XML extraction macro that will be useful for other cases as well. That's why I chose the generic macro. During the preparation of the macro, I found that the functionality of `extractxml` and `extractrc` scripts is largely the same. For this reason, I added several options in the new macro `tde_l10n_prepare_xml` to make this macro meet the needs for both uses. By the way, just by testing this macro I noticed the wrong semicolon processing that is fixed in #8.
MicheleC одобрил(а) эти изменения 6 месяцев назад
I didn't really check the regex in fine details, but the rest of the PR seems ok.
SlavekB прокомментировал 6 месяцев назад
Владелец

During macro preparation I tested tde_l10n_prepare_xml on POT files generated in tdebase. This helped in revealing and resolving shortcomings. The 160 POT files generated in tdebase give good material to test that the result is the same :smiley:

During macro preparation I tested tde_l10n_prepare_xml on POT files generated in tdebase. This helped in revealing and resolving shortcomings. The 160 POT files generated in tdebase give good material to test that the result is the same :smiley:
SlavekB прокомментировал 6 месяцев назад
Владелец

By the way, here is another difference compared to extractrc. In extractrc is not expected to have multiple tags on one line. For example:

<label>First</label><label>Second</label>

With extractrc only i18n("First") will be generated and the rest will be ignored. With extractxml in kiosktool only i18n("Second") will be generated and the rest will be ignored. The tde_l10n_prepare_xml macro expect this situation and will generate i18n("First");i18n("Second");

By the way, here is another difference compared to extractrc. In extractrc is not expected to have multiple tags on one line. For example: ``` <label>First</label><label>Second</label> ``` With extractrc only `i18n("First")` will be generated and the rest will be ignored. With extractxml in kiosktool only `i18n("Second")` will be generated and the rest will be ignored. The tde_l10n_prepare_xml macro expect this situation and will generate `i18n("First");i18n("Second");`
SlavekB прокомментировал 6 месяцев назад
Владелец

When testing with tdelibs, it turned out that the extractrc script allows to override context using the tag attribute. Therefore, this ability was added to the tde_l10n_prepare_xml macro.

When testing with tdelibs, it turned out that the extractrc script allows to override context using the tag attribute. Therefore, this ability was added to the tde_l10n_prepare_xml macro.
MicheleC одобрил(а) эти изменения 6 месяцев назад
looks good
SlavekB удалена ветка feat/add-prepare-xml 5 месяцев назад
SlavekB добавил к этапу R14.0.6 release 5 месяцев назад

Рецензенты

MicheleC одобрил(а) эти изменения 6 месяцев назад
Слияние этого запроса успешно завершено.
Войдите, чтобы присоединиться к обсуждению.
Нет этапа
Нет назначенных лиц
1 участников
Срок выполнения

Срок выполнения не установлен.

Зависимости

Этот запрос на слияние в настоящее время не имеет никаких зависимостей.

Загрузка…
Отмена
Сохранить
Пока нет содержимого.