Commit Graph

48771 Commits

Author SHA1 Message Date
Rodrigo Lledó 5ae5f5e997 Update Spanish translation 2022-07-01 11:48:06 +00:00
Rodrigo Lledó 001728cfc0 Update Spanish translation 2022-07-01 11:41:59 +00:00
Tim Sabsch 4768249ce0 Update German translation 2022-06-30 19:33:10 +00:00
lloyd konneker ea81ae747d ScriptFu: delete unneeded #define G_LOG_DOMAIN
It clutters the compile log.
Compile flag -DG_LOG_DOMAIN="scriptfu" now does this.
2022-06-30 13:44:07 -04:00
lloyd konneker d5a83429b4 ScriptFu: Add script-fu-interpreter akin to other interpreters
Why:
1) users can install .scm scripts to plug-ins dir
2) Crashing scripts do not crash extension-script-fu

Scripts (.scm files) have a shebang and are executable
and in a same-named subdir of plugin dir.

Interpreter/scripts create PDB procs of type PLUGIN unlike extension-script-fu
which creates PDB procs of type TEMPORARY, owned by extension-script-fu.

Unlike other interpreters, the interpreter is-a plugin outright,
not by virtue of the script subclassing GimpPlugin and using GI.

More details in /plug-ins/script-fu/interpreter/README
2022-06-30 13:39:45 +00:00
Zurab Kargareteli a0ba969450 Update Georgian translation 2022-06-30 13:04:12 +00:00
Zurab Kargareteli 5be4801cb8 Update Georgian translation 2022-06-30 13:02:16 +00:00
Martin f45fb06289 Update Slovenian translation 2022-06-29 23:47:53 +00:00
Rafael Fontenelle 256b2d9615 Update Brazilian Portuguese translation 2022-06-28 11:08:26 +00:00
Jehan 69f6f5748a plug-ins: use list() variants in bindings.
Cf. previous commit.
2022-06-27 22:30:42 +02:00
Jehan 15ec254148 Issue #5946: skip gimp_*get_*() API from GObject Introspection.
The get() API are sometimes nicer in C code because it's just simpler to
loop through C arrays, but they end up with similar API to the list()
variants for binding, or with a useless size return value (since most
higher level languages have length-aware array types, which is what
GList are transformed into).

So let's use the list() variants as the main ones and skip the get()
variants. I hesitated to rename the list() variants to get() with
`(rename-to)` annotations but since I am unsure if the get() bindings
are absolutely useless, I don't think it's the best idea. Maybe on some
other language usable as GI binding, the get() variant might be
different again and nicer to use. So if we shadowed these by renaming
list() ones, the day we change our mind, we'd have to rename get() ones
too (which would be very confusing), or else break bindings' API. To
avoid this, I just skip the get() ones altogether in bindings but leave
their name available in the bindings.
2022-06-27 21:20:06 +02:00
Niels De Graef 3473883edb po-tips: Fix gettext translation 2022-06-27 15:48:26 +00:00
Nathan Follens 1e8f2d0a4f Update Dutch translation 2022-06-27 13:44:54 +00:00
lloyd konneker 15ed7157dc devel-docs: document how to add interpreter and .interp file
From my experience with gimp-script-fu-interpreter on Windows.
Feel free to correct mistakes.
2022-06-26 10:37:12 -04:00
lloyd konneker 8d75b752c0 ScriptFu: oops missing file in POTFILE.in for !658 2022-06-26 09:06:59 +00:00
Niels De Graef a3c5072a1c data: Adapt tips.dtd for gettext changes 2022-06-26 10:54:41 +02:00
Martin c9819ea4c7 Update Slovenian translation 2022-06-26 08:22:50 +00:00
Martin 4e06e0d70f Update Slovenian translation 2022-06-26 08:18:42 +00:00
Martin 50c7c929ee Update Slovenian translation 2022-06-26 08:16:51 +00:00
Yuri Chornoivan cac8f7f53e Update Ukrainian translation 2022-06-25 20:05:43 +00:00
Yuri Chornoivan ca4e6d0d24 Update Ukrainian translation 2022-06-25 20:03:19 +00:00
Yuri Chornoivan 4eb29abfcd Update Ukrainian translation 2022-06-25 19:52:58 +00:00
Lukas Oberhuber 877520896f app, macOS: Remove crash handling conflict 2022-06-25 17:46:19 +00:00
Jehan dfa1f0fc93 build: intltool is still needed by libmypaint. 2022-06-25 17:06:30 +02:00
Jehan 66812c8862 build: fix the distcheck.
MR !653 was merged too early as Gitlab bugged on us! Anyway this fixes
the distribution contents.
2022-06-25 17:06:21 +02: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
Zurab Kargareteli a9f7feabd0 Update Georgian translation 2022-06-25 07:06:46 +00:00
lloyd konneker 1c50e60e9c build:windows: migrate to Python3.10 on MSYS
Evidently MSYS no longer has 3.9, see recent pipeline failures.

