<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ja">
	<id>https://www.haijin-boys.com/wiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Ks</id>
	<title>MeryWiki - 利用者の投稿記録 [ja]</title>
	<link rel="self" type="application/atom+xml" href="https://www.haijin-boys.com/wiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Ks"/>
	<link rel="alternate" type="text/html" href="https://www.haijin-boys.com/wiki/%E7%89%B9%E5%88%A5:%E6%8A%95%E7%A8%BF%E8%A8%98%E9%8C%B2/Ks"/>
	<updated>2026-04-29T06:22:22Z</updated>
	<subtitle>利用者の投稿記録</subtitle>
	<generator>MediaWiki 1.43.6</generator>
	<entry>
		<id>https://www.haijin-boys.com/wiki/index.php?title=%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB:DotNetPluginKit.zip&amp;diff=2273</id>
		<title>ファイル:DotNetPluginKit.zip</title>
		<link rel="alternate" type="text/html" href="https://www.haijin-boys.com/wiki/index.php?title=%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB:DotNetPluginKit.zip&amp;diff=2273"/>
		<updated>2016-06-29T13:03:33Z</updated>

		<summary type="html">&lt;p&gt;Ks: Ks が ファイル:DotNetPluginKit.zip の新しいバージョンを アップロードしました&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Ks</name></author>
	</entry>
	<entry>
		<id>https://www.haijin-boys.com/wiki/index.php?title=.NET%E3%83%97%E3%83%A9%E3%82%B0%E3%82%A4%E3%83%B3%E9%96%8B%E7%99%BA%E3%82%AD%E3%83%83%E3%83%88&amp;diff=2272</id>
		<title>.NETプラグイン開発キット</title>
		<link rel="alternate" type="text/html" href="https://www.haijin-boys.com/wiki/index.php?title=.NET%E3%83%97%E3%83%A9%E3%82%B0%E3%82%A4%E3%83%B3%E9%96%8B%E7%99%BA%E3%82%AD%E3%83%83%E3%83%88&amp;diff=2272"/>
		<updated>2016-06-29T13:02:39Z</updated>

		<summary type="html">&lt;p&gt;Ks: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= 概要 =&lt;br /&gt;
Mery のプラグインを .NET Framework を使って開発するためのキットです。&amp;lt;br&amp;gt;&lt;br /&gt;
本キットを使用して作成したプラグインを動作させるには、以下のランタイムがインストールされている必要があります。&lt;br /&gt;
* .NET Framework 4.5 以降&lt;br /&gt;
* Visual C++ Redistributable for Visual Studio 2015 (x86)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= ファイル =&lt;br /&gt;
[[ファイル:DotNetPluginKit.zip‎]]　(ver 2.0.2)&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= インストール手順 =&lt;br /&gt;
先に VisualStudio がインストールされている必要があります。&amp;lt;br&amp;gt;&lt;br /&gt;
ダウンロードしたファイルを伸張し、bat ファイルを実行してください。&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== 更新手順 ==&lt;br /&gt;
bat を実行しても更新されるのはプロジェクトテンプレートのみです。&amp;lt;br&amp;gt;&lt;br /&gt;
すでに作成済みのプロジェクトがある場合は、zip の中に含まれる Library を自分のプロジェクトに上書きしてください。&amp;lt;br&amp;gt;&lt;br /&gt;
（いいアップデートの方法があれば教えてください）&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= 履歴 =&lt;br /&gt;
*2016/6/29: ver 2.0.2&amp;lt;br&amp;gt;&lt;br /&gt;
　　SetOwned() で例外が発生するのを修正&lt;br /&gt;
*2016/6/3: ver 2.0.1&amp;lt;br&amp;gt;&lt;br /&gt;
　　GetText(), GetSelText() 使用時の取得高速化用メモリを使い回すよう変更（GC の削減）&amp;lt;br&amp;gt;&lt;br /&gt;
　　GetEncoding(), GetNewLineType() の追加&amp;lt;br&amp;gt;&lt;br /&gt;
　　SetOwned() による子フォーム化対応&lt;br /&gt;
*2016/5/27: ver 2.0.0&amp;lt;br&amp;gt;&lt;br /&gt;
　　公開&lt;/div&gt;</summary>
		<author><name>Ks</name></author>
	</entry>
	<entry>
		<id>https://www.haijin-boys.com/wiki/index.php?title=.NET%E3%83%97%E3%83%A9%E3%82%B0%E3%82%A4%E3%83%B3%E9%96%8B%E7%99%BA%E3%82%AD%E3%83%83%E3%83%88&amp;diff=2109</id>
		<title>.NETプラグイン開発キット</title>
		<link rel="alternate" type="text/html" href="https://www.haijin-boys.com/wiki/index.php?title=.NET%E3%83%97%E3%83%A9%E3%82%B0%E3%82%A4%E3%83%B3%E9%96%8B%E7%99%BA%E3%82%AD%E3%83%83%E3%83%88&amp;diff=2109"/>
		<updated>2016-06-03T22:16:56Z</updated>

		<summary type="html">&lt;p&gt;Ks: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= 概要 =&lt;br /&gt;
Mery のプラグインを .NET Framework を使って開発するためのキットです。&amp;lt;br&amp;gt;&lt;br /&gt;
本キットを使用して作成したプラグインを動作させるには、以下のランタイムがインストールされている必要があります。&lt;br /&gt;
* .NET Framework 4.5 以降&lt;br /&gt;
* Visual C++ Redistributable for Visual Studio 2015 (x86)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= ファイル =&lt;br /&gt;
[[ファイル:DotNetPluginKit.zip‎]]　(ver 2.0.1)&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= インストール手順 =&lt;br /&gt;
先に VisualStudio がインストールされている必要があります。&amp;lt;br&amp;gt;&lt;br /&gt;
ダウンロードしたファイルを伸張し、bat ファイルを実行してください。&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== 更新手順 ==&lt;br /&gt;
bat を実行しても更新されるのはプロジェクトテンプレートのみです。&amp;lt;br&amp;gt;&lt;br /&gt;
すでに作成済みのプロジェクトがある場合は、zip の中に含まれる Library を自分のプロジェクトに上書きしてください。&amp;lt;br&amp;gt;&lt;br /&gt;
（いいアップデートの方法があれば教えてください）&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= 履歴 =&lt;br /&gt;
*2016/6/3: ver 2.0.1&amp;lt;br&amp;gt;&lt;br /&gt;
　　GetText(), GetSelText() 使用時の取得高速化用メモリを使い回すよう変更（GC の削減）&amp;lt;br&amp;gt;&lt;br /&gt;
　　GetEncoding(), GetNewLineType() の追加&amp;lt;br&amp;gt;&lt;br /&gt;
　　SetOwned() による子フォーム化対応&lt;br /&gt;
*2016/5/27: ver 2.0.0&amp;lt;br&amp;gt;&lt;br /&gt;
　　公開&lt;/div&gt;</summary>
		<author><name>Ks</name></author>
	</entry>
	<entry>
		<id>https://www.haijin-boys.com/wiki/index.php?title=.NET%E3%83%97%E3%83%A9%E3%82%B0%E3%82%A4%E3%83%B3%E9%96%8B%E7%99%BA_%E3%82%A4%E3%83%99%E3%83%B3%E3%83%88%E7%B7%A8&amp;diff=2108</id>
		<title>.NETプラグイン開発 イベント編</title>
		<link rel="alternate" type="text/html" href="https://www.haijin-boys.com/wiki/index.php?title=.NET%E3%83%97%E3%83%A9%E3%82%B0%E3%82%A4%E3%83%B3%E9%96%8B%E7%99%BA_%E3%82%A4%E3%83%99%E3%83%B3%E3%83%88%E7%B7%A8&amp;diff=2108"/>
		<updated>2016-06-03T13:11:25Z</updated>

		<summary type="html">&lt;p&gt;Ks: ページの作成:「= 概要 = イベント（テキスト変更、キー操作）対応の説明。  = テキスト変更イベント = プラグインの基本は、発生するイベン...」&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= 概要 =&lt;br /&gt;
