/* [概要] 行を "/* " と " */" でコメントアウトします。 範囲選択していない場合、カーソルのある行をコメントアウトします。 範囲選択している場合、選択範囲にある行すべてを1行ずつコメントアウトします。 (矩形選択でも同じです。) 範囲選択は、行頭からではなく行の途中から(桁位置>=2)でも構いません。 コメント文字列はデフォルトでC/C++スタイルですが、 ファイルの拡張子、及び 現在適用されているタイプ別設定 により変わります。 (対応:sakura:1.6.5.0以降) [制限] ・挙動: ・行頭がタブ(\t)の場合、コメント開始文字列は "/* " ではなく "/*" (スペース無し)になります。 ・次の変数の定義値を変えることで、挙動を変更可能です: bCOMMENTHEAD_NotInsertSpaceWhenLineBeginsWithTab [変更履歴] 2014/05/24 case "xxx" 追加:dpr,pas, tex タイプ別設定によりコメント文字列を変える。 選択範囲の最大行数制限を廃止。 コメント文字列が改行文字を含む場合、1行毎にせず始めと終わりの2箇所だけに挿入。 2009/04/15 新規 */ // 行頭がタブ(\t)の場合、コメント開始文字列を // "/* " (スペース有り)ではなく "/*" (スペース無し)にするか。 // true=スペース無しにする / false=スペースを付加する var bCOMMENTHEAD_NotInsertSpaceWhenLineBeginsWithTab = true; //2014/05/24 選択範囲の最大行数制限を廃止。 // // メッセージボックスのタイトル。 // var CAPTION = Editor.ExpandParameter("$M"); // $M=マクロ名(フルパス)。 // CAPTION = CAPTION.substring( CAPTION.lastIndexOf("\\") + 1 ); // ファイル名部分の取り出し。 // // メッセージボックスを出すのにWshShell.Popup()を使用する。 // // 書式(MSDNのWSHより): intButton = WshShell.Popup(strText,[nSecondsToWait],[strTitle],[nType]) // var WshShell = new ActiveXObject("WScript.shell"); // // 選択範囲の最大行数。(安全の為、制限する。) // var nMAX_LINES = 50; //-------------- // メイン Main(); function Main() { var sExt; // ファイル名の拡張子。(ピリオドを含まない) var sTypeExtAry; // 現在適用されているタイプ別設定の拡張子。(「基本」は除く) var sKey, sTypeExt; var sCommentHead; // コメント開始文字列。"/* " (スペース有り) var sCommentHead_NoSpace; // コメント開始文字列。"/*" (スペース無し) var sCommentTail; // コメント終了文字列。" */" var sNewline; var selstr; // 選択文字列。 var reFrom; // 置換前の文字列。(正規表現) var reTo; // 置換後の文字列。 // エディタがビューモード(読み取り専用)なら終了。 if( Editor.ExpandParameter("${R?読専$:$:$}") == "読専" ) return; // ファイル名の拡張子に応じてコメント文字列を変える。 // HTMLでもCSS(