Title: その他

top秀丸エディタマクロ

update : 2017/08/12 (Sat)

1 目次

CompleteX関連

持ち出しキット関連

他のマクロから呼び出して使うマクロ

2 その他 

2.1 秀丸マクロ文法チェックマクロ(Grammarcheck.mac)

秀丸マクロの文法チェックマクロです。チェックしたいマクロを開き実行して下さい。

動作原理

  1. 編集していた場合、ファイルを保存する。
  2. 一時ファイルをステルス秀丸で開き、保存したフィルを読み込み、エンコードも元ファイルに合わせる。
  3. 一時ファイルの先頭に「endmacro;」を挿入し保存。
  4. 一時ファイルを「execmacro文」で実行。
  5. エラーがあるならエラーが出て停止、エラーがなければ一時ファイルを削除して終了。

動作原理

  1. 「すべて選択」し「コピー」。
  2. 一時ファイルをステルス秀丸で開き、「貼り付け+履歴戻し」。
  3. 一時ファイルの先頭に「endmacro;」を挿入し保存。
  4. 一時ファイルを「execmacro文」で実行。
  5. エラーがあるならエラーが出て停止、エラーがなければ一時ファイルを削除して終了。

動かないマクロにして秀丸エディタ本体に実行させているだけです。 (秀丸エディタのマクロはコンパイルするタイプなので、上記のような方法をとっています。)

目次へ

2.2 一時的に違う設定にするマクロ

通常、指定している設定を、一時的に違う設定に変更するマクロです。例えば".txt"を".mac"の設定にする等。 設定を変えたいファイル上で実行して下さい。

「ファイルタイプ別の設定」から変更して「保存しないで更新」を行う場合と同じ状態となります。

2.2.1 拡張子で指定

「使用する設定の拡張子」を、問い合わせるダイアログが表示されるので、拡張子を入力してください。

バックアップ等でファイルの拡張子が変更された場合に使える?

2006/11/04 Version.1.2.0
  • "共通"を指定できるようにした。
  • レジストリアクセス失敗や、拡張子設定がない場合、 "共通"の設定を使うかどうか問い合わせるようにした。
2006/01/29 Version.1.1.0
  • 秀丸Ver.5.11から追加された"configset"を使うようにした。 これにより保存しなくても変更が可能。ステルス秀丸も不要。

2.2.2 設定名で指定

設定のリストをメニュー表示し、変更を行います。 ファイルを変更していても、そのまま変更可能。

2006/01/29 Version.1.0.0
  • 初版
2006/11/04 Version.1.1.0
  • "共通"を指定できるようにした。
2007/11/15 Version.1.2.0
  • 空白を含むパスの場合、正常に動作していなかったバグの修正。
  • 設定の列挙に使っている正規表現が、間違っていたので修正。
2013/07/08 Version.1.3.0
  • レジストリの列挙方法を変更。 レジストリエディタのエクスポート機能を使うのを止め、 VBSから、WMIで経由で列挙する様に変更。 (UACで、レジストリエディタの起動に失敗する為)
2013/07/09
  • 持ち出しキット使用時は、"HmRegIni.ini"から、データを作成するように修正。

目次へ

2.3 Urlショートカット作成マクロ(make_url.mac)

選択したURLのショートカットを作成するマクロです。 URLの正当性等は一切考慮していないので選択範囲に不要な文字を含まないようにして下さい。 複数のURLがあっても大丈夫なハズです。

URLを選択して実行するとファイル名を聞いてくるので、ファイル名を入力すれば作成されます。

出力先は

  1. デスクトップ
  2. お気に入り
  3. 任意のフォルダ

を指定できます。 (設定は直接マクロを編集して下さい。)

ステルス秀丸を使用している都合上、秀丸メールでは動きません。

目次へ

2.4 htmlからtextを取得するマクロ

2012/05/26 "オブジェクト取得(IEその2)に失敗"が出るようになったので、wait調整

現在のファイルか、指定されたファイルまたはURLからテキストを取得します。

マクロで処理しているわけではなく、秀丸エディタVer.8から追加されたCOM操作機能を使用し、 インターネットエクスプローラが処理しています。

秀丸エディタ Ver.8以降専用

秀丸エディタ Ver.7で動作するバージョン

目次へ

2.5 「お気に入り」をメニュー表示して開くマクロ

2010/06/07 Ver.1.4.1へバージョンアップ


確認している不具合のような現象
「お気に入り」をメニュー表示して開くマクロをWindowsXPで使用している場合、メニュー表示中に、 秀丸本体側のメニューバーが真っ白になる。
 --> 田楽DLLメモ秀丸本体のメニューが白くなるのページを参照。


もともとは秀丸エディタ Version 4.10で対応した「Hidemarnet Explorer 」から インターネットエクスプローラの「お気に入り」を開く為に作成したのですが、 作っているうちに当初の目的だったURLだけではなく、ローカルファイルやフォルダ等も、 開けるようになりました。また、マクロやプログラムの実行も可能です。

つまり、よく使うファイル、フォルダ、マクロ、プログラム、URLを登録したメニューを 表示し、開いたり実行するマクロです。メニュー方式のランチャーの一種?

実行には「田楽DLL Ver.2.97」が必要です。

Version 1.3.0β4から設定ファイルの置き場所が変更になってます。注意して下さい。

web_fav_menu.mac の説明(変更履歴)

2.5.1 旧バージョン

マクロやプログラムの実行、フォルダを開く機能がなく、「お気に入り」をメニュー表示するだけの バージョンです。

お気に入りを開くマクロ

目次へ

2.6 window関連のマクロ

何となく勢いだけで作った秀丸エディタのウィンドウ操作を行うマクロです。

実行には田楽DLLが必要です。

マクロの詰め合わせ。 圧縮ファイルには以下のファイルが格納されています。

window_arrangement.mac    ウィンドウ並び替えマクロ
window_hide.mac           非表示にするマクロ
window_list.mac           ウィンドウを切り換えるマクロ
window_restore.mac        ウィンドウ並び替えマクロで並び替えたものを元に戻すマクロ
window_show.mac           非表示ウィンドウを表示するマクロ

window関連マクロセット の説明

目次へ

2.7 ファイルコンペアの補助マクロ

秀丸エディタから、ファイルを比較するソフトを起動するマクロです。ファイルの比較を行うマクロではありません。

注意:秀丸エディタ単体で、ファイル比較ができないという事ではありません。 Ver.8からカラーマーカーを使用し、ファイルの差異がある個所に着色して、表示する事が可能になっています。
参考:秀丸エディタの紹介(Ver8.00対応版)(内容比較のカラー化)
関連マクロ:「他の秀丸エディタと内容比較」を行ったウィンドウを並べるマクロ

実行には以下のようなファイル比較ソフトが必要です。 (比較するファイルを起動オプションとして渡せればどれでも動作します。)

Vectorで探せばいろいろとあるので、自分の好みで選んでください。

[FC_open.mac]

マクロの詰め合わせ。 圧縮ファイルには以下のファイルが格納されています。

FC_open.mac         現在秀丸エディタで開いているファイルと比較する。
                    ファイルが1つしかない場合、"FC_selectfile.mac"があれば起動する。
FC_selectfile.mac   現在のファイルと選択したファイルを比較する。
FC_selectfiles.mac  FC_selectfile.mac の複数選択可能バージョン。要田楽DLL。
FC_SelectWindow.mac FC_open.mac の複数選択可能バージョン。メニューではなくダイアログ表示を行う。要田楽DLL。

"FC_open.ini"をマクロと同じ位置に作成し、ファイル比較プログラムを指定してください。

;FC_open.iniの例
;実行ファイルのパスを設定
[setting]
fc_exe=C:\Program Files\Microsoft SDK\Bin\WinDiff.Exe
Mulit=0    ;fc_exeで指定したプログラムが3ファイル以上比較できるソフトなら"1"にする。
;fc_exeで指定したプログラムが3ファイル以上比較できれば指定する必要はない
Mulit_EXE=3ファイル以上比較できるソフトのパス(Mulit=0時のみ有効)

目次へ

2.8 フォルダー履歴表示マクロ

フォルダー履歴を表示するマクロです。タスクトレイ(常駐秀丸エディタ)までマウスを動かす必要がないから多少便利?

目次へ

2.9 単語の先頭のみ大文字に変換

単語の先頭のみ大文字に変換するマクロです。カーソル位置の単語か範囲選択内の単語を変換します。 (箱形選択中は出来ません。)

単語の定義と単語の区切りと見なす文字列を変更するにはマクロを編集する必要があります。

デフォルトの設定

単語の定義
$word = "[A-Za-z_]+{2,}"
英単語の区切りと見なす文字列
$separte = ",./+-;:<>()[]=~|$#%&'\"@ \t" + char(0x0d) + char(0x0a);

動作例(画像は開発中の物です。実際動作と異なってます。)

動作の説明

"|"はカーソル位置を示します。

カーソル位置が区切り文字でない場合は区切り文字を探して上(前)方向へ進みます。
  1. HIDEM|ARU EDITOR
     マクロ起動時のカーソル位置
  2. |HIDEMARU EDITOR
     区切り文字を探して上(前)方向へ
  3. hidemaru EDITOR
     区切り文字の次の位置から下検索し、マッチした範囲を小文字へ
  4. Hidemaru EDITOR
     マッチした先頭1文字を選択し大文字へ
  5. Hidemaru| EDITOR
     マッチした最期の位置へ移動
カーソル位置が区切り文字の場合は区切り文字以外を探して下方向へ進みます。
  1. Hidemaru| EDITOR
     マクロ起動時のカーソル位置
  2. Hidemaru |EDITOR
     区切り文字以外を探して下(後)方向へ
  3. Hidemaru editor
     区切り文字以外の位置から下検索し、マッチした範囲を小文字へ
  4. Hidemaru Editor
     マッチした先頭1文字を選択し大文字へ
  5. Hidemaru Editor|
     マッチした最期の位置へ移動
範囲選択時に実行した場合、範囲内に含まれる単語も対象になります。 (動作例の範囲選択の最初と最後をよく見て下さい。)

目次へ

2.10 秀丸マクロサブルーチンジャンプ

秀丸マクロ専用のサブルーチンへ移動するマクロです。 call文がある行で実行すると、画面を分割し下の画面にサブルーチンを表示します。

マクロには以下の設定があります。

//分割の割合
#splithight1 = 1;
#splitHight2 = 2;
//設定 マクロ起動位置を上段に表示するようにするか
//0:表示しない 1:表示
#callview = 1;
//設定 #callviewが"1"の場合表示する位置
//0:上段先頭 1:上段中央 2:上段最期 -X:上段先頭からのオフセット
#viewpos = 1;

目次へ

2.11 タブグループ対応ウィンドウ一覧

タブグループに対応した(?)ウィンドウ一覧を表示するマクロです。非タブモードでは通常の ウィンドウ一覧を表示します。

このマクロの実行には、「田楽DLL」が必要です。

秀丸エディタは Ver.5.0β31以降が必要です。

2007/03/04 Ver.1.1.1
  • タブモード時に、非表示及び、"このタブを最小化"したウィンドウもリストに表示するようにした。
2009/04/26 Ver.1.2.0
  • ダイアログ幅をファイル名の長さに合わせ、自動調節するようにした。(min:60 max:windowwidth)

マクロの先頭にタブグループを展開する/しないの設定があります。 (実行画面は展開するに設定) また、表示部分(ツリービュー)の高さを変更可能です。

