]> git.proxmox.com Git - mirror_frr.git/blob - doc/extra/frrlexer.py
Merge pull request #12798 from donaldsharp/rib_match_multicast
[mirror_frr.git] / doc / extra / frrlexer.py
1 # -*- coding: utf-8 -*-
2 # SPDX-License-Identifier: ISC
3 # Copyright (c) 2017 Vincent Bernat <bernat@luffy.cx>
4
5 from pygments.lexer import RegexLexer, bygroups
6 from pygments.token import Text, Comment, Keyword
7 from pygments.token import String, Number, Name
8
9
10 class FRRLexer(RegexLexer):
11 name = "frr"
12 aliases = ["frr"]
13 tokens = {
14 "root": [
15 (r"^[ \t]*!.*?\n", Comment.Singleline),
16 (r'"(\\\\|\\"|[^"])*"', String.Double),
17 (
18 r"[a-f0-9]*:[a-f0-9]*:[a-f0-9:]*(:\d+\.\d+\.\d+\.\d+)?(/\d+)?",
19 Number,
20 ), # IPv6
21 (r"\d+\.\d+\.\d+\.\d+(/\d+)?", Number), # IPv4
22 (r"^([ \t]*)(no[ \t]+)?([-\w]+)", bygroups(Text, Keyword, Name.Function)),
23 (r"[ \t]+", Text),
24 (r"\n", Text),
25 (r"\d+", Number),
26 (r"\S+", Text),
27 ],
28 }