言語環境を’en’にしてみると、都合のいいことも悪いことも…

OS Xは最初のバージョンが出てきたときから、マルチランゲージと言われていました。
確かにそれぞれの言語ごとのパッケージではなく1パッケージに複数の言語環境がパッケージされていましたから、各言語ごとに異なるパッケージを購入する必要がないということは素晴らしいことでした。
しかし、実際に、例えば‘en’環境の下で‘日本語’アプリケーションを使おうとすると、メニューなどのUIが追随しなくて正常に動作しないものや、インストール時に‘日本語’を選べないアプリケーションが多くありました。
まがりなりにも‘マルチランゲージ’と言えるのはFinderとInputMethodくらいしかないじゃないかと悪態をつきたくなるような状態が結構長く続いたので、OS X 10.6, 7くらいまではそれなりに試してがっかりを繰り返したのですが、その後、諦めきってしまったのでわざわざ‘en’環境にしてみることもなかったのです。
ところが、ついうっかりOS X 10.10 Yosemiteに切り替えてしまって、余りのメモリ使用に関して”富豪主義”というか”大喰らい”というか、あればあるほど喰らうんだねえおまえはと言いたくなる有様にうんざりしてしまったので、ものは試しで‘en’環境にしてみました。

en1

うん、ちゃんとマルチランゲージだわ。Finderだけじゃないですね。
Adobe系のアプリケーションがきちんと動作することにはびっくりしました。(なんと、CS3がまともに動作します)

そもそも、Photoshop、Illustratorなどは英語マニュアルで覚えましたので、変なローカライズメニューの方が辛かったりします。

設定した言語と地域の情報は、‘~/Library/Preferences/.GlobalPreferences.plist’にそれぞれ‘AppleLanguages’、‘AppleLocale’キーとして保存されます。
それぞれのアプリケーションは、‘AppleLanguages’キーを読んでUIエレメンツを差し替える仕組みのようです。

■言語環境を’en’にしてみて、都合が良かったこと
数値データとして裏打ちできないのですが、確実に起動時と運転時のメモリ使用量が減ってきます。
日本語リソースがどの程度キャッシュされるのか、比較データを示せないのが残念ですが、クールブートしたときのメモリ使用量が明らかに減って来るのと、その後の変化を見てみても‘ja’環境よりはメモリ使用量が減っています。

■出てきた不具合
幾つかのアプリケーションで、‘en’環境では不具合が出るものが見つかりました。

  • Safariの不具合

Firefoxなどと異なって、Safariはアプリケーションサイドでの言語設定ができません。

en2

図は、確認くんのページですが、赤線の部分のように‘en-us’と表示されます。
従って、ブラウザの言語設定を読んで、ログイン制限をかけているサイトではアクセスできない所が出てきます。
私の場合も、プロバイダのログイン画面から先に進めなくなってしまいました。
対処としては、言語設定を変更できるFirefoxなどのブラウザに切り替えるという手があります。
もう一つは、Safariの言語設定を強引に切り替えるという方法もありでしょう。
探してみたところ、‘default write…’でSafariの言語設定を書き換える方法がみつかりました。

$ defaults write com.apple.Safari AppleLanguages -array ‘ja’

‘~/Library/Preferences/com.apple.Safari.plist’ファイルに‘AppleLanguages’を書き加えるという手法です。

設定を元に戻すのは、

$ defaults delete com.apple.Safari AppleLanguages -array ‘ja’

で、システム側の言語設定に切り替わります(アプリケーションの再起動は必要です)。

  • mi.appの「ツール」コマンドの不具合

‘<<<TRANSLITERATE-REGEXP-SELECTED()’が正常動作しなくなりました。()の中に文字種変換のフィルタ名を挿入して使うのですが、英語名で入れても動作しません。(ver. 3.0.0b8)
ここは諦めて(素直に)mi.appの言語設定を書き換えることにしました。
方法はSafariと同じようなことです。

$ defaults write net.mimikaki.mi AppleLanguages -array ‘ja’