00011|//ダイアログ表示時に全てのタブグループを展開する場合は1、しない場合は0
00012|//マクロを起動したタブグループは設定にかかわらず展開
00013|#NODE_OPEN = 1;
00014|//ツリービューの高さ
00015|#DIALOGHEIGHT = 15;


window_tablist.mac実行画面

目次へ

2.12 まとめて閉じるダイアログ

開いているファイルを「まとめて閉じる」為のダイアログです。

 IKKIさんの作成したマクロ「まとめて閉じるダイアログ」の改造版になります。

このマクロの実行には、

が必要です。 秀丸本体と同じ場所、マクロフォルダ、CloseDialog_ex.macと同じ場所のいずれかに、 DLLがある必要があります。

2006/09/01 Version 1.03b
  • 同梱する ht_tools.dll を 1.18.00 → 1.18.01へ
2006/04/23 Version 1.03a
  • 同梱する ht_tools.dll を 1.17.00 → 1.18.00へ
2005/09/19 Version 1.03
  • 機能的に一段落したのでバージョンのみ変更
  • ht_tools.dll Version up 1.17.00へ
[閉じるダイアログ]

目次へ

2.13 あふから秀丸エディタに移動するマクロ

2画面ファイラーであるあふから秀丸エディタに 移動するマクロです。 (秀丸エディタを呼びだす機能を、秀丸エディタのマクロを使って実現してます。)

注意 あふから秀丸エディタに移動する(秀丸エディタをアクティブにする)ためのマクロです。 秀丸エディタが起動していない場合は、何もしません。(新規の秀丸エディタは起動しません。)

2.13.1 設定方法

マクロをマクロフォルダにいれ、ステルス状態で、マクロを実行するように指定してください。

私はメニュー定義ファイルを使ってます。(秀丸エディタは環境に合わせてフルパスで指定してください。)

afx 秀丸メニュー
"秀丸に移動"                  Hidemaru.exe /h /x afx_call.mac
"ファイルを選択して移動"      Hidemaru.exe /h /x afx_call_menu.mac

目次へ

2.14 ビューア機能付きgrep

grep出力を元にマッチしたファイル内容を表示するマクロです。(WZGREPもどきマクロです。)


秀丸エディタ Ver.8対応版

grep_view.mac Version 1.3.2 (2013/07/11)
実行には秀丸エディタ Ver.8.00β1 以降が必要です。


秀丸エディタ Ver.7対応版

grep_view.mac Version 1.2.4 (2009/08/23)
実行には秀丸エディタ Ver.6.00β9 以降が必要です。 田楽DLLがあれば使用します。なくても動作自体に問題はありませんが、 マクロ実行中はCPUをフルに使うことになります。(田楽DLLがあると低減されます。) 田楽DLLは以下の場所から入手してください。

「田楽DLL」:M. Sugiura Personal Web Page


2013/07/11 Version 1.3.2
  • grep結果が最大化されていた場合、そのまま実行していた為、 ビュー画面が見えない。grep画面は、通常表示で実行するように修正。
2012/11/01 Version 1.3.1
  • 秀丸エディタVer.8.30β6で警告が出るので対処
2009/08/23 Version 1.3.0
  • 正式版 Version 1.3.0β1からの変更なし
2009/08/23 Version 1.3.0β1
  • 秀丸エディタ Ver.8対応
  • 田楽dllを使用しないようにした。
2009/08/23 Version 1.2.4
  • 正式版 Version 1.2.4β2からの変更なし
2008/02/10 Version 1.2.4β2
  • filetypeが"grep"以外でも動作させる、#def_mode = 4 を追加。
  • マクロ実行中はツールバー、ステータスバー、ファンクションキー表示を消せるようにした。
  • 浮いていない「アウトライン解析の枠」も閉じれられるようにした。
2007/12/24 Version 1.2.4β1
  • 重複しているコードの削除
  • grep結果のフルパスかどうかの判定を、毎回行うようにした。
  • grep画面で、「アウトライン解析の枠」が「浮かす」になっていた場合、マクロ実行中は閉じるようにした。
  • grepの設定で、「ファイル名一覧だけ作成」の場合でも動作するようにした。
2007/06/30 Version 1.2.3
  • 場合によっては、最終行までカーソル移動が出来なくなる不具合の修正
2006/06/10 Version 1.2.2
  • 同じファイルを既に開いていた場合の処理を、レジストリ書き換えから、 setcompatiblemode文を使用する方式へ変更。
2006/04/08 Version 1.2.1
  • キャンセルした場合、新規秀丸を閉じるようにした。
  • 設定に#waitを追加
  • 設定の位置を履歴の前に移動
2006/04/06 Version 1.2.0a
  • 設定部分タグジャンプの位置を変更していなかったので修正。
2006/03/24 Version 1.2.0
  • grep側も、カーソル位置が、なるべく画面の中心になるようにした。 Ver.6.0β9以降が必要。
2005/12/17 Version 1.1.0
  • return(enter)キーでマクロの終了&tagjumpするようにした。
  • #def_modeもgrep_view.iniから読むようにした。
  • 横に並べる、縦に並べるをマクロで行うようにした。
  • ウィンドウの並びを途中でも変更できるようにした。 数字キーで切替。設定値と違い、1〜4を使う。
  • #def_modeに"3:現在の行から表示"を追加
  • Shiftを押しながら終了(Esc or Enter)した場合、画面を元に戻さないようにした。
  • 同じファイルを既に開いていた場合の処理を、ファイルを開くときでなく、grep実行後に変更。
    副作用として、このマクロ実行中に既に開いているファイルを開くと、通常と違い、上書き禁止で開くことになる。
  • #viewとハンドルが一致しない場合、閲覧モードにならないようにした。
2005/11/27 Version 1.0.1
  • grep_view.iniが存在した場合、設定を読み込むようにした。マクロの直接編集よりも優先。

    現状、設定は以下の3つ
    ウィンドウ配置
    ビューアウィンドウの高さ
    マクロ終了時のビューア処理
    iniファイルの例
    [setting]
    WindowMode=0
    ViwerHeight=350
    view_close=0
2005/11/25 Version 1.0.0
サポート会議室に投稿した内容から、以下の変更を行ってます。
  • 起動した秀丸のfiletypeをみてgrepダイアログを表示するか判断。
  • grep結果から実行した場合の動作を指定可能にした。
  • 中断した場合や、見つからなかった場合の処理を追加。
  • ビューア画面で、マッチした行をなるべく画面中央になるようにした。
  • タブ時のビューア画面処理を変更。 最初から単独ウィンドウへ。終了時の処理も変更。
  • ファイル名と行番号の解析方法を変更。秀丸本体の検索を使用しない。

ビューア表示その1(横に並べる)
横に並べる
ビューア表示その2(縦に並べる)
縦に並べる

目次へ

2.15 ファイルヒストリダイアログ

ファイルヒストリの内容を表示するダイアログです。 普通のファイルヒストリと違うのは、複数選択が可能な事です。

実行には田楽DLLが必要です。(要Ver.2.83) ソート機能を使うには、変換モジュールライブラリ のソートが必要です。

2012/12/23 Version 1.3.0
  • CheckListDialogのバージョンアップ
2006/05/05 Version 1.2.1
  • バグ修正
    • ソートモード0(ソートしない)が設定できなかった。
    • 全選択が機能していなかった。
2006/01/19 Version 1.2.0
  • 田楽でもソートon/offができるようにした。
2006/01/15 Version 1.1.0
  • ソート機能追加
2006/01/08 Version 1.0.0
  • 初版

目次へ

2.16 カーソルup・downマクロ

エディタ画面の半分で動作の変わるup、downコマンドです。 画面半分までは通常の動作ですが、半分を過ぎるとカーソル位置を固定し画面をスクロールさせます。

秀丸エディタのVer.6が必要です。(2006/07/30現在β版)

_down.mac
下移動マクロ(画面半分より下に移動しない。)
_up.mac
上移動マクロ(画面半分より上に移動しない。ただし、ファイル先頭の場合は上へ移動する。)
2006/07/30 Version 1.0.0
  • 初版

目次へ

2.17 行番号を追加してコピー

選択された範囲を行番号を追加して、クリップボードにセット、または新規ファイルを開いて貼り付けるマクロです。 折りたたみがある場合、折りたたんだ状態でコピーしたり、展開してコピーすることもできます。

[add_lineno_fold.mac実行画面]

2.17.1 行番号を追加してコピーするマクロの仕様

2.17.2 行番号を追加してコピーするマクロの設定方法

デフォルトの設定を変えるには、マクロを直接編集してください。

00020|//折りたたみの出力状態を設定
00021|// 0:折りたたみを展開してコピーする
00022|// 1:折りたたんだ状態でコピーする
00023|#fold = 0;
00024|
00025|//出力先の設定
00026|// 0:新規ファイル
00027|// 1:クリップボード
00028|#clipbord = 1;
00029|
00030|//先頭にファイル名を追加するかどうかの設定
00031|// 0:追加しない
00032|// 1:ファイル名のみ
00033|// 2:フルパス
00034|#add_filename = 1;

また、execmacro文 から、引数を渡すことで、動作を変更する事が出来ます。

配布ファイル内にある、「 add_lineno_foldselect.mac」は、メニューを表示し、 折りたたみを展開する/しないを選択可能なマクロです。

2.17.3 行番号を追加してコピーするマクロの履歴

2006/08/06 Version 1.0.0
  • 初版
2007/02/15 Version 1.0.1
  • タブ-->空白変換用変数作成部を変更
2011/03/17 Version 1.0.2
  • 座標取得方法を変更
2011/12/17 Version 1.0.3
  • 終了座標の計算を変更。
  • タブ-スペース変換を変換モジュールで行うように変更。
2012/02/09 Version 1.1.0
  • 先頭にファイル名を追加可能にした。
  • 新規ファイルの場合、エンコードを同じにするように修正。
2012/02/11
  • 起動オプションを追加
  • add_lineno_fold.mac と統合

目次へ

2.18 拡張子別に自動起動マクロを切替

秀丸エディタ Ver.6.00から追加された自動起動マクロ(ファイルを開いた直後)を、 拡張子別に切り換えます。

2.18.1 ファイルを開いた直後

このマクロを使用することにより、

という事が可能です。

実行マクロである"AutoOpen.mac"と、設定用の"AutoOpenSetup.mac"があります。 実行前に、"AutoOpenSetup.mac"を実行し、設定を行ってください。 "AutoOpenSetup.mac"の実行には田楽DLLが必要です。

AutoOpen.mac Version.1.0.0(2006/10/28)

AutoOpen.mac

2006/10/28 Version 1.0.0
  • 正式版として公開
2006/08/17 Version 1.0.0β1
  • 動作するようになったので、とりあえず公開

AutoOpenSetup.mac

2006/10/28 Version 1.0.0
  • 正式版として公開
2006/08/19 Version 1.0.0β2
  • 田楽dllのロード部分を見直し
  • マクロの追加で複数選択した場合の処理追加
2006/08/17 Version 1.0.0β1
  • 動作するようになったので、とりあえず公開
[AutoOpenSetup.mac実行画面1] [AutoOpenSetup.mac実行画面2]

目次へ

2.19 howmマクロ

Emacsで使用されているhowmの秀丸マクロ版です。

ベースになっているのは以下のページにあるマクロです。

上記マクロとの違い

