少し使い方に 癖 がある!、 要は、使い方を書き留めて置きたい、
そんなケースも多いと思います。
ヘルプ ボタンが機能してくれれば良いのですが ... 。
例えば、
GIMP 2.10.0-RC2 で Filter から Python-Fu Console を表示させると、
Dialog 左下に Help button があります。
これをクリックすると表示される ヘルプ Window で、
Page Body を 右クリックすると、
コンテキストメニューがポップアップし、
その中程にある 場所のコピー(O) を押して、URI (URL) を取得します。
その結果が、
https://docs.gimp.org/2.10/ja/gimp-filters-python-fu.html
です。
呼び出す側の スクリプト は、
pdb.python_fu_console()
python-fu-console
ですね。
この両者 スクリプト と ヘルプ内容 を結び付けるのが、gimp-help.xml 。
ローカルにヘルプをインストールしてある環境下であれば、
例えば、 GIMP 2.8.22 であれば、
C:\Program Files\GIMP 2\share\gimp\2.0\help\ja にありますね。 言語依存。
その中の1行。
<help-item id="python-fu-console" ref="gimp-filters-python-fu.html#python-fu-console" title="10.5.2. Python-Fu コンソール" parent="gimp-filters-python-fu" sort="10.5.2"/>
Web Browser で、 この URL にアクセスすれば、同一のページが開きます。
勿論、 HTML 形式ですから、 Browser や CSS が異なれば、若干、異なりますが。
では、 このページ(別の項目でも構いません。).をコピーして、
少し、加工する事で、 自分の Script の ヘルプ の雛形にしましょうか。
あっ、 勿論、 ヘルプがインストールしてあって、
ご自分のローカルに、勝手に弄れる ヘルプ がある! 前提 ですが。
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
... 以下省略
以下に、具体的な作成方法を書きますが、
Script から呼び出される Dialog の ヘルプ ボタン では機能しません。
Script を登録した メニューの場所 で Shift +F1 キー から呼び出される 状況適応ヘルプ は OK !です。
そう、 実行する前なら、ヘルプが見られる と言う事になりますね。
先ずは、 .html ベースで ヘルプを書きます。
これからの作業は、皆、最終的には、GIMP がインストールしてあるフォルダ配下を弄る事になるので、
管理者権限が必要です。 昇格が必須です。
ですから、 権限制約の低い ご自分の配下 でヘルプ内容を作り上げて下さい。 完成後に移動やコピーですね。
また、オリジナルのファイルは、皆、 UTF-8N BOM 無し 改行コード LF ですので、
メモ帳 notepad.exe 等での編集は止め、 それなりのテキストエディタを使って下さい。
以下の 赤い部分 を書き換えて下さい。
緑色と灰色の部分はコメントなので省略化ですが、緑色の部分は必要作業が書いてありますで、そのお積もりで。
本来不要な記述もコメントアウトで残してあるのは、大元の記述を確認して戴く為です。.
C:\Program Files\GIMP 2\share\gimp\2.0\help\ja 言語依存。
script-fu_py-help-bases.html
実際には、your-script-name.html に名前変更 python-fu-test なら python-fu-test.html
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<!-- This is Sample Base For Help Of Script -->
<!-- Original: C:\Program Files\GIMP 2\share\gimp\2.0\help\j\common-script-fu-errors.html -->
<!-- Modified by ShiroYuki_Mot 2018/04/20 -->
<!-- If You Add A Help Content, -->
<!-- Replace your-script-name On id="your-script-name" To registed name -->
<!-- You Add The .html File to C:\Program Files\GIMP 2\share\gimp\2.0\help\j Directory -->
<!-- And You Add the Entry In gimp-help.xml -->
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>あなたの Script タイトル</title>
<link rel="stylesheet" href="gimp-help-plain.css" type="text/css" />
<link rel="stylesheet" href="gimp-help-screen.css" type="text/css" />
<link rel="stylesheet" href="gimp-help-custom.css" type="text/css" />
<link rel="alternate stylesheet" href="gimp22.css" type="text/css" title="gimp22" />
<meta name="generator" content="DocBook XSL Stylesheets V1.78.0" />
<link rel="home" href="index.html" title="GIMP (GNU 画像編集プログラム)" />
<link rel="up" href="gimp-concepts-script-fu.html" title="2. Script-Fu スクリプトを使用" />
<link rel="prev" href="install-script-fu.html" title="2.2. Script-Fu の導入" />
<link rel="next" href="kinds-of-script-fu.html" title="2.4. Script-Fu の種別" />
</head>
<body>
<div class="navheader">
<table width="100%" summary="Navigation header">
<tr>
<th colspan="3" align="center">あなたの Script タイトル</th>
</tr>
<!--
<tr>
<td width="20%" align="left">
<a accesskey="p" href="install-script-fu.html">
<img src="images/prev.png" alt="戻る" />
</a>
</td>
<th width="60%" align="center">2. Script-Fu スクリプトを使用</th>
<td width="20%" align="right"> <a accesskey="n" href="kinds-of-script-fu.html"><img src="images/next.png" alt="次へ" /></a></td>
</tr>
-->
</table>
<hr />
<div class="sect2">
<div class="titlepage">
<div>
<div>
<h3 class="title"><a id="your-script-name"></a>あなたの Script タイトル</h3>
</div>
</div>
</div>
<p>あなたの Script の説明やヘルプを書いて下さい。</p>
<p> 図を参照する場合は、元の images Directory ではなく、別個に用意した方が無難です。</p>
<div class="figure-contents">
<div class="mediaobject">
<img src="imagesPlus/SampleFigure.png" alt="図のタイトルです。" />
<div class="caption">
<p>図の説明文です。</p>
</div>
</div>
</div>
<p>さあ、書きましょう!。</p>
</div>
<div class="navfooter">
<hr />
<table width="100%" summary="Navigation footer">
<!--
<tr>
<td width="40%" align="left"><a accesskey="p" href="install-script-fu.html"><img src="images/prev.png" alt="戻る" /></a> </td>
<td width="20%" align="center">
<a accesskey="u" href="gimp-concepts-script-fu.html">
<img src="images/up.png" alt="上に戻る" />
</a>
</td>
<td width="40%" align="right"> <a accesskey="n" href="kinds-of-script-fu.html"><img src="images/next.png" alt="次へ" /></a></td>
</tr>
-->
<tr>
<!--
<td width="40%" align="left" valign="top"><a accesskey="p" href="install-script-fu.html">2.2. Script-Fu の導入</a> </td>
-->
<td width="20%" align="center">
<a accesskey="h" href="index.html">
<img src="images/home.png" alt="ホーム" />
</a>
</td>
<!--
<td width="40%" align="right" valign="top"> <a accesskey="n" href="kinds-of-script-fu.html">2.4. Script-Fu の種別</a></td>
-->
</tr>
</table>
<!--
<a href="https://bugzilla.gnome.org/enter_bug.cgi?product=GIMP-manual" class="reportbug">Bugzilla にてエラー報告</a>
-->
</div>
</body>
</html>
そして、ヘルプの対照表とも言える .xml にエントリーを書き加えます。
C:\Program Files\GIMP 2\share\gimp\2.0\help\ja
gimp-help.xml 行末直前に追加
<!-- Add by ShiroYuki_Mot -->
<help-item id="your-script-name" ref="script-fu_py-help-bases.html" title="あなたの Script タイトル" parent="gimp-main" sort="90"/>
</gimp-help>
さて、これで、先程書いた状態になります。
でも、 Help Button から 見たい! のが 人情 ですよね。
そこで、 Python のソースコード( Script 本体 )にも手を入れます。
先程の .xml を思い出して下さい。
その保存場所は 日本語環境下 では、 ...\help\ja\ でしたでしょ!。
はい。 Localize されています!。
さて、 Python-Fu に話を切り替えます。
define 関数のソースを見れば分かるのですが、 gimpfu.py の冒頭の def register( 、.
通常の書き方では、 基本的に省略されている 引数 がありますし、
関数名は pdb に登録する為に、文字置換処理を挟んでいます。
Help での 名称 は 登録後の名称 ... 。
そうです!。
一般的に説明される _ で語句を繋ぐ名称設定は止め、最初から - で繋ぎます!。
元々、_ ではなく - が基本の様にも見受けられます。
そして、 Localize を指定します。
具体的には、一般的に省略されている 12 (13?) 番目 の 引数 Domain を明記します。
指定する値は お決りの文言 ですね。
つまりこうです。
register((13?) と書いたのは、その前に、省略可能な menu= と言う引数もあるからです。
"python-fu-test", # func name
# 省略
plugin_main , # function
domain=("gimp20-python", gimp.locale_directory) # Extra: for Help
)
main()
普通は、この menu は書かなく共 良い筈です。 書きませんね。
はい。 これでスクリプトを実行して Help ボタンを押して見ましょう。
おおっ!。
の 筈です。 ローカルヘルプのある GIMP 2.8.22 上。.
残念なのは、ヘルプをインストールした環境下でのみ対応が可能 な事ですね。
WAN で 外部とアクセスする インターネット上のヘルプ に 手を入れる訳には行きませんから。
参考:
ファイルとして公開しました。 *1.
https://shiroyuki-mot-presents.blogspot.com/2018/05/download-gimp-help-additional-base.html
Link の無断転載を禁じます!。.
[20187/05/04] ファイル公開 を追記 *1.
0 件のコメント:
コメントを投稿