‘~/Library/Preferences/net.mimikaki.mi.plist’ファイルが対象です。

これは、‘defaults write…’ではなく‘plutil’コマンドを使うこともできます。
例えば、こんな風になります。

$ plutil -insert ‘AppleLanguages’ -xml ‘ja’ ~/Library/Preferences/net.mimikaki.mi.plist

通常使用時には、システムの言語設定を読んでいますので、‘AppleLanguages’キーを‘~/Library/Preferences/net.mimikaki.mi.plist’ファイルは持っていないので、オプションは‘-insert’でOKです(書き換えの場合は‘-replace’でないとエラーとなります。‘defaults write…’の方が間違いがないでしょうね)。

設定を元に戻すのは、

$ defaults delete net.mimikaki.mi AppleLanguages -array ‘ja’

で、システム側の言語設定に切り替わります(アプリケーションの再起動は必要です)。

mi.appで全角⇔半角変換

1つ前のエントリで、mi.appの文字種変換で可能な変換のリストで間違いを記していました。正しくは図のようになります。

2

実は,文字種変換メニューに変換フィルタを追加できないかと,‘~/Library/Application Support/mi3/Transliterate/order’に追記してみていたものをうっかりとそのままコピー&ペーストしてしまったのです。
(‘~/Library/Application Support/mi3/Transliterate/order’を書き換えてフィルタを追加しようという試みは残念ながら駄目でした)

そこで、整理して,改めて全角数字⇔半角数字変換用の“ツール”を掲載しておきます。
mi.appでツールを追加する方法は,mi.appのヘルプを参照して下さい。(私は,新規ドキュメントにそのままツールコマンドを記述して適当な名前で保存し,使用しているモードの‘tool’フォルダに移動させ,アプリケーションメニューの「モードごとの設定」メニューから呼び出せるツール項目から「Finderで変更したtoolフォルダの変更を反映する」をクリックしてからメニューに反映させるという、実直且つ面倒な方法が身に付いてしまっているのですが、モードごとの設定ウィンドウの‘ツール’項目ウィンドウ上で新規項目を追加するやり方の方がスマートでしょう)

1

■全角→半角変換
数字の場合は,

<<<TRANSLITERATE-REGEXP-SELECTED(全角英数(A-z,0-9)→半角英数(A-z,0-9))
[0-9]+

アルファベットの場合は,

<<<TRANSLITERATE-REGEXP-SELECTED(全角英数(A-z,0-9)→半角英数(A-z,0-9))
[A-z]+

■半角→全角変換
数字の場合は,

<<<TRANSLITERATE-REGEXP-SELECTED(半角英数(A-z,0-9)→全角英数(A-z,0-9))
[0-9]+

アルファベットの場合は,

<<<TRANSLITERATE-REGEXP-SELECTED(半角英数(A-z,0-9)→全角英数(A-z,0-9))
[A-z]+

mi.appのツールコマンド‘TRANSLITERATE-REGEXP’は実に便利です。

mi.appとInDesignの文字種変換

mi.appがもっている文字種変換機能は以下の通りで充実しています。

  • 半角カナ→全角カナ
  • 全角カナ→半角カナ
  • 半角英数(A-z,0-9)→全角英数(A-z,0-9)
  • 全角英数(A-z,0-9)→半角英数(A-z,0-9)
  • 半角英数記号(A-z,0-9,!,…)→全角英数記号(A-z,0-9,!,…)
  • 全角英数記号(A-z,0-9,!,…)→半角英数記号(A-z,0-9,!,…)
  • 半角スペース→全角スペース
  • 全角スペース→半角スペース
  • 全角カナ→全角かな
  • 全角かな→全角カナ
  • 半数→全数
  • 全数→半数

(この変換テーブルは,‘~/Library/Application Support/mi3/Transliterate/’にあって,多分内容を編集しても動作はすると思います)
この中の全角英数字記号変換の変換対象となっているキャラクタは,以下のようになっています(全角だけ表記します)。

ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789!”#$%&’()*+,−./:;<=>?@[\]^_`{|}〜¥

