Skip to content

Commit

Permalink
Docs: Custom Pygments style for dark theme. (#2290)
Browse files Browse the repository at this point in the history
  • Loading branch information
Jasper authored Sep 12, 2022
1 parent 8e31fb2 commit 33a63c1
Show file tree
Hide file tree
Showing 4 changed files with 57 additions and 0 deletions.
6 changes: 6 additions & 0 deletions docs/_static/style.css
Original file line number Diff line number Diff line change
@@ -1,3 +1,9 @@
.sidebar-brand-text, .hide-on-website {
display: none;
}

@media (prefers-color-scheme: dark) {
body:not([data-theme="light"]) .highlight {
border-left: 2px solid #94b594;
}
}
1 change: 1 addition & 0 deletions docs/conf.py
Original file line number Diff line number Diff line change
Expand Up @@ -57,6 +57,7 @@

# The name of the Pygments (syntax highlighting) style to use.
pygments_style = "default"
pygments_dark_style = "gluonts-dark"

# -- Options for HTML output -------------------------------------------------

Expand Down
5 changes: 5 additions & 0 deletions setup.py
Original file line number Diff line number Diff line change
Expand Up @@ -254,6 +254,11 @@ def run(self):
"style_check": StyleCheckCommand,
**version_cmdclass,
},
entry_points={
"pygments.styles": [
"gluonts-dark=gluonts.meta.style:Dark",
]
},
)

if HAS_SPHINX:
Expand Down
45 changes: 45 additions & 0 deletions src/gluonts/meta/style.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
# Copyright 2018 Amazon.com, Inc. or its affiliates. All Rights Reserved.
#
# Licensed under the Apache License, Version 2.0 (the "License").
# You may not use this file except in compliance with the License.
# A copy of the License is located at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# or in the "license" file accompanying this file. This file is distributed
# on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
# express or implied. See the License for the specific language governing
# permissions and limitations under the License.

from pygments.style import Style
from pygments.token import Comment, Keyword, Name, String, Number, Operator

from . import colors


class Dark(Style):
# transparent
background_color = "rgba(0, 0, 0, 0.0)"

styles = {
Comment: "italic #888",
Comment.Preproc: "noitalic #888",
Keyword: f"bold {colors.SALMON}",
Keyword.Pseudo: "nobold",
Keyword.Type: f"nobold {colors.SALMON}",
Operator: f"bold {colors.SALMON}",
Operator.Word: f"bold {colors.SALMON}",
Name.Builtin: colors.YELLOW,
Name.Function: f"{colors.GREEN}",
Name.Class: f"bold {colors.GREEN}",
Name.Namespace: f"bold {colors.GREEN}",
Name.Variable: colors.YELLOW,
Name.Constant: colors.RED,
Name.Label: colors.YELLOW,
Name.Attribute: colors.YELLOW,
Name.Tag: f"bold {colors.SALMON}",
Name.Decorator: colors.SALMON,
String: colors.SALMON,
String.Doc: "italic",
Number: colors.GREEN,
}

0 comments on commit 33a63c1

Please sign in to comment.