diff options
author | Joachim Wuttke (o) <j.wuttke@fz-juelich.de> | 2018-10-10 09:39:17 +0200 |
---|---|---|
committer | Craig Scott <craig.scott@crascit.com> | 2018-10-19 07:25:34 +1100 |
commit | fc7ee1ca459c3b231aa1fb64aeeaee590c019513 (patch) | |
tree | 77525a7817e1d2be7cb55c91ff0357bc9e284fc4 /Utilities/Sphinx/colors.py | |
parent | 74b3eacdc755bc056aac65bf5c0b45aa02d097d4 (diff) | |
download | cmake-fc7ee1ca459c3b231aa1fb64aeeaee590c019513.tar.gz |
Help: Override pygments CMakeLexer to support <..> and [..]
* The code snippets in the docs consist of CMake code mixed
with syntax definition punctuation like < > [ ] ... Therefore
a pure CMake lexer is inadequate. Here it is replaced by a
CMake syntax definition parser.
* Fixed syntax definition snippets in FindPkgConfig.cmake to
make best use of syntax highlighting. This source file is the
hardest to support because it contains comparison operators
<= = >=, which need special attention to avoid confusion
with the placeholder indicators <...>.
* Fixed syntax in execute_process.rst (there were unbalanced
brackets).
* Disabled syntax highlighting for long string examples in
cmake-language.7.rst.
* No highlighting of removed syntax in CMP0049
* To inspect the outcome of this patch, see e.g. the pages
* manual/cmake-buildsystem.7.html
* module/ExternalProject.html
* module/FindPkgConfig.html
which are particularly rich in complex code snippets.
Diffstat (limited to 'Utilities/Sphinx/colors.py')
-rw-r--r-- | Utilities/Sphinx/colors.py | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/Utilities/Sphinx/colors.py b/Utilities/Sphinx/colors.py new file mode 100644 index 0000000000..f98a4831fd --- /dev/null +++ b/Utilities/Sphinx/colors.py @@ -0,0 +1,29 @@ +# -*- coding: utf-8 -*- + +from pygments.style import Style +from pygments.token import Name, Comment, String, Number, Operator, Whitespace + +class CMakeTemplateStyle(Style): + """ + for more token names, see pygments/styles.default + """ + + background_color = "#f8f8f8" + default_style = "" + + styles = { + Whitespace: "#bbbbbb", + Comment: "italic #408080", + Operator: "bold #000000", + String: "#217A21", + Number: "#105030", + Name.Builtin: "#400080", # anything lowercase + Name.Function: "bold #1010A0", # function + Name.Variable: "#1080B0", # <..> + Name.Tag: "#19177C", # ${..} + Name.Constant: "#6020E0", # uppercase only + Name.Entity: "italic #70A020", # @..@ + Name.Attribute: "#906060", # paths, URLs + Name.Label: "#A0A000", # anything left over + Name.Exception: "bold #FF0000", # for debugging only + } |