mi.appの文字種変換機能の中にもアルファベットだけあるいは数字だけというものがなく,英数で括られてしまっています。
アルファベットと数字を一括で変換してしまうというのも,状況によっては不便となります。
パーレン類も別個に対処したいものです。

□追記

mi.appでは「半数→全数」、「全数→半数」という数字だけの変換フィルタはありません。私の誤りです。訂正致します(2014.03)

■InDesignで数字とアルファベットを別途で全半変換してみる
そんなこともあって,ReplaceString<http://wp.me/p1Cs3W-1R>を書いて変換辞書ファイルもそれなりにバンドルしたのですが,InDesign上で全角あるいは半角のアルファベットだけ,数字だけの変換をやりたくなってきました。前処理としてmi.appやTextWrangler.appで処理をしておければ良いのですが,貼り込んだ後からの編集段階で切ったはったをやっている時にはInDesign上で処理が必要となるケースが多いのです。

1

InDesignの文字種変換機能を使って,以下の全角文字列を全角英数字から半角英数字へ変換した場合,

ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789!”#$%&’*+,−./:;?@^_`¥<=>(〜)[\]{|}「」『』【】〈〉〔〕

が,こうなります。

ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789!”#$%&’*+,−./:;?@^_`¥(〜)[\]{|}「」『』【】〈〉〔〕

何故かパーレン類は対象としないで,その他は見事に半角です。この他では,スペースも対象外です。
これでわかることは,スペースとパーレンは別途に対処しないといけないということと,また,数字のみとかアルファベットのみという機能が無い点が不便だということがわかります。

そこで,AppleScriptで全角数字から半角数字への変換処理を書いてみると次のようになります。

tell application "Adobe InDesign CC"
	activate
	set SelectedStrngs to the selection
	if SelectedStrngs is not {} then
		set {find text preferences, change text preferences, find grep preferences, change grep preferences} to {nothing, nothing, nothing, nothing}
		set width sensitive of find change grep option 1 to true
		set find what of find grep preference 1 to "[0-9]+"
		set FoundChar to find grep SelectedStrngs
		set find character type of find transliterate preference 1 to full width roman symbols
		set change character type of change transliterate preference 1 to half width roman symbols
		repeat with i in FoundChar
			change transliterate i
		end repeat
		display notification "終わりました。" with title "完了"
	else
		display notification "文字列を選択してから実行しましょう。" with title "注意!"
	end if
end tell

これは「->半角数字」の場合ですが,アルファベットを対象にするには”[0-9]+”の部分を”[A-z]”とすればいいでしょう。また,全半を逆にするには,‘find character type’と‘change character type’のwidthを逆にして,検索対象も逆に書き換えればOKです。

1桁数字を全角に、2桁以上を半角にする−InDesignとmiでやってみる

タイトル通りなのですが、その時使うフォントがプロポーショナルで、全角数字と半角数字のデザインが歪だったりするとなんだかなあなのですが、この要求は結構な率であるのです。
ワードプロセッサ専用機が全盛の頃、モノスペースフォントで、全角、半角、2倍角などとやっていた頃の名残なのでしょうか?
それにしても、なんだかなあ、なのですが、要求されれば仕方のないことです。
そこで、タイトル通り検索してみたところ、InDesignではこんなところが。
<http://72.way-nifty.com/blog/2011/06/indesignjavascr.html>
公開、有難うございます。

■InDesignでは
上のページから引用すると、

GREP検索置換で…
2桁以上数字では「\d+,*\.*\d+」を検索し、結果を「全角英数字→半角英数字」に
1桁の数字では「(?<!\d|\.)\d(?!\d|,|\.)」を検索し、結果を「半角英数字→全角英数字」に
置換します

となっています。
スクリプトを見ても、InDesignの正規表現検索結果に対して文字種変換をする仕様のようです。
この仕様だと、2桁以上の数字を検索し文字種変換する際に「全角.と全角,」も半角にされてしまうところが、私が要求されている仕様上は困るところです。節、項、目の見出し小見出しで「全角の.」が指定されているので、「.,」の全角/半角処理は別個にやりたいのです。

そこで、数字だけ一旦すべて全角にして、半角の「.,」で桁表記された2桁以上の数字列だけ半角にするという方法をAppleScriptで考えてみました。
InDesignのスクリプトは久しぶりだったので、次のドキュメントを参考にしました。

InDesign_ScriptingGuide_AS_JP.pdf
<http://wwwimages.adobe.com/www.adobe.com/content/dam/Adobe/en/devnet/indesign/sdk/cs6/scripting/InDesign_ScriptingGuide_AS_JP.pdf>

tell application "Adobe InDesign CC"
	activate
	set SelectedStrngs to the selection
	if SelectedStrngs is not {} then
		set {find text preferences, change text preferences, find grep preferences, change grep preferences} to {nothing, nothing, nothing, nothing}
		set width sensitive of find change grep option 1 to false
		--
		set find what of find grep preference 1 to "\\d+"
		set FoundChar to find grep SelectedStrngs
		set find character type of find transliterate preference 1 to half width roman symbols
		set change character type of change transliterate preference 1 to full width roman symbols
		repeat with i in FoundChar
			if (OpenType features of i) = {} then
				change transliterate i
			end if
		end repeat
		--
		set width sensitive of find change grep option 1 to true

		set find what of find grep preference 1 to "[0-9,\\.]{2,}"
		set FoundChar to find grep SelectedStrngs
		set find character type of find transliterate preference 1 to full width roman symbols
		set change character type of change transliterate preference 1 to half width roman symbols
		repeat with i in FoundChar
			change transliterate i
		end repeat
		display notification "終わりました。" with title "完了" subtitle ""
	else
		display notification "文字列を選択してから実行しましょう。" with title "注意!" subtitle ""
	end if
end tell

やはりJavaScriptよりも処理は遅いようですが、要求仕様は満たしています。

■mi.appでは
InDesignで使った方法では、文字種変換の部分をInDesignの機能に負っています。
文字種変換の部分をAppleScriptで全てやってしまえば、どのエディタなどでも使えることになりますが、その前に、mi.appではどうでしょうか?
mi.appでは組み込みの文字種変換が使えそうです。
そこで、mi.appのツールを使ってやってみることにしました。

<<<REPLACE-TEXT-ALL
1
1
<<<REPLACE-TEXT-ALL
2
2
<<<REPLACE-TEXT-ALL
3
3
<<<REPLACE-TEXT-ALL
4
4
<<<REPLACE-TEXT-ALL
5
5
<<<REPLACE-TEXT-ALL
6
6
<<<REPLACE-TEXT-ALL
7
7
<<<REPLACE-TEXT-ALL
8
8
<<<REPLACE-TEXT-ALL
9
9
<<<REPLACE-TEXT-ALL
0
0
<<<TRANSLITERATE-REGEXP-SELECTED(全角英数(A-z,0-9)→半角英数(A-z,0-9))
[0-9,\.]{2,}

‘TRANSLITERATE-REGEXP-SELECTED’が肝ですね。

本来は、

<<<TRANSLITERATE-REGEXP-SELECTED(半角英数(A-z,0-9)→全角英数(A-z,0-9))
\d+
<<<TRANSLITERATE-REGEXP-SELECTED(全角英数(A-z,0-9)→半角英数(A-z,0-9))
[0-9,\.]{2,}

で動作するはずなのですが、現時点でのmi.app version 3.0b4では、‘TRANSLITERATE-REGEXP-SELECTED’が繰り返されると動作が止まるというか1回目の処理で終わってしまうようですので、無骨に1文字ずつ変換しています。

この次は、AppleScript内で文字種変換をやって、文字種変換機能を持たないエディタでも使えるバージョンを考えてみたいと思うのですが、正規表現での検索結果に文字種変換をかけなければいけないので、もう少し考えないと光明が射してこないかなというところです。

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からのアクセスはできません。しかし、それに代わる手段として、「ツールコマンド」を利用した「ツール」を作成し、ツールメニューから実行するという方法がとれます。
また、作者が日本人ということが大きなアドバンテージで、見通しの良いヘルプを日本語で参照できます。

