秀丸エディタの「変換リストによる連続置換マクロ (ListReplace.mac)」を使う
広告
秀丸エディタは、多くの役に立つマクロが公開されており、マクロが作成できないユーザーでもその恩恵が得られます。 中でも、「変換リストによる連続置換マクロ (ListReplace.mac)」は、 変換リストに基づいて、複数の置換操作を一度に行ってくれる便利なマクロです。
秀丸エディタは、Windows環境では、良く知られているテキストエディタです。 一見何の変哲もないテキストエディタですが、その本質は、マクロ機能にあります。 マクロを駆使することで、複雑な処理を高速で行うことができるようです。
ただマクロが自分で作れないと、公開されているマクロを利用するだけになるので、ほかのテキストエディタと差異はありません。 ただ、公開されているマクロを活用するだけでもその便利さの一端は、享受することができます。
マクロのダウンロード先
「変換リストによる連続置換マクロ (ListReplace.mac)」をダウンロードします。 この記事を書いている時点(2016-08-27)では、バージョン3.07β5 (公開日 2015-11-02)が、最新版のようです。
ダウンロードした後、解凍してみるとマクロ本体しか存在しません。
そこで、バージョン3.04をダウンロードして、その中のドキュメントを参考にします。
田楽DLLの準備
田楽DLLを「Hidemaru」フォルダにコピーします。
まず、田楽DLLが必要なので、ダウンロードして、「Hidemaru」フォルダにコピーします。
田楽(でんがく)サーバ&DLL&BREGEXP DLL Wrapper 専用開発室
現時点(2016-08-27)での最新版は、Ver.3.22のようです。
ダウンロードしたファイルを展開し、その中のDengakuDLL.dll を適当なフォルダ(例:秀丸のフォルダ)にコピーします。
32bit版を使用していれば、「Program Files(x86)」、 64bit版であれば、「Program Files」内の「Hidemaru」フォルダにコピーします。
マクロをマクロ用フォルダにコピーする
マクロ用フォルダの位置は、その他から、動作環境を選択し、
環境から、マクロファイル用のフォルダの項目に示されています。必要に応じて、位置を変更します。
確認したマクロファイルフォルダに「ListReplace.mac」をコピーします。
検索置換マクロを実行する
マクロから、「マクロを実行」を選択します。
「ListReplace.mac」を選択し、「OK」をクリックします。
連続置換マクロの実行画面です。
なぜか、Altキーを押すと表示が乱れます。
変換小リストの作成
変換リストをダイアログの上で作成します。比較的簡単なリストを作るときに使う事が想定されています。 リストのファイル形式をよく理解していない間は、ここからリストを作成しましょう。
リスト作成のダイアログが表示されます。このダイアログもAltキーを押すと表示が乱れます。
- "templist.txt" として保存され,直後の置換に利用できます。 同名のファイルがすでに存在するときは上書きされます。別名で保存することもできます。
- Esc キーで、メインメニューに戻ります。
- 編集中はエンターキーまたはタブキーでも次の欄に移動できます。
- このダイアログからの直接置換をする場合は,直前にメインダイアログで変更した項目は反映されません。 確認する必要があるときは,いったんメインダイアログに戻る必要があります。
変換リストを作成する
一行に変換項目を記述し、それを並べたものです。 それぞれの項目は、コンマで区切り「,」リターンで終了します。パラメーターは省略できます。
例
検索語, 置換語, パラメーター↩
- 変換リストは、上から順に実行されます。
- 文字数の制限はありません。
- 区切りは通常は全角または半角のコンマを用います。ダイアログで指定することで、ほかの文字も使用できます。
- スペースを使って、列をそろえる場合は、スペースが検索置換に反映されないように、ダイアログで、「両端のスペースを除く」を指定します。
- 複数の区切り記号を混在させても問題ありません。(変換モジュール使用の場合は7個まで,使用しない 場合はとくに個数の制限はありません)
- 前後の空白を含めて置換対象にすることもできます。この場合は最初のダイアログ で「両端のスペースを含む」を指定します。
- 「//」を行頭に付した注釈行をつけることができます。連続した複数行の注釈も可能です。この記号は変更ができます。
- 改行のみの行は無視されます。リストを見やすくするために使用することができます。
- リストはどのフォルダに置いてもかまいませんが,特定のフォルダに入れておいた方が管理しやすいと思います。 リストの選択では、前回使用したファイルが開かれます。
置換パラメーター
パラメーターは、複数指定できます。複数指定する場合の順序は任意です。 パラメーターとパラメーターの間は、区切り文字で区切ります。
パラメーター | 省略表記 | 意味 |
---|---|---|
word | w | 単語単位の変換(日本語の場合は、漢字の連続の際に機能する) |
casesense | c | 大文字、小文字を区別します |
nocasesense | nc | 大文字、小文字を区別しない |
regular | r | 正規表現(大文字、小文字は区別されます) |
wordパラメーターの挙動
バージョン3.04の添付ドキュメントに、wordパラメータの説明が例を挙げて書かれていたので転記しておきます。
変換リスト
word指定なし
cat, 猫
band, 帯
word指定あり
cat, 猫, word
band, 帯, word
検索対象文字列 | word指定なし | word指定あり |
---|---|---|
catch | 猫ch | catch |
abandon | a帯on | abandon |
漢字熟語にも対応していますので、漢字が連続する表記での意図しない置換を防止できます。
変換リスト
和歌,短歌
東,西
検索対象文字列 | word指定なし | word指定あり |
---|---|---|
和歌 | 短歌 | 短歌 |
和歌山 | 短歌山 | 和歌山 |
東 | 西 | 西 |
東京 | 西京 | 東京 |
伊東 | 伊西 | 伊東 |
循環するリストを使用する際の注意点
これもバージョン3.04の添付ドキュメントに、例を挙げて書かれていたものを転記しておきます。
変換リスト
1,2
2,3
3,4
4,5
この場合、対象文字列中の1~4の数字はすべて5になります。
これを避けるには、置換リストの順序を変更します。
変換リスト
4,5
3,4
2,3
2,3
循環するリストの場合は、この方法では解決されません。
変換リスト
1,2
2,3
3,4
4,1
ダミー文字に一度変換することで対応できます。 ダミー文字は、実際に変換されるので、処理する文書中に存在しない文字を使用する必要があります。
変換リスト
4,@
3,4
2,3
1,2
@,1
変換リストを同じ場所に保存する
エディタで、変換リストを作成する場合、保存フォルダに同じフォルダを指定するのは面倒です。
そこで、マクロで保存先を指定して、保存すれば、便利になりそうです。