9

I'm not really sure how to reference a code snippet in my text. I need also a caption for the code. The only working way I found is wrapping the minted in a figure. The problem is that I want to distinguish figures from code snippets..

\begin{figure} [ht]
\centering
\begin{minted}[mathescape,
               numbersep=5pt,
               frame=lines,
               framesep=5mm]{sql}
natural join library.Book with amazon.Book as jointarge.BookCollection
with keep attributes library.Book.title
\end{minted}
\caption{A Caption}
\label{fig:Figure}
\end{figure}
aphex
  • 1,197

1 Answers1

9

Use listing environment instead.

\documentclass[]{article}

\usepackage{minted}

\begin{document}
\begin{listing}[ht]
\begin{minted}[mathescape,
               numbersep=5pt,
               frame=lines,
               framesep=5mm]{sql}
natural join library.Book with amazon.Book as jointarge.BookCollection
with keep attributes library.Book.title
\end{minted}
\caption{A Caption}
\label{lst:Listing}
\end{listing}
Listing \ref{lst:Listing} contains an example of a listing.
\end{document}
hpesoj626
  • 17,282
  • Is it normal, that the listing caption is above? And can I change the listing caption text "Listing" to "Code-Snippet"? – aphex Dec 27 '12 at 18:49
  • 2
    For the placement of the caption, just write \caption{A caption} after \begin{listing}[ht]. For changing the name of the 'listing caption', see my answer in http://tex.stackexchange.com/questions/82993/how-to-change-the-name-of-document-elements-like-figure-contents-bibliogr/88330#88330 since this new request duplicates the question there. – hpesoj626 Dec 27 '12 at 19:21