イベント（テキスト変更、キー操作）対応の説明。&lt;br /&gt;
&lt;br /&gt;
= テキスト変更イベント =&lt;br /&gt;
プラグインの基本は、発生するイベントに応じて処理していくことです。&amp;lt;br&amp;gt;&lt;br /&gt;
まずは使うことの多いであろう、テキスト変更イベントを処理してみます。&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
ソースの中で「#region OnEvents のディスパッチ」が閉じられていると思いますので、これを開きます。&amp;lt;br&amp;gt;&lt;br /&gt;
基本的に対応しているイベントは全て書かれていますので、コメントを外すことで各イベント発生時に呼ばれるようになります。&amp;lt;br&amp;gt;&lt;br /&gt;
なおコメントアウトしておけば無駄に呼ばれることがないため、遅くしないためにも無駄にコメントアウトは外さないようにしましょう。&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
イベントの OnChanged のコメントアウトを外しましょう。&amp;lt;br&amp;gt;&lt;br /&gt;
これがテキストが変更されたときに呼ばれるイベントです。&amp;lt;br&amp;gt;&lt;br /&gt;
ここに、時折要望として挙がる「テキスト全体の文字数をステータスバーに表示する」処理を書いてみましょう。&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;csharp&amp;quot;&amp;gt;&lt;br /&gt;
/// &amp;lt;summary&amp;gt;&lt;br /&gt;
/// テキストが変更された時．&lt;br /&gt;
/// &amp;lt;/summary&amp;gt;&lt;br /&gt;
/// &amp;lt;param name=&amp;quot;hWnd&amp;quot;&amp;gt;対象のエディタハンドル&amp;lt;/param&amp;gt;&lt;br /&gt;
public void OnChanged(IntPtr hWnd) {&lt;br /&gt;
	// ①Mery 操作用のオブジェクト生成&lt;br /&gt;
	var editor = new Editor(hWnd);&lt;br /&gt;
&lt;br /&gt;
	// ②文字数を取得（改行含む）&lt;br /&gt;
	int length = editor.GetLength(true);&lt;br /&gt;
&lt;br /&gt;
	// ③ステータスバーに結果を表示&lt;br /&gt;
	editor.SetStatus(length.ToString());&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
どうですか、簡単でしょう！&amp;lt;br&amp;gt;&lt;br /&gt;
続いて、文字数ではなく Shift-JIS の byte 数にしてみましょう。&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;csharp&amp;quot;&amp;gt;&lt;br /&gt;
/// &amp;lt;summary&amp;gt;&lt;br /&gt;
/// テキストが変更された時．&lt;br /&gt;
/// &amp;lt;/summary&amp;gt;&lt;br /&gt;
/// &amp;lt;param name=&amp;quot;hWnd&amp;quot;&amp;gt;対象のエディタハンドル&amp;lt;/param&amp;gt;&lt;br /&gt;
public void OnChanged(IntPtr hWnd) {&lt;br /&gt;
	// ①Mery 操作用のオブジェクト生成&lt;br /&gt;
	var editor = new Editor(hWnd);&lt;br /&gt;
&lt;br /&gt;
	// ②文字列を取得&lt;br /&gt;
	string text = editor.GetText();&lt;br /&gt;
&lt;br /&gt;
	// ③ Shift-JIS のバイト数に変換&lt;br /&gt;
	int length = Encoding.GetEncoding(932).GetByteCount(text);&lt;br /&gt;
&lt;br /&gt;
	// ④改行コードが CR+LF だった場合は、その分追加&lt;br /&gt;
	if (editor.GetNewLineType() == Editor.NewLineType.CrLf) {&lt;br /&gt;
		length += editor.GetLines(true) - 1;&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
	// ⑤ステータスバーに結果を表示&lt;br /&gt;
	editor.SetStatus(length.ToString());&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
GetLength() は Unicode 文字数を返すので、Shift-JIS のバイト数を取得するためにはまずテキスト全体を取得します（②）。&amp;lt;br&amp;gt;&lt;br /&gt;
次に③でテキストを Shift-JIS でのバイト数に換算します。&amp;lt;br&amp;gt;&lt;br /&gt;
正確には Shift-JIS では表現できない文字などの対応が必要になりますが、ここでは省略しています。&amp;lt;br&amp;gt;&lt;br /&gt;
これで取得できた、としたいのですが、プラグインから取得する文字列の改行コードは全て LF という仕様があります。&amp;lt;br&amp;gt;&lt;br /&gt;
CR+LF だと改行分だけバイト数がずれてしまいますので、④の改行コード判定およびその分の調整をしています。&amp;lt;br&amp;gt;&lt;br /&gt;
ちょっと面倒ですが、ここまで来ればマクロより楽なはずです。&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== 遅延処理 ==&lt;br /&gt;
先ほどのコードで GetText() を使っていますが、覚えているでしょうか……この処理が重いということを。&amp;lt;br&amp;gt;&lt;br /&gt;
単純に OnChanged の中で使用してしまうと、文字列が変更される度にこの処理が呼ばれます。&amp;lt;br&amp;gt;&lt;br /&gt;
実際に実行し、a を押しっぱなしにすると、入力される度にステータスバーが更新されます。&amp;lt;br&amp;gt;&lt;br /&gt;
文字数が少ないうちは良いですが、多くなったときはとてもではないですが実用的な速度で動くことはないでしょう。&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
これを解決するのに、「入力後一定時間変更がなければ更新する」という遅延処理をします。&amp;lt;br&amp;gt;&lt;br /&gt;
.NET プラグインには独自のタイマー処理が実装されていますので、対応は極めて簡単です。&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;csharp&amp;quot;&amp;gt;&lt;br /&gt;
/// &amp;lt;summary&amp;gt;&lt;br /&gt;
/// テキストが変更された時．&lt;br /&gt;
/// &amp;lt;/summary&amp;gt;&lt;br /&gt;
/// &amp;lt;param name=&amp;quot;hWnd&amp;quot;&amp;gt;対象のエディタハンドル&amp;lt;/param&amp;gt;&lt;br /&gt;
public void OnChanged(IntPtr hWnd) {&lt;br /&gt;
	// ①固有のタイマーID&lt;br /&gt;
	ushort TimerID = 1;&lt;br /&gt;
&lt;br /&gt;
	// ②1000ms 後に処理を開始する&lt;br /&gt;
	// 　1000ms の間に再度呼ばれた場合は後の方が有効になる&lt;br /&gt;
	SetTimer(hWnd, TimerID, 1000, () =&amp;gt; {&lt;br /&gt;
		var editor = new Editor(hWnd);&lt;br /&gt;
		string text = editor.GetText();&lt;br /&gt;
		int length = Encoding.GetEncoding(932).GetByteCount(text);&lt;br /&gt;
		if (editor.GetNewLineType() == Editor.NewLineType.CrLf) {&lt;br /&gt;
			length += editor.GetLines(true) - 1;&lt;br /&gt;
		}&lt;br /&gt;
		editor.SetStatus(length.ToString());&lt;br /&gt;
	});&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
基本的には、SetTimer() で遅延させているだけです。&amp;lt;br&amp;gt;&lt;br /&gt;
これだけで、最後の編集から 1 秒後に反映されるようになり、頻繁な更新を抑制できます。&amp;lt;br&amp;gt;&lt;br /&gt;
ここでは簡単にするためラムダ式で記述していますが、別のメソッドに仕立てて登録しても良いですし、OnTimer() イベントも用意しているのでそちらで処理しても良いです。&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
このように、いくつかのイベントは呼ばれる度に実行するより遅延させた方が良い場合があります。&lt;br /&gt;
&lt;br /&gt;
= キー操作イベント =&lt;br /&gt;
矩形選択は先に Alt を押した状態で選択を開始する必要があります。&amp;lt;br&amp;gt;&lt;br /&gt;
が、プラグインを使うとこの順番を逆にしても使えるようになります。&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
今度は「#region PreTranslateMessage のディスパッチ」を開きます。&amp;lt;br&amp;gt;&lt;br /&gt;
その中の OnSysKeyDown() のコメントアウトを外して、以下のコードを入力します。&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;csharp&amp;quot;&amp;gt;&lt;br /&gt;
/// &amp;lt;summary&amp;gt;&lt;br /&gt;
/// システムキーを押したときに呼ばれます．&lt;br /&gt;
/// &amp;lt;/summary&amp;gt;&lt;br /&gt;
/// &amp;lt;param name=&amp;quot;hWnd&amp;quot;&amp;gt;対象のエディタハンドル&amp;lt;/param&amp;gt;&lt;br /&gt;
/// &amp;lt;param name=&amp;quot;keycode&amp;quot;&amp;gt;仮想キーコード．&amp;lt;see cref=&amp;quot;VIRTUAL_KEY&amp;quot;/&amp;gt; に定義されています．&amp;lt;/param&amp;gt;&lt;br /&gt;
/// &amp;lt;param name=&amp;quot;repeat&amp;quot;&amp;gt;リピートカウント&amp;lt;/param&amp;gt;&lt;br /&gt;
/// &amp;lt;param name=&amp;quot;alt&amp;quot;&amp;gt;ALT キーが押されているか&amp;lt;/param&amp;gt;&lt;br /&gt;
/// &amp;lt;param name=&amp;quot;previous&amp;quot;&amp;gt;直前のキー状態が指定されます．true の場合，メッセージが送られる前からキーが押されています．&amp;lt;/param&amp;gt;&lt;br /&gt;
/// &amp;lt;returns&amp;gt;メッセージ処理を継続する場合は false．&amp;lt;/returns&amp;gt;&lt;br /&gt;
public bool OnSysKeyDown(IntPtr hWnd, int keycode, int repeat, bool alt, bool previous) {&lt;br /&gt;
	// ①Alt キーが押されたことによるイベントかを判定&lt;br /&gt;
	if (keycode == (int)VIRTUAL_KEY.VK_MENU) {&lt;br /&gt;
		// ②選択されていて、まだ矩形選択になっていないか&lt;br /&gt;
		// 　これを確認しないと何度も矩形選択処理をしてしまう&lt;br /&gt;
		var editor = new Editor(hWnd);&lt;br /&gt;
		if (editor.GetSelType() == Editor.SEL_TYPE.CHAR) {&lt;br /&gt;
			// ③選択範囲を取得&lt;br /&gt;
			var start = editor.GetSelStart(true);&lt;br /&gt;
			var end = editor.GetSelEnd(true);&lt;br /&gt;
&lt;br /&gt;
			// ④矩形選択し直す&lt;br /&gt;
			editor.Select(start, end, true, true);&lt;br /&gt;
&lt;br /&gt;
			// ⑤通常の Alt 処理をキャンセル&lt;br /&gt;
			return true;&lt;br /&gt;
		}&lt;br /&gt;
	}&lt;br /&gt;
	// ⑥処理しなかった場合は本体のキー操作処理にゆだねる&lt;br /&gt;
    return false;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
OnSysKeyDown() は Alt や Ctrl などの特別なキーを処理するためのイベントです。&amp;lt;br&amp;gt;&lt;br /&gt;
通常の a などのキーは OnKeyDown() になるので、使い分けに注意してください。&amp;lt;br&amp;gt;&lt;br /&gt;
コードとしては、矩形選択にし直す、という便利なメソッドは用意されていないので、③選択範囲の取得→④矩形選択し直し、という流れになります。&amp;lt;br&amp;gt;&lt;br /&gt;
⑤で true を返さないと、本体のキー処理が走るためメニューが表示されてしまいます。&amp;lt;br&amp;gt;&lt;br /&gt;
無闇にキャンセルしても本体や他のプラグインの邪魔をしてしまうのでよくありませんが、今回ぐらいであれば true で以降の処理をキャンセルした方が良いでしょう。&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;/div&gt;</summary>
		<author><name>Ks</name></author>
	</entry>
	<entry>
		<id>https://www.haijin-boys.com/wiki/index.php?title=%E3%83%97%E3%83%A9%E3%82%B0%E3%82%A4%E3%83%B3%E3%83%A9%E3%82%A4%E3%83%96%E3%83%A9%E3%83%AA&amp;diff=2107</id>
		<title>プラグインライブラリ</title>
		<link rel="alternate" type="text/html" href="https://www.haijin-boys.com/wiki/index.php?title=%E3%83%97%E3%83%A9%E3%82%B0%E3%82%A4%E3%83%B3%E3%83%A9%E3%82%A4%E3%83%96%E3%83%A9%E3%83%AA&amp;diff=2107"/>
		<updated>2016-06-03T12:13:45Z</updated>

		<summary type="html">&lt;p&gt;Ks: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Mery で使用できるプラグインを集めたライブラリです。&lt;br /&gt;
&lt;br /&gt;
DLLファイル を「Plugins」に保存し、ツールメニューの「プラグイン」から使用してください。&lt;br /&gt;
&lt;br /&gt;
プラグインライブラリはどなたでも自由に編集できますので、みなさんが作成した便利なプラグインをどんどん掲載してください。&lt;br /&gt;
&lt;br /&gt;
また、[[プラグイン]]にも掲載されていますのでそちらもご覧ください。&lt;br /&gt;
&lt;br /&gt;
== プログラミング補助 ==&lt;br /&gt;
&lt;br /&gt;
*[https://github.com/haijinboys/mery-plugin-livestyle Emmet LiveStyle] (kuro)&lt;br /&gt;
&lt;br /&gt;
== ファイル操作補助 ==&lt;br /&gt;
*[[OutputBar拡張]] (脚立)&lt;br /&gt;
*[[別プロセスで編集]] (ks)&lt;br /&gt;
&lt;br /&gt;
== ソースサンプル ==&lt;br /&gt;
*[[タスクバーの「すべてのウィンドウを閉じる」実行時不具合の緩和]]（ks）&lt;br /&gt;
&lt;br /&gt;
== .NET プラグイン ==&lt;br /&gt;
*[[.NETプラグイン開発キット]]&lt;br /&gt;
*[[.NETプラグイン開発　導入編]]&lt;br /&gt;
*[[.NETプラグイン開発　テキスト操作編]]&lt;br /&gt;
*[[.NETプラグイン開発　デバッグ編]]&lt;br /&gt;
*[[.NETプラグイン開発　イベント編]]&lt;/div&gt;</summary>
		<author><name>Ks</name></author>
	</entry>
	<entry>
		<id>https://www.haijin-boys.com/wiki/index.php?title=.NET%E3%83%97%E3%83%A9%E3%82%B0%E3%82%A4%E3%83%B3%E9%96%8B%E7%99%BA_%E3%83%87%E3%83%90%E3%83%83%E3%82%B0%E7%B7%A8&amp;diff=2106</id>
		<title>.NETプラグイン開発 デバッグ編</title>
		<link rel="alternate" type="text/html" href="https://www.haijin-boys.com/wiki/index.php?title=.NET%E3%83%97%E3%83%A9%E3%82%B0%E3%82%A4%E3%83%B3%E9%96%8B%E7%99%BA_%E3%83%87%E3%83%90%E3%83%83%E3%82%B0%E7%B7%A8&amp;diff=2106"/>
		<updated>2016-06-03T12:10:38Z</updated>

		<summary type="html">&lt;p&gt;Ks: 文調の修正&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= 概要 =&lt;br /&gt;
ビルドからデバッグまでの手順とサイクルの改善の説明。&lt;br /&gt;
&lt;br /&gt;
= ビルドからコピーまでを自動化 =&lt;br /&gt;
ビルドした結果が Plugins にまとまっていますが、これを Mery にコピーするのは面倒です。&amp;lt;br&amp;gt;&lt;br /&gt;
当然作っていく中では、修正 -&amp;gt; ビルド -&amp;gt; 確認のサイクルが頻発するため、このコピーを自動化します。&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
ソリューションエクスプローラーでプロジェクトを右クリックし、プロパティを開きます。&amp;lt;br&amp;gt;&lt;br /&gt;
左の一覧から「ビルド イベント」を選択します。&amp;lt;br&amp;gt;&lt;br /&gt;
すると「ビルド後イベントのコマンド ライン」には既に 4 行のコマンドが書かれているはずです。&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;winbatch&amp;quot;&amp;gt;&lt;br /&gt;
IF NOT EXIST &amp;quot;$(ProjectDir)Plugins&amp;quot; MKDIR &amp;quot;$(ProjectDir)Plugins&amp;quot;&lt;br /&gt;
IF NOT EXIST &amp;quot;$(ProjectDir)Plugins\$(TargetName).dll&amp;quot; COPY /Y &amp;quot;$(ProjectDir)Library\DotNetWrapper.dll&amp;quot; &amp;quot;$(ProjectDir)Plugins\$(TargetName).dll&amp;quot;&lt;br /&gt;
IF NOT EXIST &amp;quot;$(ProjectDir)Plugins\$(TargetName)&amp;quot; MKDIR &amp;quot;$(ProjectDir)Plugins\$(TargetName)&amp;quot;&lt;br /&gt;
COPY /Y &amp;quot;$(TargetDir)*.dll&amp;quot; &amp;quot;$(ProjectDir)Plugins\$(TargetName)\&amp;quot;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
これは、ビルド結果を Plugins としてまとめる処理で、実は Plugins フォルダにまとめるのは自前でやっています。&amp;lt;br&amp;gt;&lt;br /&gt;
同じように、この結果を Mery にコピーしてあげれば OK です。&amp;lt;br&amp;gt;&lt;br /&gt;
4 行はそのまま、最後に以下の行を追加します。&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;winbatch&amp;quot;&amp;gt;&lt;br /&gt;
XCOPY &amp;quot;$(ProjectDir)Plugins&amp;quot; &amp;quot;(Mery フォルダのフルパス)\Plugins&amp;quot; /Y /S /I&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
(Mery フォルダのフルパス) には、開発用に用意した Mery フォルダのフルパスを入れます。&amp;lt;br&amp;gt;&lt;br /&gt;
（例：C:\Users\tarou\Desktop\Mery\Plugins）&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
これで、ビルドしたときに勝手にコピーされるようになりました。&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
注意点として、プラグインは Mery がロードしているため、コピー前に必ず Mery を終了させておく必要があります。&amp;lt;br&amp;gt;&lt;br /&gt;
起動したままだとコピーに失敗します。&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= デバッグ =&lt;br /&gt;
コピーの手間をなくしたところで、本題のデバッグです。&amp;lt;br&amp;gt;&lt;br /&gt;
プロジェクトのプロパティで、左の一覧で「デバッグ」を選択します。&amp;lt;br&amp;gt;&lt;br /&gt;
その中で「開始動作」で「外部プログラムの開始」を選び、右の「...」ボタンから Mery.exe を選択します。&amp;lt;br&amp;gt;&lt;br /&gt;
後はメニューの [デバッグ] - [デバッグの開始] でも、ツールバーの右三角ボタンでも実行すれば、Mery が実行されます。&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
処理ソースの適当なところで行番号左の列をクリックし、赤丸がつくのを確認します。&amp;lt;br&amp;gt;&lt;br /&gt;
この状態でプラグインを実行すると、該当の行を通るときにデバッガが動き動作が止まります。&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
後は変数名にカーソルを当てて中身を見たり、F10 で 1 行ずつ動かして確認すると良いですね。&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
注意点として、プラグインは Mery の処理の一部として動いているため、プラグインを止めると Mery も止まります。&amp;lt;br&amp;gt;&lt;br /&gt;
よって、実行した結果を Mery で逐一確認する、というのは難しいのです……&amp;lt;br&amp;gt;&lt;/div&gt;</summary>
		<author><name>Ks</name></author>
	</entry>
	<entry>
		<id>https://www.haijin-boys.com/wiki/index.php?title=%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB:DotNetPluginKit(32bitOnly).zip&amp;diff=2105</id>
		<title>ファイル:DotNetPluginKit(32bitOnly).zip</title>
		<link rel="alternate" type="text/html" href="https://www.haijin-boys.com/wiki/index.php?title=%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB:DotNetPluginKit(32bitOnly).zip&amp;diff=2105"/>
		<updated>2016-06-03T12:06:55Z</updated>

		<summary type="html">&lt;p&gt;Ks: Ks が ファイル:DotNetPluginKit(32bitOnly).zip の新しいバージョンを アップロードしました&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Ks</name></author>
	</entry>
	<entry>
		<id>https://www.haijin-boys.com/wiki/index.php?title=%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB:DotNetPluginKit.zip&amp;diff=2104</id>
		<title>ファイル:DotNetPluginKit.zip</title>
		<link rel="alternate" type="text/html" href="https://www.haijin-boys.com/wiki/index.php?title=%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB:DotNetPluginKit.zip&amp;diff=2104"/>
		<updated>2016-06-03T12:06:29Z</updated>

		<summary type="html">&lt;p&gt;Ks: Ks が ファイル:DotNetPluginKit.zip の新しいバージョンを アップロードしました&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Ks</name></author>
	</entry>
	<entry>
		<id>https://www.haijin-boys.com/wiki/index.php?title=.NET%E3%83%97%E3%83%A9%E3%82%B0%E3%82%A4%E3%83%B3%E9%96%8B%E7%99%BA%E3%82%AD%E3%83%83%E3%83%88&amp;diff=2103</id>
		<title>.NETプラグイン開発キット</title>
		<link rel="alternate" type="text/html" href="https://www.haijin-boys.com/wiki/index.php?title=.NET%E3%83%97%E3%83%A9%E3%82%B0%E3%82%A4%E3%83%B3%E9%96%8B%E7%99%BA%E3%82%AD%E3%83%83%E3%83%88&amp;diff=2103"/>
		<updated>2016-06-03T12:05:55Z</updated>

		<summary type="html">&lt;p&gt;Ks: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= 概要 =&lt;br /&gt;
Mery のプラグインを .NET Framework を使って開発するためのキットです。&amp;lt;br&amp;gt;&lt;br /&gt;
本キットを使用して作成したプラグインを動作させるには、以下のランタイムがインストールされている必要があります。&lt;br /&gt;
* .NET Framework 4.5 以降&lt;br /&gt;
* Visual C++ Redistributable for Visual Studio 2015 (x86)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= ファイル =&lt;br /&gt;
[[ファイル:DotNetPluginKit.zip‎]]　(ver 2.0.1)&amp;lt;br&amp;gt;&lt;br /&gt;
通常はこちらを使用してください。&lt;br /&gt;
&lt;br /&gt;
[[ファイル:DotNetPluginKit(32bitOnly).zip]]　(ver 2.0.1)&amp;lt;br&amp;gt;&lt;br /&gt;
32bit の DLL を使用する場合はこちらを使用してください。&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= インストール手順 =&lt;br /&gt;
先に VisualStudio がインストールされている必要があります。&amp;lt;br&amp;gt;&lt;br /&gt;
ダウンロードしたファイルを伸張し、bat ファイルを実行してください。&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== 更新手順 ==&lt;br /&gt;
bat を実行しても更新されるのはプロジェクトテンプレートのみです。&amp;lt;br&amp;gt;&lt;br /&gt;
すでに作成済みのプロジェクトがある場合は、zip の中に含まれる Library を自分のプロジェクトに上書きしてください。&amp;lt;br&amp;gt;&lt;br /&gt;
（いいアップデートの方法があれば教えてください）&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= 履歴 =&lt;br /&gt;
*2016/6/3: ver 2.0.1&amp;lt;br&amp;gt;&lt;br /&gt;
　　GetText(), GetSelText() 使用時の取得高速化用メモリを使い回すよう変更（GC の削減）&amp;lt;br&amp;gt;&lt;br /&gt;
　　GetEncoding(), GetNewLineType() の追加&amp;lt;br&amp;gt;&lt;br /&gt;
　　SetOwned() による子フォーム化対応&lt;br /&gt;
*2016/5/27: ver 2.0.0&amp;lt;br&amp;gt;&lt;br /&gt;
　　公開&lt;/div&gt;</summary>
		<author><name>Ks</name></author>
	</entry>
	<entry>
		<id>https://www.haijin-boys.com/wiki/index.php?title=.NET%E3%83%97%E3%83%A9%E3%82%B0%E3%82%A4%E3%83%B3%E9%96%8B%E7%99%BA_%E3%83%87%E3%83%90%E3%83%83%E3%82%B0%E7%B7%A8&amp;diff=2098</id>
		<title>.NETプラグイン開発 デバッグ編</title>
		<link rel="alternate" type="text/html" href="https://www.haijin-boys.com/wiki/index.php?title=.NET%E3%83%97%E3%83%A9%E3%82%B0%E3%82%A4%E3%83%B3%E9%96%8B%E7%99%BA_%E3%83%87%E3%83%90%E3%83%83%E3%82%B0%E7%B7%A8&amp;diff=2098"/>
		<updated>2016-05-27T14:21:41Z</updated>

		<summary type="html">&lt;p&gt;Ks: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= 概要 =&lt;br /&gt;
ビルドからデバッグまでの手順とサイクルの改善の説明。&lt;br /&gt;
&lt;br /&gt;
= ビルドからコピーまでを自動化 =&lt;br /&gt;
ビルドした結果が Plugins にまとまっているが、これを Mery にコピーするのは面倒である。&amp;lt;br&amp;gt;&lt;br /&gt;
当然作っていく中では、修正 -&amp;gt; ビルド -&amp;gt; 確認のサイクルが頻発するための、このコピーを自動化する&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
ソリューションエクスプローラーでプロジェクトを右クリックし、プロパティを開く。&amp;lt;br&amp;gt;&lt;br /&gt;
左の一覧から「ビルド イベント」を選択する。&amp;lt;br&amp;gt;&lt;br /&gt;
すると「ビルド後イベントのコマンド ライン」には既に 4 行のコマンドが書かれているはずである。&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;winbatch&amp;quot;&amp;gt;&lt;br /&gt;
IF NOT EXIST &amp;quot;$(ProjectDir)Plugins&amp;quot; MKDIR &amp;quot;$(ProjectDir)Plugins&amp;quot;&lt;br /&gt;
IF NOT EXIST &amp;quot;$(ProjectDir)Plugins\$(TargetName).dll&amp;quot; COPY /Y &amp;quot;$(ProjectDir)Library\DotNetWrapper.dll&amp;quot; &amp;quot;$(ProjectDir)Plugins\$(TargetName).dll&amp;quot;&lt;br /&gt;
IF NOT EXIST &amp;quot;$(ProjectDir)Plugins\$(TargetName)&amp;quot; MKDIR &amp;quot;$(ProjectDir)Plugins\$(TargetName)&amp;quot;&lt;br /&gt;
COPY /Y &amp;quot;$(TargetDir)*.dll&amp;quot; &amp;quot;$(ProjectDir)Plugins\$(TargetName)\&amp;quot;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
これは、ビルド結果を Plugins としてまとめる処理で有り、実は Plugins フォルダにまとめるのは自前でやっている。&amp;lt;br&amp;gt;&lt;br /&gt;
同じように、この結果を Mery にコピーしてやれば良い&amp;lt;br&amp;gt;&lt;br /&gt;
4 行はそのまま、最後に以下の行を追加する。&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;winbatch&amp;quot;&amp;gt;&lt;br /&gt;
XCOPY &amp;quot;$(ProjectDir)Plugins&amp;quot; &amp;quot;(Mery フォルダのフルパス)\Plugins&amp;quot; /Y /S /I&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
(Mery フォルダのフルパス) には、開発用に用意した Mery フォルダのフルパスを入れる&amp;lt;br&amp;gt;&lt;br /&gt;
（例：C:\Users\tarou\Desktop\Mery\Plugins）&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
これで、ビルドしたときに勝手にコピーされるようになる。&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
注意点として、プラグインは Mery がロードしているため、コピー前に必ず Mery を終了させておく必要がある。&amp;lt;br&amp;gt;&lt;br /&gt;
起動したままだとコピーに失敗する。&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= デバッグ =&lt;br /&gt;
コピーの手間をなくしたところで、本題のデバッグである。&amp;lt;br&amp;gt;&lt;br /&gt;
プロジェクトのプロパティで、左の一覧で「デバッグ」を選択する。&amp;lt;br&amp;gt;&lt;br /&gt;
その中で「開始動作」で「外部プログラムの開始」を選び、右の「...」ボタンから Mery.exe を選択する。&amp;lt;br&amp;gt;&lt;br /&gt;
後はメニューの [デバッグ] - [デバッグの開始] でも、ツールバーの右三角ボタンでも実行すれば、Mery が実行される。&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
処理ソースの適当なところで行番号左の列をクリックし、赤丸がつくのを確認する。&amp;lt;br&amp;gt;&lt;br /&gt;
この状態でプラグインを実行し、該当の行を通るときにデバッガが動き動作が止まる。&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
後は変数名にカーソルを当てて中身を見たり、F10 で 1 行ずつ動かして確認すると良い。&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
注意点として、プラグインは Mery の処理の一部として動いているため、プラグインを止めると Mery も止まる。&amp;lt;br&amp;gt;&lt;br /&gt;
よって、実行した結果を Mery で逐一確認する、というのは難しい。&amp;lt;br&amp;gt;&lt;/div&gt;</summary>
		<author><name>Ks</name></author>
	</entry>
	<entry>
		<id>https://www.haijin-boys.com/wiki/index.php?title=.NET%E3%83%97%E3%83%A9%E3%82%B0%E3%82%A4%E3%83%B3%E9%96%8B%E7%99%BA_%E3%83%87%E3%83%90%E3%83%83%E3%82%B0%E7%B7%A8&amp;diff=2097</id>
		<title>.NETプラグイン開発 デバッグ編</title>
		<link rel="alternate" type="text/html" href="https://www.haijin-boys.com/wiki/index.php?title=.NET%E3%83%97%E3%83%A9%E3%82%B0%E3%82%A4%E3%83%B3%E9%96%8B%E7%99%BA_%E3%83%87%E3%83%90%E3%83%83%E3%82%B0%E7%B7%A8&amp;diff=2097"/>
		<updated>2016-05-27T14:19:01Z</updated>

		<summary type="html">&lt;p&gt;Ks: ページの作成:「= 概要 = ビルドからデバッグまでの手順とサイクルの改善の説明。  = ビルドからコピーまでを自動化 = ビルドした結果が Plugins...」&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= 概要 =&lt;br /&gt;
ビルドからデバッグまでの手順とサイクルの改善の説明。&lt;br /&gt;
&lt;br /&gt;
= ビルドからコピーまでを自動化 =&lt;br /&gt;
ビルドした結果が Plugins にまとまっているが、これを Mery にコピーするのは面倒である。&amp;lt;br&amp;gt;&lt;br /&gt;
当然作っていく中では、修正 -&amp;gt; ビルド -&amp;gt; 確認のサイクルが頻発するための、このコピーを自動化する&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
ソリューションエクスプローラーでプロジェクトを右クリックし、プロパティを開く。&amp;lt;br&amp;gt;&lt;br /&gt;
左の一覧から「ビルド イベント」を選択する。&amp;lt;br&amp;gt;&lt;br /&gt;
すると「ビルド後イベントのコマンド ライン」には既に 4 行のコマンドが書かれているはずである。&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bat&amp;quot;&amp;gt;&lt;br /&gt;
IF NOT EXIST &amp;quot;$(ProjectDir)Plugins&amp;quot; MKDIR &amp;quot;$(ProjectDir)Plugins&amp;quot;&lt;br /&gt;
IF NOT EXIST &amp;quot;$(ProjectDir)Plugins\$(TargetName).dll&amp;quot; COPY /Y &amp;quot;$(ProjectDir)Library\DotNetWrapper.dll&amp;quot; &amp;quot;$(ProjectDir)Plugins\$(TargetName).dll&amp;quot;&lt;br /&gt;
IF NOT EXIST &amp;quot;$(ProjectDir)Plugins\$(TargetName)&amp;quot; MKDIR &amp;quot;$(ProjectDir)Plugins\$(TargetName)&amp;quot;&lt;br /&gt;
COPY /Y &amp;quot;$(TargetDir)*.dll&amp;quot; &amp;quot;$(ProjectDir)Plugins\$(TargetName)\&amp;quot;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
これは、ビルド結果を Plugins としてまとめる処理で有り、実は Plugins フォルダにまとめるのは自前でやっている。&amp;lt;br&amp;gt;&lt;br /&gt;
同じように、この結果を Mery にコピーしてやれば良い&amp;lt;br&amp;gt;&lt;br /&gt;
4 行はそのまま、最後に以下の行を追加する。&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bat&amp;quot;&amp;gt;&lt;br /&gt;
XCOPY &amp;quot;$(ProjectDir)Plugins&amp;quot; &amp;quot;(Mery フォルダのフルパス)\Plugins&amp;quot; /Y /S /I&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
(Mery フォルダのフルパス) には、開発用に用意した Mery フォルダのフルパスを入れる&amp;lt;br&amp;gt;&lt;br /&gt;
（例：C:\Users\tarou\Desktop\Mery\Plugins）&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
これで、ビルドしたときに勝手にコピーされるようになる。&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
注意点として、プラグインは Mery がロードしているため、コピー前に必ず Mery を終了させておく必要がある。&amp;lt;br&amp;gt;&lt;br /&gt;
起動したままだとコピーに失敗する。&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= デバッグ =&lt;br /&gt;
コピーの手間をなくしたところで、本題のデバッグである。&amp;lt;br&amp;gt;&lt;br /&gt;
プロジェクトのプロパティで、左の一覧で「デバッグ」を選択する。&amp;lt;br&amp;gt;&lt;br /&gt;
その中で「開始動作」で「外部プログラムの開始」を選び、右の「...」ボタンから Mery.exe を選択する。&amp;lt;br&amp;gt;&lt;br /&gt;
後はメニューの [デバッグ] - [デバッグの開始] でも、ツールバーの右三角ボタンでも実行すれば、Mery が実行される。&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
処理ソースの適当なところで行番号左の列をクリックし、赤丸がつくのを確認する。&amp;lt;br&amp;gt;&lt;br /&gt;
この状態でプラグインを実行し、該当の行を通るときにデバッガが動き動作が止まる。&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
後は変数名にカーソルを当てて中身を見たり、F10 で 1 行ずつ動かして確認すると良い。&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
注意点として、プラグインは Mery の処理の一部として動いているため、プラグインを止めると Mery も止まる。&amp;lt;br&amp;gt;&lt;br /&gt;
よって、実行した結果を Mery で逐一確認する、というのは難しい。&amp;lt;br&amp;gt;&lt;/div&gt;</summary>
		<author><name>Ks</name></author>
	</entry>
	<entry>
		<id>https://www.haijin-boys.com/wiki/index.php?title=%E3%83%97%E3%83%A9%E3%82%B0%E3%82%A4%E3%83%B3%E3%83%A9%E3%82%A4%E3%83%96%E3%83%A9%E3%83%AA&amp;diff=2096</id>
		<title>プラグインライブラリ</title>
		<link rel="alternate" type="text/html" href="https://www.haijin-boys.com/wiki/index.php?title=%E3%83%97%E3%83%A9%E3%82%B0%E3%82%A4%E3%83%B3%E3%83%A9%E3%82%A4%E3%83%96%E3%83%A9%E3%83%AA&amp;diff=2096"/>
		<updated>2016-05-27T14:03:47Z</updated>

		<summary type="html">&lt;p&gt;Ks: /* .NET プラグイン */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Mery で使用できるプラグインを集めたライブラリです。&lt;br /&gt;
&lt;br /&gt;
DLLファイル を「Plugins」に保存し、ツールメニューの「プラグイン」から使用してください。&lt;br /&gt;
&lt;br /&gt;
プラグインライブラリはどなたでも自由に編集できますので、みなさんが作成した便利なプラグインをどんどん掲載してください。&lt;br /&gt;
&lt;br /&gt;
また、[[プラグイン]]にも掲載されていますのでそちらもご覧ください。&lt;br /&gt;
&lt;br /&gt;
== プログラミング補助 ==&lt;br /&gt;
&lt;br /&gt;
*[https://github.com/haijinboys/mery-plugin-livestyle Emmet LiveStyle] (kuro)&lt;br /&gt;
&lt;br /&gt;
== ファイル操作補助 ==&lt;br /&gt;
*[[OutputBar拡張]] (脚立)&lt;br /&gt;
*[[別プロセスで編集]] (ks)&lt;br /&gt;
&lt;br /&gt;
== ソースサンプル ==&lt;br /&gt;
*[[タスクバーの「すべてのウィンドウを閉じる」実行時不具合の緩和]]（ks）&lt;br /&gt;
&lt;br /&gt;
== .NET プラグイン ==&lt;br /&gt;
*[[.NETプラグイン開発キット]]&lt;br /&gt;
*[[.NETプラグイン開発　導入編]]&lt;br /&gt;
*[[.NETプラグイン開発　テキスト操作編]]&lt;br /&gt;
*[[.NETプラグイン開発　デバッグ編]]&lt;/div&gt;</summary>
		<author><name>Ks</name></author>
	</entry>
	<entry>
		<id>https://www.haijin-boys.com/wiki/index.php?title=.NET%E3%83%97%E3%83%A9%E3%82%B0%E3%82%A4%E3%83%B3%E9%96%8B%E7%99%BA_%E3%83%86%E3%82%AD%E3%82%B9%E3%83%88%E6%93%8D%E4%BD%9C%E7%B7%A8&amp;diff=2095</id>
		<title>.NETプラグイン開発 テキスト操作編</title>
		<link rel="alternate" type="text/html" href="https://www.haijin-boys.com/wiki/index.php?title=.NET%E3%83%97%E3%83%A9%E3%82%B0%E3%82%A4%E3%83%B3%E9%96%8B%E7%99%BA_%E3%83%86%E3%82%AD%E3%82%B9%E3%83%88%E6%93%8D%E4%BD%9C%E7%B7%A8&amp;diff=2095"/>
		<updated>2016-05-27T12:45:20Z</updated>

		<summary type="html">&lt;p&gt;Ks: ページの作成:「= 概要 = 基本的なテキスト操作、およびプラグインからの操作の考え方です。  = テキスト操作 = プラグインでやる意味は非常...」&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= 概要 =&lt;br /&gt;
基本的なテキスト操作、およびプラグインからの操作の考え方です。&lt;br /&gt;
&lt;br /&gt;
= テキスト操作 =&lt;br /&gt;
プラグインでやる意味は非常に薄いのですが、マクロと同じことをやってみます。&amp;lt;br&amp;gt;&lt;br /&gt;
Mery に標準で同梱されている「昇順で並べ替え」をプラグインで実装します。&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
OnCommand に以下のコードを貼り付けて、ビルドし、Mery で実行します。&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;csharp&amp;quot;&amp;gt;&lt;br /&gt;
// ①コマンドが実行されたエディタのハンドルから、エディタオブジェクトを生成&lt;br /&gt;
var editor = new Editor(hWnd);&lt;br /&gt;
&lt;br /&gt;
// ②エディタでアクティブなドキュメントからテキストを取得&lt;br /&gt;
var text = editor.GetText();&lt;br /&gt;
&lt;br /&gt;
// ③テキストを行単位に分割&lt;br /&gt;
var array = text.Split(new char[] { &#039;\n&#039; });&lt;br /&gt;
&lt;br /&gt;
// ④行を昇順ソート&lt;br /&gt;
Array.Sort(array, StringComparer.CurrentCulture);&lt;br /&gt;
&lt;br /&gt;
// ⑤ソートした結果をマージ&lt;br /&gt;
text = string.Join(&amp;quot;\n&amp;quot;, array);&lt;br /&gt;
&lt;br /&gt;
// ⑥結果をアクティブなドキュメントに対して反映&lt;br /&gt;
editor.SetText(text);&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
① は後の節で説明します。&amp;lt;br&amp;gt;&lt;br /&gt;
② はマクロでの「ActiveDocument.Text」による取得と同じです。&amp;lt;br&amp;gt;&lt;br /&gt;
③～⑤ はただの C# のコードですが、分割、ソート、マージと元のマクロと同じことをしているだけです。&amp;lt;br&amp;gt;&lt;br /&gt;
⑥ は「ActiveDocument.Text」にテキストを設定するのと同じです。&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
見てわかるように、マクロ上では Text 一つのプロパティだったものが、それぞれ Set / Get で分かれています。&amp;lt;br&amp;gt;&lt;br /&gt;
これは Set / Get が明確にわかるように、という意味以上に、GetText が高コスト（重い）処理であることが理由です。&amp;lt;br&amp;gt;&lt;br /&gt;
内部的には「GetLine()」を行数分繰り返しています（API の制約）&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
プラグインといえど、気をつけないとあっという間に遅いものとなってしまうことに注意が必要です。&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= プラグインのアクセスの基本 =&lt;br /&gt;
&amp;lt;source lang=&amp;quot;csharp&amp;quot;&amp;gt;&lt;br /&gt;
// ①コマンドが実行されたエディタのハンドルから、エディタオブジェクトを生成&lt;br /&gt;
var editor = new Editor(hWnd);&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
ですが、この中で hWnd は OnCommand の引数で、自動で渡されるハンドルです。&amp;lt;br&amp;gt;&lt;br /&gt;
これは「コマンドが実行された Editor のハンドル」です。&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
プラグインではマクロのように Editors -&amp;gt; Editor -&amp;gt; Documents -&amp;gt; Document のように独立したオブジェクトになっておらず、直接アクセスすることもできません。&amp;lt;br&amp;gt;&lt;br /&gt;
プラグインでの基本的なアクセス単位は全て「Editor」に対してとなります。&amp;lt;br&amp;gt;&lt;br /&gt;
その時の操作は常に「ActiveDocument」への操作となります。&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
では複数のタブがある場合に、別のタブを操作するにはどうするかと言えば、ActiveDocument の切り替え、つまり処理対象のタブをアクティブにします。&amp;lt;br&amp;gt;&lt;br /&gt;
Mery.DotNetLib.Editor.SetActiveDocument() というメソッドが用意されているので、これで別のタブをアクティブにし処理をします。&amp;lt;br&amp;gt;&lt;br /&gt;
元の状態に戻す必要があるならば、最初のアクティブなタブを覚えておき、最後に戻してあげる必要があります。&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
このように、マクロとプラグインではアクセスの単位が異なります。&amp;lt;br&amp;gt;&lt;br /&gt;
マクロで用意されている機能のほとんどはプラグインでも利用可能ですが、その使用方法には違いがあることに注意してください。&amp;lt;br&amp;gt;&lt;br /&gt;
（さらに、マクロで提供されていてプラグインで提供されていない機能もあるので、プラグインも万能ではありません）&lt;br /&gt;
&lt;br /&gt;
= タブ操作 =&lt;br /&gt;
全タブへの操作のサンプルを書いてみます。&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;csharp&amp;quot;&amp;gt;&lt;br /&gt;
// ①コマンドが実行されたエディタのハンドルから、エディタオブジェクトを生成&lt;br /&gt;
var editor = new Editor(hWnd);&lt;br /&gt;
&lt;br /&gt;
// ②現在アクティブなタブのインデックス番号を取得&lt;br /&gt;
int activedIndex = editor.GetActiveDocumentIndex();&lt;br /&gt;
&lt;br /&gt;
// ③Editor 内の全タブ数を取得&lt;br /&gt;
int tabCount = editor.GetDocumentCount();&lt;br /&gt;
&lt;br /&gt;
int total = 0;&lt;br /&gt;
for (int i = 0; i &amp;lt; tabCount; i++) {&lt;br /&gt;
    // ④処理対象のタブをアクティブ化&lt;br /&gt;
    editor.SetActiveDocument(i);&lt;br /&gt;
&lt;br /&gt;
    // ⑤タブ内の文字数を取得して、全文字数へ加算&lt;br /&gt;
    total += editor.GetLength(true);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// ⑥最初にアクティブだったタブをアクティブ化&lt;br /&gt;
editor.SetActiveDocument(activedIndex);&lt;br /&gt;
&lt;br /&gt;
// ⑦結果の表示&lt;br /&gt;
MessageBox.Show(&amp;quot;全タブの文字数：&amp;quot; + total);&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
複数のタブを開いて実行してみてください。&amp;lt;br&amp;gt;&lt;br /&gt;
全てのタブの合計文字数が表示されるはずです。&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
③ で N 個のタブを開いているのがわかります。&amp;lt;br&amp;gt;&lt;br /&gt;
インデックスは 0 始まりで N-1 までなので、それに合わせてループし ④ でアクティブ化します。&amp;lt;br&amp;gt;&lt;br /&gt;
⑤ でタブ内の全文字数を取得し、合算しています。&amp;lt;br&amp;gt;&lt;br /&gt;
マクロであれば、ActiveDocument.Text.length と表現するため、editor.GetText().Length としたくなりますが、上で書いているように GetText() は重い処理となるため専用の GetLength() を使用しています。&amp;lt;br&amp;gt;&lt;br /&gt;
（もし興味があれば、非常にでかいテキストに対し実行して、違いを確認してみてください。10 万行を超えてくると違いが顕著になります）&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
実行してみて気づくことがあります。&amp;lt;br&amp;gt;&lt;br /&gt;
それはパタパタとタブの切り替えが見えてしまうことです。&amp;lt;br&amp;gt;&lt;br /&gt;
プラグインにおける弱点の 1 つがこれで、マクロであればアクティブ化が必要ないためこのようなことがないのですが、プラグインでは常にアクティブ化を意識する必要があり、結果切り替えが見えてしまいます。&amp;lt;br&amp;gt;&lt;br /&gt;
マクロにおける window.Redraw に該当する Editor.SetRedraw() が存在するため、①と②の間に editor.SetRedraw(false); を、⑥と⑦の間に editor.SetRedraw(true); を入れてみてください。&amp;lt;br&amp;gt;&lt;br /&gt;
実行してみると、パタパタしなくなることがわかります。&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
ただし注意点として、マクロの Redraw は true にしなくとも勝手に再描画されるようになりますが、プラグインの場合はなりません。&amp;lt;br&amp;gt;&lt;br /&gt;
意図的に true にしてあげないと描画が止まり、Mery が固まったように見えてしまいます。&amp;lt;br&amp;gt;&lt;br /&gt;
万全を期すならば、try - finally で確実に描画を再開できるようにする必要があります。&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
プラグインはマクロより危険な状態になりやすいため、扱いには気をつけましょう。&lt;/div&gt;</summary>
		<author><name>Ks</name></author>
	</entry>
	<entry>
		<id>https://www.haijin-boys.com/wiki/index.php?title=%E3%83%97%E3%83%A9%E3%82%B0%E3%82%A4%E3%83%B3%E3%83%A9%E3%82%A4%E3%83%96%E3%83%A9%E3%83%AA&amp;diff=2094</id>
		<title>プラグインライブラリ</title>
		<link rel="alternate" type="text/html" href="https://www.haijin-boys.com/wiki/index.php?title=%E3%83%97%E3%83%A9%E3%82%B0%E3%82%A4%E3%83%B3%E3%83%A9%E3%82%A4%E3%83%96%E3%83%A9%E3%83%AA&amp;diff=2094"/>
		<updated>2016-05-27T12:04:19Z</updated>

		<summary type="html">&lt;p&gt;Ks: /* .NET プラグイン */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Mery で使用できるプラグインを集めたライブラリです。&lt;br /&gt;
&lt;br /&gt;
DLLファイル を「Plugins」に保存し、ツールメニューの「プラグイン」から使用してください。&lt;br /&gt;
&lt;br /&gt;
プラグインライブラリはどなたでも自由に編集できますので、みなさんが作成した便利なプラグインをどんどん掲載してください。&lt;br /&gt;
&lt;br /&gt;
また、[[プラグイン]]にも掲載されていますのでそちらもご覧ください。&lt;br /&gt;
&lt;br /&gt;
== プログラミング補助 ==&lt;br /&gt;
&lt;br /&gt;
*[https://github.com/haijinboys/mery-plugin-livestyle Emmet LiveStyle] (kuro)&lt;br /&gt;
&lt;br /&gt;
== ファイル操作補助 ==&lt;br /&gt;
*[[OutputBar拡張]] (脚立)&lt;br /&gt;
*[[別プロセスで編集]] (ks)&lt;br /&gt;
&lt;br /&gt;
== ソースサンプル ==&lt;br /&gt;
*[[タスクバーの「すべてのウィンドウを閉じる」実行時不具合の緩和]]（ks）&lt;br /&gt;
&lt;br /&gt;
== .NET プラグイン ==&lt;br /&gt;
*[[.NETプラグイン開発キット]]&lt;br /&gt;
*[[.NETプラグイン開発　導入編]]&lt;br /&gt;
*[[.NETプラグイン開発　テキスト操作編]]&lt;/div&gt;</summary>
		<author><name>Ks</name></author>
	</entry>
	<entry>
		<id>https://www.haijin-boys.com/wiki/index.php?title=.NET%E3%83%97%E3%83%A9%E3%82%B0%E3%82%A4%E3%83%B3%E9%96%8B%E7%99%BA_%E5%B0%8E%E5%85%A5%E7%B7%A8&amp;diff=2093</id>
		<title>.NETプラグイン開発 導入編</title>
		<link rel="alternate" type="text/html" href="https://www.haijin-boys.com/wiki/index.php?title=.NET%E3%83%97%E3%83%A9%E3%82%B0%E3%82%A4%E3%83%B3%E9%96%8B%E7%99%BA_%E5%B0%8E%E5%85%A5%E7%B7%A8&amp;diff=2093"/>
		<updated>2016-05-27T11:40:09Z</updated>

		<summary type="html">&lt;p&gt;Ks: ページの作成:「= 概要 = Visual Studio の導入から Hello World! まで  = Visual Studio のインストール = 2016/5/27 現在、Microsoft は Visual Studio 2015 Community を無...」&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= 概要 =&lt;br /&gt;
Visual Studio の導入から Hello World! まで&lt;br /&gt;
&lt;br /&gt;
= Visual Studio のインストール =&lt;br /&gt;
2016/5/27 現在、Microsoft は Visual Studio 2015 Community を無料で公開しています。&amp;lt;br&amp;gt;&lt;br /&gt;
非常に重いですが、これを導入します。&amp;lt;br&amp;gt;&lt;br /&gt;
古い Visual Studio でも開発は可能かもしれませんが、少なくともプロジェクトテンプレートは流用できませんので、その場合はプロジェクト環境をご自身で調整いただく必要があります。&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== ダウンロード ==&lt;br /&gt;
「Visual Studio 2015 Community」で検索し、ヒットしたページからダウンロードします。&amp;lt;br&amp;gt;&lt;br /&gt;
あるいは [[https://www.visualstudio.com/ja-jp/products/visual-studio-community-vs.aspx Visual Studio Community]] からダウンロードします。（2016/5/27 現在）&amp;lt;br&amp;gt;&lt;br /&gt;
通常は Web インストーラですが、ISO（オフライン）版インストーラを使用しても構いません。&lt;br /&gt;
&lt;br /&gt;
== セットアップ ==&lt;br /&gt;
ダウンロードした「vs_community_JPN.exe」を実行します。&amp;lt;br&amp;gt;&lt;br /&gt;
（あるいはダウンロードした ISO をマウントし、セットアップを実行します）&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[ファイル:VS_SETUP_SELECT.png]]&amp;lt;br&amp;gt;&lt;br /&gt;
プラグイン開発だけであれば、不要な機能もあるのでカスタムを選び削除します。&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[ファイル:VS_SETUP_CUSTOM.png]]&amp;lt;br&amp;gt;&lt;br /&gt;
全部要らないので、チェックを外します。&amp;lt;br&amp;gt;&lt;br /&gt;
これでも 6GB の空き容量が必要なので、注意してください。&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[ファイル:VS_SETUP_PROGRESS.png]]&amp;lt;br&amp;gt;&lt;br /&gt;
ひたすらインストールの完了を待ちます。&amp;lt;br&amp;gt;&lt;br /&gt;
SSD にオフライン版をインストールするのでも 30 分かかりますので、気長にお待ちください。&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[ファイル:VS_SETUP_COMPLETE.png]]&amp;lt;br&amp;gt;&lt;br /&gt;
完了しました。&amp;lt;br&amp;gt;&lt;br /&gt;
（エラーが出ていますが、使わないファイルについてなので無視で OK です）&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
このまま「起動」を押し、Visual Studio を起動します。&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[ファイル:VS_FIRST_SIGNIN.png]]&amp;lt;br&amp;gt;&lt;br /&gt;
サインインが求められますが、まずは「後で行う」でスキップします。&amp;lt;br&amp;gt;&lt;br /&gt;
すでに登録済みの方は、ここでサインインしてしまって構いません。&amp;lt;br&amp;gt;&lt;br /&gt;
なお、Visual Studio 2015 Community を継続して利用するには登録（無料）が必要ですので、後ほど登録してサインインをしてください。&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[ファイル:VS_FIRST_SELECT_VIEW.png]]&amp;lt;br&amp;gt;&lt;br /&gt;
どれを選んでも OK です。&amp;lt;br&amp;gt;&lt;br /&gt;
ただプラグイン開発以外に使う予定がなければ、「開発設定」は「Visual C#」など使う言語を選択しておいた方が便利です。&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[ファイル:VS_STARTUP_VIEW.png]]&amp;lt;br&amp;gt;&lt;br /&gt;
無事起動しました。&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= .NET プラグイン開発キットのインストール =&lt;br /&gt;
[[ファイル:DotNetPluginKit.zip‎]] をダウンロードし、中の bat を実行します。&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
メニューから [新規作成] - [プロジェクト(P)] を選び、プロジェクトを作成します。&amp;lt;br&amp;gt;&lt;br /&gt;
[[ファイル:VS_CREATE_PROJECT.png]]&amp;lt;br&amp;gt;&lt;br /&gt;
Visual C# の下の方に「MeryPlugin」があればインストール成功です。&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= プロジェクトの作成 =&lt;br /&gt;
先ほどの画面で、上の「.NET Framework 4.***」を対象のバージョンに変更します。&amp;lt;br&amp;gt;&lt;br /&gt;
4.5 以降であればどれでも OK ですが、プラグインを実行する PC にそのバージョン以降がインストールされている必要があります。&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
「MeryPlugin」を選び、下の「名前」を適当な名前に変更します。&amp;lt;br&amp;gt;&lt;br /&gt;
変えたら「OK」で作成します。&lt;br /&gt;
&lt;br /&gt;
= ビルド =&lt;br /&gt;
しばらくすればプロジェクトが作成されます。&amp;lt;br&amp;gt;&lt;br /&gt;
作成されたら、メニューから [ビルド] - [ソリューションのビルド] を実行しましょう。&amp;lt;br&amp;gt;&lt;br /&gt;
C++ と違い、C# の場合はビルドが速いので、すぐに完了するはずです。&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
ビルドが完了したら、エクスプローラーでプロジェクトのフォルダを開きます。&amp;lt;br&amp;gt;&lt;br /&gt;
ソリューションエクスプローラーでプロジェクトを右クリックし、メニューから「エクスプローラーでフォルダを開く」を実行します。&amp;lt;br&amp;gt;&lt;br /&gt;
あるいは &amp;quot;%USERPROFILE%\Documents\Visual Studio 2015\Projects&amp;quot; で、作成したプロジェクトを開きます。&amp;lt;br&amp;gt;&lt;br /&gt;
中に「Plugins」というフォルダができあがっているはずですが、これが Mery のプラグインです。&amp;lt;br&amp;gt;&lt;br /&gt;
これをそのまま Mery に放り込めば、プラグインが動作します。&amp;lt;br&amp;gt;&lt;br /&gt;
ただし導入直後のプラグインは何も処理しないため、入れても何も変わりません。&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= テスト用の Mery 環境の準備 =&lt;br /&gt;
既存の Mery の環境を壊すのも怖いため、開発用の環境を用意します。&amp;lt;br&amp;gt;&lt;br /&gt;
Mery をダウンロード、あるいは手元の Mery をコピーし、独立した Mery を作ります。&amp;lt;br&amp;gt;&lt;br /&gt;
Mery.exe と同じフォルダに Mery.ini を作成します。&amp;lt;br&amp;gt;&lt;br /&gt;
Mery.ini の内容は空で構いません。&amp;lt;br&amp;gt;&lt;br /&gt;
ここに、先ほどの Plugins を放り込みます。&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
実行すると、メニューの [ツール] - [プラグイン] に作成したプラグインが追加されているはずです。&amp;lt;br&amp;gt;&lt;br /&gt;
なお処理が何もない場合は実行もできないようになっているので、灰色のはずです。&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Hello World! =&lt;br /&gt;
お決まりの Hello World! を表示させてみます。&amp;lt;br&amp;gt;&lt;br /&gt;
ソリューションエクスプローラーで「Programs.cs」を開きます。&amp;lt;br&amp;gt;&lt;br /&gt;
region でグループ分けされ、恐らく全て閉じられていると思います。&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
「標準処理」を開いてください。&amp;lt;br&amp;gt;&lt;br /&gt;
中のメソッドも全てコメントアウトされているはずです。&amp;lt;br&amp;gt;&lt;br /&gt;
この中で「OnCommand」のコメントアウトを外します。&amp;lt;br&amp;gt;&lt;br /&gt;
これは、プラグインが実行（メニューやツールバーで押した時）に呼ばれるメソッドです。&amp;lt;br&amp;gt;&lt;br /&gt;
中に以下のコードを挿入します。&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;csharp&amp;quot;&amp;gt;&lt;br /&gt;
MessageBox.Show(&amp;quot;Hello World!&amp;quot;);&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
これで再度ビルドし、できあがる Plugins を改めて Mery にコピーします。&amp;lt;br&amp;gt;&lt;br /&gt;
Mery を起動し、メニューから [ツール] - [プラグイン] で、先ほど灰色で押せなかったプラグインが押せるようになっているはずです。&amp;lt;br&amp;gt;&lt;br /&gt;
これを押せば、Hello World! と表示されるはずです。&amp;lt;br&amp;gt;&lt;br /&gt;
[[ファイル:DOTNET_HELLO_WORLD.png]]&amp;lt;br&amp;gt;&lt;/div&gt;</summary>
		<author><name>Ks</name></author>
	</entry>
	<entry>
		<id>https://www.haijin-boys.com/wiki/index.php?title=%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB:DOTNET_HELLO_WORLD.png&amp;diff=2092</id>
		<title>ファイル:DOTNET HELLO WORLD.png</title>
		<link rel="alternate" type="text/html" href="https://www.haijin-boys.com/wiki/index.php?title=%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB:DOTNET_HELLO_WORLD.png&amp;diff=2092"/>
		<updated>2016-05-27T11:36:53Z</updated>

		<summary type="html">&lt;p&gt;Ks: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Ks</name></author>
	</entry>
	<entry>
		<id>https://www.haijin-boys.com/wiki/index.php?title=%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB:VS_CREATE_PROJECT.png&amp;diff=2091</id>
		<title>ファイル:VS CREATE PROJECT.png</title>
		<link rel="alternate" type="text/html" href="https://www.haijin-boys.com/wiki/index.php?title=%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB:VS_CREATE_PROJECT.png&amp;diff=2091"/>
		<updated>2016-05-27T11:35:45Z</updated>

		<summary type="html">&lt;p&gt;Ks: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Ks</name></author>
	</entry>
	<entry>
		<id>https://www.haijin-boys.com/wiki/index.php?title=%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB:VS_STARTUP_VIEW.png&amp;diff=2090</id>
		<title>ファイル:VS STARTUP VIEW.png</title>
		<link rel="alternate" type="text/html" href="https://www.haijin-boys.com/wiki/index.php?title=%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB:VS_STARTUP_VIEW.png&amp;diff=2090"/>
		<updated>2016-05-27T11:35:31Z</updated>

		<summary type="html">&lt;p&gt;Ks: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Ks</name></author>
	</entry>
	<entry>
		<id>https://www.haijin-boys.com/wiki/index.php?title=%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB:VS_FIRST_SELECT_VIEW.png&amp;diff=2089</id>
		<title>ファイル:VS FIRST SELECT VIEW.png</title>
		<link rel="alternate" type="text/html" href="https://www.haijin-boys.com/wiki/index.php?title=%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB:VS_FIRST_SELECT_VIEW.png&amp;diff=2089"/>
		<updated>2016-05-27T11:35:20Z</updated>

		<summary type="html">&lt;p&gt;Ks: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Ks</name></author>
	</entry>
	<entry>
		<id>https://www.haijin-boys.com/wiki/index.php?title=%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB:VS_FIRST_SIGNIN.png&amp;diff=2088</id>
		<title>ファイル:VS FIRST SIGNIN.png</title>
		<link rel="alternate" type="text/html" href="https://www.haijin-boys.com/wiki/index.php?title=%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB:VS_FIRST_SIGNIN.png&amp;diff=2088"/>
		<updated>2016-05-27T11:35:05Z</updated>

		<summary type="html">&lt;p&gt;Ks: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Ks</name></author>
	</entry>
	<entry>
		<id>https://www.haijin-boys.com/wiki/index.php?title=%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB:VS_SETUP_COMPLETE.png&amp;diff=2087</id>
		<title>ファイル:VS SETUP COMPLETE.png</title>
		<link rel="alternate" type="text/html" href="https://www.haijin-boys.com/wiki/index.php?title=%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB:VS_SETUP_COMPLETE.png&amp;diff=2087"/>
		<updated>2016-05-27T11:34:53Z</updated>

		<summary type="html">&lt;p&gt;Ks: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Ks</name></author>
	</entry>
	<entry>
		<id>https://www.haijin-boys.com/wiki/index.php?title=%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB:VS_SETUP_PROGRESS.png&amp;diff=2086</id>
		<title>ファイル:VS SETUP PROGRESS.png</title>
		<link rel="alternate" type="text/html" href="https://www.haijin-boys.com/wiki/index.php?title=%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB:VS_SETUP_PROGRESS.png&amp;diff=2086"/>
		<updated>2016-05-27T11:34:39Z</updated>

		<summary type="html">&lt;p&gt;Ks: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Ks</name></author>
	</entry>
	<entry>
		<id>https://www.haijin-boys.com/wiki/index.php?title=%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB:VS_SETUP_CUSTOM.png&amp;diff=2085</id>
		<title>ファイル:VS SETUP CUSTOM.png</title>
		<link rel="alternate" type="text/html" href="https://www.haijin-boys.com/wiki/index.php?title=%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB:VS_SETUP_CUSTOM.png&amp;diff=2085"/>
		<updated>2016-05-27T11:03:31Z</updated>

		<summary type="html">&lt;p&gt;Ks: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Ks</name></author>
	</entry>
	<entry>
		<id>https://www.haijin-boys.com/wiki/index.php?title=%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB:VS_SETUP_SELECT.png&amp;diff=2084</id>
		<title>ファイル:VS SETUP SELECT.png</title>
		<link rel="alternate" type="text/html" href="https://www.haijin-boys.com/wiki/index.php?title=%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB:VS_SETUP_SELECT.png&amp;diff=2084"/>
		<updated>2016-05-27T11:03:18Z</updated>

		<summary type="html">&lt;p&gt;Ks: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Ks</name></author>
	</entry>
	<entry>
		<id>https://www.haijin-boys.com/wiki/index.php?title=.NET%E3%83%97%E3%83%A9%E3%82%B0%E3%82%A4%E3%83%B3%E9%96%8B%E7%99%BA%E3%82%AD%E3%83%83%E3%83%88&amp;diff=2083</id>
		<title>.NETプラグイン開発キット</title>
		<link rel="alternate" type="text/html" href="https://www.haijin-boys.com/wiki/index.php?title=.NET%E3%83%97%E3%83%A9%E3%82%B0%E3%82%A4%E3%83%B3%E9%96%8B%E7%99%BA%E3%82%AD%E3%83%83%E3%83%88&amp;diff=2083"/>
		<updated>2016-05-27T10:49:55Z</updated>

		<summary type="html">&lt;p&gt;Ks: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= 概要 =&lt;br /&gt;
Mery のプラグインを .NET Framework を使って開発するためのキットです。&amp;lt;br&amp;gt;&lt;br /&gt;
本キットを使用して作成したプラグインを動作させるには、以下のランタイムがインストールされている必要があります。&lt;br /&gt;
* .NET Framework 4.5 以降&lt;br /&gt;
* Visual C++ Redistributable for Visual Studio 2015 (x86)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= ファイル =&lt;br /&gt;
[[ファイル:DotNetPluginKit.zip‎]]　(ver 2.0.0)&amp;lt;br&amp;gt;&lt;br /&gt;
通常はこちらを使用してください。&lt;br /&gt;
&lt;br /&gt;
[[ファイル:DotNetPluginKit(32bitOnly).zip]]　(ver 2.0.0)&amp;lt;br&amp;gt;&lt;br /&gt;
32bit の DLL を使用する場合はこちらを使用してください。&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= インストール手順 =&lt;br /&gt;
先に VisualStudio がインストールされている必要があります。&amp;lt;br&amp;gt;&lt;br /&gt;
ダウンロードしたファイルを伸張し、bat ファイルを実行してください。&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== 更新手順 ==&lt;br /&gt;
bat を実行しても更新されるのはプロジェクトテンプレートのみです。&amp;lt;br&amp;gt;&lt;br /&gt;
すでに作成済みのプロジェクトがある場合は、zip の中に含まれる Library を自分のプロジェクトに上書きしてください。&amp;lt;br&amp;gt;&lt;br /&gt;
（いいアップデートの方法があれば教えてください）&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= 履歴 =&lt;br /&gt;
*2016/5/27: ver 2.0.0&amp;lt;br&amp;gt;&lt;br /&gt;
　　公開&lt;/div&gt;</summary>
		<author><name>Ks</name></author>
	</entry>
	<entry>
		<id>https://www.haijin-boys.com/wiki/index.php?title=%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB:DotNetPluginKit(32bitOnly).zip&amp;diff=2082</id>
		<title>ファイル:DotNetPluginKit(32bitOnly).zip</title>
		<link rel="alternate" type="text/html" href="https://www.haijin-boys.com/wiki/index.php?title=%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB:DotNetPluginKit(32bitOnly).zip&amp;diff=2082"/>
		<updated>2016-05-27T10:48:42Z</updated>

		<summary type="html">&lt;p&gt;Ks: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Ks</name></author>
	</entry>
	<entry>
		<id>https://www.haijin-boys.com/wiki/index.php?title=%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB:DotNetPluginKit.zip&amp;diff=2081</id>
		<title>ファイル:DotNetPluginKit.zip</title>
		<link rel="alternate" type="text/html" href="https://www.haijin-boys.com/wiki/index.php?title=%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB:DotNetPluginKit.zip&amp;diff=2081"/>
		<updated>2016-05-27T10:48:27Z</updated>

		<summary type="html">&lt;p&gt;Ks: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Ks</name></author>
	</entry>
	<entry>
		<id>https://www.haijin-boys.com/wiki/index.php?title=.NET%E3%83%97%E3%83%A9%E3%82%B0%E3%82%A4%E3%83%B3%E9%96%8B%E7%99%BA%E3%82%AD%E3%83%83%E3%83%88&amp;diff=2080</id>
		<title>.NETプラグイン開発キット</title>
		<link rel="alternate" type="text/html" href="https://www.haijin-boys.com/wiki/index.php?title=.NET%E3%83%97%E3%83%A9%E3%82%B0%E3%82%A4%E3%83%B3%E9%96%8B%E7%99%BA%E3%82%AD%E3%83%83%E3%83%88&amp;diff=2080"/>
		<updated>2016-05-27T10:48:03Z</updated>

		<summary type="html">&lt;p&gt;Ks: ページの作成:「= 概要 = Mery のプラグインを .NET Framework を使って開発するためのキットです。&amp;lt;br&amp;gt; 本キットを使用して作成したプラグインを動...」&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= 概要 =&lt;br /&gt;
Mery のプラグインを .NET Framework を使って開発するためのキットです。&amp;lt;br&amp;gt;&lt;br /&gt;
本キットを使用して作成したプラグインを動作させるには、以下のランタイムがインストールされている必要があります。&lt;br /&gt;
* .NET Framework 4.5 以降&lt;br /&gt;
* Visual C++ Redistributable for Visual Studio 2015 (x86)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= ファイル =&lt;br /&gt;
[[ファイル:DotNetPluginKit.zip‎]]　(ver 2.0.0)&lt;br /&gt;
通常はこちらを使用してください。&lt;br /&gt;
&lt;br /&gt;
[[ファイル:DotNetPluginKit(32bitOnly).zip]]　(ver 2.0.0)&lt;br /&gt;
32bit の DLL を使用する場合はこちらを使用してください。&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= インストール手順 =&lt;br /&gt;
先に VisualStudio がインストールされている必要があります。&amp;lt;br&amp;gt;&lt;br /&gt;
ダウンロードしたファイルを伸張し、bat ファイルを実行してください。&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== 更新手順 ==&lt;br /&gt;
bat を実行しても更新されるのはプロジェクトテンプレートのみです。&amp;lt;br&amp;gt;&lt;br /&gt;
すでに作成済みのプロジェクトがある場合は、zip の中に含まれる Library を自分のプロジェクトに上書きしてください。&amp;lt;br&amp;gt;&lt;br /&gt;
（いいアップデートの方法があれば教えてください）&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= 履歴 =&lt;br /&gt;
*2016/5/27: ver 2.0.0&amp;lt;br&amp;gt;&lt;br /&gt;
　公開&lt;/div&gt;</summary>
		<author><name>Ks</name></author>
	</entry>
	<entry>
		<id>https://www.haijin-boys.com/wiki/index.php?title=%E3%83%97%E3%83%A9%E3%82%B0%E3%82%A4%E3%83%B3%E3%83%A9%E3%82%A4%E3%83%96%E3%83%A9%E3%83%AA&amp;diff=2079</id>
		<title>プラグインライブラリ</title>
		<link rel="alternate" type="text/html" href="https://www.haijin-boys.com/wiki/index.php?title=%E3%83%97%E3%83%A9%E3%82%B0%E3%82%A4%E3%83%B3%E3%83%A9%E3%82%A4%E3%83%96%E3%83%A9%E3%83%AA&amp;diff=2079"/>
		<updated>2016-05-27T10:26:26Z</updated>

		<summary type="html">&lt;p&gt;Ks: .NETプラグイン開発キット&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Mery で使用できるプラグインを集めたライブラリです。&lt;br /&gt;
&lt;br /&gt;
DLLファイル を「Plugins」に保存し、ツールメニューの「プラグイン」から使用してください。&lt;br /&gt;
&lt;br /&gt;
プラグインライブラリはどなたでも自由に編集できますので、みなさんが作成した便利なプラグインをどんどん掲載してください。&lt;br /&gt;
&lt;br /&gt;
また、[[プラグイン]]にも掲載されていますのでそちらもご覧ください。&lt;br /&gt;
&lt;br /&gt;
== プログラミング補助 ==&lt;br /&gt;
&lt;br /&gt;
*[https://github.com/haijinboys/mery-plugin-livestyle Emmet LiveStyle] (kuro)&lt;br /&gt;
&lt;br /&gt;
== ファイル操作補助 ==&lt;br /&gt;
*[[OutputBar拡張]] (脚立)&lt;br /&gt;
*[[別プロセスで編集]] (ks)&lt;br /&gt;
&lt;br /&gt;
== ソースサンプル ==&lt;br /&gt;
*[[タスクバーの「すべてのウィンドウを閉じる」実行時不具合の緩和]]（ks）&lt;br /&gt;
&lt;br /&gt;
== .NET プラグイン ==&lt;br /&gt;
*[[.NETプラグイン開発キット]]&lt;br /&gt;
*[[.NETプラグイン開発　導入編]]&lt;/div&gt;</summary>
		<author><name>Ks</name></author>
	</entry>
	<entry>
		<id>https://www.haijin-boys.com/wiki/index.php?title=%E6%A4%9C%E7%B4%A2%E3%83%92%E3%83%83%E3%83%88%E6%95%B0%E8%A1%A8%E7%A4%BA&amp;diff=2077</id>
		<title>検索ヒット数表示</title>
		<link rel="alternate" type="text/html" href="https://www.haijin-boys.com/wiki/index.php?title=%E6%A4%9C%E7%B4%A2%E3%83%92%E3%83%83%E3%83%88%E6%95%B0%E8%A1%A8%E7%A4%BA&amp;diff=2077"/>
		<updated>2016-05-25T16:19:00Z</updated>

		<summary type="html">&lt;p&gt;Ks: 分解能の説明追加&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= 概要 =&lt;br /&gt;
検索でヒットした数をカウント、表示します。&amp;lt;br&amp;gt;&lt;br /&gt;
マクロ版、プラグイン版を比較用に 3 パターンずつ用意しています。&lt;br /&gt;
&lt;br /&gt;
= ファイル =&lt;br /&gt;
[[ファイル:HitCount.zip‎]]（マクロおよびプラグイン）&amp;lt;br&amp;gt;&lt;br /&gt;
[[ファイル:src_HitCount.zip‎]]（プラグインのソース、VisualStudio 2015 Community にて作成）&lt;br /&gt;
&lt;br /&gt;
= 使用上の注意 =&lt;br /&gt;
マクロライブラリにある [[includeライブラリ]] を利用しています．&lt;br /&gt;
このマクロの前にそちらを導入してください．&amp;lt;br&amp;gt;&lt;br /&gt;
プラグインの利用には、&lt;br /&gt;
*.NET Framework 4.5 以降&lt;br /&gt;
*Visual C++ Redistributable for Visual Studio 2015 (x86) &lt;br /&gt;
がインストールされている必要があります。&lt;br /&gt;
&lt;br /&gt;
= 実行時間参考 =&lt;br /&gt;
いくつかのパターンがあり、かなり実行時間に差があります。&lt;br /&gt;
（実装の効率・非効率の差も当然ありますので、参考までに）&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
「吾輩は猫である」（青空文庫）に対し、&lt;br /&gt;
*「通常検索」では「は」を検索（ヒット件数：7379）&lt;br /&gt;
*「正規表現検索」では「[あ-ん]」を検索（ヒット件数：223937）&lt;br /&gt;
したときの実行時間（単位は ms）&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!パターン&lt;br /&gt;
|通常検索&lt;br /&gt;
|正規表現&lt;br /&gt;
|-&lt;br /&gt;
!①マクロ（Selection.FindRepeat）&lt;br /&gt;
|16,966&lt;br /&gt;
|539,398&lt;br /&gt;
|-&lt;br /&gt;
!②マクロ（Selection.Replace)&lt;br /&gt;
|78&lt;br /&gt;
|16,164&lt;br /&gt;
|-&lt;br /&gt;
!③マクロ（JScript Only）&lt;br /&gt;
|0（※）&lt;br /&gt;
|47&lt;br /&gt;
|-&lt;br /&gt;
!④プラグイン（提供されている API 使用）&lt;br /&gt;
|706&lt;br /&gt;
|27,966&lt;br /&gt;
|-&lt;br /&gt;
!⑤プラグイン（.NET の API 使用）&lt;br /&gt;
|26&lt;br /&gt;
|178&lt;br /&gt;
|-&lt;br /&gt;
!⑥プラグイン（鬼雲の DLL を直接使用）&lt;br /&gt;
|(⑤と同じ)&lt;br /&gt;
|122&lt;br /&gt;
|}&lt;br /&gt;
※マクロの場合、時間計測の分解能が 16ms ですので、実際には 16ms 未満を意味します。&lt;/div&gt;</summary>
		<author><name>Ks</name></author>
	</entry>
	<entry>
		<id>https://www.haijin-boys.com/wiki/index.php?title=%E6%A4%9C%E7%B4%A2%E3%83%92%E3%83%83%E3%83%88%E6%95%B0%E8%A1%A8%E7%A4%BA&amp;diff=2076</id>
		<title>検索ヒット数表示</title>
		<link rel="alternate" type="text/html" href="https://www.haijin-boys.com/wiki/index.php?title=%E6%A4%9C%E7%B4%A2%E3%83%92%E3%83%83%E3%83%88%E6%95%B0%E8%A1%A8%E7%A4%BA&amp;diff=2076"/>
		<updated>2016-05-25T16:14:41Z</updated>

		<summary type="html">&lt;p&gt;Ks: 数値の写しミス修正&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= 概要 =&lt;br /&gt;
検索でヒットした数をカウント、表示します。&amp;lt;br&amp;gt;&lt;br /&gt;
マクロ版、プラグイン版を比較用に 3 パターンずつ用意しています。&lt;br /&gt;
&lt;br /&gt;
= ファイル =&lt;br /&gt;
[[ファイル:HitCount.zip‎]]（マクロおよびプラグイン）&amp;lt;br&amp;gt;&lt;br /&gt;
[[ファイル:src_HitCount.zip‎]]（プラグインのソース、VisualStudio 2015 Community にて作成）&lt;br /&gt;
&lt;br /&gt;
= 使用上の注意 =&lt;br /&gt;
マクロライブラリにある [[includeライブラリ]] を利用しています．&lt;br /&gt;
このマクロの前にそちらを導入してください．&amp;lt;br&amp;gt;&lt;br /&gt;
プラグインの利用には、&lt;br /&gt;
*.NET Framework 4.5 以降&lt;br /&gt;
*Visual C++ Redistributable for Visual Studio 2015 (x86) &lt;br /&gt;
がインストールされている必要があります。&lt;br /&gt;
&lt;br /&gt;
= 実行時間参考 =&lt;br /&gt;
いくつかのパターンがあり、かなり実行時間に差があります。&lt;br /&gt;
（実装の効率・非効率の差も当然ありますので、参考までに）&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
「吾輩は猫である」（青空文庫）に対し、&lt;br /&gt;
*「通常検索」では「は」を検索（ヒット件数：7379）&lt;br /&gt;
*「正規表現検索」では「[あ-ん]」を検索（ヒット件数：223937）&lt;br /&gt;
したときの実行時間（単位は ms）&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!パターン&lt;br /&gt;
|通常検索&lt;br /&gt;
|正規表現&lt;br /&gt;
|-&lt;br /&gt;
!①マクロ（Selection.FindRepeat）&lt;br /&gt;
|16,966&lt;br /&gt;
|539,398&lt;br /&gt;
|-&lt;br /&gt;
!②マクロ（Selection.Replace)&lt;br /&gt;
|78&lt;br /&gt;
|16,164&lt;br /&gt;
|-&lt;br /&gt;
!③マクロ（JScript Only）&lt;br /&gt;
|0&lt;br /&gt;
|47&lt;br /&gt;
|-&lt;br /&gt;
!④プラグイン（提供されている API 使用）&lt;br /&gt;
|706&lt;br /&gt;
|27,966&lt;br /&gt;
|-&lt;br /&gt;
!⑤プラグイン（.NET の API 使用）&lt;br /&gt;
|26&lt;br /&gt;
|178&lt;br /&gt;
|-&lt;br /&gt;
!⑥プラグイン（鬼雲の DLL を直接使用）&lt;br /&gt;
|(⑤と同じ)&lt;br /&gt;
|122&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Ks</name></author>
	</entry>
	<entry>
		<id>https://www.haijin-boys.com/wiki/index.php?title=%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB:src_HitCount.zip&amp;diff=2075</id>
		<title>ファイル:src HitCount.zip</title>
		<link rel="alternate" type="text/html" href="https://www.haijin-boys.com/wiki/index.php?title=%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB:src_HitCount.zip&amp;diff=2075"/>
		<updated>2016-05-25T16:12:06Z</updated>

		<summary type="html">&lt;p&gt;Ks: HitCountプラグインのソース初版&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;HitCountプラグインのソース初版&lt;/div&gt;</summary>
		<author><name>Ks</name></author>
	</entry>
	<entry>
		<id>https://www.haijin-boys.com/wiki/index.php?title=%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB:HitCount.zip&amp;diff=2074</id>
		<title>ファイル:HitCount.zip</title>
		<link rel="alternate" type="text/html" href="https://www.haijin-boys.com/wiki/index.php?title=%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB:HitCount.zip&amp;diff=2074"/>
		<updated>2016-05-25T16:11:47Z</updated>

		<summary type="html">&lt;p&gt;Ks: 初版&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;初版&lt;/div&gt;</summary>
		<author><name>Ks</name></author>
	</entry>
	<entry>
		<id>https://www.haijin-boys.com/wiki/index.php?title=%E6%A4%9C%E7%B4%A2%E3%83%92%E3%83%83%E3%83%88%E6%95%B0%E8%A1%A8%E7%A4%BA&amp;diff=2073</id>
		<title>検索ヒット数表示</title>
		<link rel="alternate" type="text/html" href="https://www.haijin-boys.com/wiki/index.php?title=%E6%A4%9C%E7%B4%A2%E3%83%92%E3%83%83%E3%83%88%E6%95%B0%E8%A1%A8%E7%A4%BA&amp;diff=2073"/>
		<updated>2016-05-25T16:04:45Z</updated>

		<summary type="html">&lt;p&gt;Ks: ページの作成:「= 概要 = 検索でヒットした数をカウント、表示します。&amp;lt;br&amp;gt; マクロ版、プラグイン版を比較用に 3 パターンずつ用意しています...」&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= 概要 =&lt;br /&gt;
検索でヒットした数をカウント、表示します。&amp;lt;br&amp;gt;&lt;br /&gt;
マクロ版、プラグイン版を比較用に 3 パターンずつ用意しています。&lt;br /&gt;
&lt;br /&gt;
= ファイル =&lt;br /&gt;
[[ファイル:HitCount.zip‎]]（マクロおよびプラグイン）&amp;lt;br&amp;gt;&lt;br /&gt;
[[ファイル:src_HitCount.zip‎]]（プラグインのソース、VisualStudio 2015 Community にて作成）&lt;br /&gt;
&lt;br /&gt;
= 使用上の注意 =&lt;br /&gt;
マクロライブラリにある [[includeライブラリ]] を利用しています．&lt;br /&gt;
このマクロの前にそちらを導入してください．&amp;lt;br&amp;gt;&lt;br /&gt;
プラグインの利用には、&lt;br /&gt;
*.NET Framework 4.5 以降&lt;br /&gt;
*Visual C++ Redistributable for Visual Studio 2015 (x86) &lt;br /&gt;
がインストールされている必要があります。&lt;br /&gt;
&lt;br /&gt;
= 実行時間参考 =&lt;br /&gt;
いくつかのパターンがあり、かなり実行時間に差があります。&lt;br /&gt;
（実装の効率・非効率の差も当然ありますので、参考までに）&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
「吾輩は猫である」（青空文庫）に対し、&lt;br /&gt;
*「通常検索」では「は」を検索（ヒット件数：7379）&lt;br /&gt;
*「正規表現検索」では「[あ-ん]」を検索（ヒット件数：223937）&lt;br /&gt;
したときの実行時間（単位は ms）&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!パターン&lt;br /&gt;
|通常検索&lt;br /&gt;
|正規表現&lt;br /&gt;
|-&lt;br /&gt;
!①マクロ（Selection.FindRepeat）&lt;br /&gt;
|16,966&lt;br /&gt;
|539,398&lt;br /&gt;
|-&lt;br /&gt;
!②マクロ（Selection.Replace)&lt;br /&gt;
|78&lt;br /&gt;
|16,164&lt;br /&gt;
|-&lt;br /&gt;
!③マクロ（JScript Only）&lt;br /&gt;
|0&lt;br /&gt;
|47&lt;br /&gt;
|-&lt;br /&gt;
!④プラグイン（提供されている API 使用）&lt;br /&gt;
|706&lt;br /&gt;
|27,966&lt;br /&gt;
|-&lt;br /&gt;
!⑤プラグイン（.NET の API 使用）&lt;br /&gt;
|26&lt;br /&gt;
|539,398&lt;br /&gt;
|-&lt;br /&gt;
!⑥プラグイン（鬼雲の DLL を直接使用）&lt;br /&gt;
|(⑤と同じ)&lt;br /&gt;
|122&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Ks</name></author>
	</entry>
	<entry>
		<id>https://www.haijin-boys.com/wiki/index.php?title=%E3%83%9E%E3%82%AF%E3%83%AD%E3%83%A9%E3%82%A4%E3%83%96%E3%83%A9%E3%83%AA&amp;diff=2072</id>
		<title>マクロライブラリ</title>
		<link rel="alternate" type="text/html" href="https://www.haijin-boys.com/wiki/index.php?title=%E3%83%9E%E3%82%AF%E3%83%AD%E3%83%A9%E3%82%A4%E3%83%96%E3%83%A9%E3%83%AA&amp;diff=2072"/>
		<updated>2016-05-25T15:50:43Z</updated>

		<summary type="html">&lt;p&gt;Ks: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Mery で使用できるマクロを集めたライブラリです。&lt;br /&gt;
&lt;br /&gt;
スクリプトを拡張子「js」 (JavaScript、JScript の場合) にして「My Macros」等に保存し、マクロメニューの「選択」や「カスタマイズ」から読み込んで使用してください。&lt;br /&gt;
&lt;br /&gt;
マクロライブラリはどなたでも自由に編集できますので、みなさんが作成した便利なマクロをどんどん掲載してください。&lt;br /&gt;
&lt;br /&gt;
== テキスト操作補助 ==&lt;br /&gt;
&lt;br /&gt;
*[https://github.com/haijinboys/mery-macro-emmet Emmet] (kuro)&lt;br /&gt;
*[[Zen Coding]] (kuro)&lt;br /&gt;
*[[CSV のカーソル位置の列を削除]] (kuro)&lt;br /&gt;
*[[対応する括弧に移動]] (kuro, kurama, masme) update 2014/02/05&lt;br /&gt;
*[[選択文字列を強調]] (kuro)&lt;br /&gt;
*[[行頭に移動]] (kuro, 他) update 2014/03/15&lt;br /&gt;
*[[引用の追加]] (kuro)&lt;br /&gt;
*[[バイト数]] (kuro)&lt;br /&gt;
*[[日付と時刻を挿入]] (n, masme) update 2016/02/28&lt;br /&gt;
*[[日付と時刻を挿入（カレンダー版）]] (papagoat) update 2016/05/24&lt;br /&gt;
*[[選択範囲を上下に移動]] (ks)&lt;br /&gt;
*[[TeraPadのCtrl↑と同じような動作をするマクロ]] (suke)&lt;br /&gt;
*[[TeraPadのCtrl↓と同じような動作をするマクロ]] (suke)&lt;br /&gt;
*[[Vz 風テキストスタック 2 ストロークキー]] (papagoat) update 2013/11/22&lt;br /&gt;
*[[非選択状態でも逆インデント]] (papagoat)&lt;br /&gt;
*[[ラクラク罫線]] (手石) Update 2012/12/22&lt;br /&gt;
*[[ファイル:XHTML.zip]] (アラフォー親父) HTMLタグを、ショートカット・キーに登録して入力するマクロ（文章挟み込み仕様）&lt;br /&gt;
*[[矩形ペースト]] (手石)&lt;br /&gt;
*[[自動箇条書き]] (手石) update 2013/03/15&lt;br /&gt;
*[[インデントを考慮した折り返し（改行挿入）]] (手石) update 2013/02/23&lt;br /&gt;
*[[青空文庫用整形補助]] (ks, 有志)&lt;br /&gt;
*[[部分編集]] (ks)&lt;br /&gt;
*[[文字カウント]] (masme) 2014/02/01, update 2015/12/26&lt;br /&gt;
*[[字下げ・字上げ]](インデント・逆インデント) (masme) 2014/02/09, update 2015/02/14&lt;br /&gt;
*[[数値を増減]](インクリメント・デクリメント) (masme) 2014/06/17, update 2016/02/28&lt;br /&gt;
*[[少し便利な Undo/Redo]] (ks)&lt;br /&gt;
&lt;br /&gt;
== ファイル操作補助 ==&lt;br /&gt;
&lt;br /&gt;
*[[文字列中のパス起動]] (ks)&lt;br /&gt;
*[[自動バックアップ]] (ks)&lt;br /&gt;
*[[終了時状態保持・復元]] (ks)&lt;br /&gt;
*[[上書き保存(UAC対応)]] (ks)&lt;br /&gt;
*[[含んでいるフォルダを開く]] (ks)&lt;br /&gt;
*[[パスを取得]] (kuro)&lt;br /&gt;
*[[フォルダ内のファイルをすべて開く]] (kuro)&lt;br /&gt;
*[[ファイルを比較]] (kuro)&lt;br /&gt;
*[[ファイル名を引数にしてアプリ起動]] (kuro, miso)&lt;br /&gt;
*[[ブックマーク一覧ジャンプ]] (goat) update 2012/09/24&lt;br /&gt;
*[[拡張子の違うファイルを開く]] (n)&lt;br /&gt;
*[[フォルダを開く]] (n)&lt;br /&gt;
*[[コマンドプロンプトを開く]] (n)&lt;br /&gt;
*[[SDIウィンドウの記憶と復帰]] (papagoat) Update 2012/10/23 (説明文変更 2013/11/22)&lt;br /&gt;
*[[よく使うフォルダ]] (手石) Update 2014/02/22&lt;br /&gt;
*[[ファイル（選択範囲）の仮保存]] (手石)&lt;br /&gt;
*[[ポップアップメニューでファイル選択]] (手石)&lt;br /&gt;
*[[フォルダツリーをポップアップ表示]] (n)&lt;br /&gt;
*[[タグジャンプ]] (o)&lt;br /&gt;
*[[ウィンドウの位置とサイズを拡張子で指定]] (papagoat) Update 2014/04/17&lt;br /&gt;
&lt;br /&gt;
== 変換・ソート・整形 ==&lt;br /&gt;
&lt;br /&gt;
*[[可変長を固定長に変換]] (kuro)&lt;br /&gt;
*[[SHA でハッシュ化]] (kuro)&lt;br /&gt;
*[[標準変換]] (kuro)&lt;br /&gt;
*[[昇順で並び替え]] (kuro)&lt;br /&gt;
*[[降順で並び替え]] (kuro)&lt;br /&gt;
*[[連続する重複行を削除]] (kuro)&lt;br /&gt;
*[[ブックマーク系コマンド集]] (ks)&lt;br /&gt;
*[[テキスト変換]] (ks)&lt;br /&gt;
**[[テキスト整形]] (masme) 2013/09/15, update 2015/12/26&lt;br /&gt;
*[[旧漢字から新漢字に変換]] (furu)&lt;br /&gt;
*[[clustalw を用いてアライメントを実行]] (suke)&lt;br /&gt;
*[[連番の挿入]] (手石)&lt;br /&gt;
*[[TSV(CSV) ⇒ 固定長]] (手石) update 2013/04/16&lt;br /&gt;
*[[行並べ替え]] (masme) 2013/08/25, update 2015/12/26&lt;br /&gt;
*[[連番を挿入]] (masme) 2013/08/25&lt;br /&gt;
*[[GFMをHTMLに変換]] (noonworks) 2014/03/09&lt;br /&gt;
&lt;br /&gt;
== 検索・置換 ==&lt;br /&gt;
&lt;br /&gt;
*[[文書から検索]] (kuro)&lt;br /&gt;
*[[単語を抽出]] (kuro)&lt;br /&gt;
*[[このファイルから検索(マッチしない行)]] (kuro)&lt;br /&gt;
*[[このファイルから検索(マッチする行)]] (kuro)&lt;br /&gt;
*[[タグの外側（内側）だけ置換]] (手石)&lt;br /&gt;
*[[ポップアップメニューで検索先にジャンプ]] (手石)&lt;br /&gt;
*[[検索(SJIS以外)]] + 検索強調を解除 (masme) 2014/09/16, update 2015/12/26&lt;br /&gt;
*[https://github.com/TakamiChie/mery-scripts/blob/master/SearchWithMode.js 現在開いているファイルの言語名をつけてWeb検索] (高見知英)→[[https://vine.co/v/eeY59rFMail 実際の動作例]]&lt;br /&gt;
*[http://evaeva.syoyu.net/mery/mery%E3%83%9E%E3%82%AF%E3%83%AD%EF%BC%9A%E6%96%87%E5%AD%97%E5%87%BA%E7%8F%BE%E9%87%8F%E3%83%A9%E3%83%B3%E3%82%AD%E3%83%B3%E3%82%B0 文字出現量ランキング] (BlackApple) 2015/12/28&lt;br /&gt;
*[[検索ヒット数表示]] (ks)&lt;br /&gt;
&lt;br /&gt;
== プログラミング補助 ==&lt;br /&gt;
&lt;br /&gt;
*[[Eclipse風コメントアウト]] (ks)&lt;br /&gt;
*[[スマートインデント(C 構文)]] (ks)&lt;br /&gt;
*[[ctags.exeでtagsファイルを生成、タグジャンプを行うマクロ]] (kazy)&lt;br /&gt;
*[[タグファイルから補完]] (n)&lt;br /&gt;
*[[コードスニペットもどき]] (手石) Update 2012/12/20&lt;br /&gt;
*[[コメントマーク付け外し]] (手石, masme) update 2016/02/28&lt;br /&gt;
*[[TeX文書のコンパイル]] (手石)&lt;br /&gt;
*[[TeX数式のチェック]] (手石)&lt;br /&gt;
*[[簡易数式計算]] (ks)&lt;br /&gt;
*[[定義へ移動]] (ks)&lt;br /&gt;
*[[タブの桁数]] (手石)&lt;br /&gt;
*[[行末の空白を削除]] (n) 2014/12/19&lt;br /&gt;
*[https://github.com/TakamiChie/mery-scripts/tree/master/ 開いているスクリプトファイルを実行(掲載時点ではバッチファイル・Javascript・Lua・PHP・Perl・Python・Ruby・UWSCに対応。順次追加予定)] (高見知英)&lt;br /&gt;
*[https://github.com/TakamiChie/mery-scripts/tree/master/ 開いているスクリプトファイルを構文チェック(掲載時点ではPHP・Perlに対応。順次追加予定)] (高見知英)&lt;br /&gt;
*[[説明を出力]] (s) Create 2015/08/16&lt;br /&gt;
*[[コンソール実行|コンソール実行(JScript、VBS、Node.js、Ruby、C#、VB.NET、CLISP、SBCL他)]] (YOS G-spec) 2016/04/25&lt;br /&gt;
*[[拡張子からコンソール実行]] (YOS G-spec) 2016/05/15更新&lt;br /&gt;
&lt;br /&gt;
== おもしろ ==&lt;br /&gt;
&lt;br /&gt;
*[[テキストブラウザ]] (kuro)&lt;br /&gt;
*[[Yahoo!天気情報]] (kuro)&lt;br /&gt;
*[[メール送信]] (ks)&lt;br /&gt;
&lt;br /&gt;
== その他 ==&lt;br /&gt;
&lt;br /&gt;
*[[キーアサイン集]] (ks, masme, 有志) update 2015/12/29&lt;br /&gt;
*[[SAPI 使って単語読み上げ]] (miso)&lt;br /&gt;
*[[フォルダ選択ダイアログ]] (手石)&lt;br /&gt;
*[[HTA(HTML)の自作ダイアログを表示]] (noonworks)&lt;br /&gt;
*[[JavaScript を実行]] (n)&lt;br /&gt;
*[[ポップアップメニューを手軽に扱う]] (komorebikoboshi)&lt;br /&gt;
*[[マクロ・関数をメニューで呼び出す]] (aliquis) 2013/08/19&lt;br /&gt;
*[[階層化マクロメニュー]] (ks)&lt;br /&gt;
*[[シェルコマンドを実行]] (sasaki)&lt;br /&gt;
*[[ポップアップメニューでチェックボックス]] (手石)&lt;br /&gt;
*[[ポップアップメニューでラジオボタン]] (手石)&lt;br /&gt;
*[[includeライブラリ]] (ks)&lt;br /&gt;
*[[マクロ覚え書き（開発者向け）]](ks)&lt;/div&gt;</summary>
		<author><name>Ks</name></author>
	</entry>
	<entry>
		<id>https://www.haijin-boys.com/wiki/index.php?title=include%E3%83%A9%E3%82%A4%E3%83%96%E3%83%A9%E3%83%AA&amp;diff=2069</id>
		<title>includeライブラリ</title>
		<link rel="alternate" type="text/html" href="https://www.haijin-boys.com/wiki/index.php?title=include%E3%83%A9%E3%82%A4%E3%83%96%E3%83%A9%E3%83%AA&amp;diff=2069"/>
		<updated>2016-05-24T14:12:23Z</updated>

		<summary type="html">&lt;p&gt;Ks: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= 概要 =&lt;br /&gt;
include での利用を想定したライブラリ集です．&lt;br /&gt;
&lt;br /&gt;
= ライブラリ =&lt;br /&gt;
[[ファイル:include.zip‎]]&amp;lt;br&amp;gt;&lt;br /&gt;
（2016/5/24: ver.2.5.1 に最適化しました．古いバージョンでは正しく動作しない可能性があります）&lt;br /&gt;
&lt;br /&gt;
= 導入方法 =&lt;br /&gt;
展開してできる include フォルダを Macros フォルダ内に配置してください．&amp;lt;br&amp;gt;&lt;br /&gt;
Mery へのマクロ登録は不要です．&lt;br /&gt;
&lt;br /&gt;
== IO.js ==&lt;br /&gt;
ファイル系の処理をまとめています．&amp;lt;br&amp;gt;&lt;br /&gt;
またマクロのデータを記録・復元する機能も提供します．&amp;lt;br&amp;gt;&lt;br /&gt;
※json2.js はこの js から include するために同梱しています．&lt;br /&gt;
&lt;br /&gt;
== MeryInfo.js ==&lt;br /&gt;
Mery に関する情報をします．&amp;lt;br&amp;gt;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!GetSettingFolderPath&lt;br /&gt;
|標準的な設定保存先パスを取得&lt;br /&gt;
|-&lt;br /&gt;
!GetMacroFolderPath&lt;br /&gt;
|My Macros のフォルダパスを取得&lt;br /&gt;
|-&lt;br /&gt;
!GetIniPath&lt;br /&gt;
|Mery.ini のパスを取得&lt;br /&gt;
|-&lt;br /&gt;
!IsPortable&lt;br /&gt;
|ポータブル版（旧来の Mery.ini を exe と同じフォルダに配置する）かを判定&lt;br /&gt;
|-&lt;br /&gt;
!IsWrap&lt;br /&gt;
|折り返しの有効/無効を取得&lt;br /&gt;
|-&lt;br /&gt;
!IsTab2Space&lt;br /&gt;
|「タブの代わりに空白を挿入」オプションを取得&lt;br /&gt;
|-&lt;br /&gt;
!IsAutoIndent&lt;br /&gt;
|「自動インデントを有効にする」オプションを取得&lt;br /&gt;
|-&lt;br /&gt;
!GetTabSpace&lt;br /&gt;
|タブ幅を取得&lt;br /&gt;
|-&lt;br /&gt;
!GetStartDate&lt;br /&gt;
|Mery を開始した時刻を取得&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== BookmarkList.js ==&lt;br /&gt;
ブックマーク一覧の取得と設定をします．&lt;br /&gt;
&lt;br /&gt;
== HTTP.js ==&lt;br /&gt;
Web から HTML テキストの取得またはファイルを取得します．&lt;br /&gt;
&lt;br /&gt;
== MathEx.js ==&lt;br /&gt;
Math オブジェクトを拡張します．&amp;lt;br&amp;gt;&lt;br /&gt;
* round 系の桁数指定&lt;br /&gt;
* 三角関数の度数指定&lt;br /&gt;
&lt;br /&gt;
== StateBackup.js ==&lt;br /&gt;
表示状態（スクロール，選択状態）を記録・復元します．&lt;br /&gt;
&lt;br /&gt;
== StopWatch.js ==&lt;br /&gt;
時間を計測します．&lt;br /&gt;
&lt;br /&gt;
== StringEx.js ==&lt;br /&gt;
String オブジェクトを拡張します．&amp;lt;br&amp;gt;&lt;br /&gt;
* trim などの一般的な文字列操作関数の追加&lt;br /&gt;
* width などの表示上の操作&lt;br /&gt;
* Format による C 形式の文字列整形&lt;br /&gt;
* サロゲート対応の各種 String 関数&lt;br /&gt;
&lt;br /&gt;
== WindowsInfo.js ==&lt;br /&gt;
Windows の OS 情報を取得します．&lt;/div&gt;</summary>
		<author><name>Ks</name></author>
	</entry>
	<entry>
		<id>https://www.haijin-boys.com/wiki/index.php?title=%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB:SmartIndent.zip&amp;diff=2068</id>
		<title>ファイル:SmartIndent.zip</title>
		<link rel="alternate" type="text/html" href="https://www.haijin-boys.com/wiki/index.php?title=%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB:SmartIndent.zip&amp;diff=2068"/>
		<updated>2016-05-24T14:01:33Z</updated>

		<summary type="html">&lt;p&gt;Ks: Ks が ファイル:SmartIndent.zip の新しいバージョンを アップロードしました&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;スマートインデント用のマクロ群&lt;/div&gt;</summary>
		<author><name>Ks</name></author>
	</entry>
	<entry>
		<id>https://www.haijin-boys.com/wiki/index.php?title=%E3%82%B9%E3%83%9E%E3%83%BC%E3%83%88%E3%82%A4%E3%83%B3%E3%83%87%E3%83%B3%E3%83%88(C_%E6%A7%8B%E6%96%87)&amp;diff=2067</id>
		<title>スマートインデント(C 構文)</title>
		<link rel="alternate" type="text/html" href="https://www.haijin-boys.com/wiki/index.php?title=%E3%82%B9%E3%83%9E%E3%83%BC%E3%83%88%E3%82%A4%E3%83%B3%E3%83%87%E3%83%B3%E3%83%88(C_%E6%A7%8B%E6%96%87)&amp;diff=2067"/>
		<updated>2016-05-24T13:57:55Z</updated>

		<summary type="html">&lt;p&gt;Ks: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= 概要 =&lt;br /&gt;
C 構文の言語で，スマートインデントを実現します．&lt;br /&gt;
&lt;br /&gt;
= 特徴 =&lt;br /&gt;
* コメントや文字列中の { および } を無視する&lt;br /&gt;
* タブとスペースが混在でも正しく処理する&lt;br /&gt;
&lt;br /&gt;
= 使用上の注意 =&lt;br /&gt;
マクロライブラリにある [[includeライブラリ]] を利用しています．&lt;br /&gt;
このマクロの前にそちらを導入してください．&lt;br /&gt;
&lt;br /&gt;
= 使用方法 =&lt;br /&gt;
# 添付ファイルを解凍し，Macros に上書きする．&lt;br /&gt;
# SmartIndent.js（表示名「スマートインデント改行」）を Enter に割り当てる&lt;br /&gt;
# BlockEndIndent.js（表示名「スマートインデント用 } 入力」）を Shift + ] に割り当てる&lt;br /&gt;
# スマートインデントと通常の改行を切り替えるときには SwitchSmartIndent.js（表示名「スマートインデント⇔通常切り替え」）を実行する&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
SmartIndent.js には次の設定があります．&lt;br /&gt;
* deleteIndentLine: インデントだけの行で改行時にインデントを削除する&lt;br /&gt;
* copyCommentHeader: コメント行だった場合にヘッダ文字列を次の行先頭にコピーする&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
BlockEndIndent.js には次の設定があります．&lt;br /&gt;
* viewBlockBegin: 対応する括弧位置をステータスバーに表示する&lt;br /&gt;
&lt;br /&gt;
= コード =&lt;br /&gt;
[[ファイル:SmartIndent.zip‎]]&lt;/div&gt;</summary>
		<author><name>Ks</name></author>
	</entry>
	<entry>
		<id>https://www.haijin-boys.com/wiki/index.php?title=include%E3%83%A9%E3%82%A4%E3%83%96%E3%83%A9%E3%83%AA&amp;diff=2066</id>
		<title>includeライブラリ</title>
		<link rel="alternate" type="text/html" href="https://www.haijin-boys.com/wiki/index.php?title=include%E3%83%A9%E3%82%A4%E3%83%96%E3%83%A9%E3%83%AA&amp;diff=2066"/>
		<updated>2016-05-24T13:53:30Z</updated>

		<summary type="html">&lt;p&gt;Ks: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= 概要 =&lt;br /&gt;
include での利用を想定したライブラリ集です．&lt;br /&gt;
&lt;br /&gt;
= ライブラリ =&lt;br /&gt;
[[ファイル:include.zip‎]]&amp;lt;br&amp;gt;&lt;br /&gt;
（2016/5/24: ver.2.5.1 に最適化しました．古いバージョンでは正しく動作しない可能性があります）&lt;br /&gt;
&lt;br /&gt;
= 導入方法 =&lt;br /&gt;
展開してできる include フォルダを My Macros フォルダ内に配置してください．&amp;lt;br&amp;gt;&lt;br /&gt;
Mery へのマクロ登録は不要です．&lt;br /&gt;
&lt;br /&gt;
== IO.js ==&lt;br /&gt;
ファイル系の処理をまとめています．&amp;lt;br&amp;gt;&lt;br /&gt;
またマクロのデータを記録・復元する機能も提供します．&amp;lt;br&amp;gt;&lt;br /&gt;
※json2.js はこの js から include するために同梱しています．&lt;br /&gt;
&lt;br /&gt;
== MeryInfo.js ==&lt;br /&gt;
Mery に関する情報をします．&amp;lt;br&amp;gt;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!GetSettingFolderPath&lt;br /&gt;
|標準的な設定保存先パスを取得&lt;br /&gt;
|-&lt;br /&gt;
!GetMacroFolderPath&lt;br /&gt;
|My Macros のフォルダパスを取得&lt;br /&gt;
|-&lt;br /&gt;
!GetIniPath&lt;br /&gt;
|Mery.ini のパスを取得&lt;br /&gt;
|-&lt;br /&gt;
!IsPortable&lt;br /&gt;
|ポータブル版（旧来の Mery.ini を exe と同じフォルダに配置する）かを判定&lt;br /&gt;
|-&lt;br /&gt;
!IsWrap&lt;br /&gt;
|折り返しの有効/無効を取得&lt;br /&gt;
|-&lt;br /&gt;
!IsTab2Space&lt;br /&gt;
|「タブの代わりに空白を挿入」オプションを取得&lt;br /&gt;
|-&lt;br /&gt;
!IsAutoIndent&lt;br /&gt;
|「自動インデントを有効にする」オプションを取得&lt;br /&gt;
|-&lt;br /&gt;
!GetTabSpace&lt;br /&gt;
|タブ幅を取得&lt;br /&gt;
|-&lt;br /&gt;
!GetStartDate&lt;br /&gt;
|Mery を開始した時刻を取得&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== BookmarkList.js ==&lt;br /&gt;
ブックマーク一覧の取得と設定をします．&lt;br /&gt;
&lt;br /&gt;
== HTTP.js ==&lt;br /&gt;
Web から HTML テキストの取得またはファイルを取得します．&lt;br /&gt;
&lt;br /&gt;
== MathEx.js ==&lt;br /&gt;
Math オブジェクトを拡張します．&amp;lt;br&amp;gt;&lt;br /&gt;
* round 系の桁数指定&lt;br /&gt;
* 三角関数の度数指定&lt;br /&gt;
&lt;br /&gt;
== StateBackup.js ==&lt;br /&gt;
表示状態（スクロール，選択状態）を記録・復元します．&lt;br /&gt;
&lt;br /&gt;
== StopWatch.js ==&lt;br /&gt;
時間を計測します．&lt;br /&gt;
&lt;br /&gt;
== StringEx.js ==&lt;br /&gt;
String オブジェクトを拡張します．&amp;lt;br&amp;gt;&lt;br /&gt;
* trim などの一般的な文字列操作関数の追加&lt;br /&gt;
* width などの表示上の操作&lt;br /&gt;
* Format による C 形式の文字列整形&lt;br /&gt;
* サロゲート対応の各種 String 関数&lt;br /&gt;
&lt;br /&gt;
== WindowsInfo.js ==&lt;br /&gt;
Windows の OS 情報を取得します．&lt;/div&gt;</summary>
		<author><name>Ks</name></author>
	</entry>
	<entry>
		<id>https://www.haijin-boys.com/wiki/index.php?title=%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB:include.zip&amp;diff=2065</id>
		<title>ファイル:include.zip</title>
		<link rel="alternate" type="text/html" href="https://www.haijin-boys.com/wiki/index.php?title=%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB:include.zip&amp;diff=2065"/>
		<updated>2016-05-24T13:52:13Z</updated>

		<summary type="html">&lt;p&gt;Ks: Ks が ファイル:include.zip の新しいバージョンを アップロードしました&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;includeライブラリ&lt;/div&gt;</summary>
		<author><name>Ks</name></author>
	</entry>
	<entry>
		<id>https://www.haijin-boys.com/wiki/index.php?title=include%E3%83%A9%E3%82%A4%E3%83%96%E3%83%A9%E3%83%AA&amp;diff=2064</id>
		<title>includeライブラリ</title>
		<link rel="alternate" type="text/html" href="https://www.haijin-boys.com/wiki/index.php?title=include%E3%83%A9%E3%82%A4%E3%83%96%E3%83%A9%E3%83%AA&amp;diff=2064"/>
		<updated>2016-05-24T13:51:38Z</updated>

		<summary type="html">&lt;p&gt;Ks: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= 概要 =&lt;br /&gt;
include での利用を想定したライブラリ集です．&lt;br /&gt;
&lt;br /&gt;
= ライブラリ =&lt;br /&gt;
[[ファイル:include.zip‎]]&lt;br /&gt;
&lt;br /&gt;
= 導入方法 =&lt;br /&gt;
展開してできる include フォルダを My Macros フォルダ内に配置してください．&amp;lt;br&amp;gt;&lt;br /&gt;
Mery へのマクロ登録は不要です．&lt;br /&gt;
&lt;br /&gt;
== IO.js ==&lt;br /&gt;
ファイル系の処理をまとめています．&amp;lt;br&amp;gt;&lt;br /&gt;
またマクロのデータを記録・復元する機能も提供します．&amp;lt;br&amp;gt;&lt;br /&gt;
※json2.js はこの js から include するために同梱しています．&lt;br /&gt;
&lt;br /&gt;
== MeryInfo.js ==&lt;br /&gt;
Mery に関する情報をします．&amp;lt;br&amp;gt;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!GetSettingFolderPath&lt;br /&gt;
|標準的な設定保存先パスを取得&lt;br /&gt;
|-&lt;br /&gt;
!GetMacroFolderPath&lt;br /&gt;
|My Macros のフォルダパスを取得&lt;br /&gt;
|-&lt;br /&gt;
!GetIniPath&lt;br /&gt;
|Mery.ini のパスを取得&lt;br /&gt;
|-&lt;br /&gt;
!IsPortable&lt;br /&gt;
|ポータブル版（旧来の Mery.ini を exe と同じフォルダに配置する）かを判定&lt;br /&gt;
|-&lt;br /&gt;
!IsWrap&lt;br /&gt;
|折り返しの有効/無効を取得&lt;br /&gt;
|-&lt;br /&gt;
!IsTab2Space&lt;br /&gt;
|「タブの代わりに空白を挿入」オプションを取得&lt;br /&gt;
|-&lt;br /&gt;
!IsAutoIndent&lt;br /&gt;
|「自動インデントを有効にする」オプションを取得&lt;br /&gt;
|-&lt;br /&gt;
!GetTabSpace&lt;br /&gt;
|タブ幅を取得&lt;br /&gt;
|-&lt;br /&gt;
!GetStartDate&lt;br /&gt;
|Mery を開始した時刻を取得&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== BookmarkList.js ==&lt;br /&gt;
ブックマーク一覧の取得と設定をします．&lt;br /&gt;
&lt;br /&gt;
== HTTP.js ==&lt;br /&gt;
Web から HTML テキストの取得またはファイルを取得します．&lt;br /&gt;
&lt;br /&gt;
== MathEx.js ==&lt;br /&gt;
Math オブジェクトを拡張します．&amp;lt;br&amp;gt;&lt;br /&gt;
* round 系の桁数指定&lt;br /&gt;
* 三角関数の度数指定&lt;br /&gt;
&lt;br /&gt;
== StateBackup.js ==&lt;br /&gt;
表示状態（スクロール，選択状態）を記録・復元します．&lt;br /&gt;
&lt;br /&gt;
== StopWatch.js ==&lt;br /&gt;
時間を計測します．&lt;br /&gt;
&lt;br /&gt;
== StringEx.js ==&lt;br /&gt;
String オブジェクトを拡張します．&amp;lt;br&amp;gt;&lt;br /&gt;
* trim などの一般的な文字列操作関数の追加&lt;br /&gt;
* width などの表示上の操作&lt;br /&gt;
* Format による C 形式の文字列整形&lt;br /&gt;
* サロゲート対応の各種 String 関数&lt;br /&gt;
&lt;br /&gt;
== WindowsInfo.js ==&lt;br /&gt;
Windows の OS 情報を取得します．&lt;/div&gt;</summary>
		<author><name>Ks</name></author>
	</entry>
	<entry>
		<id>https://www.haijin-boys.com/wiki/index.php?title=%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB:SearchPlus.zip&amp;diff=1753</id>
		<title>ファイル:SearchPlus.zip</title>
		<link rel="alternate" type="text/html" href="https://www.haijin-boys.com/wiki/index.php?title=%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB:SearchPlus.zip&amp;diff=1753"/>
		<updated>2016-01-28T11:11:58Z</updated>

		<summary type="html">&lt;p&gt;Ks: 作成中の「検索＋」からタブ横断の全置換だけを先出&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;作成中の「検索＋」からタブ横断の全置換だけを先出&lt;/div&gt;</summary>
		<author><name>Ks</name></author>
	</entry>
	<entry>
		<id>https://www.haijin-boys.com/wiki/index.php?title=%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB:TripleClick.zip&amp;diff=1751</id>
		<title>ファイル:TripleClick.zip</title>
		<link rel="alternate" type="text/html" href="https://www.haijin-boys.com/wiki/index.php?title=%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB:TripleClick.zip&amp;diff=1751"/>
		<updated>2016-01-27T14:28:02Z</updated>

		<summary type="html">&lt;p&gt;Ks: トリプルクリック時に論理行選択するプラグイン&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;トリプルクリック時に論理行選択するプラグイン&lt;/div&gt;</summary>
		<author><name>Ks</name></author>
	</entry>
	<entry>
		<id>https://www.haijin-boys.com/wiki/index.php?title=%E5%88%A5%E3%83%97%E3%83%AD%E3%82%BB%E3%82%B9%E3%81%A7%E7%B7%A8%E9%9B%86&amp;diff=1746</id>
		<title>別プロセスで編集</title>
		<link rel="alternate" type="text/html" href="https://www.haijin-boys.com/wiki/index.php?title=%E5%88%A5%E3%83%97%E3%83%AD%E3%82%BB%E3%82%B9%E3%81%A7%E7%B7%A8%E9%9B%86&amp;diff=1746"/>
		<updated>2016-01-03T10:43:58Z</updated>

		<summary type="html">&lt;p&gt;Ks: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= 概要 =&lt;br /&gt;
独立したプロセス経由でファイルを編集するためのツールです。&lt;br /&gt;
例えば git のように外部エディタを開き編集完了を監視するような場合に使用します。&lt;br /&gt;
&lt;br /&gt;
= 動作環境 =&lt;br /&gt;
* .NET Framework 4.5 以降がインストールされている&lt;br /&gt;
* Visual C++ Redistributable for Visual Studio 2015 (x86) がインストールされている&lt;br /&gt;
&lt;br /&gt;
= 使用方法 =&lt;br /&gt;
# 添付ファイルを解凍し，インストールフォルダに上書きする。&lt;br /&gt;
# 外部エディタの関連づけに、同梱の「MeryRelay.exe」を指定する。&lt;br /&gt;
&lt;br /&gt;
= プラグイン =&lt;br /&gt;
[[ファイル:MeryRelay.zip‎]]&lt;br /&gt;
&lt;br /&gt;
= ソース =&lt;br /&gt;
[[ファイル:MeryRelay_src.zip‎]]&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Microsoft Visual Studio 2015 Community でビルド可能なソースファイルです。&amp;lt;br&amp;gt;&lt;br /&gt;
ソースは C# で書かれています。&amp;lt;br&amp;gt;&lt;br /&gt;
ラインセンスは NYSL です。&lt;/div&gt;</summary>
		<author><name>Ks</name></author>
	</entry>
	<entry>
		<id>https://www.haijin-boys.com/wiki/index.php?title=%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB:MeryRelay_src.zip&amp;diff=1745</id>
		<title>ファイル:MeryRelay src.zip</title>
		<link rel="alternate" type="text/html" href="https://www.haijin-boys.com/wiki/index.php?title=%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB:MeryRelay_src.zip&amp;diff=1745"/>
		<updated>2016-01-03T10:40:31Z</updated>

		<summary type="html">&lt;p&gt;Ks: MeryRelay のソース&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;MeryRelay のソース&lt;/div&gt;</summary>
		<author><name>Ks</name></author>
	</entry>
	<entry>
		<id>https://www.haijin-boys.com/wiki/index.php?title=%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB:MeryRelay.zip&amp;diff=1744</id>
		<title>ファイル:MeryRelay.zip</title>
		<link rel="alternate" type="text/html" href="https://www.haijin-boys.com/wiki/index.php?title=%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB:MeryRelay.zip&amp;diff=1744"/>
		<updated>2016-01-03T10:32:24Z</updated>

		<summary type="html">&lt;p&gt;Ks: Ks 「ファイル:MeryRelay.zip」の新しい版をアップロードしました: 右クリックからの「他の全てのタブを閉じる」などに対応できていなかったのを修正。
.NET Framework の対応を 4.5 以降に変更�&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;別プロセスで編集するためのツールおよびプラグイン&lt;/div&gt;</summary>
		<author><name>Ks</name></author>
	</entry>
	<entry>
		<id>https://www.haijin-boys.com/wiki/index.php?title=%E3%83%97%E3%83%A9%E3%82%B0%E3%82%A4%E3%83%B3%E3%83%A9%E3%82%A4%E3%83%96%E3%83%A9%E3%83%AA&amp;diff=1743</id>
		<title>プラグインライブラリ</title>
		<link rel="alternate" type="text/html" href="https://www.haijin-boys.com/wiki/index.php?title=%E3%83%97%E3%83%A9%E3%82%B0%E3%82%A4%E3%83%B3%E3%83%A9%E3%82%A4%E3%83%96%E3%83%A9%E3%83%AA&amp;diff=1743"/>
		<updated>2016-01-03T10:11:44Z</updated>

		<summary type="html">&lt;p&gt;Ks: /* ファイル操作補助 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Mery で使用できるプラグインを集めたライブラリです。&lt;br /&gt;
&lt;br /&gt;
DLLファイル を「Plugins」に保存し、ツールメニューの「プラグイン」から使用してください。&lt;br /&gt;
&lt;br /&gt;
プラグインライブラリはどなたでも自由に編集できますので、みなさんが作成した便利なプラグインをどんどん掲載してください。&lt;br /&gt;
&lt;br /&gt;
また、[[プラグイン]]にも掲載されていますのでそちらもご覧ください。&lt;br /&gt;
&lt;br /&gt;
== プログラミング補助 ==&lt;br /&gt;
&lt;br /&gt;
*[https://github.com/haijinboys/mery-plugin-livestyle Emmet LiveStyle] (kuro)&lt;br /&gt;
&lt;br /&gt;
== ファイル操作補助 ==&lt;br /&gt;
*[[OutputBar拡張]] (脚立)&lt;br /&gt;
*[[別プロセスで編集]] (ks)&lt;br /&gt;
&lt;br /&gt;
== ソースサンプル ==&lt;br /&gt;
*[[タスクバーの「すべてのウィンドウを閉じる」実行時不具合の緩和]]（ks）&lt;/div&gt;</summary>
		<author><name>Ks</name></author>
	</entry>
	<entry>
		<id>https://www.haijin-boys.com/wiki/index.php?title=%E5%88%A5%E3%83%97%E3%83%AD%E3%82%BB%E3%82%B9%E3%81%A7%E7%B7%A8%E9%9B%86&amp;diff=1741</id>
		<title>別プロセスで編集</title>
		<link rel="alternate" type="text/html" href="https://www.haijin-boys.com/wiki/index.php?title=%E5%88%A5%E3%83%97%E3%83%AD%E3%82%BB%E3%82%B9%E3%81%A7%E7%B7%A8%E9%9B%86&amp;diff=1741"/>
		<updated>2016-01-02T05:39:17Z</updated>

		<summary type="html">&lt;p&gt;Ks: ページの作成：「= 概要 = 独立したプロセス経由でファイルを編集するためのツールです。 例えば git のように外部エディタを開きプロセスを...」&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= 概要 =&lt;br /&gt;
独立したプロセス経由でファイルを編集するためのツールです。&lt;br /&gt;
例えば git のように外部エディタを開きプロセスを監視するような場合に使用します。&lt;br /&gt;
&lt;br /&gt;
= 動作環境 =&lt;br /&gt;
* .Net Framework 4.0 移行がインストールされている&lt;br /&gt;
&lt;br /&gt;
= 使用方法 =&lt;br /&gt;
# 添付ファイルを解凍し，インストールフォルダに上書きする。&lt;br /&gt;
# 外部エディタの関連づけに、同梱の「MeryRelay.exe」を指定する。&lt;br /&gt;
&lt;br /&gt;
= プラグイン =&lt;br /&gt;
[[ファイル:MeryRelay.zip‎]]&lt;/div&gt;</summary>
		<author><name>Ks</name></author>
	</entry>
	<entry>
		<id>https://www.haijin-boys.com/wiki/index.php?title=%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB:MeryRelay.zip&amp;diff=1740</id>
		<title>ファイル:MeryRelay.zip</title>
		<link rel="alternate" type="text/html" href="https://www.haijin-boys.com/wiki/index.php?title=%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB:MeryRelay.zip&amp;diff=1740"/>
		<updated>2016-01-02T05:34:32Z</updated>

		<summary type="html">&lt;p&gt;Ks: 別プロセスで編集するためのツールおよびプラグイン&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;別プロセスで編集するためのツールおよびプラグイン&lt;/div&gt;</summary>
		<author><name>Ks</name></author>
	</entry>
	<entry>
		<id>https://www.haijin-boys.com/wiki/index.php?title=%E3%83%97%E3%83%A9%E3%82%B0%E3%82%A4%E3%83%B3%E3%83%A9%E3%82%A4%E3%83%96%E3%83%A9%E3%83%AA&amp;diff=1739</id>
		<title>プラグインライブラリ</title>
		<link rel="alternate" type="text/html" href="https://www.haijin-boys.com/wiki/index.php?title=%E3%83%97%E3%83%A9%E3%82%B0%E3%82%A4%E3%83%B3%E3%83%A9%E3%82%A4%E3%83%96%E3%83%A9%E3%83%AA&amp;diff=1739"/>
		<updated>2016-01-02T05:33:09Z</updated>

		<summary type="html">&lt;p&gt;Ks: /* ファイル操作補助 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Mery で使用できるプラグインを集めたライブラリです。&lt;br /&gt;
&lt;br /&gt;
DLLファイル を「Plugins」に保存し、ツールメニューの「プラグイン」から使用してください。&lt;br /&gt;
&lt;br /&gt;
プラグインライブラリはどなたでも自由に編集できますので、みなさんが作成した便利なプラグインをどんどん掲載してください。&lt;br /&gt;
&lt;br /&gt;
また、[[プラグイン]]にも掲載されていますのでそちらもご覧ください。&lt;br /&gt;
&lt;br /&gt;
== プログラミング補助 ==&lt;br /&gt;
&lt;br /&gt;
*[https://github.com/haijinboys/mery-plugin-livestyle Emmet LiveStyle] (kuro)&lt;br /&gt;
&lt;br /&gt;
== ファイル操作補助 ==&lt;br /&gt;
*[[OutputBar拡張]] (脚立)&lt;br /&gt;
*[[別プロセスで編集]] (脚立)&lt;br /&gt;
&lt;br /&gt;
== ソースサンプル ==&lt;br /&gt;
*[[タスクバーの「すべてのウィンドウを閉じる」実行時不具合の緩和]]（ks）&lt;/div&gt;</summary>
		<author><name>Ks</name></author>
	</entry>
</feed>