2010-07-20 5 views
2

Pour afficher seulement quelques lignes de code source, lstlisting possède une touche de ligne qui n'imprime que ces plages.Latex: Afficher seulement quelques lignes dans lstlisting

\documentclass[slidestop]{beamer} 
\usepackage{listings} 
\begin{document} 


\begin{frame}[fragile] 
    \begin{lstlisting}[language=C,linerange={1-2,5-6}] 
    #include<stdio.h> 
    int void main(int argc, char **argv) 
    { 
     printf("hello world\n"); 
     return 0; 
    } 
    \end{lstlisting} 
\end{frame} 

\end{document} 

L'affichage de la liste ci-dessus suivant des lignes de code sans espaces entre les lignes. :

#include<stdio.h> 
    int void main(int argc, char **argv) 
     return 0; 
    } 

Ce que je veux vraiment est

#include<stdio.h> 
    int void main(int argc, char **argv) 


     return 0; 
    } 

Je veux que les lignes 3-4 ne pas être affichés mais j'ai besoin des lignes vides pour cette gamme. Il devrait donc y avoir 2 lignes vides entre les deux premières et les deux dernières lignes affichées.

Contraintes:

  • code source ne doit pas être modifié, il est en fait dans un fichier séparé qui ne peut pas être changé

  • Le code source que j'ai est assez grand donc en utilisant plusieurs lstlisting pour différentes parties de la source est lourde.

[Mise à jour]: Mon exigence en bref: « lignes dans le code source qui sont exclues dans la gamme donnée (s) doit être imprimé sous forme de lignes blanches (même quand ils ne sont pas vides dans le code source) "

Répondre

Questions connexes