iClouDrive.appを使って、ツールを同期する

DropBox経由のデータ同期に慣れてくると、データをサーバに上げる→サーバからデータをおろす→ローカルの所定の位置に移動する、といったクラウド以前のマニュアル同期の方法がとても面倒になってきます。
また、複数のマシンで作業をすることになると、環境を合わせることも結構な手間がかかることになります。
便利を知ると後戻りできなくなるということなのでしょうが、現時点で、作業環境が同期できないことは大きな苦痛となってきました。
最近の環境の修正で、クラウド経由で同期できるようになったことは、

  • iCloudの各種サービスの同期
  • 副次的にことえり辞書の同期

などですが、こうなってくると、ドキュメント系だけでなく作業環境も同期可能なものはないかと考え始めます。できればAdobe系のアプリケーションのプラグインなども同期できるとありがたいのですが、これはかなり面倒というか難しそうです。
少し手近なところで、mi.appの‘ツール’の同期から考えることにしました。

■mi.appの‘ツール’の同期

  • ‘ツール’フォルダをクラウドに置く
  • mi.appの‘ツール’フォルダがあるべき場所にはクラウド上の‘ツール’フォルダのシンボリックリンクを置く

この線で考えます。
クラウドは、レスポンスがよいところでないと同期のタイムラグが気になります。また、ファイル名で互換がとれないケースも考えられます。
SkyDrive、Norton Zone、Yahoo!Box、DropBox、iCloudをそれぞれ試みましたが、「㈰→①機種依存文字」「列反転1<->2」などのファイル名があると、DropBox、iCloud以外は同期がストップするかエラーアラートが出てそのファイルが除外されることになりました。
で、今回はiCloud経由とし、設定ツールにiClouDrive.app<http://www.zibity.com/icloudrive>を使ってみました。

e86d7iClouDrive.appは、‘~/Library/Mobile\ Documents/’に‘iClouDrive’というフォルダを作成して、データ同期を行うものです。アクセスを容易にするために、ホームディレクトリにシンボリックリンクが置かれます。

  • mi.appの‘ツール’フォルダを‘~/Library/Mobile\ Documents/iClouDrive’に置きました
  • mi.appの‘ツール’フォルダがあるべき場所、‘~/Library/Application\ Support/mi3/mode/Normal/’には‘ツール’フォルダのシンボリックリンクを置きました


結果OKです。

文字列置換用スクリプト-ReplaceString

mi_txtwrmi.appとTextWrangler.app用の文字列置換用スクリプトと、その変換辞書ファイルです。変換辞書ファイルの内容をクリップボードに置いて、順次変換を繰り返すスクリプトです。100行あれば、100個の検索置換が行えるわけです。
変換辞書ファイルは、
検索対象文字列_tab_置換文字列
という形式で、「検索対象文字列」「置換文字列」の間をタブで区切った行がワンセットで連なったテキストファイルとなっています。

b4c5e

0bbb6■使い方

ReplaceString_ClipDIC_4mi.scptがmi.app用のAppleScriptによるスクリプトファイルで、ReplaceString_ClipDIC_TW.scptがTextWrangler.app用のAppleScriptによるスクリプトファイルです。それぞれ、アプリケーションからアクセスできるスクリプト(あるいはツール)フォルダへ入れておけばいいでしょう。

  • 先ず、変換辞書ファイルをmi.appあるいはTextWrangler.appで開いて、辞書の内容をクリップボードにコピします
  • 文字列変換処理を行いたいドキュメントを開いて、処理対象エリアを選択状態にしてください
    (エリア選択されていない場合は、ドキュメントの全体が処理対象となります)
  • ReplaceString_xxx.appをスクリプト(あるいはツール)メニューから選択実行して下さい

これで、選択エリア内で検索/置換処理が行われ、内容が書き換わります。

