diff options
| author | Takeshi KOMIYA <i.tkomiya@gmail.com> | 2020-04-30 21:48:53 +0900 |
|---|---|---|
| committer | Takeshi KOMIYA <i.tkomiya@gmail.com> | 2020-05-02 22:48:57 +0900 |
| commit | a148a8e7cb7ff3bd4b350f491b48fda3cb25df56 (patch) | |
| tree | 836064c56e6df8f5378caf9a87d897de8d1dd7bd /tests/test_markup.py | |
| parent | 911a3b9809259aeb1b301bc2e534c57807baece1 (diff) | |
| download | sphinx-git-a148a8e7cb7ff3bd4b350f491b48fda3cb25df56.tar.gz | |
Close #7530: html: Support nested <kbd> elements
Diffstat (limited to 'tests/test_markup.py')
| -rw-r--r-- | tests/test_markup.py | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/tests/test_markup.py b/tests/test_markup.py index b6d99db90..1d5c81bfa 100644 --- a/tests/test_markup.py +++ b/tests/test_markup.py @@ -16,6 +16,7 @@ from docutils.parsers.rst import Parser as RstParser from docutils.transforms.universal import SmartQuotes from sphinx import addnodes +from sphinx.builders.html.transforms import KeyboardTransform from sphinx.builders.latex import LaTeXBuilder from sphinx.roles import XRefRole from sphinx.testing.util import Struct, assert_node @@ -94,6 +95,7 @@ class ForgivingLaTeXTranslator(LaTeXTranslator, ForgivingTranslator): def verify_re_html(app, parse): def verify(rst, html_expected): document = parse(rst) + KeyboardTransform(document).apply() html_translator = ForgivingHTMLTranslator(document, app.builder) document.walkabout(html_translator) html_translated = ''.join(html_translator.fragment).strip() @@ -238,6 +240,32 @@ def get_verifier(verify, verify_re): '\\sphinxkeyboard{\\sphinxupquote{space}}', ), ( + # kbd role + 'verify', + ':kbd:`Control+X`', + ('<p><kbd class="kbd docutils literal notranslate">' + '<kbd class="kbd docutils literal notranslate">Control</kbd>' + '+' + '<kbd class="kbd docutils literal notranslate">X</kbd>' + '</kbd></p>'), + '\\sphinxkeyboard{\\sphinxupquote{Control+X}}', + ), + ( + # kbd role + 'verify', + ':kbd:`M-x M-s`', + ('<p><kbd class="kbd docutils literal notranslate">' + '<kbd class="kbd docutils literal notranslate">M</kbd>' + '-' + '<kbd class="kbd docutils literal notranslate">x</kbd>' + ' ' + '<kbd class="kbd docutils literal notranslate">M</kbd>' + '-' + '<kbd class="kbd docutils literal notranslate">s</kbd>' + '</kbd></p>'), + '\\sphinxkeyboard{\\sphinxupquote{M\\sphinxhyphen{}x M\\sphinxhyphen{}s}}', + ), + ( # non-interpolation of dashes in option role 'verify_re', ':option:`--with-option`', |
