缩写c

一个 JavaScript 库,用于在生成尽可能最短的 ASCII 仅输出的同时,逃离 CSS 字符串和标识符 .
这是 JavaScript 库 从文本中逃出用于 CSS 字符串或标识符 生成尽可能短的有效 ASCII 输出. 以下是在线演示.
CSSOM 的多填充器 CSS.escape() 方法在一个单独的仓库中可用. (比较而言, 缩写c (掌声)
如果你看到可能的改进,请随意叉出!
安装
通过 无数字 :
npm install cssesc
在浏览器中 :
<script src="cssesc.js"></script>
单位 节点.js数字 :
const cssesc = require('cssesc');
在 Ruby 中使用 页:1 ruby-cssesc 包装宝石数字 :
gem install ruby-cssesc
require 'ruby-cssesc'
CSSEsc.escape('I ♥ Ruby', is_identifier: true)
在 Sass 中使用 sassy-escape数字 :
gem install sassy-escape
body {
content: escape('I ♥ Sass', $is-identifier: true);
}
API 密码
cssesc(value, options)
此函数取出一个值, 并返回一个未打印的 ASCII 符号使用尽可能最短( 但有效) 的字符所隐藏的值版本 用于 CSS 字符串或标识符的逃脱序列。 。 。 .
cssesc('Ich ♥ Bücher');
// → 'Ich \\2665 B\\FC cher'
cssesc('foo 𝌆 bar');
// → 'foo \\1D306 bar'
默认, cssesc 返回可以作为 CSS 字符串一部分的字符串。 如果目标是一个CSS标识符而不是CSS字符串,则使用 isIdentifier: true 设置(见下文).
可选 options 参数接受一个对象,其选项如下:
isIdentifier
默认值 isIdentifier 选项 false。这意味着输入文本将被从 CSS 字符串文字中逃出使用。 如果您想要将结果用作 CSS 标识符( 例如在选择器中), 请设置此选项为 true。 。 。 .
cssesc('123a2b');
// → '123a2b'
cssesc('123a2b', {
'isIdentifier': true
});
// → '\\31 23a2b'
quotes
默认值 quotes 选项 'single'。这意味着: ' 在输入文本中,将按 \',这样输出就可以被用单引号包裹的 CSS 字符串文字所使用.
cssesc('Lorem ipsum "dolor" sit \'amet\' etc.');
// → 'Lorem ipsum "dolor" sit \\\'amet\\\' etc.'
// → "Lorem ipsum \"dolor\" sit \\'amet\\' etc."
cssesc('Lorem ipsum "dolor" sit \'amet\' etc.', {
'quotes': 'single'
});
// → 'Lorem ipsum "dolor" sit \\\'amet\\\' etc.'
// → "Lorem ipsum \"dolor\" sit \\'amet\\' etc."
如果您想要将输出作为 CSS 字符串文字的一部分, 请设置 quotes 选项到 'double'。 。 。 .
cssesc('Lorem ipsum "dolor" sit \'amet\' etc.', {
'quotes': 'double'
});
// → 'Lorem ipsum \\"dolor\\" sit \'amet\' etc.'
// → "Lorem ipsum \\\"dolor\\\" sit 'amet' etc."
wrap
这个 wrap 选项需要布尔值 (true 或者说 false),默认为 false (残疾). 启用时, 输出会是一个有效的 CSS 字符串字符串, 用引号包裹 。 引用类型可以通过 quotes 设置.
cssesc('Lorem ipsum "dolor" sit \'amet\' etc.', {
'quotes': 'single',
'wrap': true
});
// → '\'Lorem ipsum "dolor" sit \\\'amet\\\' etc.\''
// → "\'Lorem ipsum \"dolor\" sit \\\'amet\\\' etc.\'"
cssesc('Lorem ipsum "dolor" sit \'amet\' etc.', {
'quotes': 'double',
'wrap': true
});
// → '"Lorem ipsum \\"dolor\\" sit \'amet\' etc."'
// → "\"Lorem ipsum \\\"dolor\\\" sit \'amet\' etc.\""
escapeEverything
这个 escapeEverything 选项需要布尔值 (true 或者说 false),默认为 false (残疾). 当启用时,输出中的所有符号都会被逃脱,甚至是可打印的ASCII符号.
cssesc('lolwat"foo\'bar', {
'escapeEverything': true
});
// → '\\6C\\6F\\6C\\77\\61\\74\\"\\66\\6F\\6F\\\'\\62\\61\\72'
// → "\\6C\\6F\\6C\\77\\61\\74\\\"\\66\\6F\\6F\\'\\62\\61\\72"
在全球覆盖默认选项
全球默认设置可以通过修改 css.options 对象。 这可以让你避免经过 options 每次呼叫对象 encode 如果您想要使用非默认设置.
// Read the global default setting for `escapeEverything`:
cssesc.options.escapeEverything;
// → `false` by default
// Override the global default setting for `escapeEverything`:
cssesc.options.escapeEverything = true;
// Using the global default setting for `escapeEverything`, which is now `true`:
cssesc('foo © bar ≠ baz 𝌆 qux');
// → '\\66\\6F\\6F\\ \\A9\\ \\62\\61\\72\\ \\2260\\ \\62\\61\\7A\\ \\1D306\\ \\71\\75\\78'
cssesc.version
一个代表语义版本编号的字符串.
使用 cssesc 二进制
用来使用 cssesc 二进制在您的外壳中, 只需使用 npm 在全球安装 cssesc :
npm install -g cssesc
在此之后, 您可以从命令行中逃出文本, 用于 CSS 字符串或标识符 :
$ cssesc 'föo ♥ bår 𝌆 baz'
f\F6o \2665 b\E5r \1D306 baz
如果输出需要作为 CSS 标识符而不是字符串字元的一部分,则使用 -i编号 :--identifier 选项 :
$ cssesc --identifier 'föo ♥ bår 𝌆 baz'
f\F6o\ \2665\ b\E5r\ \1D306\ baz
见 cssesc --help 用于完整选项列表.
支助
此库支持其中提及的Node.js和浏览器版本 .babelrc。对于一个支持更广泛的传统浏览器和环境的版本, 见v.1.0。 。 。 .
作者
| 马蒂亚斯·拜恩斯 |
许可证
该图书馆可在 麻省理工学院 执照.