Commit Graph

175 Commits

Author SHA1 Message Date
Fran Dieguez af5587197f Update Galician translation 2022-10-01 19:08:56 +00:00
Sveinn í Felli c183b4478b Update Icelandic translation 2022-09-08 16:46:18 +00:00
Balázs Úr 640f9c6bf9 Update Hungarian translation 2022-09-01 23:15:06 +00:00
Jehan ca230cb770 meson: fix warnings of deprecated features.
Now that we bumped our meson requirement, meson is complaining about
several features now deprecated even in the minimum required meson
version:

s/meson.source_root/meson.project_source_root/ to fix:

> WARNING: Project targets '>=0.56.0' but uses feature deprecated since '0.56.0': meson.source_root. use meson.project_source_root() or meson.global_source_root() instead.

s/meson.build_root/meson.project_build_root/ to fix:

> WARNING: Project targets '>=0.56.0' but uses feature deprecated since '0.56.0': meson.build_root. use meson.project_build_root() or meson.global_build_root() instead.

Fixing using path() on xdg_email and python ExternalProgram variables:

> WARNING: Project targets '>=0.56.0' but uses feature deprecated since '0.55.0': ExternalProgram.path. use ExternalProgram.full_path() instead

s/get_pkgconfig_variable *(\([^)]*\))/get_variable(pkgconfig: \1)/ to
fix:

> WARNING: Project targets '>=0.56.0' but uses feature deprecated since '0.56.0': dependency.get_pkgconfig_variable. use dependency.get_variable(pkgconfig : ...) instead
2022-08-31 01:29:37 +02:00
Jehan 941a53dfbc po-windows-installer: fixing broken po files for Windows installers.
This is purely fixing by meson rebuilds and some regexp fixes. I didn't
touch any semantic.
Basically the "&" XML entity should not have made their way to the
po files. I fixed our script in the previous commit, and now I just
rebuild the po files and clean the entity programmatically so that our
Windows installers for GIMP 2.99.12 release have valid text.

Here is what I did:

(1) I regenerated the pot and po files:

$ meson compile gimp30-windows-installer-pot
$ meson compile gimp30-windows-installer-update-po

(2) I opened all the po files in vim and regexp through them.

Get back the proper Report-Msgid-Bugs-To:

:bufdo! %s$"Report-Msgid-Bugs-To: \\n"$"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/gimp/issues\\n"$ge|update

No translations were fuzzy in any po files before this change. I remove
all the fuzzy flags, but only if the msgid contains an ampersand, hence
leaving appropriate fuzzy strings in (the ones where the source string
changed since the last translation):

:bufdo! %s/#, fuzzy\n\([^&]*\)&/\1\&/ge|update

Then I replaced & in msgstr (msgid was fixed through the automatic
regeneration thanks to previous commit, but not the translations) with:

:bufdo! %s/&/\&/ge|update

(3) Finally I did a manual `git diff` review to verify all is good.

In particular, I had to fix a bunch of "E&xit". The string is probably
too short so gettext heuristic failed to consider it likely the same as
"E&xit".
2022-08-22 23:00:41 +02:00
Jehan 7375116d46 po-windows-installer: fix double escaped ampersand in XML for the…
… Windows installer localization.

There are kind of 2 separate bugs here:

- Direct i18n.gettext() to the proper data directory where to find the
  ITS file. Otherwise `meson compile gimp30-windows-installer-pot` and
  `meson compile gimp30-windows-installer-update-po` complained about
  not knowing XML and falling back to C, which is obviously a problem:

> /usr/bin/xgettext: warning: file 'build/windows/installer/lang/setup.isl.xml.in' extension 'xml' is unknown; will try C

- Set gt:escapeRule to "no" in the ITS file, otherwise the XML entity is
  kept as-is in the po file (i.e. "&" stays "&" inside the po
  files), but it's considered as raw text when merged back to XML, i.e.
  that the '&' is properly converted to a XML entity, so we end up with
  a double escape "&".
  Now the po file will have a '&' which will still be converted to XML
  entity at merge time. This is actually most likely better than asking
  translators to handle XML entities themselves (with the possibility to
  make typos and break the XML entity).

