node/tools/eslint/node_modules/parse-entities
Vse Mozhet Byt b4fea2a3d6 doc: add eslint-plugin-markdown
* install eslint-plugin-markdown
* add doc/.eslintrc.yaml
* add `<!-- eslint-disable rule -->` or `<!-- eslint-disable -->`
  for the rest of problematic code
* .js files in doc folder added to .eslintignore
* update Makefile and vcbuild.bat

PR-URL: https://github.com/nodejs/node/pull/12563
Refs: https://github.com/nodejs/node/pull/12557#issuecomment-296015032
Reviewed-By: Teddy Katz <teddy.katz@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Timothy Gu <timothygu99@gmail.com>
Reviewed-By: Gibson Fahnestock <gibfahn@gmail.com>
Reviewed-By: Yuta Hiroto <hello@about-hiroppy.com>
2017-04-25 00:06:17 +03:00
..
history.md doc: add eslint-plugin-markdown 2017-04-25 00:06:17 +03:00
index.js doc: add eslint-plugin-markdown 2017-04-25 00:06:17 +03:00
LICENSE doc: add eslint-plugin-markdown 2017-04-25 00:06:17 +03:00
package.json doc: add eslint-plugin-markdown 2017-04-25 00:06:17 +03:00
readme.md doc: add eslint-plugin-markdown 2017-04-25 00:06:17 +03:00

parse-entities Build Status Coverage Status

Parse HTML character references: fast, spec-compliant, positional information.

Installation

npm:

npm install parse-entities

Usage

var decode = require('parse-entities');

decode('alpha &amp bravo');
// alpha & bravo

decode('charlie &copycat; delta');
// charlie ©cat; delta

decode('echo &copy; foxtrot &#8800; golf &#x1D306; 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 parse value as an attribute value;

  • nonTerminated (boolean, default: true) — Whether to allow non-terminated entities, such as &copycat 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 invoking warning;

  • textContext ('*', optional) — Context used when invoking text;

  • referenceContext ('*', optional) — Context used when invoking reference;

  • position (Location or Position, optional) — Starting position of value, 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 &amp bar Missing semicolon (named)
2 foo &#123 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 &#128; baz Disallowed reference
7 Foo &#xD800; 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 which value 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 which value starts and ends;
  • source (Location) — Source of character reference.

License

MIT © Titus Wormer