メニューの高速化を行うhowmx.exeが、一部環境でうまく動かない事があるようです。 PARがバージョンパップしていたので、howmx.exeを再作成してみました。(スクリプトは変更していません。) 問題のない場合は、あらためてダウンロードする必要はありません。 ついでにコンソール非表示バージョンを作ってみました。必ず通常版で動くことを確認後、 コンソール非表示バージョンを使うようにしてください。

2007/01/04にhowmx.plが変更されたので"howmx.exe"を更新。(マクロに変更なし。) 実行してもコマンドプロンプトが表示されないので、そのままでも問題ないかな?

2007/01/04版
Perl Packager, version 0.17 (PAR version 0.959)
  • howmx.exe 通常版(2007/01/04版)
  • howmx.exe コンソール非表示バージョン(2007/01/04版)

howm.mac 2017/01/08版

履歴

Ver.0.5-20060927-01
  • TODOリストからジャンプできない不具合修正
Ver.0.5-20061001-01
  • howmx.exe実行中は、タイトルバーに表示するようにした。
  • メニュー作成時の動作を変更
Ver.0.5-20061006-01
  • ComeFrom解析部分を見直し。
  • 強調表示の操作部分を"一時的設定"にしていたが、設定を保存するようにした。
  • hilightファイルの関係で、秀丸エディタVer.6.00以上でしか動きません。
Ver.0.5-20070213-01
  • 関連づけで起動する機能を追加。 もともと秀丸の機能にあるけど、~の展開と">>>"から行末までをファイル名として起動する。
    • $check_extに"."をつけて、";"で区切り、拡張子を追加すること
    • ".pdf"はページ番号指定もサポート 〜.pdf 3 --> 〜.pdf の3ページを開く
    • アクロバットでページ番号を指定して開く場合は、パスを$ACROBATに入れること。 $ACROBATが空の場合は、ページ指定無しで起動する。
Ver.0.5-20070914-01
  • howm.hilightが存在しない場合、エラーになってしまうのを修正。
Ver.0.5-20170108-01
  • 秀丸エディタ Ver.8系に合わせ各部を修正(修正した動作以外は変わっていないハズ。)
  • howm.hilight 周辺を修正。

    • VirtualStore が有効の場合、秀丸エディタ本体のあるフォルダに howm.hilightファイルがあると、 編集時に切り替えに失敗していたのを修正。
    • howm.hilightファイルは、
      1. 秀丸エディタ本体のあるフォルダ
      2. 秀丸エディタ設定ファイル用フォルダ
      3. マクロフォルダ
      4. "howm.mac"があるフォルダ
      5. howmフォルダ($dir_howm)

    から検索するようにし、見つからない場合は、howmフォルダ($dir_howm)に作るようにした。 howm.hilight は、"C:\Program Files"以外に配置する事をお勧めします。

ちなみに、私自身Emacsを使ったことないので、howm自体良くわかってません。 他の人が、改造する時の参考にでもなれば、幸いです。

2.19.1 メモ

目次へ

2.20 メモ帳互換日付追加マクロ

Windows標準のメモ帳にある、日付追加機能の秀丸マクロ版です。 マクロの自動起動で「ファイルを開いた直後」に、このマクロに指定してください。

使い方はメモ帳と同じです。(変更は可能)

先頭にあるべき文字と、追加される日付形式を変更するには、マクロを直接編集します。

先頭にあるべき文字:$TopWord

00005|//ファイルの先頭にあるべき文字列を指定する。
00006|$TopWord = ".LOG";

挿入される日付形式:$AddString

00011|//追加する日時のフォーマット
00012|//標準では → 09/08/22(土) 09:20:49 の形式
00013|$AddString = date + " " + time;

ht_tools.dllを使うと、strftimeと同じ(?)書式が使えます。 ht_tools.dllを使う場合、#UseDLL = 1;として下さい。 DLLはマクロと同じ場所、マクロフォルダ、秀丸エディタと同じフォルダの何処かに置いてください。 日付のフォーマットは、DLLのドキュメントを参照してください。

