function Comment(come) { var reg = new RegExp("^" + come) if (IsTextSelected()) { var s = GetSelectLineFrom(); var len = GetSelectLineTo() - s; if (GetSelectColmTo() != 1) len++; Jump(s, 1); for (var i = 0; i < len; i++) { GoLineTop(1); if (GetLineStr(0).match(reg)) { for (var j = 0; j < come.length; j++) Delete(); } else if (GetLineStr(0).match(/\S/)) { InsText(come); } Down(); } // 置換ダイアログを使用 // ReplaceAll("^.", come + "$&", 148); // ReplaceAll("^" + come + come, "", 148); // CancelMode(); } else { GoLineTop(1); if (GetLineStr(0).match(reg)) { for (var i = 0; i < come.length; i++) Delete(); } else if (GetLineStr(0).match(/\S/)) { InsText(come); } } } var path = GetFilename(); if (path != "") { var ext = path.match(/\.\w+$/).toString(); switch(ext.toLowerCase()) { case ".rb": Comment("#~ "); break; case ".c": case ".cpp": case ".as": case ".js": Comment("// "); break; default: var WSHShell = new ActiveXObject("WScript.Shell"); WSHShell.Popup("拡張子 `" + ext + "' のコメント設定がありません。"); } }