unified

Project: micromark/micromark

Package: micromark-util-classify-character@1.0.0

  1. Dependents: 0
  2. micromark utility to classify whether a character is whitespace or punctuation
  1. util 144
  2. utility 140
  3. micromark 34
  4. character 4

micromark-util-classify-character

Build Coverage Downloads Size Sponsors Backers Chat

micromark utility to classify whether a character is whitespace or punctuation.

Contents

Install

npm:

npm install micromark-util-classify-character

Use

/** @type {Tokenizer} */
function tokenizeAttention(effects, ok) {
  return start

  // …

  /** @type {State} */
  function sequence(code) {
    if (code === marker) {
      // …
    }

    const token = effects.exit('attentionSequence')
    const after = classifyCharacter(code)
    const open =
      !after || (after === constants.characterGroupPunctuation && before)
    const close =
      !before || (before === constants.characterGroupPunctuation && after)
    // …
  }

  // …
}

API

This module exports the following identifiers: classifyCharacter. There is no default export.

classifyCharacter(code)

Classify whether a character code represents whitespace, punctuation, or something else. Used for attention (emphasis, strong), whose sequences can open or close based on the class of surrounding characters.

Note that eof (null) is seen as whitespace.

Returns

constants.characterGroupWhitespace, constants.characterGroupPunctuation, or undefined.

Security

See security.md in micromark/.github for how to submit a security report.

Contribute

See contributing.md in micromark/.github for ways to get started. See support.md for ways to get help.

This project has a code of conduct. By interacting with this repository, organisation, or community you agree to abide by its terms.

License

MIT © Titus Wormer