micromark-factory-space
    TypeScript icon, indicating that this package has built-in type declarations

    1.0.0 • Public • Published

    micromark-factory-space

    Build Coverage Downloads Size Sponsors Backers Chat

    micromark factory to parse markdown space (found in lots of places).

    Contents

    Install

    npm:

    npm install micromark-factory-space

    Use

    import {factorySpace} from 'micromark-factory-space'
    import {codes} from 'micromark-util-symbol/codes'
    import {types} from 'micromark-util-symbol/types'
    
    // A micromark tokenizer that uses the factory:
    /** @type {Tokenizer} */
    function tokenizeCodeFenced(effects, ok, nok) {
      return start
    
      // …
    
      /** @type {State} */
      function info(code) {
        if (code === codes.eof || markdownLineEndingOrSpace(code)) {
          effects.exit(types.chunkString)
          effects.exit(types.codeFencedFenceInfo)
          return factorySpace(effects, infoAfter, types.whitespace)(code)
        }
    
        if (code === codes.graveAccent && code === marker) return nok(code)
        effects.consume(code)
        return info
      }
    
      // …
    }

    API

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

    factorySpace(…)

    Note that there is no nok parameter:

    • spaces in markdown are often optional, in which case this factory can be used and ok will be switched to whether spaces were found or not,
    • One space character can be detected with markdownSpace(code) right before using factorySpace
    Parameters
    • effects (Effects) — Context
    • ok (State) — State switched to when successful
    • type (string) — Token type for whole (' \t')
    • max (number, default: Infinity) — Max size of whitespace
    Returns

    State.

    Examples

    Where represents a tab (plus how much it expands) and represents a single space.

    ␉
    ␠␠␠␠
    ␉␠

    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

    Install

    npm i micromark-factory-space

    DownloadsWeekly Downloads

    5,135

    Version

    1.0.0

    License

    MIT

    Unpacked Size

    8.01 kB

    Total Files

    6

    Last publish

    Collaborators

    • avatar