■既知の事柄
変換辞書テーブルの行数が1,000を超えると、徐々に処理スピードが落ち始め、更に行数が増えるとがくんと落ちます。(マシンスペックと実メモリ搭載量によっても変わるでしょうが…)
処理時間がかかるなと思われたら、クリップボードへ収める辞書の行数を分割して減らすなどの工夫をして下さい。
(それでも、先日郵便番号データ12万行を処理したところ、ハングアップすることもなく処理できました。まあ、5分では無理でしたが….)

■ダウンロード
http://amstudio.zxq.net/amweb/ReplaceString.iso.zip
http://amstudio.sytes.net/amweb/ReplaceString.iso.zip
※ReplaceStringの著作権は放棄いたしませんが、対価は不要です。自己責任で、自由にお使いください。
インターネット上のリンクは、作者への事前/事後の承諾は不要ですので、自由にリンクして下さい。
基本的に、再配布・転載は認めません。

■保証
動作に関する保証はいたしません。また、使用によって生じたと思われるいかなる損害に対しても、作者は一切責任を負い ません。使用は御自身の責任において行なってください。

mi.app—便利な‘ツール’

miもはや、今更、私ごときが付け足すものなど何もない程に評価の定まった感のあるmi.appですが、使い込めば使い込む程に‘ツール’の便利さに感心します。‘モード’については、強力な先駆者達がいくつも有用な‘モード’を提供してくれていますが、‘ツール’についてはあまり見かけない気がします。
‘ツール’には、便利であればある程、極めて個人的な便利さに尖ってゆき汎用性を失う方向に進む傾向があるのでしょう。(゚д゚)(。_。)(゚д゚)(。_。) ウンウン

で、多少は汎用性がありそうなものをいくつか紹介することにします。

・ open tool Folder.scpt

ツールフォルダ(‘~/Library/Application\ Support/mi3/mode/Normal/tool’)に入れてください。mi.appのツールメニューから実行すると、ツールフォルダ(‘~/Library/Application\ Support/mi3/mode/Normal/tool’)を開きます。
ツールフォルダに入れない状態で起動すると、スクリプトファイルが入っているフォルダを開きます。

・Sort_ParaGraph.scpt

選択した複数の段落ををソートするAppleScriptファイルです。ツールフォルダ(‘~/Library/Application\ Support/mi3/mode/Normal/tool’)に入れてください。
複数の段落が選択された状態でないと実行されません。

・Lowercase、UpperCase、WordCap

それぞれ、選択した英字を小文字化、大文字化、ワードキャップ化します。mi.appの‘ツールコマンド’ファイルです。

・選択範囲から不要改行を取り除く

mi.appの‘ツールコマンド’ファイルです。選択範囲から、行末文字「。.」がない段落の改行を取り除き、行頭の「全角、半角スペース」も取り除きます。

・CHANGETO(Shift_JIS)_CRLF、CHANGETO(UTF-8)_LF

それぞれ、現在開いている最前のドキュメントの、テキストエンコーディングと改行コードを変更します。
mi.appの‘ツールコマンド’ファイルです。

・ブロックコメントアウト(*…*)、ブロックコメント解除

(*と*)で囲んだコメントアウトブロック作成と、ブロック解除用のツールです。mi.appの‘ツールコマンド’ファイルです。

ツールの数が違いますが、ツールメニューはこんな風になります。

2013-09-29-5.19.03

■環境
OS X 10.8.5、mi.app ver.3.0b4

■ダウンロード
http://amstudio.zxq.net/amweb/mi_tools.iso.zip
http://amstudio.sytes.net/amweb/mi_tools.iso.zip
※mi_toolsの著作権は放棄いたしませんが、対価は不要です。自己責任で、自由にお使いください。
インターネット上のリンクは、作者への事前/事後の承諾は不要ですので、自由にリンクして下さい。
基本的に、再配布・転載は認めません。

■保証
動作に関する保証はいたしません。また、使用によって生じたと思われるいかなる損害に対しても、作者は一切責任を負い
ません。使用は御自身の責任において行なってください。