]> git.puffer.fish Git - matthieu/frr.git/commitdiff
doc: load lexer differently
authorQuentin Young <qlyoung@cumulusnetworks.com>
Tue, 10 Apr 2018 17:37:47 +0000 (13:37 -0400)
committerQuentin Young <qlyoung@cumulusnetworks.com>
Tue, 10 Apr 2018 17:51:50 +0000 (13:51 -0400)
Pygments 2.2+ has `load_lexer_from_file`, but it looks like some of our
build platforms are on an older version.

Also gotta include the new file in dist tarball.

Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
doc/Makefile.am
doc/developer/conf.py
doc/user/conf.py

index 6228683f94f47e1116f6dec5dca41122d53b780d..9f58c18cb1fa053c9a3eb9db98e15144ca470651 100644 (file)
@@ -258,4 +258,5 @@ EXTRA_DIST = frr-sphinx.mk \
        figures/ospf_api_architecture.png \
        figures/ospf_api_msghdr.png \
        figures/ospf_api_msgs1.png \
-       figures/ospf_api_msgs2.png
+       figures/ospf_api_msgs2.png \
+       extra/frrlexer.py
index eecce4e908862a0b6277e4050e87d8b2b3f8e32d..11ec05e0c26af737f688cf6453ceaae9fd72b7ee 100644 (file)
@@ -343,6 +343,13 @@ def setup(app):
     app.add_object_type('clicmd', 'clicmd')
     # css overrides for HTML theme
     app.add_stylesheet('overrides.css')
-    # load FRR config lexer
-    frrlexer = pygments.lexers.load_lexer_from_file('../extra/frrlexer.py', lexername="FRRLexer")
-    lexers['frr'] = frrlexer
+    # load Pygments lexer for FRR config syntax
+    #
+    # NB: in Pygments 2.2+ this can be done with `load_lexer_from_file`, but we
+    # do it manually since not all of our supported build platforms have 2.2
+    # yet.
+    #
+    # frrlexer = pygments.lexers.load_lexer_from_file('../extra/frrlexer.py', lexername="FRRLexer")
+    custom_namespace = {}
+    exec(open('../extra/frrlexer.py', 'rb').read(), custom_namespace)
+    lexers['frr'] = custom_namespace['FRRLexer']()
index 389af4c82f5e7baf671d2eea4acb5bed43d49234..24e27bb5ef70be63b3adb0cc6e4c43cded19e2cb 100644 (file)
@@ -343,6 +343,13 @@ def setup(app):
     app.add_object_type('clicmd', 'clicmd')
     # css overrides for HTML theme
     app.add_stylesheet('overrides.css')
-    # load FRR config lexer
-    frrlexer = pygments.lexers.load_lexer_from_file('../extra/frrlexer.py', lexername="FRRLexer")
-    lexers['frr'] = frrlexer
+    # load Pygments lexer for FRR config syntax
+    #
+    # NB: in Pygments 2.2+ this can be done with `load_lexer_from_file`, but we
+    # do it manually since not all of our supported build platforms have 2.2
+    # yet.
+    #
+    # frrlexer = pygments.lexers.load_lexer_from_file('../extra/frrlexer.py', lexername="FRRLexer")
+    custom_namespace = {}
+    exec(open('../extra/frrlexer.py', 'rb').read(), custom_namespace)
+    lexers['frr'] = custom_namespace['FRRLexer']()