English help on website



秀丸エディタ管理(Ver9.35対応版)
目次− 秀丸エディタ管理
複数起動した秀丸エディタを管理するためのマクロの文があります。
hidemarucount(値)
現在稼動している秀丸エディタの数を返します。常駐秀丸エディタは数えません。

findhidemaru (関数)
ファイル名で指定して秀丸エディタがいるかどうかを調べます。

setactivehidemaru(文)
アクティブな秀丸エディタを指定します。マクロの実行もそちらのウィンドウに移動します。

hidemaruhandle(関数)
ウィンドウの番号からウィンドウハンドルを得ます。

hidemaruorder(関数)
hidemaruhandleの逆で、ハンドルからウィンドウ番号を得る関数です。

closehidemaru(文)
指定した秀丸エディタを終了させます。

closehidemaruforced(文)
closehidemaruと同様に秀丸エディタを終了させます。ただし、こちらは「(更新)」のついたファイルの場合でもエラーにならずに強制的に(保存せずに)終了させます。

他の秀丸エディタの状態を参照するキーワード
以下のキーワードは、その後ろに角カッコで添え字を付けて、現在の秀丸エディタ(アクティブな秀丸エディタ)以外の秀丸エディタからも値を得ることができるようになっています。
角カッコの中には、ウィンドウ番号でもウィンドウハンドルでも両方指定することができます。
basename, basename2, basename3
filename, filename2, filename3
directory, directory2, directory3
filetype
windowstate, windowstate2
tabgroup, taborder, tabtotal
$name = basename[2];
if( $name == "abc.txt" ) closehidemaru 2;

ウィンドウ番号と、ウィンドウハンドル
ウィンドウ番号とは、秀丸エディタのウィンドウの重なり具合によって決まる番号です。
現在マクロを実行している秀丸エディタは、先頭にいるはずなので、この秀丸エディタのウィンドウ番号は0です。
その後ろに位置する秀丸エディタのウィンドウ番号は1です。さらにその後ろが2です。
nexthidemaruコマンドを使うと、一番後ろの秀丸エディタが一番手前に移動します。
prevhidemaruコマンドを使うと、現在の秀丸エディタは一番後ろに移動し、代わりにウィンドウ番号1のウィンドウが手前に表示されます。
ウィンドウハンドルは、ウィンドウを識別するための値です。ウィンドウ番号は、nexthidemaru等で順番が変ると変化しますが、ウィンドウハンドルは変化しません。

影響の及ぶ範囲(アクティブ切り替え)
アクティブ切り替え先と前で共有される情報と、共有されない情報があります。

以下の状態は、アクティブ切り替え先に引き継がれず、秀丸エディタごとに固有の状態です。

disabledraw, enabledraw
disableerrormsg, enableerrormsg
beginclipboardread, getclipboard
JavaScriptの保持されたオブジェクト(ファイルごと)

以下の状態は、アクティブ切り替え先でも引き継がれ、元の秀丸エディタと共有されます。

変数(#aや$bといった値)(ただしsetcompatiblemode 0x08000000の場合は固有)
setcompatiblemode
disablebreak, enablebreak
disableinvert, enableinvert
disablehistory(0x0100除く)
seterrormode(disableerrormsg相当除く)
setbackgroundmode
setfloatmode(V8.97で共有されるように変更)
debuginfoの出力モード

参考:
 影響の及ぶ範囲(execmacro)
 影響の及ぶ範囲(アクティブ切り替え)
 影響の及ぶ範囲(JavaScript)

タブモードのときの管理
参照:秀丸エディタ管理(タブ編)