さてさて、溢し混じりの 進捗報告 を。
そんなの 無謀な! の 気持ち半分 で始めた、
GIMP script 2.x to 2.99(3.0) 移行補助プログラム。
少し、冷却期間を置こうかと。
件の ですが、
そう、 件とは、
GIMP script 2.x to 2.99(3.0) 移行補助プログラム。
どんなものかと言えば、
https://shiroyuki-mot-says.blogspot.com/2021/09/gimp-script-migration-program.html
に書いた通り。
実は、糞 暑い 時期に手を付けるのはどうか? と思いつつ、
書き続けて、幾らか形を整えつつあります。
先の 投稿のリンク先のもの よりは少しは進捗してはいます。
Python に関して、
朧げ乍ら、出口が見えて来た処です。
其れに較べれば、Script-Fu (Scheme) は 楽であった 気がします。
8月に v.0.8.1.15 だったものが、
11月中旬現在、v.0.8.1.21 に迄、進んでいます。
しかし、此の 実に厄介な 代物 !。
一気に作り上げて、其の後、GIMP 自体の 変化に追従可能なのか?、
と ふと 思えば、 ... 自信がありません。
殊に、
実際に、Python で Script を書いて見れば分かるのですが、
GIMP 2.x の時代の PF_xxx を代替するには 駒不足 な気もします。
そう、 現行の 開発途上版 の Script Dialog UI は 未完成 とも思えるのです。
きっと、GIMP 3.0 の前に、手が入る! ... 。
そんな 妄想 に襲われます。
そうなれば、
こちらのものにも手を入れざるを得ない訳でして ... 。
慣れぬ C# で書き乍ら、
更に、
未知の GIMP 3 API と Python の Gio での困惑。
頭が狂って来そうな日々でした。
でも、
此れを書いていたお陰で、多少は、理解が進みました。
恐らく、GIMP 本体あの辺りに手が入るのだろうと 推測 もしています。
UI に直結する部分がどうも、すっきりと理解出来ていないのです、私。
なので、 書くのを止めます。 (中断 或いは 保留)
徒労の様な、文字列置換の繰り返しになっている 私のプログラム ... 。
其れが、今、書いている 奴 です。
UI 絡みの 記述 を残して 此処で ホールド! と致します。
おっとぉ~、 筆を置く、じゃぁ無かった~、中断する前に、
積み残しは 多少なり共、消化して置きたい処ですね。
実際の処、 頭は パンク寸前 迄 行っています。
でも、しかし、
詰まる処、 直ぐには、作業を放り投げられ無い ... 。
所謂、 鉄は熱いうちに打て! と同じで、
頭の中に、作業項目が、朧でもハッキリしているうちに、目途を付けて置きたいですから。
時間が経過して仕舞うと、
Code を追うのも大変な位の 分量 を既に書いていますから。
そう、何時もの こんがらがりスパゲッティ 状態!。
継ぎ足し継ぎ足しの 迷宮状態!。
再開時に、何処に手を入れれば良いか が、後から分かり易い様に、気を配る事も大事!。
でも、 大丈夫かしらん? と 一抹の不安 ... 。
積み残し とは、
PF_??? 置換に関する 条件分岐の下準備 と、
pdb Call の 新 API 対応 と、
です。
pdb Call の 新 API に関しては、
実際、動かすには、引数群の確認が必要になりますが、
其処迄は 面倒見切れないので、機械的に処理する 心算 です。
丁度、 Enum の見直しが事後に必要なのと似ているかも知れません。
尚、 現状では、
自動生成した Code の UI 部分定義に手を入れる事で、
GIMP 2.99.8 上で動くケースもあります。
現状、
不明なのは、対象以外の image や layer を引数で必要とするケース。
不確かなのは、ComboBox を必要とする OPTION のケース。 int 定義で代用は可。
不足するのは、SPINNER や SLIDER の Element 。 int や float 定義で代用は可。
其れ以外にもあるとは思うのですが、 概ね、基本的には 動かす事が可能 です。
下図はそうして動かしたもの。
自分の Python Code は 複雑なもの が多いので、
此の Program 用に かなり単純化 したものを用意したのでした。
目的別に 何種類か作ったもののひとつ です。
GIMP 2.10 用の Code を読み込み、[ Chk Menu ] > [ Try Mig ] と進めて、Code を自動生成しています。
本来、出力先を指定してファイルを Folder(Directory) に収めて出力しますが、
今回のテストでは、右枠をコピペして、メモ帳で編集の上、CrLf で UTF-8 保存しています。
Lf のみに拘らなくても、動く様です。
尚、 右枠内で編集も可能ですが、少しは機能の多いメモ帳上で熟しました。
0 件のコメント:
コメントを投稿