他の方の Script に手を入れる場合は除外して、
1から書き進める場合には、 Script の雛形があると便利です。
是非、ご自分用に 変更の上、保存されるのが、 お勧め です。
GIMP の Python Fu 。
こんな雛形は如何でしょうか。 *2. (コメント 行末のものはエディタで空白数を調整して下さい)
#!/usr/bin/env python
# -*- coding: utf-8 -*-
from gimpfu import *
# Procedure 関数(関数名・引数・処理)
def plugin_main(img, layer0):
# Main Routine
## Write here your code...
# Registration 登録
register(
"python_fu_test_script_format", # func name
"Script-Py 雛形", # description
"Script-Py 雛形 help", # help
"ShiroYuki_Mot", # author
"(c) 2018- ShiroYuki_Mot", # copyright notice
"2018/05/01", # date created
"Script-Format", # menu name
"", # image types on the script
# params
[],
[], # results
plugin_main, # function
menu="<Image>/Script-Py/Test/" # menu path
# "<Image>/Script-Py/Test/Script-Format" Ref. menu full path and name
)
main()
さて、 register に並ぶパラメータは以下の 11 項目 です。 基本的には。
name
blurb(description)
help
author
copyright
date
menu path
image types
params
results
function
でも、 応用時を考慮して、12 項目の 構成 を雛形にしました。 *2.
勿論、履歴をソースコードに埋めたり、特記事項をコメントで追加したり と加工して下さい。
コメントは、
文頭 若しくは 文中の # から 文末まで、
或いは、
複数行を、前後共に、 ''' 若しくは """ の1行で囲んだ部分です。
そして、
ソースコードの中に 日本語 を使う場合には、
ソースコードの冒頭で # coding: utf-8 等の記述が必須です。
これがないと、Python は コード を正確に読み取れず、 結果として、エラーで弾かれます。
メニューにすら 現れない しかし 内容的には正しいコードと 格闘 する羽目に陥りますので、
ご留意を!。
また、 GIMP 用に書くスクリプトでしょうから、
from gimpfu import * の文は 普通は 必須となりますね。
尚、
正常動作を確保する為に、Windows 版でも、 Shebang を雛形の冒頭に記述する事をお勧めします。
Shebang は スクリプト実行を担保するもので、一般的にはこんな記述になります。
#!/usr/bin/env python
この冒頭1行によって、Python 構築環境の差異を吸収(問題回避)出来る場合があります。 *1.
そして、これは、Script-Fu と共通の お決り !。
改行コードは LF のみで、CRLF ではありません。 俗に言う UTF-8N BOM なし ですね。
Windows 標準添付の メモ帳 notepad.exe で済まそう 等とは考えず、
専用の テキストエディタ をご用意下さい。
私は Microsoft さま の Visual Studio Code で書いています。.
https://www.microsoft.com/ja-jp/dev/products/code-vs.aspx URL:for Japanese.
Script-Fu 用に書いた昔の投稿(参考用):.
GIMP Script 用 Editor として Visual Studio Code を
序に。
雛形 からは外れるテーマになりますが ... 。. これで ひとつの投稿にする迄では無いと思い ... 此処に書きますね。.
実際に、この雛形で書いて行くとします。
Script を条件分岐で途中から抜け出す書き方は 止めて置いた方 が無難です。
この gimp.quit() と書いて 逃げる手 は、
GIMP 2.8.22 では有効ですが、GIMP 2.10.0-RC1
不安定になりますので、 Script は 最初から最後迄 実行される ものとして書くのが正解 の様です。
はい。 最終行迄 届く様に 条件分岐させる がコツの様です。.
所謂、複雑怪奇なものを書いてあると、GIMP の Version の進化時点で 苦労 しそうですので、
程々に。 と言う処でしょうか。
基本に忠実且つシンプルに 記述 が基本ですね、 やはり。.
[2018/07/10] Shebang を雛形の冒頭に追記。 Shebang : Hash(#) と Bang(!) の HashBang の省略形。.
[2018/07/13] Shebang に関して追記。 *1.
[2018/09/25] 雛形コピペで問題が生じるケースがあり、それに対応(雛形更新) *2.
[2019/01/24] Code 訂正 最後の main() 直前 改行落ちを修正
0 件のコメント:
コメントを投稿