LESS Silent Multiline Comment

十年热恋 提交于 2019-12-01 21:34:20

As already made clear by @harry the -x and clean-css options remove comments too. Since version 2 the clean-css option has been moved into a plugin (npm install -g less-plugin-clean-css).

Since Less 2 you can use plugins, see also http://lesscss.org/usage/#plugins ,so you can write and use a plugin which removes your multiline comments.

Example:

Download and unzip clean-css into your working directory. You can find clean-css at https://github.com/jakubpawlowicz/clean-css (this will create a sub older called clean-css-master)

Than create your plugin, call this file less-plugin-remove-comments.js:

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

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

Your comment-processor.js than could contain the following:

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;
};

And finally you should be able to run the following command:

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

The preceding command should give you the compiled CSS without comments.

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!