00015|// ht_tools.dllを使えば、strftimeと同じ(?)書式が使えます。
00016|// ht_tools.dllを使う場合は、#UseDLL = 1; にして下さい。
00017|#UseDLL = 0;
00018|if(#UseDLL){
00019|    loaddll currentmacrodirectory + "\\ht_tools.dll";
00020|    #ret = result;
00021|    if(!#ret) loaddll macrodir + "\\ht_tools.dll";
00022|    #ret = result;
00023|    if(!#ret) loaddll hidemarudir + "\\ht_tools.dll";
00024|    #ret = result;
00025|    if(#ret == true ){
00026|        //                                    ↓日付のFormatはここを変更すること
00027|        $AddString = dllfuncstr("TimeFormat", "%Y/%m/%d(%a) %H:%M:%S");
00028|    }
00029|}

目次へ

2.21 テンプレートを挿入するマクロ

新規作成時にテンプレートを挿入するマクロです。 設定も指定した拡張子と同じ設定に変更します。

マクロを実行すると、メニューが表示されます。 使用する拡張子を選択してください。設定を変更し、テンプレートがあれば挿入します。 テンプレートは、"新規ファイル"で、かつ編集されていない場合のみ、挿入されます。 "新規ファイル"で何か入力されている場合で、編集していない場合はテンプレートと見なし、 内容を入れ替えます。 編集中のファイルで実行した場合、使用する設定を一時的に変更します。

例)

テンプレートに以下の文字列を入れておくと、テンプレート挿入時に指定された文字列に置換します。

$(Cursor)   :カーソル位置の指示(指定した箇所にカーソルを移動させる)
$(Date)     :日付(yyyy/mm/dd)
$(Year)     :4桁の西暦
$(Month)    :2桁の月
$(Day)      :2桁の日
$(DayOfWeek):曜日(日月火水木金土 のどれか)
テンプレート用置換文字列

履歴

2006/10/29 Version 1.0.0
  • 公開
2006/12/02 Version.1.1.0
  • 以下の条件の場合、テンプレートファイルと見なし、ファイルのファイルの内容を置き換えるように変更。

    条件:新規、何か入力されているが更新されていない
  • レジストリデータを毎回取得するのをやめた。(ない場合は作成する。) これに伴い、メニューに"再取得"を追加。
  • Windows98でうまく動作していなかったので、多少調整。
2006/12/09 Version.1.1.1
  • 一時ファイルを開くとき、履歴に残らないようにした。
2006/12/23 Version.1.2.0
  • 一時ファイル -> iniファイルを作成するように変更し、 iniファイルからデータを読み込むように修正。
2007/01/04 Version.1.2.1
  • テンプレートファイルがないと、設定が変更されないバグの修正
2007/11/28 Version.1.2.2
  • 空白を含むパスの場合、正常に動作しないバグの修正
  • 検索用正規表現を修正
2011/05/02 Version.1.3.0
  • 秀丸エディタVer.8に対応
    • deletefileを使用するようにした。
    • 設定した設定名及び、拡張子を、静的変数に設定できるようにした。

      #set_svで設定 0:設定しない  1:設定する
      変数名:set_template 内容:拡張子 + ";" + 設定名
2013/07/08 Version.1.4.0
  • レジストリの列挙方法を変更。 レジストリエディタのエクスポート機能を使うのを止め、WMIで列挙する様に変更。 Windows Vista以降、UACが有効だと、レジストリエディタの起動に失敗する為。 データがあれば問題はないが、再取得や初回起動時にメニューが表示されない。
2013/07/09
  • 持ち出しキット使用時は、"HmRegIni.ini"から、データを作成するように修正。
2014/03/22 Version.1.5.0
  • テンプレート用埋込文字列指定を追加

    $(Cursor)   :カーソル位置の指示
    $(Date)     :日付(yyyy/mm/dd)
    $(Year)     :4桁の西暦
    $(Month)    :2桁の月
    $(Day)      :2桁の日
    $(DayOfWeek):曜日(日月火水木金土)
2014/03/30
  • 検索条件を元に戻していなかったのを修正

目次へ

2.22 開いている文章をwebブラウザで開くマクロ

現在開いているファイルを、webブラウザで開きます。 拡張子が ".html"または".htm"の場合か、webブラウズモード時のみ動作します。 Version.1.2.0 より、秀丸エディタ Ver.8が必要で、秀丸エディタ単独で実行可能です。

旧バージョンの実行には、"macrodll.dll"(Ver.0.81以降)が必要です。 macrodll.dllは"祝鳥"に含まれています。dll単独でも配布されています。

macrodll.dllの入手先

macrodll.dllを下記のいずれかに置いてください。

COM/OLEを使用している為、以下の制限があります。

以下のwebブラウザでしか動作確認していません。

"Sleipnir"を制御するには、"Sleipnirオプション"を変更する必要があります。 クライアント->全般->「スクリプトによるクライアントの操作を許可する」に チェックを入れること。

マクロを実行すると、

  1. webブラウザを検索し、起動していない場合は起動する。
  2. 既に同じ文書を開いているか確認。
  3. 開いていればリロード、そうでなければ新規ウィンドウかタブで開く。

という動作を行います。

初期状態で、InternetExplorer、Sleipnir、Lunascapeの順番でブラウザを検索します。 優先順位は変更可能ですが、マクロを直接変更する必要があります。 特定のwebブラウザで開きたい場合、$frm[0]、$obj[0]に設定を書き込み、それ以外を 削除して下さい。

00009|//$frm[x] -> ウィンドウクラス名
00010|//$obj[x] -> オブジェクト名
00011|//優先順位設定 高い ↑
00012|$frm[0] = "IEFrame";
00013|$obj[0] = "Shell.Application";
00014|//-------------------
00015|$frm[1] = "SleipnirMainWindow";
00016|$obj[1] = "Sleipnir.API";
00017|//-------------------
00018|$frm[2] = "Lunascape5MainWnd";
00019|$obj[2] = "Lunascape2.LunascapeAPI";
00020|//優先順位設定 低い ↓

ファイルのチェックを行わない場合は以下の行をコメントにして下さい。

00040|//ファイルタイプのチェック
00041|if(filetype != ".html" && filetype != ".htm" && filetype != "webbrowse"){
00042|    message "この文章では実行できません。";
00043|    freedll;
00044|    endmacro;
00045|}

履歴

2006/12/30 Version 1.0.0
  • 初版
2009/05/16 Version.1.1.0
  • IE7以降および、Lunascape5対応
  • IEの場合、リロードはRefreshを使用するようにした。
2009/08/16 Version.1.2.0
  • 秀丸エディタ Ver.8 対応

目次へ

2.23 webブラウザからURLを取得するマクロ

現在開いているファイルに、webブラウザから取得したURLとタイトルを挿入します。

以下のwebブラウザで動作確認しています。

Version 1.3.0以降は、秀丸エディタVer.8以降専用で、単独で実行可能です。

秀丸エディタVer.7より前の場合は、Version 1.2.0を使用してください。 Version 1.2.0の実行には、"macrodll.dll"(Ver.0.81以降)が必要です。 macrodll.dllは"祝鳥"に含まれています。dll単独でも配布されています。

macrodll.dllの入手先

macrodll.dllを下記のいずれかに置いてください。

マクロを実行すると、メニューを表示します。 情報を取得したいブラウザを選択して下さい。

[GetURL.mac実行画面]

履歴

2006/12/30 Version 1.0.0
  • 初版
2007/08/30 Version 1.1.0
  • Lunascape 4.5.0がDDEに対応したので追加。
2008/02/17 Version 1.2.0
  • IE7で動作確認と、IEで正常に取得できないバグの修正
  • URL、タイトルの取得をhmjre.dllの正規表現で行うように修正
2009/08/16 Version.1.3.0
  • 秀丸エディタVer.8対応
2010/10/30 Version.1.4.0
  • COM関連のエラー処理を修正。
  • IE8で、DDEの場合に、正常に取得できない場合に対処
  • IE8で、複数ウィンドウが開いている場合に、対象を特定できないので、 (アクティブなタブが判定できない)、メニュー表示するようにした。
  • アクティブタブを誤認識する場合があるので、ある程度対処。
2012/01/15 Version.1.5.0
  • Sleipnir 3.0.5 で取得に失敗するので対処

メニューを表示しないで、直接webブラウザを指定する場合、マクロを直接編集します。 "#sel = result"に直接値を設定して下さい。

目次へ

2.24 新規作成時に実行するマクロを起動するマクロ

秀丸エディタ Ver.6.50から追加された、「新規作成時直後」に実行するマクロの補助マクロです。

このマクロを使用することにより、

という事が可能です。

実行マクロである"AutoNewMake.mac"と、設定用の"AutoNewMakeSetup.mac"があります。 実行前に、"AutoNewMakeSetup.mac"を実行し、設定を行ってください。 "AutoNewMakeSetup.mac"の実行には田楽DLLが必要です。

AutoNewMake.mac Version.1.0.2(2008/04/20)

AutoNewMake.mac

2007/01/16 Version 1.0.0
  • 正式版
2007/01/31 Version.1.0.1
  • 待ち受け時、指定したキー以外を押した場合は終了するようにした。
2008/04/20 Version.1.0.2
  • 新規ファイル判定に失敗する場合がある場合の対処を追加。

AutoNewMakeSetup.mac

2007/01/16 Version 1.0.0
  • 正式版
2007/07/26 Version.1.0.1
  • タブの表記を変更

「動作の選択のタイミング」で「マクロ起動後にチェックする」設定時の、キー入力を待ち画面 タイトルバーに表示あり。 最後の数字は待ち時間(秒)でカウントダウンする。"0"までにキー入力があるとマクロを起動する。
[AutoNewMake.mac実行画面]

[AutoNewMakeSetup.mac実行画面1] [AutoNewMakeSetup.mac実行画面2]

目次へ

2.25 複数デスクトップ保存マクロ

秀丸エディタには、開いているファイルの情報(ファイル、ウィンドウ位置)を 保存/復元する「デスクトップ保存/復元」がありますが、1つの状態しか保存 出来ません。 このマクロを使用することにより、複数の状態を保存/復元可能にします。

Ver 1.1.1以降は、秀丸エディタ Ver.7が必要です。Ver.6では動作しません。 秀丸エディタ Ver.6で使用する場合は、Ver.1.1.0を使用してください。


インストール

圧縮ファイル内にはマクロが4つ、テキストファイルが1つ格納されています。 ディレクトリ情報を保ったまま、解凍して下さい。

hmpro_restore.mac             :復元マクロ
hmpro_save.mac                :保存マクロ
hmproフォルダ                 :設定保存用フォルダ(*.hmpro)
├hmpro.txt                   :説明ファイル
├hmpro_setup.mac             :復元マクロ起動用VBSセットアップマクロ
└hmpro_makeShortCut.mac      :復元マクロ起動用ショートカット作成マクロ

以下の2つのマクロは補助マクロで、保存・復元のマクロでは使用していません。 使い方は、説明ファイルの「3.4項」、「3.5項」を見てください。

  • hmpro_setup.mac
  • hmpro_makeShortCut.mac

hmpro_makeShortCut.macを使う場合は、別途、macrodll.dllが必要になります。

"macrodll.dll"を下記のいずれかに置いてください。

  • 秀丸エディタ本体と同じ場所
  • マクロフォルダ
  • このマクロと同じ場所
アンインストール
マクロの登録を解除し、上記ファイルと、設定ファイルを削除してください。

2.25.1 使い方

2.25.1.1 設定保存

設定を保存するには、"hmpro_save.mac"を実行します。 マクロを実行すると、

  • 新規
  • 上書き
  • 最近復元した設定(表示しない設定も可能)

がメニューで表示されます。 新規の場合はファイル名を入力します。 上書きの場合は、既存の設定ファイルをメニュー表示します。 最近復元した設定ファイルを、3つまで表示します。

  • 新規保存する場合は、名前入力して下さい。フルパスで入力すると、指定 された場所に保存します。
  • 名前だけの場合、hmproフォルダに保存します。 設定ファイルの拡張子は".hmpro"となります。
  • 上書き保存する場合は、メニューからファイルを選択するか、「ファイル を指定」を選択し、ダイアログからファイルを選択してください。
2.25.1.2 設定復元

設定を復元するには、"hmpro_restore.mac"を実行します。 "hmpro"フォルダ内を検索し。設定ファイルをメニュー表示するので、復元する設定を 選択してください。

  • ファイルを開いている場合は、閉じるかそのままにするか、選択が可能で すが、なるべく閉じてください。
  • hmproフォルダにある設定ファイルをメニュー表示するので、復元する設定 を選択してください。
  • 復元中にShiftキーを押していると、以下の処理を行いません。
    • カーソル位置の復帰
    • 自動起動マクロを実行
  • hmpro_restore.mac Ver.1.1.1より、復元作業前に、ファイルのチェックを行ってます。 ファイルが見つからない場合は、復元作業を続行するかどうか、確認を行います。
2.25.1.3 保存・復元する内容

各ファイルの以下の情報を保存・復元します。

  • 位置
  • 大きさ
  • カーソル位置(デフォルト:自動復帰が無効の場合復元)
  • IMEのモード
  • 閲覧モード
  • 上書き禁止
  • ウィンドウが分割しているかどうか。
  • エンコードの種類(デフォルト:復元しない)

各ウインドウは以下の情報を保存・復元します。

  • タブの場合はタブの順番
  • アクティブなウィンドウ(タブ)
  • ウィンドウの状態(最小化、最大化、非表示) 非タブモードで、最小化または最大化状態で、非表示の場合は、正常に保存できません。
  • 出力モニタ先(マルチモニタ時のみ)

以下の情報は保存・復元しません。

  • 常に手前の状態
  • 見出しバー、アウトライン解析の枠の状態 (各設定のデフォルトになります。)

以下のファイル(?)の情報は保存しません

  • 新規ファイルで保存しない場合
  • grepの出力結果
  • プログラムの実行結果
  • webブラウズモードの場合
  • ftpで開いているファイル

目次へ

2.26 カラーマーカー用ダイアログ

秀丸エディタVer.7.00βより、カラーマーカー機能が追加されました。 現状では設定用のダイアログがないので、田楽DLLを使って作ってみました。

Ver.8 秀丸エディタVer.8より、秀丸エディタ本体に、カラーマーカ用のダイアログが追加されています。 秀丸エディタVer.8.30より、レイヤーが追加されました。

このマクロの実行には、

が必要です。

以下の二つのマクロがセットになっています。

2.26.1 カラーマーカー設定用ダイアログ履歴

2007/04/29 Ver.1.0.0
  • 初版
2007/04/30 Ver.1.0.1
  • 田楽DLLのロード部分を修正
2007/05/08 Ver.1.1.0
  • ユーザーデータに(秀丸エディタVer.7.00β3以降)対応
  • マクロ起動時に、範囲選択解除しないようにした。
2007/07/04 Ver.1.1.1
  • 種類のデフォルトを変更 編集したら消える → 編集しても維持 へ
  • 色情報を取得するためのカーソル移動方法を変更。
  • マーキング時、改変扱いに出来るようにした。(デフォルトはOFF)
2007/09/08 Ver.1.2.0
  • 「反転」、「前の設定」、「文字列選択」を追加。
2013/07/05 Ver.1.2.1
  • ユーザーデータの取得方法が間違っていたので修正。戻り値は、文字列化された16進数なのに、10進数と思っていた。
2013/07/06
  • レイヤーを使っている場合、初期値がおかしかったのを修正。
  • カーソル位置の色設定が"透明"だった場合、"-1"を表示。

2.26.2 カラーマーカー検索用ダイアログ履歴

2007/05/13 Ver.1.0.0
  • 初版
2013/07/06 Ver.1.1.0
  • レイヤーに対応

目次へ

2.27 カラーマーカーデータ保存・復元マクロ

秀丸エディタVer.7.00βより、カラーマーカー機能が追加されました。 テキストファイルということから、カラーマーカーは一時的なもので、保存されません。 その為、外部ファイルにカラーマーカーデータを保存するマクロを作成しました。

カラーマーカーのデータを、保存・復元するマクロのセットです。

保存マクロ colormarker_datasave.mac
保存マクロは、実行したファイルと同じ場所に、拡張子を".hmcm"に変更した ファイル名に".hmcm"".hminfo"を追加した、データファイルを作成します。
復元マクロ colormarker_dataload.mac
復元マクロは、実行したファイルと同じ場所に、拡張子が".hmcm"のファイルがある場合 ファイル名に".hmcm"".hminfo"が追加されたファイルがある場合、 そこからデータを読み込み、カラーマーカを設定します。
(現バージョンでは、「拡張子が".hmcm"に変更されたファイル」の場合は、データ変換マクロが自動的に起動し、変換します。)
例)開いたファイル C:\temp\colormarker.txt
  データファイル C:\temp\colormarker.txt.hminfo

それぞれ、自動起動マクロを有効にし、「保存直前と直後」または「ファイルを閉じる直前」、 「ファイルを開いた直後」に登録すればいいです。

2.27.1 制限事項(カラーマーカーデータ保存・復元マクロ)

2.27.2 履歴(カラーマーカーデータ保存・復元マクロ)

2.27.2.1 colormarker_datasave.mac
2007/06/17 Ver.1.0.0
  • 初版
2007/06/18 Ver.1.0.1
  • データがないのに、ファイルが存在する場合はファイルを削除するようにした。
2007/07/02 Ver.1.0.2
  • 設定ファイル(.hmcm)も対象外になるようにした。
2007/07/15 Ver.1.0.3
  • 「ファイルを閉じる直前」でも実行可能にした。
2007/07/25 Ver.1.0.4
  • 文章の先頭にあるカラーマーカーを保存できない不具合の修正。
2007/07/30 Ver.1.0.5
  • データファイルを削除する際に問い合わせを行うようにした。 (colormarker_dataload.macを実行しないで開いた場合、データを削除してしまう為)
2007/09/08 Ver.1.0.6
  • データファイル名を変更。ファイル名+".hmcm"へ 拡張子だけ違うファイルの場合を考量していなかった。
2008/03/29 Ver.1.0.7
  • データファイルのロードフラグ対応。
  • nextcolormarkerがうまく動かない場合があるので対処。
2011/12/04 Ver.1.1.0
  • 設定ファイルの拡張子を変更(.hmcm → .hminfo)。 その他のマクロと、設定ファイルを共有する為。
2011/12/07
  • 開始位置/終了位置のunicodeキーワードを保存し、 復元時に確認を行うようにした。
2013/07/16 Ver.1.1.1
  • 色指定を行わなかった(透過を指定)場合に、対応できていいなかったを修正。 (右から6文字を切りだすのではなく、そのまま記録すればよかった。)
