¿Listado en una caja?

¿Listado en una caja?

Mi problema es que estoy intentando escribir un documento con secciones coloreadas como ejemplos. Los ejemplos pueden contener listados de códigos. De alguna manera, parece que no puedo combinar un color de fondo con una lista, ni siquiera palabra por palabra.

Un ejemplo de lo que probé es este:

\colorbox{lightgray}{
\begin{minipage}{4cm}
An example text

\begin{lstlisting}[frame=single,language=XML,caption=A Fibonaci example\label{code:fibonaci}]
  <xml></xml>
\end{lstlisting}   

Some more text
\end{minipage}  
}

¡Cualquier idea es apreciada!

Respuesta1

Publique siempre documentos completos que muestren los paquetes utilizados. El problema es que no se pueden utilizar textualmente construcciones similares en el argumento de una macro similar \colorbox. lrboxEl entorno fue introducido por esta razón.

ingrese la descripción de la imagen aquí

\documentclass{article}
\usepackage{color,listings}
\definecolor{lightgray}{rgb}{.7,.7,.7}
\newsavebox\lstbox
\begin{document}

\begin{lrbox}{\lstbox}\begin{minipage}{4cm}
An example text

\begin{lstlisting}[frame=single,language=XML,caption=A Fibonaci example\label{code:fibonaci}]
  <xml></xml>
\end{lstlisting}   

Some more text
\end{minipage}\end{lrbox}  

\colorbox{lightgray}{\usebox\lstbox}


\end{document}

Respuesta2

Esto es lo que suelo usar.

\documentclass[12pt]{article}
\usepackage[margin=1.6cm]{geometry}
\usepackage{amsmath, amssymb}
\usepackage{xcolor}
\usepackage{listings}
\lstset
{
    language=[LaTeX]TeX,
    breaklines=true,
    basicstyle=\tt\normalsize,
    keywordstyle=\color{blue},
    identifierstyle=\color{magenta},
    frame = single
}

Tenga en cuenta el uso de frame = singlecomo argumento. Usarlo frame = trueno te llevará a ninguna parte. solo como consejo

información relacionada