/* HTMl, Javascript, Css format for Emeditor --------------- $Date: 2008-08-02 23:32:18 Written by KevinYuan whyork@21cn.com You are free to use this in any way you want feature: 1> Multiline support. 2> CSS, HTML, Javascript, C#, C-like, Java decomment are supported; */ function JS_deComment(code) { var reg = /(^[\s]*)([\/]{2,})/gm; return code.replace(reg, '$1'); } function CSS_deComment(code) { var reg = /\/\*([\w\W]*?)\*\//gm; return code.replace(reg, '$1'); } function HTML_deComment(code) { var reg = //gm; return code.replace(reg, '$1'); } (function() { var word = document.selection.Text; var isCurrentLine = 0; //如果当前选择的文字为空,则选择光标当前行 if (word == '') { //选择当前行 document.selection.SelectLine(); //获取当前行的文字 word = document.selection.Text; isCurrentLine = 1; } //获取匹配当前文档的配置名如 html,htm,xml,css,js,c# var Filetype = document.ConfigName.toLowerCase().replace(/ /g, ''); if (Filetype.indexOf('htm') > -1 || Filetype.indexOf('ml') > -1) { word = HTML_deComment(word); } else if (Filetype.indexOf('css') > -1) { word = CSS_deComment(word); } else { word = JS_deComment(word); } document.selection.Text = word; //如果是当前行,则保证移动到当前行第一个词之前 if (isCurrentLine) { document.selection.CharLeft(false, 2); document.selection.StartOfLine(); document.selection.WordRight(false, 0); } else { document.selection.StartOfLine(); } })();