autoclasscss v0.0.5
AutoclassCSS
Инструмент для формирования каркаса из CSS-селекторов на основании полученного HTML по БЭМ-методологии.
Можно использовать AutoclassCSS онлайн.
Документация на основе JSDoc.
Использование
Подключение
Достаточно подключить один файл.
<script src="autoclasscss.js"></script>Создание экземпляра
Создание экземпляра без параметров.
var autoclass = new Autoclasscss();Можно сразу передать HTML, который следует обработать.
var autoclass = new Autoclasscss('<div class"block">...</div>');Дополнительно, конструктор принимает объект опций.
var autoclass = new Autoclasscss('<div class"block">...</div>', {
brace: 'newline',
...
indent: ['tabs', 2]
});Так же, конструктор способен принимать только опции, а обрабатываемый HTML можно указать позже.
var autoclass = new Autoclasscss({
brace: 'newline',
...
indent: ['tabs', 2]
}).set('<div class"block">...</div>');Получение CSS-каркаса
Для получения результата, достаточно вызвать метод get().
var css = new Autoclasscss('<div class"block">...</div>').get();Опции
Стандартные значения
Опции можно указать в виде объекта при создании экземпляра.
new Autoclasscss({
brace: 'default',
flat: false,
ignore: false,
indent: ['spaces', 4],
inner: true,
line: false,
tag: false
});Так же, опции можно изменять с помощью одноимённых методов.
new Autoclasscss()
.brace('default')
.flat(false)
.ignore(false)
.indent('spaces', 4)
.inner(true)
.line(false)
.tag(false);Опция brace
Способ отображения открывающей скобки.
Значение по умолчанию: 'default'.
Принимает одно из следующих значений:
'default'— через пробел после селектора'newline'— на новой строке под селектором
Опция flat
Установление плоского или вложенного списка селекторов.
Значение по умолчанию: true.
Принимает true или false.
Опция ignore
Указание игнорируемых классов.
Значение по умолчанию: false.
Принимает параметр в разном виде:
'class'— добавить игнорируемый класс['class1', 'class2']— добавить несколько игнорируемых классов/i\-.+/— игнорировать классы по регулярному выражениюfalse— очистить список игнорируемых классов
Опция indent
Настройка отступов.
Значение по умолчанию: ['spaces', 4].
Принимает один или два аргумента:
- Обязательный,
'tabs'или'spaces'— символ отступа 1— количество символов в одном отступе
Опция inner
Добавлять или не добавлять отступы внутри фигурных скобок.
Значение по умолчанию: true.
Принимает true или false.
Опция line
Отбивка селекторов пустой строкой.
Значение по умолчанию: false.
Принимает один или два аргумента:
- Обязательный,
trueилиfalse— отбивать или не отбивать 1— количество строк для отбива
Опция tag
Указание тега в селекторе.
Значение по умолчанию: false.
Принимает параметр в разном виде:
trueилиfalse— указывать или не указывать все теги'div'— указывать тегdiv['ul', 'li']— указывать теги ul и li
Методы
Метод set
Устанавливает HTML-разметку к обработке.
В качестве параметра принимает строку с HTML-разметкой.
Метод get
Возвращает CSS-каркас на основе заданной HTML-разметки.
CLI
Получить CSS-каркас из HTML-файла.
./bin/autoclasscss index.htmlСфоррмировать CSS-каркас с заданными опциями и сохранить результат в файл. Файл опций удобно хранить в JSON-формате. Файл для сохранения результата создастся автоматически.
./bin/autoclasscss -o options.json -s save.css index.htmlРазработка
Для разработки требуется node.js и npm. В проекте используется пакетный менеджер bower.
Клиентские тесты написаны на Jasmine, для прогона всех тестов, надо открыть страницу test/test.html.
Цели
Установить зависимости.
make installЗапустить тесты CLI. Написаны на Mocha
make testСгенерировать документация на основе JSDoc.
make docОбновить gh-pages.
make gh-pages