Anonymous avatar Anonymous committed 49281aa

* Support \classdescni.
* Generate valid highlighting code even if code doesn't end in \n.

Comments (0)

Files changed (2)

sphinx/latexwriter.py

         hlcode = self.highlighter.highlight_block(code, lang, linenos)
         # workaround for Unicode issue
         hlcode = hlcode.replace(u'€', u'@texteuro[]')
-        # workaround for Pygments bug
-        hlcode = hlcode.replace('\n\\end{Verbatim}', '\\end{Verbatim}')
-        self.body.append('\n' + hlcode)
+        # get consistent trailer
+        hlcode = hlcode.rstrip()[:-14] # strip \end{Verbatim}
+        hlcode = hlcode.rstrip() + '\n'
+        self.body.append('\n' + hlcode + '\\end{Verbatim}\n')
         self.verbatim = None
     visit_doctest_block = visit_literal_block
     depart_doctest_block = depart_literal_block

sphinx/texinputs/sphinx.sty

     \classline{#1}{#2}
 }{\end{fulllineitems}}
 
+\newcommand{\classlineni}[2]{
+  \py@sigline{\strong{class }\bfcode{#1}}{#2}}
+\newenvironment{classdescni}[2]{
+  % Using \renewcommand doesn't work for this, for unknown reasons:
+  \global\def\py@thisclass{#1}
+  \begin{fulllineitems}
+    \classlineni{#1}{#2}
+}{\end{fulllineitems}}
+
 % \begin{classdesc*}{name}
 \newenvironment{classdesc*}[1]{
   % Using \renewcommand doesn't work for this, for unknown reasons:
Tip: Filter by directory path e.g. /media app.js to search for public/media/app.js.
Tip: Use camelCasing e.g. ProjME to search for ProjectModifiedEvent.java.
Tip: Filter by extension type e.g. /repo .js to search for all .js files in the /repo directory.
Tip: Separate your search with spaces e.g. /ssh pom.xml to search for src/ssh/pom.xml.
Tip: Use ↑ and ↓ arrow keys to navigate and return to view the file.
Tip: You can also navigate files with Ctrl+j (next) and Ctrl+k (previous) and view the file with Ctrl+o.
Tip: You can also navigate files with Alt+j (next) and Alt+k (previous) and view the file with Alt+o.