i have a little question about the verbatim environment in latex..... my problem is how can i write "\end{verbatim}" inside of a verbatim environment, it supposed that everything inside a verbatim is written just like it looks but this is the string to end the environment, so how can i do this?
I think it might be impossible in a verbatim
environment -- at least, that's what Lamport says in the LaTeX book (first paragraph on pg. 64). However, you can do it with the \verb
command: \verb+\end{verbatim}+
works just fine (and in fact, you can use any character instead of +
as long as you make them match).
That said, the listings
package is smart enough to have an escape character. For example,
\begin{lstlisting}[escapechar=+]
+\verb!\end{lstlisting}!+
\end{lstlisting}
does exactly what you're looking for. (Again, pick a different character than +
if you're already using that for something else.)
lstlisting
is smart enough to have an escape character for that -- updating answer now. –
Evetteevey \\end{verbatim}
Should do it by making the initial \
into a literal backslash.
I think it might be impossible in a verbatim
environment -- at least, that's what Lamport says in the LaTeX book (first paragraph on pg. 64). However, you can do it with the \verb
command: \verb+\end{verbatim}+
works just fine (and in fact, you can use any character instead of +
as long as you make them match).
That said, the listings
package is smart enough to have an escape character. For example,
\begin{lstlisting}[escapechar=+]
+\verb!\end{lstlisting}!+
\end{lstlisting}
does exactly what you're looking for. (Again, pick a different character than +
if you're already using that for something else.)
lstlisting
is smart enough to have an escape character for that -- updating answer now. –
Evetteevey Use the fancyvrb package instead of the default verbatim
package.
fancyvrb
package and use the Verbatim
environment (capital V
?) If so, what did you see? –
Hackathorn I have a simpler solution. Write a non-breaking space, in Emacs it's C-x 8 SPC (Windows, though I haven't tried it is Alt+0160 (on numeric keypad)
). So, you can do this:
\begin{verbatim}
\_end{verbatim}
\end{verbatim}
where the first \end{verbatim}
has this "_", the non-breaking character.
Craig's answer is good. Alternatively, \expandafter\string\csname end{verbatim}\endcsname
.
These solutions won't linebreak nicely: fixing this is fiddly.
Here is my method, thanks @S.Lott for his advice.
If you want to write \end{verbatim}
in the verbatim environment, you have to using another 'verbatim' layer to nest your code (this is where fancyvr
package comes to play). Here it is:
\documentclass{article}
\usepackage{fancyvrb}
\begin{document}
Some text here
\begin{Verbatim} % note 'uppercase V' in verbatim
\begin{verbatim}
Code example
\end{verbatim}
\end{Verbatim}
\end{document}
© 2022 - 2024 — McMap. All rights reserved.