今作ってる、エンコードツールは、HTMLエンコード、URLエンコード、Base64等、色々対応しているので、ボタンの数が多いです。このボタンは、同じ画像を元に作るのですが、表示される文字列が、それぞれ違っているので、結局、ボタンの数だけ、「テキスト挿入 → GIF形式で保存」という作業を行わないといけません。
1度の作業ということなら、これでもいいのですが、HTMLに表示してみて、気に入らなければ修正したいので、何度も元画像を変更して繰り返すことになります。
これがメンドイので、作業を自動化するため、Script-Fuに挑戦してみることにしました。Script-Fuとは、Gimpに組み込まれている、マクロ言語で、単純な作業の繰り返しを、スクリプト化することが出来ます。
とりあえず、今日は、さわりだけ調べてみたので、分かったことを以下に列挙しておきます。
1.Schemeという関数型言語で記述する
普段、.NETやJavaしか使わない自分には、関数型言語は難しそうです。Cのような手続き型言語とは、全く違うので注意が必要です。(Perl-FuやRuby-Fuなんてのもあるみたいです)
2.Gimpを操作するには、プロシージャブラウザの関数を使う
「ツールボックスのメニュー → 拡張 → プロシージャブラウザ」で、Script-Fuから使える関数の一覧が見れます。自分の環境では、849個ありました。
3.デバッグは、Script-Fuコンソールで
「ツールボックスのメニュー → 拡張 → Script-Fu → Script-Fuコンソールで、1命令だけ入力して、即実行可能な、コンソールが使えます。試しに「(print "Hello World")」と入力したら、「Hello World」が表示されました。
4.自分が作ったスクリプトをGimpに登録できる
自分が作ったスクリプトを、プロシージャブラウザや、メニュー項目に追加できるようです。