See https://savannah.gnu.org/bugs/?58643
2022-08-22 20:50:59 +02:00
Sabri Ünal 80b5adf517 Update Turkish translation 2022-08-21 17:32:57 +00:00
Luming Zh c2f9286cff Update Chinese (China) translation 2022-08-02 23:42:20 +00:00
Anders Jonsson 25f8b332e9 Update Swedish translation 2022-08-01 23:27:03 +00:00
Jürgen Benvenuti d8f616cb3e Update German translation 2022-07-29 18:20:18 +00:00
Zurab Kargareteli 3013a8af26 Update Georgian translation 2022-07-27 15:28:51 +00:00
Asier Sarasua Garmendia 2e5a2736ef Update Basque translation 2022-07-23 09:52:27 +00:00
Rodrigo Lledó 1f92db3eea Update Spanish translation 2022-07-12 17:40:11 +00:00
Martin 7d10a70134 Update Slovenian translation 2022-07-08 17:45:30 +00:00
Hugo Carvalho d25750f018 Update Portuguese translation 2022-07-08 13:32:41 +00:00
Yuri Chornoivan 4383f6aa13 Update Ukrainian translation 2022-07-07 16:43:41 +00:00
Hugo Carvalho 4c0951a687 Update Portuguese translation 2022-07-07 11:21:21 +00:00
Rodrigo Lledó 2d2901cdea Update Spanish translation 2022-07-01 12:28:43 +00:00
Rodrigo Lledó 6c2f3db117 Update Spanish translation 2022-07-01 12:23:32 +00:00
Nathan Follens 1e8f2d0a4f Update Dutch translation 2022-06-27 13:44:54 +00:00
Martin 50c7c929ee Update Slovenian translation 2022-06-26 08:16:51 +00:00
Yuri Chornoivan 4eb29abfcd Update Ukrainian translation 2022-06-25 19:52:58 +00:00
Jehan 8122e8cf36 extensions: fix builds after MR !653 (migrating to gettext).
(1) On recent meson versions, it fixes this error:

> extensions/goat-exercises/meson.build:108:0: ERROR: i18n.merge_file keyword argument 'output' was of type array[str] but should have been str

As docs explains, 'output' only accepts one item in i18n.merge_file().

