mi.appのツールコマンド

TextWrangler.appでいくつかのスクリプトを紹介しましたが、それをmi.appで実現するにはどうするか?
TextWrangler.appの場合は、殆どの機能をAppleScriptから操作可能というところからAppleScriptで書きましたが、mi.appとなると「ツールコマンド」が活躍します。

「ツール」はmi.app独自のもので、よく使う文字列やよく使う処理を、ツールメニューから選択することにより使用できる機能です。
ツールメニューからアクセスできるファイルとして、テキストファイル、AppleScriptコンパイル済みファイル、アプリケーションのエイリアスがあり、「ツールコマンド」を利用するためには、テキストファイル中に「ツールコマンド」を埋め込むような形となります。テキストファイルとして作成されるドキュメントの中の、<<<と>>>の間に囲まれた部分を「ツールコマンド」として認識し、特定の処理を行うことができるという仕組みなのです。

■ツールコマンドのサンプル
・AppleScriptのラインコメントの挿入

選択範囲の段落の先頭を検索して、タブと半角スペースがあればそれも含めて”– “に置換します。

<<<SELECT-WHOLE-PARAGRAPH REPLACE-REGEXP-SELECTED
^[ \t]*
--

ここでは行頭の半角スペースとタブを外していますが、そのまま残してもいいでしょう。

・AppleScriptのラインコメントの削除

<<<SELECT-WHOLE-PARAGRAPH REPLACE-REGEXP-SELECTED
^--

同時に、行頭のブレットなどを含めて削除するには、

<<<SELECT-WHOLE-PARAGRAPH REPLACE-REGEXP-SELECTED
^[ ->・•\t]+[ \t]*

とすればいいでしょう。

・列の反転1<->2

<<<SELECT-WHOLE-PARAGRAPH REPLACE-REGEXP-SELECTED
^([^\t]+)\t([^\t\r]+)(.*)$
$2\t$1$3

タブ区切りのリストの1列と2列を入れ替えます。

・AppleScriptのブロックコメントの追加

(*
<<<SELECTED>>>*)

なんともシンプルです。

・AppleScriptのブロックコメントの解除

<<<SELECT-WHOLE-PARAGRAPH REPLACE-REGEXP-SELECTED
\*\)\r

<<<SELECT-WHOLE-PARAGRAPH REPLACE-REGEXP-SELECTED
\(\*\r

<<<MOVECARET-RIGHT

「ツールコマンド」は、連続して処理できます。

・ダブルクォート間の文字列の選択

<<<FIND-REGEXP-FROMFIRST
(?:["”“])([^"”]*?)(?:["”])

mi.appの場合、検索/置換機能などへのAppleScriptからのアクセスはできません。しかし、それに代わる手段として、「ツールコマンド」を利用した「ツール」を作成し、ツールメニューから実行するという方法がとれます。
また、作者が日本人ということが大きなアドバンテージで、見通しの良いヘルプを日本語で参照できます。

広告

コメントを残す

以下に詳細を記入するか、アイコンをクリックしてログインしてください。

WordPress.com ロゴ

WordPress.com アカウントを使ってコメントしています。 ログアウト / 変更 )

Twitter 画像

Twitter アカウントを使ってコメントしています。 ログアウト / 変更 )

Facebook の写真

Facebook アカウントを使ってコメントしています。 ログアウト / 変更 )

Google+ フォト

Google+ アカウントを使ってコメントしています。 ログアウト / 変更 )

%s と連携中