JSPM

  • ESM via JSPM
  • ES Module Entrypoint
  • Export Map
  • Keywords
  • License
  • Repository URL
  • TypeScript Types
  • README
  • Created
  • Published
  • Downloads 527
  • Score
    100M100P100Q118611F

CSSP — Ometa-JS based CSS parser

Package Exports

  • cssp
  • cssp/src/cssptt

This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (cssp) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

Предварительные требования:

##Установка, удаление и обновление:

Установка: npm install cssp

Обновление: npm update cssp

Удаление: npm uninstall cssp

Описание

По умолчанию CSSP разбирает входной CSS-текст в дерево (parser -- P), затем отправляет дерево на трансформацию (transformer -- TF), после чего транслирует в CSS-текст (translator -- TL).

Таким образом полный цикл выглядит как CSS -> P -> TF -> TL -> CSS, и без указания ключей CSSP отдаст тот же текст, что был на входе.

Использование

Использование command line интерфейса:

cssp
    показывает этот текст
cssp <имя_файла>
    считывает CSS из <имя_файла> и записывает результат полного цикла (тот же CSS) в stdout
cssp <имя_файла> -dp
cssp <имя_файла> --parser
    считывает CSS из <имя_файла> и записывает результат CSS -> P -> stdout
cssp <имя_файла> -df
cssp <имя_файла> --transformer
    считывает CSS из <имя_файла> и записывает результат CSS -> P -> TF -> stdout
cssp <имя_файла> -dl
cssp <имя_файла> --translator
    считывает CSS из <имя_файла> и записывает результат CSS -> P -> TF -> TL -> stdout
cssp <имя_файла> -r <имя_правила>
cssp <имя_файла> --rule <имя_правила>
    считывает CSS из <имя_файла> и передаёт в цикл (P TF TL) <имя_правила>, которое надо обработать
cssp <имя_файла> -t
cssp <имя_файла> --trim
    считывает CSS из <имя_файла> и удаляет начальные и концевые пробельные символы

Примеры:

1) test.css = 'color: red'
> cssp test.css -r declaration -dp
> ['declaration',
    ['property',
      ['ident', 'color']],
    ['value',
      ['s', ' '],
      ['ident', 'red']]]
2) test.css = '10px'
> cssp test.css -r dimension -dp -dl
> ['dimension',
    ['number', '10'], 'px']
  10px

Пример программного использования (Node.js):

var cssp = require('cssp'),
    src = 'a { color: red }',
    tree, trans,
    dst;

tree = cssp.parse(src);
trans = cssp.transform(tree);
dst = cssp.translate(trans);

console.log('Source CSS:');
console.log(src);
console.log('Parser out:');
console.log(tree);
console.log('Transformer out:');
console.log(trans);
console.log('Translator out:');
console.log(dst);