ホームへ 上へ

WinMerge用Plugin作成スクリプト

Copyright (C) 2004, UK-taniyama.
ファイル一式

はじめに

WinMerge用のプラグイン作成用のスクリプトです。
Perl・Visual C++が必要です。
#Perl v5.8.2・Visual C++ 6.0sp6で確認しました。

ファイル一覧

README.TXTこのファイル
mkwmplugin.plプラグイン作成用スクリプト
PLUGIN/*プラグイン用テンプレート
Docs/GPL.txtGNU 一般公有使用許諾

使い方

以下のコマンドを実行してください。
mkwmplugin.pl <プラグイン名>

プラグインでできること

以下の3つです。
PREDIFF比較前処理プラグイン(比較実行前にテキスト変換)
PACK_UNPACK展開プラグイン(バイナリをテキストに変換)
EDITOR_SCRIPTエディタ用プラグイン(エディタのコマンドを追加)
#ザックリと,使える範囲の話です。
#詳細は,ソースをダウンロードして,Plugins内に入っているテキストを参照してください。
実装すべき処理は,Eventの種類によって決まっています。以下の説明では,()ないに記述しています。
ビルドしたファイルには,ReleaseUMinDependencyディレクトリに作成されます。
プラグインは,作成されたDLLをWinMergeをインストールしたディレクトリのMergePluginsにコピーしてください。

PluginEventプロパティの実装(全て)

CWinMergeScript::get_PluginEvent関数にて,プラグインで実装するプラグインの種類を返却してください。
たとえば,バイナリファイルをテキストファイルにファイル形式で変換する場合には,FILE_PACK_UNPACKを返す必要があるため,以下のようにします。
*pVal = SysAllocString(L"FILE_PACK_UNPACK");

PluginDescriptionプロパティ(全て)

CWinMergeScript::get_PluginDescription関数にて,プラグインの説明を返却してください。

PluginFileFiltersプロパティ(PACK_UNPACK,PREDIFF)

CWinMergeScript::get_PluginFileFilters関数にて,ファイル名のフィルタを正規表現の形式で返却してください。
たとえば,拡張子.docの場合には,以下のようにします。
*pVal = SysAllocString(L"\\.doc$");

PluginIsAutomaticプロパティ(PACK_UNPACK,PREDIFF)

CWinMergeScript::get_PluginIsAutomatic関数にて,自動展開する否かを返却してください。

UnpackBufferAメソッド(BUFFER_PACK_UNPACK)

CWinMergeScript::UnpackBufferA関数にて,バッファ内をバイナリ形式からテキスト形式に変換します。
(多分……)

PackBufferAメソッド(BUFFER_PACK_UNPACK)

CWinMergeScript::UnpackBufferA関数にて,バッファ内をテキスト形式からバイナリ形式に変換します。
(多分……)

UnpackFileメソッド(FILE_PACK_UNPACK)

CWinMergeScript::UnpackFile関数にて,バイナリ形式のファイル(fileSrc)からテキスト形式のファイル(fileDst)に変換します。

PackFileメソッド(FILE_PACK_UNPACK)

CWinMergeScript::UnpackFile関数にて,テキスト形式のファイル(fileSrc)からバイナリ形式のファイル(fileDst)に変換します。

PrediffBufferWメソッド(BUFFER_PREDIFF)

CWinMergeScript::PrediffBufferW関数にて,実装します。
#ってよくわかりません……

PrediffFileメソッド(FILE_PREDIFF)

CWinMergeScript::PrediffFile関数にて,実装します。
比較の前処理に使う。
内容自体は変更されない。

ライセンス

Copyright (C) 2004, UK-taniayama <QVE00513@nifty.com>
本プログラムはフリー・ソフトウェアです。あなたは、Free Software Foundation が公表した GNU 一般公有使用許諾のバージョン 2、あるいはそれ以降の各バージョンの中からいずれかを選択し、そのバージョンが定める条項に従って本プログラムを再頒布または変更することができます。
本プログラムは有用とは思いますが、頒布にあたっては、市場性および特定目的適合性についての暗黙の保証を含めて、いかなる保証も行ないません。詳細については GNU 一般公有使用許諾書をお読みください。
あなたは、本プログラムと一緒に GNU 一般公有使用許諾の写しを受け取っているはずです。そうでない場合は、Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA へ手紙を書いてください。

変更暦

2004-12-28

ホームへ 上へ
更新日:2004-12-28 QVE00513@nifty.com inserted by FC2 system