2021年8月8日日曜日

GIMP Script GIMP 3 に向けて準備を!

今現在、GIMP は 3 を迎える為に、2.99 で開発途上です。
API が変更され、スクリプト環境も移行されました。
未だ Work in Progress ですが、
そろそろ、スクリプトそのものも移行の準備を。


過去に書き溜めた資産。
はい、 数多のスクリプト。
Scheme の Script-Fu やら、Python Scrirt やら。

GIMP の 最近の流れ、 其れは GIMP 3 への発展。
其処では、関数名等が変わっているものが多く、環境 (API) も違うので、
既存をそのまま GIMP 2.99 (GIMP 3) に持って行っても、動か無いものが多いと思います。
2.99 対応 或いは 3.x 対応を標榜するもの以外は 全て 駄目! と考えて良いかも。

因みに、自分で書いて GIMP 2.10 上で正常稼働している Script-Fu 及び Python Scrirt ですが、
そのまま GIMP 2.99.6 上に持って行った場合。全滅! です。

現状でも、メンテ不足から、動か無いものが多いのに、
今後、其の類 が激増すると思われます。

移行(移植)は Script-Fu の方が簡単かも知れません。
其れは、 GIMP 内部で動く為、多くの変更箇所は GIMP が内包していているから。
此れに較べ、Python Scrirt は 手強い かも。
自分で面倒見てあげないといけません。

さて、ガイドラインについて。

英文ですが、以下の URL に 移植 (Porting) の指針が示されています。
GIMP の Source Code 群の一部でしょう。
故に、少し、専門的かも知れません。

https://gitlab.gnome.org/GNOME/gimp/-/tree/master/devel-docs/GIMP3-plug-in-porting-guide

 README.md
 classes.md
 pdb-calls.md
 porting_scriptfu_scripts.md
 removed_functions.md

2021/08 現在、上記の5項目があります。
   参考: PC .md ファイルって何?
Python 向けのものが多いので、
Script-Fu では porting_scriptfu_scripts.md と removed_functions.md とを見て下さい。
removed_functions.md 中の関数名は Python 形式ですから、"_" を "-" に置換して下さい。

単に関数名の変更だけでは無く、
API 変更を受け、記述も変える必要があります。
此れ等の多くは、単独 Layer を扱っていた従前と異なり、複数を扱う様になった影響です。

尚、Script-Fu で Logging を利用する為に、環境変数に "G_MESSAGES_DEBUG=scriptfu" とありますが、
Linux 上で なのだと思います。  Windows 上では 如何? 。


尚、少し、移植して見た感触ですが、
簡単な筈の Script-Fu ですら、行き詰まる(息詰まる)かも知れません。
解決の糸口は、公式に標準添付された スクリプト群 !。
Windows 版 なら、 %ProgramFiles%¥GIMP 2.99¥share¥gimp¥2.99¥scripts に、
お手本が 山程 転がっています。  動く見本!、宝の山! ですね。



 

0 件のコメント:

コメントを投稿