diff --git a/Doc/conf.py b/Doc/conf.py
index 12d74ea..32db343 100644
--- a/Doc/conf.py
+++ b/Doc/conf.py
@@ -14,8 +14,7 @@
 # ---------------------
 
 extensions = ['sphinx.ext.coverage', 'sphinx.ext.doctest',
-              'pyspecific', 'c_annotations', 'escape4chm',
-              'asdl_highlight']
+              'pyspecific', 'c_annotations', 'escape4chm']
 
 
 doctest_global_setup = '''
diff --git a/Doc/library/ast.rst b/Doc/library/ast.rst
index 6c6ad01..fc04114 100644
--- a/Doc/library/ast.rst
+++ b/Doc/library/ast.rst
@@ -35,7 +35,7 @@
 The abstract grammar is currently defined as follows:
 
 .. literalinclude:: ../../Parser/Python.asdl
-   :language: asdl
+   :language: none
 
 
 Node classes
diff --git a/Doc/tools/extensions/asdl_highlight.py b/Doc/tools/extensions/asdl_highlight.py
deleted file mode 100644
index 9b003e9..0000000
--- a/Doc/tools/extensions/asdl_highlight.py
+++ /dev/null
@@ -1,51 +0,0 @@
-import os
-import sys
-sys.path.append(os.path.abspath("../Parser/"))
-
-from pygments.lexer import RegexLexer, bygroups, include, words
-from pygments.token import (Comment, Generic, Keyword, Name, Operator,
-                            Punctuation, Text)
-
-from asdl import builtin_types
-from sphinx.highlighting import lexers
-
-class ASDLLexer(RegexLexer):
-    name = "ASDL"
-    aliases = ["asdl"]
-    filenames = ["*.asdl"]
-    _name = r"([^\W\d]\w*)"
-    _text_ws = r"(\s*)"
-
-    tokens = {
-        "ws": [
-            (r"\n", Text),
-            (r"\s+", Text),
-            (r"--.*?$", Comment.Singleline),
-        ],
-        "root": [
-            include("ws"),
-            (
-                r"(module)" + _text_ws + _name,
-                bygroups(Keyword, Text, Name.Class),
-            ),
-            (
-                r"(\w+)(\*\s|\?\s|\s)(\w+)",
-                bygroups(Name.Variable, Generic.Strong, Name.Tag),
-            ),
-            (words(builtin_types), Keyword.Type),
-            (r"attributes", Name.Builtin),
-            (
-                _name + _text_ws + "(=)",
-                bygroups(Name.Variable, Text, Operator),
-            ),
-            (_name, Name.Function),
-            (r"\|", Operator),
-            (r"{|}|\(|\)", Punctuation),
-            (r".", Text),
-        ],
-    }
-
-
-def setup(app):
-    lexers["asdl"] = ASDLLexer()
-    return {'version': '1.0', 'parallel_read_safe': True}
