Reintroduce copybutton to all code examples #26
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Many code examples on the official Python documentation do not have a
>>>
copy button. For example, the code snippets in the current collections module. Those examples were excluded since Sphinx assigns a different highlight language to those code-blocks.In the past, Sphinx used
python3
to highlight all the doctest and malformed code blocks (started with:
instead of::
). Those blockes had thehighlight-python3
CSS class in the generated HTML. For example, see the collections module in Python 3.3.However, with the recent change in Sphinx (sphinx-doc/sphinx#4137), the doctest blocks are highlighted by
pycon
, and malformed blocks becomedefault
for unknown reason. Therefore, those blocks are not captured bycopybutton.js
due to a different CSS class name. There are in total 185 doctests and 382 malformed(?) code blocks highlighted bypycon
anddefault
language in the latest Python official documentation. Note that thedefault
language has a similar behavior topython3
.This pull request lets code blocks of two additional languages (
pycon
anddefault
) to add the copybutton.All occurrences of hightlight-pycon in current Python master:
All occurrences of hightlight-default in current Python master: