同じ作業を毎回手作業でやっていたことに気づき、マクロ化できないか調べたのがこの回のきっかけです。覚えておくと本当に時間の節約になります。

標準キーバインド一覧

PART 03 で紹介した基本操作に加え、覚えておくと便利な編集系のショートカットをまとめます。

分類操作ショートカット
選択矩形選択モードShift + F6
編集行の昇順ソートAlt + A
編集重複行のマージAlt + M
編集行の削除Ctrl + Y(環境により異なる場合あり)
移動指定行へジャンプCtrl + J
検索Grep実行Ctrl + G
マクロキーボードマクロ記録の開始/終了Shift + Ctrl + M
マクロ記録したマクロを保存Ctrl + M

キー割り当てのカスタマイズ

共通設定の「キー割り当て」タブでは、右側の「キー」一覧から変更したいキーを選び、左上の「種別」から割り当てたい機能を選択することで、任意のキーに任意の機能を割り当て直せます。 他のエディタに慣れている場合は、そのエディタのキー操作に近づけることで学習コストを下げられます。

💡 キー割り当てはエクスポート可能

設定した内容はiniファイルとして保存されるため、複数のPCで同じキー割り当てを使いたい場合は、iniファイルをコピーするだけで環境を統一できます。

キーボードマクロ

キーボードマクロの記録から実行までの流れ

図1: キーボードマクロの記録〜キー割り当てまでの流れ

キーボードマクロは、実際に行ったキー操作をそのまま記録し、あとから再生できる機能です。Shift + Ctrl + M で記録を開始し、任意の編集操作を行ったあと、もう一度同じキーで記録を終了します。 Ctrl + M で名前を付けて保存すると、共通設定の「マクロ」から「外部マクロ」として登録でき、任意のキーに割り当てて何度でも再利用できます。

キーボードマクロが向いている作業

定型のヘッダーコメントの挿入、特定パターンのインデント調整、決まった位置への文字列挿入など、「毎回同じ手順を繰り返す」作業に向いています。逆に、ファイルごとに条件分岐が必要な複雑な処理には次に紹介する外部マクロの方が適しています。

外部マクロ(JavaScript / VBScript)

サクラエディタは、Windows Script Host(WSH)を経由して JavaScript や VBScript で書かれた本格的なマクロを実行できます。共通設定の「マクロ」タブでマクロ格納フォルダを指定し、そこに .js.vbs ファイルを配置すると、マクロ一覧から呼び出せるようになります。

JavaScript — 外部マクロの例(選択範囲の行頭に連番を付与)
// sakura-macros/add-line-number.js
// 選択範囲の各行の先頭に "001: " のような連番を付与するマクロ例
var editor = Editor;
var lineFrom = editor.GetLineFromLineNo === undefined ? 1 : editor.LineFrom;
var lineTo   = editor.LineTo;

for (var i = lineFrom; i <= lineTo; i++) {
    var num = ("000" + i).slice(-3);
    editor.Jump(i, 1);
    editor.InsText(num + ": ");
}

⚠️ マクロオブジェクトの仕様はバージョンで変わることがある

マクロから操作できるプロパティ・メソッドはバージョンによって差異があるため、実際に使う際は公式ヘルプの「マクロ」項目で対応するオブジェクトを確認してから組み立ててください。

おすすめのキー割り当て例

用途割り当て例理由
よく使う外部マクロCtrl + F9F12他機能と衝突しにくく片手で押しやすい
Grep実行標準の Ctrl + G のまま変更すると他PCとの操作差異が生まれるため据え置き推奨
アウトライン表示切替任意の未使用キー頻度が高いなら片手アクセスしやすい位置へ

他エディタからの移行者向けTips

VSCodeやVimなど別のエディタに慣れている場合、まず自分がよく使う3〜5個の操作(保存・検索・置換・行削除・複数行コメントアウトなど)だけをキー割り当てで元のエディタに近づけ、それ以外はサクラエディタの標準操作のまま使い始めるのがおすすめです。一度に全部を合わせようとすると、逆に混乱の原因になります。

特にVSCode系のキー操作に慣れている場合は、行の複製・行の移動・複数カーソルなど、サクラエディタ標準では直接対応しない操作もあります。無理に完全再現しようとせず、矩形選択やキーボードマクロといったサクラエディタ側の得意技で代替する発想に切り替えると、学習コストを抑えながら早く馴染めます。

逆に、サーバー上でVimやnanoを使い慣れている方がWindows作業でサクラエディタを併用する場合は、検索・置換・Grepまでの流れがCUIのgrep・sedに近い感覚で使えるため、比較的スムーズに移行できます。まずはPART 05で紹介した正規表現検索から試してみると、CUI操作との対応関係がつかみやすくなります。

次の章では…

PART 07 では、コーディング・ログ閲覧・データ整形という3つの用途別に、ここまで紹介した機能をどう組み合わせて使うかを具体的に解説します。

→ PART 07 — プログラミング・テキスト処理での活用例へ