Historique des modifications [retour]
cliquez ici pour masquer/afficher la révision 7
entite caractère (encore)

17 Nov '23, 17:03

BrB's gravatar image

BrB
213

Bug listings package (conflit linerange et comments)

Il semble y avoir un bug dans le package listings en cas d'utilisation de linerange conjointement avec certains types de commentaires. Comment peut-on faire un rapport de bug ? Description du problème : Objectif : pour traiter un langage comme PHP, on souhaite - définir des commentaires multilignes `/* ... */` - utiliser `linerange` pour n'imprimer que la partie entre les balises `<?` et `?>` Problème rencontré : le listing ne s'arrête pas à la balise ?> si un commentaire multilignes est défini et présent dans le code. NB : le pb existe avec le langage PHP prédéfini par listings, mais j'ai réduit le problème à 2 mini définitions de langages. <pre> \documentclass{article} \usepackage{listings} \usepackage{color} \lstdefinelanguage{mylanguageA}% { comment=[l]//,% }[comments] \lstdefinelanguage{mylanguageB}% { comment=[l]//,% morecomment=[s]{/*}{*/},% }[comments]% \lstset{commentstyle=\color{blue}, frame=single} \begin{document} % Language A % Correctly stops at ?> ?&gt; % but /* ... */ is not defined as comment \begin{lstlisting}[ language=mylanguageA, linerange={&lt;?}-{?&gt;},includerangemarker=false, ] <? &lt;? /* * bla */ function f(){ } ?> ?&gt; etc \end{lstlisting} % Language B % ERROR : This listing doesn't doesn&#039;t stop at ?> ?&gt; \begin{lstlisting}[ language=mylanguageB, linerange={&lt;?}-{?&gt;},includerangemarker=false, ] <? &lt;? /* * bla */ function f(){ } ?> ?&gt; etc \end{lstlisting} % Language B % But correctly stops at ?> ?&gt; if the comment /* */ is not multilines a single line \begin{lstlisting}[ language=mylanguageB, linerange={&lt;?}-{?&gt;},includerangemarker=false, ] <? &lt;? /* bla */ function f(){ } ?> ?&gt; etc \end{lstlisting} \end{document} </pre>
cliquez ici pour masquer/afficher la révision 6
mineure

13 Nov '23, 16:12

denis's gravatar image

denis
7.3k2510

Bug listings package (conflit linerange et comments)

Il semble y avoir un bug dans le package listings en cas d'utilisation de linerange conjointement avec certains types de commentaires. Comment peut-on faire un rapport de bug ? Description du problème : Objectif : pour traiter un langage comme PHP, on souhaite - définir des commentaires multilignes `/* ... */` - utiliser linerange `linerange` pour n'imprimer que la partie entre les balises <? `<?` et ?> `?>` Problème rencontré : le listing ne s'arrête pas à la balise ?> si un commentaire multilignes est défini et présent dans le code. NB : le pb existe avec le langage PHP prédéfini par listings, mais j'ai réduit le problème à 2 mini définitions de langages. <pre> \documentclass{article} \usepackage{listings} \usepackage{color} \lstdefinelanguage{mylanguageA}% { comment=[l]//,% }[comments] \lstdefinelanguage{mylanguageB}% { comment=[l]//,% morecomment=[s]{/*}{*/},% }[comments]% \lstset{commentstyle=\color{blue}, frame=single} \begin{document} % Language A % Correctly stops at ?> % but /* ... */ is not defined as comment \begin{lstlisting}[ language=mylanguageA, linerange={&lt;?}-{?&gt;},includerangemarker=false, ] <? /* * bla */ function f(){ } ?> etc \end{lstlisting} % Language B % ERROR : This listing doesn't stop at ?> \begin{lstlisting}[ language=mylanguageB, linerange={&lt;?}-{?&gt;},includerangemarker=false, ] <? /* * bla */ function f(){ } ?> etc \end{lstlisting} % Language B % But correctly stops at ?> if the comment /* */ is not multilines \begin{lstlisting}[ language=mylanguageB, linerange={&lt;?}-{?&gt;},includerangemarker=false, ] <? /* bla */ function f(){ } ?> etc \end{lstlisting} \end{document} </pre>
cliquez ici pour masquer/afficher la révision 5
mineure

13 Nov '23, 16:11

denis's gravatar image

denis
7.3k2510

cliquez ici pour masquer/afficher la révision 4
mineure

13 Nov '23, 16:10

denis's gravatar image

denis
7.3k2510

cliquez ici pour masquer/afficher la révision 3
char entity &lt;

13 Nov '23, 11:35

BrB's gravatar image

BrB
213

cliquez ici pour masquer/afficher la révision 2

13 Nov '23, 11:31

BrB's gravatar image

BrB
213

cliquez ici pour masquer/afficher la révision 1

13 Nov '23, 11:28

BrB's gravatar image

BrB
213

C'est votre première visite ici ? Consultez la FAQ !

×