2.27.2.2 colormarker_dataload.mac
2007/06/17 Ver.1.0.0
  • 初版
2007/06/18 Ver.1.0.1
  • カラーマーカ設定時にエラーになってしまうバグの修正。
2007/07/02 Ver.1.0.2
  • 設定ファイル(.hmcm)も対象外になるようにした。
2007/09/08 Ver.1.0.3
  • データファイル名を変更。ファイル名+".hmcm"へ 拡張子だけ違うファイルの場合を考量していなかった。 読み込み時は、旧バージョンのデータ読込もサポート
2008/03/29 Ver.1.0.4
  • データファイルのロードフラグ追加。
2011/12/04 Ver.1.1.0
  • 設定ファイルの拡張子を変更(.hmcm → .hminfo)。 その他のマクロと、設定ファイルを共有する為。
2011/12/07
  • 開始位置/終了位置のunicodeキーワードを保存し、 復元時に確認を行うようにした。

目次へ

2.28 マクロで#includeを可能にするマクロ

マクロを作る人向けのマクロです。

このマクロは、名前の通り、C言語のプリプロセッサの様に、外部ファイルを参照する機能("#include")を提供します。

要は、別ファイルで作成・管理しているサブルーチンを、実行時にファイルから読み込み、合成し実行する、 ちょっと強引なマクロです。

注意

このマクロの旧バージョンを使用していた場合、上書きしただけでは動作しません。
このバージョンより、マクロファイル名の受け渡しに、秀丸エディタVer.8より、
追加されている機能を使用している為、マクロ起動部分が変更になっています。
旧バージョン
  writeinistr "hme_include.mac", "setting","filename",currentmacrofilename;
  execmacro   "hme_include.mac"; endmacro;
このバージョン(Version.1.1.0以降)
  execmacro "hme_include.mac", currentmacrofilename; endmacro;
その為、マクロ起動部分の書き換えが必要になります。

2.28.1 実行するマクロへの追加方法

このマクロを使用する場合、以下の構成になります

┌──────────────────┐
│hme_include.macの起動部分           │
│  hme_include.macを実行             │
┣━━━━━━━━━━━━━━━━━━┫
┃実際のマクロ                        ┃
┗━━━━━━━━━━━━━━━━━━┛

実際に実行するマクロは以下の構成になります。 "hme_include.macの起動部"はコメントアウトされます。

┌──────────────────┐
│ヘッダ(取り込むファイル名)          │
┣━━━━━━━━━━━━━━━━━━┫
┃実際のマクロ                        ┃
┣━━━━━━━━━━━━━━━━━━┫
│#includeで指定されたファイル1      │
│#includeで指定されたファイル2      │
└──────────────────┘

2.28.2 #include宣言部

取り込みたいファイルを、"#include"を使用し、指定します。 そのまま指定すると、マクロ実行時にエラーになるので、コメントの状態で記入してください。

例1)複数行コメントの場合

/*
#include <ファイル名1>
#include <ファイル名2>
*/

例2)通常のコメントの場合

//#include <ファイル名1>
//#include <ファイル名2>

フルパスでない場合は、囲む文字に応じて、フォルダ名を自動的に補完します。 ファイル名を囲む文字が、

を補完します。

2.28.3 hme_include.macの起動部分

合成するマクロ名を指定し、"hme_include.mac"を起動します。

変更する必要があるのは、各行の「macrodir + "\\hme_include.mac"」の部分です。 この部分を、"hme_include.mac"を配置した、フォルダにする必要があります。

具体的には、マクロの先頭部分に、以下の1行を追加します。

execmacro   macrodir + "\\hme_include.mac", currentmacrofilename; endmacro;

呼び出されるマクロに引数を渡す場合には、以下のようにしてください。

execmacro   macrodir + "\\hme_include.mac",currentmacrofilename, str(argcount), getarg(0), getarg(1), …, getarg(29); endmacro;
            =================================================================== ------------------------------------============
            ここまでは固定                                                      必要な引数の最大数まで設定          固定

引数の最大は31個ですが、このマクロで2個使用している為、最大は29個になります。

2.28.4 改版履歴

2007/04/30 Version.1.0.0
  • 初版
2007/05/06
  • 必要なパラメータが1つになるように変更
  • <>の場合はマクロフォルダ、""の場合はマクロのカレントフォルダ パスを(フルパスでなければ)補完するように変更
2008/04/30 Version.1.0.2
  • 実行マクロ生成時、ヒストリに残らないように"/n"オプション追加
2010/03/07 Version.1.1.0
  • Ver.8 専用版 マクロ起動部分の変更のみ
2013/11/10 Version.2.0.0
  • 実際に実行するファイルを、秀丸本体で編集していたのを止めで、COM(WSH)によるファイル操作に変更。
  • 処理方法変更に伴い、includeを配置する位置の制限はなくなり、何処に配置してもいい。
  • 合成したファイルの削除を行わずに、再利用するようにした。 作成したマクロに、ファイル名を記録し、更新されていなければ、 そのファイルを使用する。更新されていれば再度合成する。
2014/11/24 Version.2.1.0
  • マクロの引数に対応。 引数を使用する場合は、呼び出し部分を変更する必要があります。

2.29 自動起動マクロの起動マクロ

秀丸エディタ Ver.7.00から追加された、各種自動マクロに指定することで、 複数のマクロを実行する事が可能です。 各種イベントの認識は、本マクロで行うため、実行したいマクロを登録するだけで、 各種マクロを実行できます。(実行するマクロ側でイベントを認識する必要がない。)

また、特殊コマンドを使用すれば、以下のことが可能になります。

実行マクロである"AutoRun.mac"と、設定用の"AutoRunSetup.mac"があります。 実行前に、"AutoRunSetup.mac"を実行し、設定を行ってください。 "AutoRunSetup.mac"の実行には田楽DLLが必要です。

AutoOpen.mac

2007/06/23 Version.1.0.0
  • 初版
2007/07/14
  • ファイルを閉じる直前を追加
2007/09/15
  • 条件に"FILETYPE"を追加
2009/09/02 Version.1.1.0
  • Ver.8対応(アクティブ切り替え後を追加)
  • 引数で、イベント番号を受け取れるようにした。
2013/01/10 Version.1.2.0
  • 条件に"NOTFILETYPE"を追加

AutoOpenSetup.mac

2007/10/08 Version.1.0.0
  • 初版
2009/09/02 Version.1.1.0
  • Ver.8対応(アクティブ切り替え後を追加)
2013/01/10 Version.1.2.0
  • 条件に"NOTFILETYPE"を追加
  • "次の行をスキップ"する時、FILETYPEを条件が、正常に設定できないバグの修正
[AutoRunSetup.mac実行画面1]

目次へ

2.30 「ツリーそのものをコピー」のTAB-罫線変換マクロ

「アウトライン解析の枠」にある「ツリーそのものをコピー」の機能で、 クリップボードに出力されるデータを、TAB→罫線変換を行うマクロです。 「ツリーそのものをコピー」を実行し、秀丸エディタに貼り付けてから実行して下さい。 範囲選択している場合は、選択範囲のみ実行します。

Ver.8

秀丸エディタVer.8では、「一覧のコピー」というコマンドが追加され、 ツリー表示以外でも、アウトライン枠の内容をコピー可能になっています。 ツリーになっている箇所は、レベルをTAB文字×レベルに変換されます。

TabTreeConvert.mac Version.1.0.0(2007/10/14)

2007/10/08 Version.1.0.0
  • 初版
[「ツリーそのものをコピー」実行画面]

タブから変換する文字列は、マクロの以下の箇所を編集することで、変更可能です。

00008|//空白
00009|$tree_space = "  ";
00010|//縦線
00011|$tree_trunk = "│";
00012|//枝
00013|$tree_branch = "├";
00014|//終端
00015|$tree_end = "└";

目次へ

2.31 アウトライン解析の枠を検索結果表示にするマクロ

アウトライン解析の枠をlocalgrepの結果のようにするマクロです。

アウトラインの設定を、

という状態に、一時的に変更します。

もう一度マクロを実行すると、設定を元に戻します。

秀丸エディタVer.8以降専用バージョン。元に戻す時の動作を、実行時の状態(一時的な設定かどうか)により処理を変更。 なるべく実行前の状態に戻すようにした。

秀丸エディタ Ver.7用 (一時的な設定だった場合、一時的な設定自体を解除する。)

上が実行前、下が実行後の画面。
アウトライン解析の枠を検索結果表示に変更

目次へ

2.32 秀丸パブリッシャーを使った印刷プレビューマクロ

秀丸パブリッシャーを使って、印刷プレビューを行うマクロです。 秀丸パブリッシャーがインストールされていないと使えません。

上記2つのマクロの詰め合わせ 2008/09/07版

hmp_sel_template_preview.macを、DLL関数を使用して作成。 (Ver.2、Ver.3の最新β版が必要です。)

目次へ

2.33 複数ファイルに複数のマクロを実行するマクロ

秀丸エディタで、複数のファイルに対し、複数のマクロを、実行するマクロです。

このマクロを実行するには田楽DLLが必要です。

2008/02/27 Version.1.0.0
  • 初版
2009/03/10 Version.1.0.1
  • "ログを出力"のみチェックされている場合、エラーになるのを修正。 ("DLLがロードされていないのにdllfunc関数が使われました"という、エラーになる)
  • "検索するフォルダ"に空白が含まれると、正常に動作しないバグの修正。
  • マクロ実行後のウィンドウ切替部分を多少修正。
  • 検索フォルダのパスが長い場合表示しきれないので、対処方法を組み込み。 (マクロの直接編集)
2009/03/20 Ver.1.1.0β1
  • 履歴処理の追加
  • 設定の保存・読込機能を追加
  • 細かいバグの修正(ダイログ作成時のエラー処理、変数名間違い修正)
  • 起動時に、前回の実行結果を復元する、設定を追加(マクロの直接編集)
    #SetSetting = 1;//0:初期化 1:前回の内容を復元
2009/04/12 Ver.1.1.0β2
  • 不要コードの削除
  • 設定保存時、セクション削除後に書き込むようにした。 (上書き保存した場合に、不要なデータを削除する為)
2010/01/04 Ver.1.1.0
  • 正式版
[「複数ファイルに複数のマクロを実行するマクロ」実行画面]
2010/01/06 Ver.1.2.0β1
  • 「開いているウィンドウ/タブグループを対象」を追加
  • 特殊コマンドを追加。「印刷」、「grep」
2010/01/06 Ver.1.2.0β1
  • 特殊コマンドを変更。「grep」→「localgrep」
2010/01/22 Ver.1.2.0β2
  • 印刷時の中断処理がうまく動いていなかったので、修正
2013/07/08 Ver.1.2.0β3
  • localgrep を実行した場合の、結果ファイル出力を変更。 カラーマーカーを使用し、専用マクロでタグジャンプできるようにした。
2017/06/11 Ver.1.2.0β4
  • マクロの記述ミスを修正。
[「複数ファイルに複数のマクロを実行するマクロ Ver1.2.0」実行画面]

2.33.1 注意事項(複数ファイルに複数のマクロを実行するマクロ)

2.33.2 検索フォルダのパスが長い場合

検索フォルダのパスが長い場合、表示しきれません。マクロを直接編集することにより、 長いパスでも表示することが可能です。

目次へ

2.34 検索ボックス向け検索オプション変更マクロ

検索ボックスを使う場合に、検索関連のオプションを変更する為のマクロです。

