{"id":20533085,"url":"https://github.com/css/cssp","last_synced_at":"2025-04-14T06:32:44.412Z","repository":{"id":57210969,"uuid":"1897526","full_name":"css/cssp","owner":"css","description":"Ometa-JS based CSS parser","archived":false,"fork":false,"pushed_at":"2012-10-11T14:23:53.000Z","size":373,"stargazers_count":25,"open_issues_count":4,"forks_count":7,"subscribers_count":12,"default_branch":"master","last_synced_at":"2025-03-27T20:14:18.236Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/css.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG","contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2011-06-15T00:11:35.000Z","updated_at":"2023-05-21T11:29:03.000Z","dependencies_parsed_at":"2022-08-29T22:12:15.593Z","dependency_job_id":null,"html_url":"https://github.com/css/cssp","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/css%2Fcssp","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/css%2Fcssp/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/css%2Fcssp/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/css%2Fcssp/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/css","download_url":"https://codeload.github.com/css/cssp/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248560402,"owners_count":21124648,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-16T00:18:37.339Z","updated_at":"2025-04-14T06:32:44.358Z","avatar_url":"https://github.com/css.png","language":"JavaScript","readme":"## Предварительные требования:\n\n* Node.js: http://nodejs.org\n* npm: https://github.com/isaacs/npm\n\n##Установка, удаление и обновление:\n\nУстановка: `npm install cssp`\n\nОбновление: `npm update cssp`\n\nУдаление: `npm uninstall cssp`\n\n## Описание\n\nПо умолчанию CSSP разбирает входной CSS-текст в дерево (parser -- P), затем отправляет дерево на трансформацию (transformer -- TF), после чего транслирует в CSS-текст (translator -- TL).\n\nТаким образом полный цикл выглядит как CSS -\u003e P -\u003e TF -\u003e TL -\u003e CSS, и без указания ключей CSSP отдаст тот же текст, что был на входе.\n\n## Использование\n\nИспользование command line интерфейса:\n\n    cssp\n        показывает этот текст\n    cssp \u003cимя_файла\u003e\n        считывает CSS из \u003cимя_файла\u003e и записывает результат полного цикла (тот же CSS) в stdout\n    cssp \u003cимя_файла\u003e -dp\n    cssp \u003cимя_файла\u003e --parser\n        считывает CSS из \u003cимя_файла\u003e и записывает результат CSS -\u003e P -\u003e stdout\n    cssp \u003cимя_файла\u003e -df\n    cssp \u003cимя_файла\u003e --transformer\n        считывает CSS из \u003cимя_файла\u003e и записывает результат CSS -\u003e P -\u003e TF -\u003e stdout\n    cssp \u003cимя_файла\u003e -dl\n    cssp \u003cимя_файла\u003e --translator\n        считывает CSS из \u003cимя_файла\u003e и записывает результат CSS -\u003e P -\u003e TF -\u003e TL -\u003e stdout\n    cssp \u003cимя_файла\u003e -r \u003cимя_правила\u003e\n    cssp \u003cимя_файла\u003e --rule \u003cимя_правила\u003e\n        считывает CSS из \u003cимя_файла\u003e и передаёт в цикл (P TF TL) \u003cимя_правила\u003e, которое надо обработать\n    cssp \u003cимя_файла\u003e -t\n    cssp \u003cимя_файла\u003e --trim\n        считывает CSS из \u003cимя_файла\u003e и удаляет начальные и концевые пробельные символы\n\nПримеры:\n\n    1) test.css = 'color: red'\n    \u003e cssp test.css -r declaration -dp\n    \u003e ['declaration',\n        ['property',\n          ['ident', 'color']],\n        ['value',\n          ['s', ' '],\n          ['ident', 'red']]]\n    2) test.css = '10px'\n    \u003e cssp test.css -r dimension -dp -dl\n    \u003e ['dimension',\n        ['number', '10'], 'px']\n      10px\n\nПример программного использования (Node.js):\n\n    var cssp = require('cssp'),\n        src = 'a { color: red }',\n        tree, trans,\n        dst;\n\n    tree = cssp.parse(src);\n    trans = cssp.transform(tree);\n    dst = cssp.translate(trans);\n\n    console.log('Source CSS:');\n    console.log(src);\n    console.log('Parser out:');\n    console.log(tree);\n    console.log('Transformer out:');\n    console.log(trans);\n    console.log('Translator out:');\n    console.log(dst);\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcss%2Fcssp","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcss%2Fcssp","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcss%2Fcssp/lists"}