Note reports of issues with meson on 3.10, but it might not impact this build.
2022-06-24 14:52:02 +00:00
Nathan Follens 62464563ac Update Dutch translation 2022-06-24 11:10:42 +00:00
Yuri Chornoivan c813779ff8 Update Ukrainian translation 2022-06-24 06:30:13 +00:00
Hugo Carvalho 9b1cbcf85d Update Portuguese translation 2022-06-23 22:00:06 +00:00
Martin 29790b234f Update Slovenian translation 2022-06-23 05:12:03 +00:00
Jehan 3e6822b49d po-plug-ins: adding js and lua demo plug-ins to the POTFILES.
As noticed by Piotr Drąg.
2022-06-22 22:56:24 +02:00
Jehan e3cc34fc6d plug-ins: add "planar-configuration" argument to "file-raw-load".
Instead of having a single "Planar RGB" format in the list, let's add
this as a generic parameter. Not only does it make the feature
symmetrical to "file-raw-save", but it also bring the ability to all
multi-channel formats. So now, we can load RGB, RGBA, GRAYA, whatever
the bit depth and the data type stored in planar configuration.
2022-06-22 22:25:18 +02:00
Yuri Chornoivan 70944af024 Update Ukrainian translation 2022-06-22 19:13:09 +00:00
Jehan 559d686d07 plug-ins: break "pixel-format" arg with 2 new args: "data-type" and…
… "endianness".

The list of formats being a single list was actually interesting
UI-wise, in the case where you aren't sure of the data layout (but say
you know at least the dimensions), you can easily and quickly scroll
through the combo list (e.g. with keyboard arrows).

But when you knew your data, it was a pain to use. And as a general
rule, so many choices in a list is not the best interface.

I broke the option into 3 options, and in particular adding a
"data-type" which would tell what type of values are stored (integer,
signed or unsigned, or float) and an "endianness" to tell the byte
order. The idea behind is that these don't change the layout of
components and their size. It means that we can still do the
scrolling-randomly-through-formats trick in some fashion because we
might likely be able to detect shapes when we get at the right layout,
even though we are still set to use the wrong data type and/or the wrong
endianness.
2022-06-22 20:09:10 +02:00
Jehan 657d37a8fe plug-ins: adding RGBA and grayscale float variants + grayscale-alpha…
… loading support as raw data.

Barely any new code (and actually a bit chunk of removed code) as we are
using generic code paths now.

"file-raw-load" procedure now supports all possible formats which can be
exported by the "file-raw-save" procedure (and more).

Only thing remaining now is looking how to simplify the GUI because this
overlong Pixel format combo box is quite a pain.
2022-06-22 19:05:34 +02:00
Hugo Carvalho b710115759 Update Portuguese translation 2022-06-22 12:59:56 +00:00
Hugo Carvalho 9deb4edcef Update Portuguese translation 2022-06-22 12:14:26 +00:00
Hugo Carvalho dd6db2eb7c Update Portuguese translation 2022-06-22 12:08:00 +00:00
Hugo Carvalho cbe879c5b1 Update Portuguese translation 2022-06-22 12:03:59 +00:00
Hugo Carvalho 7408516cd5 Update Portuguese translation 2022-06-22 11:59:35 +00:00
Hugo Carvalho 7181a776ad Update Portuguese translation 2022-06-22 11:17:23 +00:00
Yuri Chornoivan ed02d91872 Update Ukrainian translation 2022-06-22 05:59:15 +00:00
Zurab Kargareteli 9030443d31 Update Georgian translation 2022-06-22 01:48:32 +00:00
Luming Zh 3ee851c0d1 Update Chinese (China) translation 2022-06-22 01:08:25 +00:00
Jehan b79d26f097 app: make update detection more robust to string revision field.
The "revision" field in the json file is supposed to be int. But I just
realized that it was set as string a few times, e.g. in Windows
installer revision 1 of GIMP 2.10.32. As a consequence, the revision 0
build was not able to detect the new revision.

I have now fixed the data in gimp-web repo (commit e7690e36), yet just
in case this ever happens again, I make the parsing code more robust by
accepting string revision, then properly converted to int.
2022-06-21 22:31:36 +02:00
Jehan e3c7791acc plug-ins: adding support for RGB 16 and 32-bit float raw data.
Since we can now export these, let's add import support.

I copied the function halfp2singles() from babl code (as-is, without
formatting according to our coding style on purpose as we might just
want to switch this again later on).
2022-06-21 19:07:17 +02:00
Alexandre Franke 722143835e Update French translation 2022-06-21 15:34:34 +00:00