class documentation

class ErbLexer(Lexer): (source)

View In Hierarchy

Generic ERB (Ruby Templating) lexer. Just highlights ruby code between the preprocessor directives, other data is left untouched by the lexer. All options are also forwarded to the `RubyLexer`.

Method __init__ Undocumented
Method analyse_text Has to return a float between ``0`` and ``1`` that indicates if a lexer wants to highlight this text. Used by ``guess_lexer``. If this method returns ``0`` it won't highlight it in any case, if it returns ``1`` highlighting with this lexer is guaranteed.
Method get_tokens_unprocessed Since ERB doesn't allow "<%" and other tags inside of ruby blocks we have to use a split approach here that fails for that too.
Class Variable aliases Undocumented
Class Variable mimetypes Undocumented
Class Variable name Undocumented
Class Variable url Undocumented
Instance Variable ruby_lexer Undocumented
Class Variable _block_re Undocumented

Inherited from Lexer:

Method __repr__ Undocumented
Method add_filter Add a new stream filter to this lexer.
Method get_tokens Return an iterable of (tokentype, value) pairs generated from `text`. If `unfiltered` is set to `True`, the filtering mechanism is bypassed even if filters are defined.
Class Variable alias_filenames Undocumented
Class Variable filenames Undocumented
Class Variable priority Undocumented
Instance Variable encoding Undocumented
Instance Variable ensurenl Undocumented
Instance Variable filters Undocumented
Instance Variable options Undocumented
Instance Variable stripall Undocumented
Instance Variable stripnl Undocumented
Instance Variable tabsize Undocumented
def __init__(self, **options): (source)

Undocumented

def analyse_text(text): (source)

Has to return a float between ``0`` and ``1`` that indicates if a lexer wants to highlight this text. Used by ``guess_lexer``. If this method returns ``0`` it won't highlight it in any case, if it returns ``1`` highlighting with this lexer is guaranteed. The `LexerMeta` metaclass automatically wraps this function so that it works like a static method (no ``self`` or ``cls`` parameter) and the return value is automatically converted to `float`. If the return value is an object that is boolean `False` it's the same as if the return values was ``0.0``.

def get_tokens_unprocessed(self, text): (source)

Since ERB doesn't allow "<%" and other tags inside of ruby blocks we have to use a split approach here that fails for that too.

Undocumented

mimetypes: list[str] = (source)

Undocumented

Undocumented

Undocumented

ruby_lexer = (source)

Undocumented

_block_re = (source)

Undocumented