Merge pull request #78348 from timokau/pygments-lexer-fix
python2.pkgs.ipython, python2.pkgs.sphinx: use proper python2 lexer
This commit is contained in:
commit
7db53cc312
@ -2,6 +2,7 @@
|
|||||||
, stdenv
|
, stdenv
|
||||||
, buildPythonPackage
|
, buildPythonPackage
|
||||||
, fetchPypi
|
, fetchPypi
|
||||||
|
, fetchpatch
|
||||||
# Build dependencies
|
# Build dependencies
|
||||||
, glibcLocales
|
, glibcLocales
|
||||||
# Test dependencies
|
# Test dependencies
|
||||||
@ -36,6 +37,15 @@ buildPythonPackage rec {
|
|||||||
substituteInPlace setup.py --replace "'gnureadline'" " "
|
substituteInPlace setup.py --replace "'gnureadline'" " "
|
||||||
'';
|
'';
|
||||||
|
|
||||||
|
patches = [
|
||||||
|
# Use the proper pygments lexer for python2 (https://github.com/ipython/ipython/pull/12095)
|
||||||
|
(fetchpatch {
|
||||||
|
name = "python2-lexer.patch";
|
||||||
|
url = "https://github.com/ipython/ipython/pull/12095/commits/8805293b5e4bce9150cc2ad9c5d6d984849ae447.patch";
|
||||||
|
sha256 = "16p4gl7a49v76w33j39ih7yspy6x2d14p9bh4wdpg9cafhw9nbc0";
|
||||||
|
})
|
||||||
|
];
|
||||||
|
|
||||||
buildInputs = [ glibcLocales ];
|
buildInputs = [ glibcLocales ];
|
||||||
|
|
||||||
checkInputs = [ nose pygments testpath ] ++ lib.optional isPy27 mock;
|
checkInputs = [ nose pygments testpath ] ++ lib.optional isPy27 mock;
|
||||||
|
@ -60,6 +60,13 @@ buildPythonPackage rec {
|
|||||||
# Lots of tests. Needs network as well at some point.
|
# Lots of tests. Needs network as well at some point.
|
||||||
doCheck = false;
|
doCheck = false;
|
||||||
|
|
||||||
|
patches = [
|
||||||
|
# Since pygments 2.5, PythonLexer refers to python3. If we want to use
|
||||||
|
# python2, we need to explicitly specify Python2Lexer.
|
||||||
|
# Not upstreamed since there doesn't seem to be any upstream maintenance
|
||||||
|
# branch for 1.8 (and this patch doesn't make any sense for 2.x).
|
||||||
|
./python2-lexer.patch
|
||||||
|
];
|
||||||
# https://github.com/NixOS/nixpkgs/issues/22501
|
# https://github.com/NixOS/nixpkgs/issues/22501
|
||||||
# Do not run `python sphinx-build arguments` but `sphinx-build arguments`.
|
# Do not run `python sphinx-build arguments` but `sphinx-build arguments`.
|
||||||
postPatch = ''
|
postPatch = ''
|
||||||
|
22
pkgs/development/python-modules/sphinx/python2-lexer.patch
Normal file
22
pkgs/development/python-modules/sphinx/python2-lexer.patch
Normal file
@ -0,0 +1,22 @@
|
|||||||
|
diff --git a/sphinx/highlighting.py b/sphinx/highlighting.py
|
||||||
|
index ac2bd1b06..63ca52de2 100644
|
||||||
|
--- a/sphinx/highlighting.py
|
||||||
|
+++ b/sphinx/highlighting.py
|
||||||
|
@@ -16,7 +16,7 @@ from pygments.filters import ErrorToken
|
||||||
|
from pygments.formatters import HtmlFormatter, LatexFormatter
|
||||||
|
from pygments.lexer import Lexer # NOQA
|
||||||
|
from pygments.lexers import get_lexer_by_name, guess_lexer
|
||||||
|
-from pygments.lexers import PythonLexer, Python3Lexer, PythonConsoleLexer, \
|
||||||
|
+from pygments.lexers import Python2Lexer, Python3Lexer, PythonConsoleLexer, \
|
||||||
|
CLexer, TextLexer, RstLexer
|
||||||
|
from pygments.styles import get_style_by_name
|
||||||
|
from pygments.util import ClassNotFound
|
||||||
|
@@ -40,7 +40,7 @@ logger = logging.getLogger(__name__)
|
||||||
|
|
||||||
|
lexers = dict(
|
||||||
|
none = TextLexer(stripnl=False),
|
||||||
|
- python = PythonLexer(stripnl=False),
|
||||||
|
+ python = Python2Lexer(stripnl=False),
|
||||||
|
python3 = Python3Lexer(stripnl=False),
|
||||||
|
pycon = PythonConsoleLexer(stripnl=False),
|
||||||
|
pycon3 = PythonConsoleLexer(python3=True, stripnl=False),
|
Loading…
Reference in New Issue
Block a user