2010-05-08 4 views
2

J'ai un environnement verbatim contenant la sortie de l'ordinateur sous forme de texte. Ce texte est sématiquement constitué de deux sections, chaque section étant séparée de l'autre par une ligne vide.segments de sortie de l'ordinateur en latex

Le nombre de sections et leur contenu est connu, donc je n'ai pas besoin d'analyser le texte, mais la ligne entre les sections est très importante (car elle donne la sémantique au "texte").

Chaque segment est constitué de plusieurs lignes. Comment pourrais-je écrire (1) et (2) sur la main gauche au centre de chaque segment?

sortie de l'échantillon:

 hello world 
(1)  out there 
     how are you? 

     I am 
     fine 
(2)  thanks 
     and 
     you? 

Les numéros (1) et (2) ne doit pas être à l'intérieur de l'environnement, ils doivent être à l'extérieur, et sur la gauche, et non comme marginpar.

Je suppose qu'il s'agit de mettre un \ box {} ou quelque chose devant les mots "out" et "thanks" et de les déplacer vers la gauche d'un montant négatif. Mais je ne sais pas comment y parvenir.

+0

Essayez-vous d'analyser le contenu à déterminer les deux sections, ou est-il possible d'avoir 2 sections 'verbatim' distinctes? Ce dernier est une question beaucoup plus facile. – Geoff

+0

Reformulé ... Je préférerais une solution qui reflète la sémantique du texte. Puisque les deux sections vont ensemble, elles devraient être conservées dans un environnement unique. Cependant "écrire (X) sur la main gauche au centre" a une priorité plus élevée. – Flavius

Répondre

0

J'ai réussi à le faire comme je le voulais et garder encore la sémantique d'un seul environnement verbatim comme ceci:

\usepackage{fancyvrb} 
\makeatletter 
\newcommand{\nl}[1]{\hbox to\[email protected]{% 
    \hss (#1) \kern3pt}} 
\makeatother 

Et l'utilisation :

\begin{Verbatim}[commandchars=\\\{\}] 
HTTP/1.1 200 OK 
Server: Apache/2.2.3 (Red Hat) 
Last-Modified: Tue, 15 Nov 2005 13:24:10 GMT 
ETag: "b300b4-1b6-4059a80bfd280"    
\nl{1}Accept-Ranges: bytes       
Content-Type: text/html; charset=UTF-8  
Connection: Keep-Alive      
Date: Tue, 15 Dec 2009 11:52:46 GMT   
Age: 2528         
Content-Length: 438 

<HTML> 
<HEAD> 
    <TITLE>Example Web Page</TITLE> 
</HEAD>       
<body>       
\nl{2}<p>You have reached this web page by typing &quot;example.com&quot;, 
&quot;example.net&quot;,            
    or &quot;example.org&quot; into your web browser.</p>    
<p>These domain names are reserved for use in documentation and are not available 
    for registration. See <a href="http://www.rfc-editor.org/rfc/rfc2606.txt">RFC 
    2606</a>, Section 3.</p>               
</BODY>                   
</HTML> 
\end{Verbatim} 
1

Peut-être utiliser minipage:

\renewcommand{\labelenumi}{(\arabic{enumi})} 
\begin{enumerate} 
\item 
\begin{minipage}[c]{1in} 
\begin{verbatim} 
hello world 
out there 
how are you? 
\end{verbatim} 
\end{minipage} 

\item 
\begin{minipage}[c]{1in} 
\begin{verbatim} 
I am 
fine 
thanks 
and 
you? 
\end{verbatim} 
\end{minipage} 
\end{enumerate}