[検索オプション設定画面]

検索ボックスと一緒にツールバーに表示して使うこといいかもしれません。

[ツールバー画面]

画面表示後、何も操作しないと、5秒後(デフォルト設定)に自動的に終了します。 同様に、各種オプション変更後、何も操作しない場合にも、自動的に終了します。 無操作時の終了時間を変更する場合は、マクロの「#TIMEOUTSET = 5」の部分を、 直接変更して下さい。設定値の単位は「秒」になります。

00014|$VERSION = "1.1.1";
00015|$title = "検索オプション変更 :";
00016|//タイムアウト値 秒で指定する。
00017|#TIMEOUTSET = 5;
00018|//田楽DLLを読込

現状、オプションをすべて表示させています。不要な場合は、マクロを直接編集して下さい。 不必要な箇所を、コメントにしておけばいいでしょう。 "NEWCONTROL"から、"SETCTRLNOTIFY"のある行までを、コメントにして下さい。 (例:検索文字の強調/置換の所)

00030|        //大文字/小文字の区別
00031|        dllfunc("NEWCONTROL","check", "casesense","大文字/小文字の区別(&C)") == 0 ||
00032|        dllfunc("SETCTRLSTATE","casesense", str(searchoption & 0x00000002 == 0x00000002)) == 0 ||
00033|        dllfunc("SETCTRLNOTIFY","casesense", "101") == 0 ||
00034|        //単語の検索
00035|        dllfunc("NEWCONTROL","check", "word","単語の検索(&W)") == 0 ||
00036|        dllfunc("SETCTRLSTATE","word",      str(searchoption & 0x00000001 == 0x00000001)) == 0 ||
00037|        dllfunc("SETCTRLNOTIFY","word", "102") == 0 ||
00038|        //正規表現
00039|        dllfunc("NEWCONTROL","check", "regexp","正規表現(&R)") == 0 ||
00040|        dllfunc("SETCTRLSTATE","regexp",    str(searchoption & 0x00000010 == 0x00000010)) == 0 ||
00041|        dllfunc("SETCTRLNOTIFY","regexp", "103") == 0 ||
00042|        //あいまい検索
00043|        dllfunc("NEWCONTROL","check", "fuzzy","あいまい検索(&F)") == 0 ||
00044|        dllfunc("SETCTRLSTATE","fuzzy",    str(searchoption & 0x00000020 == 0x00000020)) == 0 ||
00045|        dllfunc("SETCTRLNOTIFY","fuzzy", "104") == 0 ||
00046|        //次の秀丸エディタも続けて検索
00047|        dllfunc("NEWCONTROL","check", "next","次の秀丸エディタも続けて検索(&H)") == 0 ||
00048|        dllfunc("SETCTRLSTATE","next",    str(searchoption & 0x00000080 == 0x00000080)) == 0 ||
00049|        dllfunc("SETCTRLNOTIFY","next", "105") == 0 ||
00050|        //一周する
00051|        dllfunc("NEWCONTROL","check", "loop","一周する(&O)") == 0 ||
00052|        dllfunc("SETCTRLSTATE","loop",    str(searchoption & 0x01000000 == 0x01000000)) == 0 ||
00053|        dllfunc("SETCTRLNOTIFY","loop", "106") == 0 ||
00054|        //検索文字の強調/検索
00055|        dllfunc("NEWCONTROL","check", "searchEm","検索文字の強調/検索(&I)") == 0 ||
00056|        dllfunc("SETCTRLSTATE","searchEm",    str(searchoption & 0x00000800 == 0x00000800)) == 0 ||
00057|        dllfunc("SETCTRLNOTIFY","searchEm", "107") == 0 ||
00058|        //検索文字の強調/置換
00059|        //dllfunc("NEWCONTROL","check", "replaceEm","検索文字の強調/置換(&J)") == 0 ||
00060|        //dllfunc("SETCTRLSTATE","replaceEm",    str(searchoption & 0x00001000 == 0x00001000)) == 0 ||
00061|        //dllfunc("SETCTRLNOTIFY","replaceEm", "108") == 0 ||
00062|        //
00063|        dllfunc("NEWCONTROL","button","Close","閉じる") == 0 ||

このマクロを実行するには 田楽DLLが必要です。

2008/03/23 Version.1.0.0
  • 初版
2008/04/06 Version 1.1.0
  • タイトルバーにカウントダウンを表示
  • 置換の「検索文字の強調」をコメント化 (検索ボックスが対象なので、置換は削除)
2008/04/24 Version 1.1.1
  • 途中で操作した場合、カウントダウン表示がおかしくなるのを修正。

目次へ

2.35 大文字←→小文字変換マクロ

標準機能の「大文字<->小文字変換」を、選択した範囲に実行するマクロです。 その為、全角文字には対応していません。

通常選択時
通常選択実行前 通常選択実行後

箱形選択時
箱形選択実行前 箱形選択実行後

目次へ

2.36 強調表示設定を追加するマクロ

指定されたhilightファイにある、強調表示データを、現在の内容に追加するマクロです。

マクロを実行すると、追加したい内容を含むhilightファイルを選択します。 強調表示データが含まれていれば、その内容を現在の強調表示に追加し、設定を保存するか選択します。 (保存しない場合は、一時的設定になります。)

注意事項等

目次へ

2.37 複数のマクロを実行するダイアログ

秀丸エディタで、複数のマクロを、実行するマクロです。

このマクロを実行するには田楽DLLが必要です。

2008/02/27 Version.1.0.0
  • 初版
[「複数のマクロを実行するダイアログ」実行画面]

2.37.1 注意事項(複数のマクロを実行するダイアログ)

目次へ

2.38 ウィンドウ切替マクロ

秀丸エディタで、ウィンドウ間を切り替えるマクロです。 次の秀丸/前の秀丸に移動するマクロの、詰め合わせになります。 状態と、設定により、動作が切り替わります。

タブの移動、ウィンドウの移動は、アイコン化した秀丸エディタには移動しません。

2.38.1 設定変更方法

各マクロの先頭にある、#tabmove を書き換えてください。

//タブモード時、次のタブに移動するかどうかのフラグ
//0:次のタブへ移動しない(タブグループの切り替えのみ)
//1:次のタブへ移動する(グループ内のタブ移動後、タブグループ切り替え)
#tabmove = 0;

目次へ

2.39 タブを閉じるマクロ

秀丸エディタで、タブを閉じるマクロの詰め合わせです。

TabClose_Other.mac
自分以外のタブを閉じる。
TabClose_Right.mac
自分の右側のタブを全て閉じる。
TabClose_Left.mac
自分の左側のタブを全て閉じる。

タブモード以外では実行できませんが、 例外的にTabClose_Other.macは動作します。 (自分以外の秀丸エディタを閉じる)

目次へ

2.40 折りたたみ保存・復元マクロ

秀丸エディタVer.6.00より、折りたたみ機能が追加されました。 テキストファイルということから、折りたたみは一時的なもので、保存されません。 その為、外部ファイルに折りたたみデータを保存するマクロを作成しました。

折りたたみを、保存・復元するマクロのセットです。

保存マクロ foldable_save.mac
保存マクロは、実行したファイルと同じ場所に、ファイル名に".hmfold"を追加した、データファイルを作成します。
復元マクロ foldable_load.mac
復元マクロは、実行したファイルと同じ場所に、ファイル名に".hmfold"が追加されたファイルがある場合、 そこからデータを読み込み、折りたたみを設定します。
例)開いたファイル C:\temp\foldable.txt
  データファイル C:\temp\foldable.txt.hmfold

2.40.1 その他・制限事項等

2.40.2 履歴(折りたたみ保存・復元マクロ)

2.40.2.1 foldable_load.mac
2009/10/18 Ver.1.0.0β1
  • 初版
2009/11/01 Ver.1.0.0β2
  • 各種設定をiniファイルから読み出すようにした。
  • マクロを実行する拡張子を設定可能にした。
2009/11/07 Ver.1.0.0β3
  • データファイルと一致しない場合に、無限ループになってしまうバグの修正
2010/03/16 Ver.1.0.0β4
  • データファイルと一致しない場合に、無限ループになってしまうバグの修正 その2
2011/07/30 Version.1.0.0β3
  • 秀丸エディタの切替に失敗した場合の処理を変更
2013/12/22 Version.1.0.0β4
  • ファイルの先頭が折りたたまれていた場合、検出できなかったバグの修正。
2.40.2.2 foldable_save.mac
2009/10/18 Ver.1.0.0β1
  • 初版
2009/10/24 Ver.1.0.0β2
  • grep、プログラムの実行結果、webブラウズモード、新規の場合は動作しないようにした。
  • 「ファイルを閉じる直前」で、動作が変になるのを修正。
2009/11/01
  • 各種設定をiniファイルから読み出すようにした。
  • マクロを実行する拡張子を設定可能にした。
2010/03/16 Ver.1.0.0β4
  • データファイルと一致しない場合に、無限ループになってしまうバグの修正 その2

目次へ

2.41 ファイルマネージャ枠切替マクロ

秀丸エディタVer.8から追加された、ファイルマネージャ枠の表示内容を切り替えるマクロです。

上記2つのマクロの詰め合わせです。

2つのマクロは、ファイルマネージャ枠の内容を切り替えますが、フォーカスの移動は行いません。

2.42 プロジェクトにファイルを追加するマクロ

秀丸エディタVer.8.00より追加された、「プロジェクト」にファイルを追加するマクロです。

の、3種類のマクロのセットになります。

圧縮ファイル内のファイルを、フォルダ構造を保持したまま解凍してください。

AddProject_Files.mac    ファイルを追加するマクロ
AddProject_Tree.mac     指定された拡張子のファイルを追加するマクロ
AddProject              フォルダ
├addproject_sub.vbs    「AddProject_Tree.mac」で使用するスクリプト(WSH)
├hmbookEdit.mac        プロジェクト編集支援マクロ
├hmbook.hilight        プロジェクト編集支援マクロで使用する、ツリー定義ファイル
└AddProject.html       説明ファイル

注意事項(共通)

2.42.1 開いているファイルを追加するマクロ(AddProject_Files.mac)

現在開いているファイルを、表示中のプロジェクト、または新規プロジェクトに追加します。 タブモードの場合は、マクロを実行した、タブグループのみ、対象になります。

  1. プロジェクトの選択
    マクロを実行すると、今のプロジェクトか、新規プロジェクトに追加するか選択。
  2. 追加場所の選択
    トップレベルか、新規グループの下に追加するか選択。

2.42.2 指定されたフォルダにある、指定された拡張子のファイルを追加するマクロ(AddProject_Tree.mac)

指定されたフォルダ以下の、指定された拡張子のファイルを、全て追加します。

  1. プロジェクトの選択
    マクロを実行すると、今のプロジェクトか、新規プロジェクトに追加するか選択。
  2. 検索するフォルダの選択
  3. 追加する拡張子の入力
    デフォルトで、マクロを実行したファイルと同じ拡張子を表示します。 必ず、"."(ドット)から、入力して下さい。

    例) .txt

    複数指定する場合は、";"(セミコロン)で区切って下さい。

    例) .txt;.mac
  4. 追加場所の選択
    トップレベルか、新規グループの下に追加するか選択。
  5. 指定された箇所に追加

目次へ

2.43 プロジェクトに登録されているファイルを開くマクロ

