トップ 新規 差分 一覧 最終更新 ソース 検索 ヘルプ RSS ログイン

小ネタ集

秀丸エディタ小ネタ集

まとめきれない小さなネタはここへ。

キーアサイン

キーアサインは自分の使い易いように割り当てるのが一番ですが
割り当てするキーを迷っている方は 参考にしてみてください。

他の人のキーアサインを見てみる

Ctrl+B
ボックス選択開始
Ctrl+D
行の二重化

マーク関連

Alt+Up
マーク行の上検索
Alt+Down
マーク行の下検索
Alt+Right
マーク一覧
Alt+Left
現在行のマーク/マーク解除

または

F4
マーク行の下検索
Shift+F4
マーク行の上検索
Ctrl+F4
現在行のマーク/マーク解除
Shift+Ctrl+F4
マーク一覧

秀丸エディタを持ち出すには

934 名前:名無しさん@お腹いっぱい。:2007/12/24(月) 00:24:24 ID:lfDqQ0Tx0
>>929
とりあえずIniファイル生成のあたりしか検証してないけど、たぶん↓(間違ってたら訂正よろ)

[秀丸エディタ持ち出しキットの作成手順]
1.USBメモリや外付けHDDなど(以下、「持ち出し用メディア」)を秀丸エディタがインストールされたPCに接続する
2.持ち出し用メディアの中に秀丸エディタの環境を丸コピーする(デスクトップにショートカットがあるならプロパティからリンク先をたどるとよい)
3.http://hide.maruo.co.jp/software/hmmtakeout.html から「秀丸メール持ち出しキット(現Ver: hmmtakeout106_signed.exe)」をダウンロードする
4.秀丸メール持ち出しキットのインストーラを実行して「次へ」をクリック
5.「HmRegIni.dllとヘルプファイルの抽出だけする(上級ユーザー様向け)」を選択して「次へ」をクリック
6.適当な場所を指定して「次へ」をクリック → 「次へ」をクリック → 指定した場所にHmRegIni.dll が展開される → 「完了」でインストーラ終了
7.http://www.ms.u-tokyo.ac.jp/~abenori/mycreate/hidemaru.html から「秀丸の設定を持ち出し用にはき出すプログラム(hmreg.exe)」をダウンロードする
8.hmreg.exe を HmRegIni.dll と同じ場所にコピーして実行する → HmRegIni.ini が生成される
9.持ち出し用メディアの中の Hidemaru.exe と同じ場所に先ほど生成されたとHmRegIni.ini と HmRegIni.dll をコピー
10.PCから持ち出し用メディアを外して作業完了

原理としては、秀丸エディタは同じ場所に HmRegIni.dll がある場合、レジストリの設定を読み込む前に HmRegIni.dll 経由で HmRegIni.ini を読みにいくので
結果としてレジストリに依存しない動作が可能になるというもの。
そんでもって、hmreg.exe は秀丸エディタのレジストリ情報を HmRegIni.dll が解釈できる形にして HmRegIni.ini をはき出してくれるシロモノなわけです。
(通常の設定保存ファイルと比較してみるとDWORD値の16進数を10進数になおしたりとかいろいろやってるっぽい)

小マクロ

918 :名無しさん@お腹いっぱい。:2008/04/12(土) 15:07:58 ID:TG2ryNoS0
たくさん開いてしまった実行結果ウィンドウをまとめて閉じたいのですが、
なにか方法はありますか?

