diff options
Diffstat (limited to 'sphinx/writers/html5.py')
-rw-r--r-- | sphinx/writers/html5.py | 17 |
1 files changed, 12 insertions, 5 deletions
diff --git a/sphinx/writers/html5.py b/sphinx/writers/html5.py index 51c4e8ecb..1efd060f2 100644 --- a/sphinx/writers/html5.py +++ b/sphinx/writers/html5.py @@ -437,14 +437,21 @@ class HTML5Translator(BaseTranslator): # overwritten def visit_literal(self, node): # type: (nodes.Node) -> None - self.body.append(self.starttag(node, 'code', '', - CLASS='docutils literal')) - self.protect_literal_text += 1 + if 'kbd' in node['classes']: + self.body.append(self.starttag(node, 'kbd', '', + CLASS='docutils literal')) + else: + self.body.append(self.starttag(node, 'code', '', + CLASS='docutils literal')) + self.protect_literal_text += 1 def depart_literal(self, node): # type: (nodes.Node) -> None - self.protect_literal_text -= 1 - self.body.append('</code>') + if 'kbd' in node['classes']: + self.body.append('</kbd>') + else: + self.protect_literal_text -= 1 + self.body.append('</code>') def visit_productionlist(self, node): # type: (nodes.Node) -> None |