twig-lexer
TypeScript icon, indicating that this package has built-in type declarations

1.0.0 • Public • Published

twig-lexer NPM version Build Status Coverage percentage

A lossless Twig lexer

Installation

npm install twig-lexer --save-dev

Usage

import {TwigLexer} from 'twig-lexer';

let lexer = new TwigLexer();

let tokens = lexer.tokenize('Hello {{world}}!');

API

Read the documentation for more information.

About Twig specifications - or lack thereof

As incredible as it sounds, Twig is a language with no official specifications - even internally at SensioLabs, it seems. As such, it is subject to interpretations and twig-lexer is one of them. It's very close to TwigPHP lexer (and as such implements things like the operator confusion) but also outputs some token types that are not output by TwigPHP lexer - like OPENING_QUOTE or WHITESPACE - or with different names - like TAG_START instead of BLOCK_START.

When (if) official specifications are available, twig-lexer will be updated to match them.

License

Apache-2.0 © Eric MORAND

/twig-lexer/

    Package Sidebar

    Install

    npm i twig-lexer

    Weekly Downloads

    5,123

    Version

    1.0.0

    License

    Apache-2.0

    Unpacked Size

    83.1 kB

    Total Files

    21

    Last publish

    Collaborators

    • ericmorand