それマグで!

知識はカップより、マグでゆっくり頂きます。 takuya_1stのブログ

習慣に早くから配慮した者は、 おそらく人生の実りも大きい。

マクロ、コメント挿入改良

EmEditorのデフォルト機能のコメント挿入は行先頭にコメントを追加してしまう。これがアウトラインプラグインと相性悪い。あとPythonソースコードとも相性が悪い。インデントが狂うのでインデントを使うPythonとアウトラインプラグインは表示や実行が崩れてくる。ちょっと悲しい。そこで改良してしてみた。
 そんなに難しくないのですぐ出来た。これはEmEditorの本体機能として実装してほしいかも。マクロで出来るから、そんなに急がないし。江村さんが気が向いてそうなときに、要望へあげておこうかな。

/**
 * 選択範囲のコメントアウト2
 * EmEditor組み込みの選択範囲のコメントアウトは
 * TAB文字やスペースのインデントを考慮しないので少し
 * 改良した。本当に少しだけ。改良
 * @author takuya_1st
 * @lastModified 19:53 2008/01/13
 * @language JScript
 * @see EmEditor "ホーム - EmEditor ヘルプ - コマンド リファレンス - [編集] カテゴリ - [コメント挿入] コマンド"
 * @version 1.0 beta
 */

//準備
//コメントアウトに使う文字を設定から読み出す

$line_comment_char  = document.Config.Highlight.LineComment1;


//1.Windowの再描画を止める
Window.Redraw=false;
//2.選択範囲を置換する
document.selection.Replace( 
  "^(\\s*)(.+)$",
  "\\1"+$line_comment_char +"\\2",
  eeFindNext | eeFindReplaceEscSeq | eeReplaceSelOnly | eeReplaceAll | eeFindReplaceRegExp);
//3.検索結果の強調を外す
document.HighlightFind=false;
////4.範囲選択を解除 (お好みで)
//document.selection.collapse();
//5.Windowの再描画を再開
Window.Redraw=true;