Подтвердить что ты не робот

Удалить LESS//комментарии для компиляции

Можно ли настроить LESS для удаления "//комментариев" при компиляции через JS?

Я хочу удалить их из выведенного меньше файла.

4b9b3361

Ответ 1

Менее однострочные комментарии // должны быть тихими, как указано в документах:

Однострочные комментарии также действительны в LESS, но они "молчат", они не отображаются в скомпилированном выводе CSS:

// Hi, I'm a silent comment, I won't show up in your CSS
.class { color: white }

Смотрите на сайте LESS: http://lesscss.org/#-comments

Флаг

-x работает в командной строке для вывода миниатюрного CSS (который будет лишать комментарии CSS), но в любом случае двойная слэш не должна появляться в css. См. http://lesscss.org/#usage в разделе "Использование командной строки".

Ответ 2

Что касается использования JS без инструмента CLI, docs говорят:

Вы можете передать некоторые параметры компилятору:

К сожалению, эти параметры нигде не указаны. Вы должны знать, где искать код, который находится здесь: https://github.com/less/less.js/blob/0c2c1b2ba3036c62be5fc4e6232d3c0493559764/lib/less/env.js

Различные параметры (в момент написания этой статьи из связанного выше блоба):

var parseCopyProperties = [
    'paths',            // option - unmodified - paths to search for imports on
    'optimization',     // option - optimization level (for the chunker)
    'files',            // list of files that have been imported, used for import-once
    'contents',         // map - filename to contents of all the files
    'contentsIgnoredChars', // map - filename to lines at the begining of each file to ignore
    'relativeUrls',     // option - whether to adjust URL to be relative
    'rootpath',         // option - rootpath to append to URL's
    'strictImports',    // option -
    'insecure',         // option - whether to allow imports from insecure ssl hosts
    'dumpLineNumbers',  // option - whether to dump line numbers
    'compress',         // option - whether to compress
    'processImports',   // option - whether to process imports. if false then imports will not be imported
    'syncImport',       // option - whether to import synchronously
    'javascriptEnabled',// option - whether JavaScript is enabled. if undefined, defaults to true
    'mime',             // browser only - mime type for sheet import
    'useFileCache',     // browser only - whether to use the per file session cache
    'currentFileInfo'   // information about the current file - for error reporting and importing and making urls relative etc.
];

и

var evalCopyProperties = [
    'silent',         // whether to swallow errors and warnings
    'verbose',        // whether to log more activity
    'compress',       // whether to compress
    'yuicompress',    // whether to compress with the outside tool yui compressor
    'ieCompat',       // whether to enforce IE compatibility (IE8 data-uri)
    'strictMath',     // whether math has to be within parenthesis
    'strictUnits',    // whether units need to evaluate correctly
    'cleancss',       // whether to compress with clean-css
    'sourceMap',      // whether to output a source map
    'importMultiple', // whether we are currently importing multiple copies
    'urlArgs'         // whether to add args into url tokens
];

Они также немного документированы различными плагинами Grunt и Gulp, которые используют LESS через JS.

Итак, чтобы ответить на ваш вопрос, вы не можете отличать комментарии /**/ без использования compress. Что делает и другие вещи.

Ответ 3

Обновление 2015-июля: при попытке опции -x, как и другие ответы, я получил это предупреждение:

Опция compress устарела. Мы рекомендуем использовать выделенный css minifier, например, см. Less-plugin-clean-css.

Вы можете установить плагин с помощью

npm install -g less-plugin-clean-css

Затем запустите lessc с аргументом --clean-css.

Ответ 4

Добавление параметра -x в команду компиляции lessc приведет к уменьшению CSS, который должен лишать комментарии. В случае, если вы не можете получить больше контроля над параметрами мини-политики, используя YUI CSS-компрессор, добавив параметр --yui-compress к вашему компилировать команду, которая определенно выделяет комментарии.

Как сказал Рафаэль в своем ответе // комментарии стиля не должны присутствовать в скомпилированном CSS, так что ваш вопрос не имеет большого смысла в первую очередь.

Вся эта информация четко указана на странице LESS домашняя страница/документация, поэтому, возможно, вам стоит просто прочитать это в первую очередь.