1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
|
__all__ = ['LnavCommandLexer']
import re
from pygments.token import Whitespace, Text, Keyword, Literal
from pygments.lexers._mapping import LEXERS
from pygments.lexers.python import RegexLexer
class LnavCommandLexer(RegexLexer):
name = 'lnav'
flags = re.IGNORECASE
tokens = {
'root': [
(r'\s+', Whitespace),
(r':[\w\-]+', Keyword),
(r'\<[\w\-]+\>', Literal.String.Doc),
(r'.', Text),
]
}
def setup(app):
LEXERS['LnavCommandLexer'] = (
'_ext.lnavlexer', 'lnav', ('lnav',), ('*.lnav',), ('text/lnav',))
app.add_lexer('lnav', LnavCommandLexer)
|