This bug also happens on older meson (but there the reported error is a
lot less useful as it doesn't mention local meson build code).

(2) `setup.isl.xml` is a temporary intermediary file used to create the
    Windows installer. It must not be installed.

(3) `gimp30-windows-installer.mo` itself is only used to create
    `setup.isl.xml`. It must not be installed as well.

(4) gimp-tips.(its|loc) files (same for gimp-tags ones) should not be
    installed. They are only temporary data.

(5) Fix environment variable: s/GETTEXT_DATA_DIRS/GETTEXTDATADIRS/

Fixes:

> /usr/bin/msgfmt: cannot locate ITS rules for ../../../data/tips/gimp-tips.xml.in

(6) Fix various bugs in the *.setup.isl files creation in autotools
    build (typo, wrong files used, order of options in `xsltproc`
    apparently meaningful, and so on. I guess the autotools build was
    not as well tested as the meson one :P).

(7) Fixing the unit test verifying language lists consistency.

(8) `setup.isl.xml.in` must be added to the distribution.
2022-06-25 12:41:21 +02:00
Niels De Graef f663d26ab5 Migrate from intltool to gettext
intltool has long been dead upstream. Let's not poke the dead corpse,
please.

This commit is quite large, but that's mostly since trying to support a
hybrid of both gettext and intltool with both Meson and Autotools was
really hard, so I stopped trying.

Due to gettext relying on quite some things being at the exactly right
place in the autotools build (like `ABOUT-NLS` and `config.rpath`) we
really needed to cleanup the `autogen.sh` to only call `aclocal` and
`autoreconf`. No more strange magic; I tried to do it without changing
too much in the file, and things just broke. If people want to do
something more custom, they can just change the script directly. This
change also uncovered some problems in our `configure.ac`, like using
deprecated macros.

The following major changes happened:

* meson: Changed `custom_target()` to `i18n.merge_file()` for all
  supported file types
* Added `.its` and `.loc`  files for the GIMP-specific XML formats, so
  that gettext understands them
* For the `.isl` (Window installer stuff) file, there's no easy way to
  do this in gettext, so instead we start from an XML file (again with
  its own ITS rules etc), translate that with gettext, and then use
  `xsltproc` with a bit of magic to output the .isl file for each
  language
* the `po*/Makefile.in.in` files are migrated to `Makevars` files,
  which gettext natively understands.

Fixes: https://gitlab.gnome.org/GNOME/gimp/-/issues/8028
2022-06-25 10:25:49 +02:00
Hugo Carvalho 7181a776ad Update Portuguese translation 2022-06-22 11:17:23 +00:00
Aleksandr Melman 94484efd30 Update Russian translation 2022-05-23 12:25:12 +00:00
dimspingos 9cbbdce24e Updated Greek translation 2022-04-28 21:51:47 +03:00
Zurab Kargareteli 2e07b2d5cc Add Georgian translation 2022-04-25 09:16:46 +00:00
Sveinn í Felli e3a5894bd4 Update Icelandic translation
(cherry picked from commit 900a2ebd0a)
2022-04-12 10:07:47 +00:00
Sveinn í Felli c45ea0c3d8 Update Icelandic translation
(cherry picked from commit cc6af232f0)
2022-04-06 13:15:50 +00:00
Charles Monzat d67c73f124 Update French translation
(cherry picked from commit 1c7e073379)
2022-04-02 10:18:29 +00:00
Nathan Follens 3a94826055 Update Dutch translation 2022-03-29 15:33:14 +00:00
Jehan 58353a940a build, extensions, po-windows-installer: update gitignore. 2022-03-28 21:46:02 +02:00
Jehan 7785f96f05 build, po-windows-installer: add ability to leave translator comments.
Similar to the change I pushed to gimp-help repository:

intltool-extract does not consider the `;` isl-syntax comments because
we tell it it is in the ini format. So let's have our source in actual
ini format (POTFILES does not like to look for translated strings in
constructed files, only from source files), then create the .isl files
from it in 3 steps (first, transform the comments in isl format; then
merge all language in a single .isl file; last generate one .isl per
language).

There were already a bunch of comments in the setup.isl.in file (though
not showing in the po files until now). I checked if they seemed
relevant, fixed some, completed others, duplicated the ones which match
several strings, etc.

(This improvement to allow comments for translators in the installer po
files was requested by Piotr Drąg on the gnome-i18n mailing list)
2022-03-28 21:42:25 +02:00
Fran Dieguez d857d2ce32 Add Galician translation 2022-03-12 20:58:53 +00:00
Alan Mortensen 89b4592750 Updated Danish translation of gimp-windows-installer 2022-01-30 15:58:02 +01:00
Rūdolfs Mazurs 03217722c5 Update Latvian translation
(cherry picked from commit fd113de4bc)
2021-11-04 19:03:55 +00:00
Asier Sarasua Garmendia a36e5b9a9e Update Basque translation 2021-10-30 09:37:16 +00:00
rofiquzzaki rofiquzzaki c0c8d68081 Update Indonesian translation 2021-10-15 03:15:35 +00:00
Hugo Carvalho cec3c3a159 Add Portuguese translation 2021-10-01 12:53:57 +00:00
dimspingos 148fbb2244 Updated Greek translation 2021-09-15 11:10:17 +03:00
Balázs Úr 3d6d94fdae Update Hungarian translation 2021-09-10 20:17:14 +00:00
Marco Ciampa 00958fe191 Updated Italian translation 2021-09-08 21:00:36 +02:00
Marco Ciampa f656ef95a1 Updated Italian translation 2021-09-08 20:57:51 +02:00
Enrico Nicoletto d0f8b572ee Update Brazilian Portuguese translation 2021-09-07 11:45:17 +00:00
Aurimas Černius 833783b70e Add Lithuanian translation
(cherry picked from commit baa4ce3ecd)
2021-09-03 18:20:42 +00:00
Ngọc Quân Trần d8cbd6146a Update Vietnamese translation 2021-09-01 06:43:30 +00:00
Boyuan Yang 894fd27609 Update Chinese (China) translation 2021-07-28 19:34:29 +00:00
Jordi Mas 3d33e4b904 Update Catalan translation 2021-06-03 06:18:28 +02:00
Rodrigo Lledó 625c437352 Update Spanish translation 2021-05-18 11:33:35 +00:00