Script-Fu はGIMPのコマンドを自動的に実行させるスクリプトを書くための言語の一種です。
サブメニューにはScript-FuコンソールをはじめScript-Fu関連のコマンドが入っています。Script-Fuスクリプトを追加や削除や変更するときにはいつもこのコマンドが必要になることでしょう。 このコマンドを実行するとScript-Fuファイルが読み込み直され、 Script-Fuのメニュー項目を含んでいるメニューは頭から構築し直されます。 GIMPは一旦スクリプトを読み込んでしまうとスクリプトの内容が変更されてもGIMPを再起動するまでは感知しないため、 このコマンドを実行しない限りスクリプトの変更を反映できません。
ちなみに保存できていないままスクリプトが実行に失敗すると、 フィードバックが何も得られません。
Script-FuコンソールはScheme言語のコマンドを対話的に試すのに使えます。
このコンソールには繰り寄せ可能な大きなウィンドウがあり、 その下にある一行入力欄から送られたコマンドの出力が表示されます。 この欄にScheme式命令文を記入して Enter キーを押すと、 命令文と返された値が上のウィンドウに表示されます。
Scheme の詳しい案内や 「Script-Fu作成演習」 での Script-Fuコンソール の使い方の例もご覧ください。
Script-Fuコンソールのボタン
プロシージャブラウザ が開かれます。 プロシージャブラウザには ボタンがついています。
ボタンはScheme命令の記入欄の右隣にあります。 クリックするとプロシージャブラウザの
ボタンをクリックすると、 ブラウザで選択した手続き命令のコードがコンソールのScheme命令記入欄に貼り付けられます。そうしたらもうパラメータの名前 (上図の例では「layer」と「mode」) を値に置き換えるだけで、 あとは Enter を押せばよいのです。
ボタンをクリックするとScript-Fuコンソールを閉じます。
ボタンをクリックすると、 主ウィンドウ部分から現在のコマンド出力の表示が消えます。 ちなみにコンソール出力に表示された内容は していても一旦クリアすると復元ができません。
「>
」記号も含め) テキスト形式のファイルとして保存します。 ボタンをクリックするとファイルブラウザが開かれますので保管場所とファイル名を指定してください。
コマンドはサーバプログラムを起動します。 起動時に指定したポートを介してサーバにScript-Fu命令 (Scheme言語のコード) を送ると解釈され実行されます。
この番号のポートを介しScript-Fuサーバが送受信します。 サーバは複数起動させることも可能ですが、 もちろん互いに異なるポート番号を指定しなければなりません。
必須ではありませんがここでファイル名を指定するとサーバが発する不正や事故のメッセージがそのファイルに書き込まれます。 ファイル名を指定しない場合はメッセージが標準出力に送られます。
Script-Fuサーバのプロトコル
Script-Fuサーバと交信するためのプロトコルはとても単純です。
ヒント | |
---|---|
面倒くさそうですか? それなら GIMP 2.7 版 (2.8用開発者版) のソースコードに含まれている servertest.py という名前の Python スクリプトはいかがでしょう。 これは Script-Fu サーバと交信できる単純なコマンドライン端末のプログラムです。 |