comparison pygments_lexer_pseudocode2/bases.py @ 33:db1bc740a201

FIX: ADD: Forgotten bases.py. When renaming PseudocodeLexer2 there accidentally "LexBase" was introduced also. This was too early.
author Franz Glasner <fzglas.hg@dom66.de>
date Tue, 21 Apr 2026 12:33:17 +0200
parents
children 1f741934205e
comparison
equal deleted inserted replaced
32:eaa99d5c719a 33:db1bc740a201
1 # -*- coding: utf-8 -*-
2 # :-
3 # SPDX-FileCopyrightText: © 2026 Franz Glasner
4 # SPDX-License-Identifier: MIT
5 # :-
6 r"""Some common bases for the lexers."""
7
8
9 __all__ = []
10
11
12 from pygments.lexer import RegexLexer
13 from pygments.token import Number
14
15
16 class LexBase(RegexLexer):
17
18 """A base that defines some common lexer states.
19
20 Default flags are not important.
21
22 """
23
24 tokens = {
25 #
26 # This state is borrowed from Pygment's Python lexer.
27 #
28 # SPDX-SnippetBegin
29 # SPDX-License-Identifier: BSD-2-Clause
30 # SPDX-SnippetCopyrightText: Copyright 2006-2023 by the Pygments team
31 'py-numbers': [
32 (r'(\d(?:_?\d)*\.(?:\d(?:_?\d)*)?|(?:\d(?:_?\d)*)?\.\d(?:_?\d)*)'
33 r'([eE][+-]?\d(?:_?\d)*)?', Number.Float),
34 (r'\d(?:_?\d)*[eE][+-]?\d(?:_?\d)*j?', Number.Float),
35 (r'0[oO](?:_?[0-7])+', Number.Oct),
36 (r'0[bB](?:_?[01])+', Number.Bin),
37 (r'0[xX](?:_?[a-fA-F0-9])+', Number.Hex),
38 (r'\d(?:_?\d)*', Number.Integer),
39 ],
40 # SPDX-SnippetEnd
41 }