秀丸エディタVer.8.00より追加された、「プロジェクト」に登録されたファイルを、全て開くマクロです。 「ファイル」のみ対応しています。「フォルダ内のファイル一覧」は対象外です。

プロジェクト枠を表示させ、このマクロを実行して下さい。

注意事項

改版履歴

目次へ

2.44 「他の秀丸エディタと内容比較」を行ったウィンドウを並べるマクロ

秀丸エディタ Ver.8からカラーマーカーを使用し、ファイルの差異がある個所に着色して、表示する事が可能になっています。
参考:秀丸エディタの紹介(Ver8.00対応版)(内容比較のカラー化)

このマクロは、「他の秀丸エディタと内容比較」を行ったウィンドウを、縦または、横に並べるマクロです。

このマクロの実行には、秀丸エディタVer.8.01β2以降が必要です。

「他の秀丸エディタと内容比較」を実行後、このマクロを実行してください。 メニューが表示されるので、並べる方向を選択してください。 比較したウィンドウを、指定された方向で並べます。 また、「他の秀丸エディタと同時スクロール」もセットします。
マクロ実行前

このマクロで並べている最中に、再度マクロを実行すると、"復元する"が表示されます。 "復元する"を選択すると、並べる前のウィンドウサイズに戻します。 「他の秀丸エディタと同時スクロール」を解除します。
マクロ実行後

注意事項

改版履歴

目次へ

2.45 RSense用秀丸マクロ

「RSense - EmacsやVimなどに特化したRubyのための優れた開発援助ツール」 (2016/09/06現在アクセス不可)を、秀丸から使用するためのマクロです。

「Ruby開発支援ツールRSenseを秀丸から使ってみたの巻 - aikeの日記」 で、公開されているマクロの改造版になります。(秀丸エディタVer.8以降専用版)

ベースマクロとの違い

RSense用秀丸マクロのセット 2010/07/11版

このマクロを実行するには、秀丸エディタVer.8以降 と macrodll.dll が必要です。 以下のマクロが入っています。

2.45.1 マクロを実行する前の準備

  1. RSenseを、動作可能な状態にして下さい。 Ruby、javaをインストールする必要があります。 詳細は、RSense - ユーザーマニュアル(2016/09/06現在アクセス不可) を参照してください。
    「Ruby開発支援ツールRSenseを秀丸から使ってみたの巻 - aikeの日記」 を参考に、"rsense_start.bat"と、"rsense_stop.bat"を作成し、パスの通った所に、おいて下さい。
  2. 秀丸エディタのVer.8以降をインストールし、"macrodll.dll"を秀丸エディタ本体と同じ場所に置いてください。

    macrodll.dllは"祝鳥"に含まれています。また、dll単独でも配布されています。

  3. 各マクロの先頭にある、以下の行を、環境に合わせて、書き換えてください。

    $rsense_command = "ruby c:/rsense/bin/rsense";
    $Rsense_Home    = "C:\\Rsense";

2.45.2 使用上の注意

目次へ

2.46 折りたたみ状態でコピーするマクロ

通常、折りたたみ状態で範囲選択を行いコピーしても、折りたたんだ状態ではなく、 通常の状態でコピーされます。このマクロは、折りたたんだ状態を保持してコピーを行います。

[add_lineno_fold.mac実行画面]

折りたたみ部分には、"↓..."が追加されますが、変更したい場合は、マクロを直接変更して下さい。($FoldMark を書き換える。)

00021|//折りたたみを示すマーク
00022|$FoldMark = "↓...";

FoldCopy.mac Version.1.0.0(2011/03/18)

目次へ

2.47 ifdef切替マクロ

ファイルタイプ別設定にある、C言語プリプロセッサのディレクティブ #ifdef、#if の有効無効を、 一時的に変更するマクロのセットです。

ifdef_dialog.mac、ifdef_menu.mac の Version.1.2.0以降は、#ifにも対応していますが、 "0"、"1"は、無視(切替の対象外)しています。 デフォルトで、#ifdefと同じ検索パターンを使用しているので、演算式等はマッチしない可能性が高いです。 必要に応じて、検索パターンを変更して下さい。

ifdef_dialog.mac

編集中のファイルで使用されている、#ifdef、#ifndef、#if をリストアップし、 ダイアログ表示して設定を行います。また、データを保存します。

[ifdef_dialog.mac実行画面]
ifdef_menu.mac

カーソル位置にある、#ifdef、#ifndef、#if の設定をメニューを表示して切り替えます。 有効/無効/設定なし を選択します。

[ifdef_dialog.mac実行画面]
ifdef_dataload.mac
ifdef_dialog.mac で保存したデータを元に、設定変更を行います。

2.47.1 改版履歴(ifdef切替マクロ)

2.47.1.1 ifdef_dialog.mac 履歴
2011/11/19 Version.1.0.0
  • 初版
2011/11/23 Version.1.1.0
  • ファイルの読み書きは、fsoを使用するようにした。
  • #if のデータが削除されてしまうので対処
2012/10/24 Version.1.2.0
  • #if にも対応したつもり。(演算式の場合は無理)
2012/10/28
  • #if検索用の正規表現パターン用文字変数を追加。(初期値は#ifdefと同じ)
2.47.1.2 ifdef_menu.mac 履歴
2011/11/19 Version.1.0.0
  • 初版
2011/11/23 Version.1.1.0
  • ファイルの読み書きは、fsoを使用するようにした。
  • #if のデータが削除されてしまうので対処
2012/10/24 Version.1.2.0
  • #if にも対応したつもり。(演算式の場合は無理)
2012/10/28
  • #if検索用の正規表現パターン用文字変数を追加。(初期値は#ifdefと同じ)
2.47.1.3 ifdef_dataload.mac 履歴
2011/11/20 Version.1.0.0
  • 初版
2011/11/23 Version.1.1.0
  • ファイルの読み書きは、fsoを使用するようにした。
  • #if のデータが削除されてしまうので対処
2011/12/10 Version.1.1.1
  • #ifdef等のカラー表示 が無効の場合は、終了するようにした。
2012/08/14 Version.1.1.2
  • setcompatiblemode の実行位置を変更。(処理を行う場合のみ実行する)
2012/10/28 Version.1.1.3
  • 不要な変数を削除

目次へ

2.48 改行コード切替マクロ

改行コードを変更するマクロです。 メニューやステータスバーから変える方法と同じく、現在編集中のファイルの改行コードを変更します。

既存の手段との違いは、

に、なります。

マクロ実行時に、引数を指定できます。

execmacro "NewLineCodeChanger.mac", "1";
改行コードを、"CR+LF"に設定
execmacro "NewLineCodeChanger.mac", "2";
改行コードを、"CR"に設定
execmacro "NewLineCodeChanger.mac", "3";
改行コードを、"LF"に設定

引数を指定しない場合や、引数が"1"、"2"、"3" 以外の場合は、メニューを表示し、改行を選択します。

[NewLineCodeChanger.mac実行画面]

目次へ

2.49 各種ヒストリーで常駐設定をON/OFFするマクロ

秀丸エディタで、ファイル、検索文字、置換文字の各履歴に追加された、履歴の常駐設定をON/OFFするマクロです。

Unicode対応版

このマクロの実行には、秀丸エディタVer.8.30β15以降 と田楽DLLが必要です。 Unicode対応版を使う場合には、海胆田楽が必要です。

[SetResidentSearch.mac実行画面]

田楽DLLは以下の場所から、入手して下さい。

田楽DLLのx64版は、以下の場所から入手できます。

Unicode版に必要な海胆田楽は以下の場所から入手できます。

2.49.1 各種ヒストリーで常駐設定をON/OFFするマクロの変更履歴

2012/12/28 Version.1.0.0
  • 初版
2013/01/12 Version 1.1.0
  • 秀丸エディタVer.8.30β16に対応
2014/09/14 Version 1.1.0a
  • Unicode版を追加

目次へ

2.50 HRESULTからエラーメッセージを取得するマクロ

秀丸エディタ Ver.8から追加された、COM関連機能で、コマンド実行時のHRESULT値から、 エラーメッセージを取得するマクロです。 COM関連を操作する場合、エラーコードだけではわかりにくいです。 エラーメッセージがあると、多少エラーの原因がわかりやすくなるかもしれません。 (どちらかというと、マクロ開発者向けのマクロです。)

エラーメッセージはあらかじめマクロ内に記録してあるため、取得出来ないものもあります。

execmacro文で、HRESULT値を引数に起動してください。戻り値にメッセージをセットします。

実行例

