Vse Mozhet Byt
b4fea2a3d6
|
8 years ago | |
---|---|---|
.. | ||
LICENSE | 8 years ago | |
history.md | 8 years ago | |
index.js | 8 years ago | |
package.json | 8 years ago | |
readme.md | 8 years ago |
readme.md
parse-entities
Parse HTML character references: fast, spec-compliant, positional information.
Installation
npm:
npm install parse-entities
Usage
var decode = require('parse-entities');
decode('alpha & bravo');
// alpha & bravo
decode('charlie ©cat; delta');
// charlie ©cat; delta
decode('echo © foxtrot ≠ golf 𝌆 hotel');
// echo © foxtrot ≠ golf 𝌆 hotel
API
parseEntities(value[, options])
options
-
additional
(string
, optional, default:''
) — Additional character to accept when following an ampersand (without error); -
attribute
(boolean
, optional, default:false
) — Whether to parsevalue
as an attribute value; -
nonTerminated
(boolean
, default:true
) — Whether to allow non-terminated entities, such as©cat
to©cat
. This behaviour is spec-compliant but can lead to unexpected results; -
warning
(Function
, optional) — Error handler; -
text
(Function
, optional) — Text handler; -
reference
(Function
, optional) — Reference handler; -
warningContext
('*'
, optional) — Context used when invokingwarning
; -
textContext
('*'
, optional) — Context used when invokingtext
; -
referenceContext
('*'
, optional) — Context used when invokingreference
; -
position
(Location
orPosition
, optional) — Startingposition
ofvalue
, useful when dealing with values nested in some sort of syntax tree. The default is:{ "start": { "line": 1, "column": 1, "offset": 0 }, "indent": [] }
Returns
string
— Decoded value
.
function warning(reason, position, code)
Error handler.
Context
this
refers to warningContext
when given to parseEntities
.
Parameters
reason
(string
) — Reason (human-readable) for triggering a parse error;position
(Position
) — Place at which the parse error occurred;code
(number
) — Identifier of reason for triggering a parse error.
The following codes are used:
Code | Example | Note |
---|---|---|
1 |
foo & bar |
Missing semicolon (named) |
2 |
foo { bar |
Missing semicolon (numeric) |
3 |
Foo &bar baz |
Ampersand did not start a reference |
4 |
Foo &# |
Empty reference |
5 |
Foo &bar; baz |
Unknown entity |
6 |
Foo € baz |
Disallowed reference |
7 |
Foo � baz |
Prohibited: outside permissible unicode range |
function text(value, location)
Text handler.
Context
this
refers to textContext
when given to parseEntities
.
Parameters
value
(string
) — String of content;location
(Location
) — Location at whichvalue
starts and ends.
function reference(value, location, source)
Character reference handler.
Context
this
refers to referenceContext
when given to parseEntities
.
Parameters
value
(string
) — Encoded character reference;location
(Location
) — Location at whichvalue
starts and ends;source
(Location
) — Source of character reference.