922 :名無しさん@お腹いっぱい。:2008/04/12(土) 21:00:38 ID:fbsCudSM0
>>918
次のマクロではどうでしょう。
//-----------------------------------
#c = hidemarucount;
while( #i < #c ) {
#handle = hidemaruhandle(0);
if( filetype == "exeresult" ) #ft = 1;
else #ft = 0;
nexthidemaru;
if( #ft ) closehidemaru #handle;
#i = #i + 1;
}
endmacro;
//-----------------------------------
別名で保存しつつ 現ファイル名のまま編集を続けるマクロ snapshot.mac
$fn = filename;
SAVEAS;
changename $fn;
save;
508 :名無しさん@お腹いっぱい。:2008/03/08(土) 10:47:02 ID:cbPy6nuh0
秀丸エディターのショートカットについてこちらで伺っていいですか?
Ctrl+G で行番号指定ですが
指定した行から5行ほどクリップボードにコピしたいんです

テストとして指定行だけでもコピできたらと思い下記の様にしましたがダメでした
コントロールGして行数指定してコントロールA(ページ全部を選択された)

指定行だけのコピ選択をするショートカットキーがあれば教えて下さい

510 :名無しさん@お腹いっぱい。:2008/03/08(土) 11:52:50 ID:jLIhwGcN0
マクロを組んでみたっす。
区切り文字はお好みで。

// GoSelLine.mac
#X = x; // 現在位置を記憶しておく
#Y = y;

// 行番号・選択行数の入力待ち
$Inp = input( "行番号・選択行数を指定してください(半角スラッシュで区切る)", "" );
#Pos = strstr( $Inp, "/" );
if( #Pos < 1 ) endmacro;

// 指定行番号と選択行数の抜き出し
#LineNo = val( midstr( $Inp, 0, #Pos ) );
if( ( #LineNo < 1 )||( linecount2 < #LineNo ) ) endmacro;
#SelCount = val( midstr( $Inp, #Pos + 1, strlen( $Inp ) - 1 ) );
if( ( #LineNo < 1 )||( linecount2 < #LineNo ) ) endmacro;

// 指定行に移動 → 選択開始 → 指定行数分移動 → 選択終了 → コピー
movetolineno 1, #LineNo;
beginsel;
movetolineno 1, #LineNo + ( #SelCount - 1 );
golineend2;
endsel;
copy;

moveto #X , #Y; // カーソル位置の現状復帰

512 :名無しさん@お腹いっぱい。:2008/03/08(土) 12:24:18 ID:jLIhwGcN0
…ミスった。

#SelCount = val( midstr( $Inp, #Pos + 1, strlen( $Inp ) - 1 ) );
if( ( #LineNo < 1 )||( linecount2 < #LineNo ) ) endmacro;

↓↓↓

#SelCount = val( midstr( $Inp, #Pos + 1, strlen( $Inp ) - 1 ) );
if( ( #SelCount < 1 )||( (linecount2 < #SelCount ) ) endmacro;

厳密には (( linecount2 - #LineNo ) < #SelCount ) の方がいいかも
しれないけれど、一応動いてるみたいなので。
301 :名無しさん@お腹いっぱい。:2008/02/14(木) 14:43:02 ID:H61hVME00
テキストファイルを開く時に、常に100行目にカーソルを移動して開くことは出来ますか?
あるフォルダの中だけで使いたいので、そういう起動オプションがあれば教えてください。

302 :名無しさん@お腹いっぱい。:2008/02/14(木) 14:55:20 ID:fokDZDAL0
>>301
あらかじめマクロファイルにその「あるフォルダ」をパスを書いておいて、
自動起動マクロに登録してテキストを開いたら実行するようにしておけばおk
directory キーワードで開いてるファイルのフォルダパスが取れる。
↓を適当に goto_line100.mac とか名前をつけて保存汁

$Path = "c:\あるフォルダ1";
if( $Path == directory )
{
movetolineno 1, 100;
}
940 :名無しさん@お腹いっぱい。 :sage :2007/09/11(火) 00:05:19 ID:SFf/YOiZ0
無題を閉じるとき、勝手に一行目+日時のファイル名つけて保存する
マクロを書いてくれ

941 :名無しさん@お腹いっぱい。 :sage :2007/09/11(火) 00:25:31 (p)ID:X22Zn4eE0
>>940
ほらよ
if (filename == "") changename gettext2(0, 1, 250, 1) + year + month + day + hour + minute + second + ".txt";
これを自動起動マクロの「ファイルを閉じる直前」に設定すれば医院で内科医

943 :名無しさん@お腹いっぱい。 :sage :2007/09/11(火) 01:22:16 (p)ID:lNRgbUOE0
保存時に違うドライブに複数個も保存できるマクロをお願いします。
(HDD だけじゃ不安なので、USB フラッシュ2個にもいれたいので)

946 :名無しさん@お腹いっぱい。 :sage :2007/09/11(火) 01:44:38 (p)ID:X22Zn4eE0
>>943
ほらよ
if (event == 0 || event == 3 && geteventparam(0) == 0) {
$orgname = filename2;
saveas "D:\\" + basename2;
saveas "E:\\" + basename2;
changename $orgname;
}
これを自動起動マクロの「保存直前と直後」に設定すれば医院で内科医
ある単語をダブルクリックすると、文書内の同じ単語がハイライト表示されるマクロ

selectword;
setsearch gettext(seltopx, seltopy, selendx, selendy, 1), 0x0001;
hilightfound 1;
endmacro;
392 :名無しさん@お腹いっぱい。 :sage :2007/10/18(木) 01:43:20 (p)ID:oGQh/X9Q0(4)
選択中の開始と終了を入れ替えるにはどうすればいいでしょうか。
seltopxとselendxを入れ替える感じで。

418 :名無しさん@お腹いっぱい。 :sage :2007/10/19(金) 21:36:37 ID:w4n5AxyM0
>>392
流れに乗り遅れたけどそのものずばりのが手元にあったんで

// 選択範囲の反対端に移動
if (rectselecting) { #rect = 1; }
else if (selecting) { #rect = 0; }
else { gokakko; endmacro; }

disabledraw;
#topx = seltopx; #topy = seltopy; #endx = selendx; #endy = selendy;
escape;
if (#rect) { beginrect; } else { beginsel; }

if (#topx == x && #topy == y) { moveto #endx, #endy; }
else if (#endx == x && #endy == y) { moveto #topx, #topy; }
else if (#topx == x && #endy == y) { moveto #endx, #topy; }
else if (#endx == x && #topy == y) { moveto #topx, #endy; }

最終更新時間:2009年10月26日 01時37分18秒 [通知用URL]