少沉默的多行评论

时间:2014-09-27 10:49:52

标签: comments less multiline

有没有办法在LESS中创建沉默多行注释?我想要与//注释相同的行为,但是对于多行字符串。

1 个答案:

答案 0 :(得分:2)

正如@harry已经明确指出的那样,-xclean-css选项也会删除评论。从版本2开始,clean-css选项已移入插件(npm install -g less-plugin-clean-css)。

从Less 2开始,您可以使用插件,另请参阅http://lesscss.org/usage/#plugins,这样您就可以编写并使用删除多行注释的插件。

示例:

下载clean-css并将其解压缩到您的工作目录中。您可以在https://github.com/jakubpawlowicz/clean-css找到clean-css(这将创建一个名为clean-css-master的旧版本)

要创建插件,请调用此文件less-plugin-remove-comments.js

var getCommentsProcessor = require("./comments-processor");

module.exports = {
    install: function(less, pluginManager) {
        var CommentsProcessor = getCommentsProcessor(less);
        pluginManager.addPostProcessor(new CommentsProcessor());
    }
};

您的comment-processor.js可能包含以下内容:

var cleaner = require('./clean-css-master/lib/text/comments-processor');

module.exports = function(less) {
    function CommentProcessor(options) {
        this.options = options || {};
    };

    CommentProcessor.prototype = {
        process: function (css) {
            var commentsProcessor = new cleaner('*', false);
            css = commentsProcessor.escape(css);
            return css;
        }
    };

    return CommentProcessor;
};

最后你应该可以运行以下命令:

lessc --plugin=./less-plugin-remove-comments.js index.less

上面的命令应该为您提供没有注释的编译CSS。