//関数の実行結果を取得
if(getresultex(10) == false){
    //失敗していたら、HRESULT値を取得
    ##n = getresultex(11);
    //HRESULT値を引数にマクロを起動
    execmacro macrodir + "\\HRESULT_ERRMESSAGE.MAC", str(##n);
    //戻り値を取得
    message str(##n) + "\n" + getresultex(-1);
}

目次へ

2.51 実行ファイルの種類を判定するマクロ

実行ファイルやDLLファイルが、32bit用なのか、64bit用なのかを調べるマクロです。(秀丸エディタ Ver.8以降が必要です。)

圧縮ファイル内の構成は以下のようになっています。

BinaryCheck.txt         説明用ファイル
BinaryCheck.mac         マクロ本体
CheckBinaryType.mac     32/64bit調査用マクロ
SelectFile.mac          ファイルを選択するためのマクロ

本体マクロ「BinaryCheck.mac」を実行してください。 メッセージ表示後、ファイル選択ダイアログが表示されるので、 判定したいexeファイルか、dllファイルを選択してください。 選択したファイルの判定を行い、結果を表示します。

"SelectFile.mac"は、田楽DLL、macrodll.dllが見つかれば、使用します。 見つからない場合でも、秀丸本体を使用し、ファイル選択用ダイアログを表示可能ですが、 なるべく、田楽DLL、macrodll.dllを使うよう、各DLLを入手してください。 各DLLは、秀丸本体と同じ場所か、マクロフォルダ、"SelectFile.mac"と同じ場所においてください。

目次へ

2.52 EditorConfigを反映させるマクロ

EditorConfig に関してはEditorConfigを参照してください。

.editorconfig を検索し、条件にマッチした場合は、その内容を現在のファイルに適用するマクロです。 (解析には、"EditorConfig C Core" を多少変更して使用しています。)

このマクロの実行には、ht_tools.dll Ver.1.22以降が必要です。 ht_tools.dllは、h-tom's Warehouse - ht_tools.dll から入手してください。

詳細は、EditorConfigを反映させるマクロのドキュメントを参照のこと。

2.52.1 EditorConfigを反映させるマクロの変更履歴

2013/10/31 Version 1.0.0β1
  • 初版
2015/11/23 Version 1.0.1β1
  • charsetに、"Shift_jis"、 "utf-16le"、 "utf-16be"を追加
  • charsetの変更は、「内容を保持したまま変換」するようにした。
2016/09/01 Ver.1.0.2
  • "insert_final_newline" 、"trim_trailing_whitespace" に対応
  • タブ<-->空白変換を追加。設定時に行うか、ファイル保存時に行うか設定可能。 両方有効にした場合、ファイル保存時の変換は行われない。
2016/09/06 Ver.1.0.3
  • タブ<-->空白の変換が、ファイル保存時に実行できないバグの修正。

目次へ

2.53 レイヤーに対応したカラーマーカー関連マクロ

秀丸エディタ Ver.8.30以降、カラーマーカーにレイヤー機能が追加されています。

現状では、デフォルト以外のレイヤーを使う場合は、マクロを使用する必要があります。 また、レイヤーを指定した場合は、デフォルトとは別レイヤーになるので、メニューからは操作できません。 その為、レイヤーを使ったマクロの作成時に必要になることから、レイヤーに対応した各コマンドを作成しました。

配布ファイルには、レイヤーに対応した、以下のマクロが含まれています

ColormakerSetLayer.mac
レイヤーに対応した各マクロで、対象にするレイヤーを指定するマクロ。
PrevcolormarkerLayer.mac
カラーマーカーの先頭に移動する(上方向)マクロ。
NextcolormarkerLayer.mac
カラーマーカーの先頭に移動する(下方向)マクロ。
DeleteColormarkerLayer.mac
範囲選択されている部分のカラーマーカーを消去するマクロ。
DeleteColormarkerallLayer.mac
カラーマーカーを全て消去するマクロ。

各マクロで、対象にするレイヤーを指定する場合は、"ColormakerSetLayer.mac"を実行します。 実行すると、レイヤーを使用している場合、使用しているレイヤー名をメニュー表示するので、 対象にしたいレイヤーを選択してください。各マクロは、選択したレイヤーを対象にします。

レイヤーを選択しない場合は、デフォルトの「名前なしレイヤー」を対象にします。 (通常のカラーマーカー命令と同じ)

2.53.1 レイヤーに対応したカラーマーカーの動作原理

"ColormakerSetLayer.mac"を使用すると、対象のレイヤー名を、ローカルな(ファイル個別の)静的変数"CM-LAYER"に保存します。

各コマンドは、静的変数"CM-LAYER"で指定されたレイヤーに対して、各操作を行います。 (デフォルトは""で、「名前なしレイヤー」になります。)

目次へ

2.54 現在の文字コードで保存できない文字を検索するマクロ

現在の文字コードで保存する場合に、保存できない文字がないかチェックするマクロです。

基本的には、Shift_JISのファイルで、Unicode特有の文字が、使われていないかをチェックする事を想定しています。 他の文字コードでは試していませんが、たぶん問題ないと思います。

マクロを実行すると、ファイルの先頭から、現在の文字コードで保存できない文字を検索します。 最初に見つかった場合のみ、カラーマーカーダイアログを開くので、文字色、背景色を指定してください。 以降は、選択した色で見つけた箇所にカラーマーカー(レイヤー名:CodeCheck)をつけます。

検索が終了すると、見つけた個数を表示します。

2.54.1 見つけた箇所のカラーマーカーについて

保存できない文字にカラーマーカーをつけますが、レイヤー(レイヤー名:CodeCheck)を使用しているため、 デフォルトでは、メニューのカラーマーカーからは、削除などの操作できません。 別途レイヤーに対応したマクロが必要になります。

マクロを直接編集することで、メニューからも操作可能にすることもできます。

00010|//レイヤー名の設定 デフォルトの"CodeCheck"では、メニューから操作できません。(別途マクロが必用)
00011|//メニューから操作したい場合は、""に設定すること。
00012|$layer = "CodeCheck";

12行を目を以下のように変更すると、メニューからも操作可能になります。

00012|$layer = "";

カラーマーカーの「種類」は"編集したら消える"に設定しているため、編集を行うと消えます。

2.54.2 SaveCodeChecker.macの変更履歴

2014/02/11 Version 1.0.0
  • 初版

目次へ

2.55 選択した範囲を単語補完辞書に追加するマクロ

範囲選択している内容を、単語補完辞書に追加するマクロです。 ファイルタイプ別設定で、単語補間辞書ファイルの指定がなければ動作しません。

選択した内容を単語補間辞書ファイルから検索し、マッチしなかった場合は、 選択内容している内容を、辞書ファイルの最後に追加します。

2.55.1 AddDctionary_SelectWord.macの設定や注意事項

2.55.2 AddDctionary_SelectWord.macの変更履歴

2014/04/06 Version 1.0.0
  • 初版

目次へ

2.56 強調表示を選択するマクロ

カーソル位置と同じ強調表示の範囲を選択するマクロです。 その為、ファイルタイプ別で、強調表示の設定を行わないと、役に立ちません。

制限事項

2.56.1 強調表示を選択するマクロの変更履歴

2015/02/23 Version.1.0.0
  • 初版

目次へ

2.57 「setcompatiblemode」の設定値を編集するダイアログ

秀丸マクロ制作者向けのマクロです。 田楽DLLを使用した、「setcompatiblemode」の設定値を編集するダイアログです。

このマクロの実行には、別途、田楽DLLが必要になります。 使用している秀丸エディタに合ったDLLをダウンロードしインストールしてください。

マクロのインストールに、HidemaruMacroInstallerを使用すると、 DLLのチェック等、必要な処理を自動で行います。
手動インストールする場合は、秀丸エディタで、"SetCompatibleMode_Dialog.mac"を開き、 圧縮ファイル内の"Version_Check.mac"を実行してください。

圧縮ファイルの内容

HidemaruMacroInstaller.lst(※1)  :HidemaruMacroInstaller用スクリプトファイル(通常は使用しない)
SetCompatibleMode_Dialog.mac     :マクロ
SetCompatibleMode_Dialog         :フォルダ
├SetCompatibleMode_Dialog.html  :説明ファイル
├SetCompatibleMode_Dialog01.png :説明ファイルで使う画像
└Version_Check.mac              :補助マクロ(※2)
※1:HidemaruMacroInstallerを使用した場合は、コピーされません。
※2:HidemaruMacroInstaller用スクリプトファイルから起動されるマクロ。
   ヘルプの呼び出し方法を秀丸エディタのバージョンによって書き換える。
   田楽DLLのロードチェックを行い、なければダウンロード先を開くか問い合わせる。
   手動で実行する場合は、SetCompatibleMode_Dialog.mac を開き、このマクロを実行してください。
[SetCompatibleMode_Dialog.mac実行画面]

2.57.1 「setcompatiblemode」の設定値を編集するダイアログの変更履歴

2015/07/07 Ver.1.0.0β1
  • 公開
2016/04/22 Ver.1.0.0
  • 秀丸エディタVer.8.58対応
2017/06/18 Version 1.0.1
  • 秀丸エディタVer.8.73対応

目次へ

2.58 Another_HTML-lint5でhtmlをチェックするマクロ

Another HTML-lint 5 ゲートウェイサービス は、株式会社ジゾンが提供する、HTMLの構文チェックフリーツールです。

このマクロは、上記サイトのゲートウェイサービスを使用し、html構文のチェックを行うマクロです。 その為、サービスへアクセスするための通信環境が必要になります。通信できない環境では実行に失敗します。

秀丸エディタでチェックしたいhtmlファイルを開き、このマクロを実行してください。 ゲートウェイサービスにアクセスし、結果を保存したhtmlファイルを、規定のwebブラウザで表示します。

htmlファイルを保存していない場合には、全内容をコピーした一時ファイル(Another_HTML-lint5_tmp.html)を作成し、 このファイルを使ってチェックを行います。(実行後に自動削除)

圧縮ファイルには以下のファイルが入っています。

2.58.1 Another_HTML-lint5でhtmlをチェックするマクロの変更履歴

2016/02/09 Ver.1.0.0
  • 初版
2016/05/25
  • 保存しなくても実行できるようにした。 (一時ファイルに保存してから実行するようにした。)
  • チェック結果の文字コードがUTF-8だった場合、htmlの先頭にBOMが付いていたので、削除するようにした。
2016/05/28
  • 元のhtmlファイルの空行が、チェック結果だと他の行と重なってしまっていたので対処。 (チェック結果を書き換えて対処)

2.58.2 Another_HTML-lint5でhtmlをチェックするマクロの注意事項や制限事項など

目次へ

3 CompleteX関連

3.1 リストボックスを使ったファイルの選択

「CompleteX」の同梱されている、ファイル名補完の"CompletePath.mac"を改造した、 ファイル名を補完するのではなく、選択したファイルを開くマクロです。 リストボックスを使用し、「ファイルを開くダイアログ」と同じような機能を提供します。

このマクロの実行には、「CompleteX(v3.03以降)」が必要です。 CompleteXは以下のwebサイトから入手できます。

まず、CompleteXのインストールを行ってください。

圧縮ファイル内には以下のファイルが格納されています。

インストール終了後、"CompleteX"フォルダに圧縮ファイル解凍してください。

ファイル選択時、

という動作になります。

"Ctrl+Enter"の場合、設定メニューを開き、表示内容を変更できます。
[設定メニュー]

以下の二つは、設定ファイルを作成すると表示されます。

改版履歴

2007/04/05 Ver 1.0.0
  • 初版

3.1.1 制限事項(リストボックスを使ったファイルの選択)

4 持ち出しキット関連

4.1 単語補間辞書ファイルのパス補正マクロ

持ち出しキットを使用し、USBメモリから秀丸エディタを起動した場合、設定個所によっては、 持ち出しキットが自動的にドライブを補正してくれます。 ファイルタイプ別設定の単語補完辞書は、補正の対象外なので、ドライブがずれてしまうと、 単語補完が機能しなくなります。

このマクロは、秀丸エディタ本体と、単語補間辞書ファイルドライブが違っていた場合に補正を行うマクロです。 (自動起動マクロの「ファイルを開いた直後」に設定しておくといいでしょう。)

改版履歴

2013/05/22 Version.1.0.0
  • 初版

4.1.1 制限事項

持ち出しキットで使用する秀丸エディタと同じドライブに、単語補間用辞書ファイルがあることが、 前提になっています。

5 他のマクロから呼び出して使うマクロ

他のマクロから呼び出して使うことを前提にした、各種マクロです。

各マクロを、execmacro文で呼び出し、結果を resultex(-1) で受け取ります。 引数、戻り値ともに、文字列型になります。

例)
execmacro "popup.mac", "メッセージ", "待ち時間(秒)", "タイトル", "オプション";
$popup = getresultex(-1);
message $popup;

5.1 ポップアップダイアログを表示するマクロ

2013/10/29 Version 1.0.0
  • 初版

WSHを使って、ポップアップダイアログを表示するマクロです。 message文、question文との違いは以下になります。

[popup.macで表示したダイアログ]

5.2 特殊フォルダのパス取得

2013/11/02 Version 1.0.0
  • 初版

WSHを使って、Windowsの特殊フォルダのパスを返すマクロです。

引数に指定できる文字列は以下になります。

AllUsersDesktop
AllUsersStartMenu
AllUsersPrograms
AllUsersStartup
Desktop
デスクトップ
Favorites
お気に入り
Fonts
MyDocuments
マイドキュメント
NetHood
PrintHood
Programs
Recent
SendTo
StartMenu
Startup
Templates

5.3 フォルダ選択ダイアログ

2013/11/02 Version 1.0.0
  • 初版

WSHを利用し、秀丸マクロで、フォルダ選択ダイアログを表示するマクロです。

5.4 ファイル選択ダイアログ

2013/10/12 Version 1.0.0
  • 初版
2013/10/19 Version 1.1.0
  • HTAの処理を追加

秀丸マクロで、ファイル選択ダイアログを表示するマクロです。

外部プログラムとして、以下のどれかを使います。

外部プログラムが見つからない場合、または起動に失敗した場合は、秀丸本体を使用しますが、DLLを入手することをお勧めします。

田楽DLL、macrodll.dllは、以下のどこかに配置してください。

5.4.1 各DLLの入手先

目次へ


top秀丸エディタマクロ