Ancho de línea de marco dentro de DefineVerbatimEnvironment

Ancho de línea de marco dentro de DefineVerbatimEnvironment

Estoy intentando definir un entorno que requiera una línea de marco tan ancha como \textwidth

\DefineVerbatimEnvironment%
 {code}{Verbatim}{...,frame=lines,%
               xleftmargin=7pt,fontsize=...}

¿No estoy seguro de cómo podría limitar el ancho de la línea?

Respuesta1

uno puede modificaresta solucióna una pregunta relacionada de la siguiente manera:

\documentclass{article}

\usepackage{fancyvrb}

\newenvironment{code}
  {
    \VerbatimEnvironment
    \vskip\baselineskip\hrule
    \begin{Verbatim}[xleftmargin=7pt]%
  }
  {\end{Verbatim}\hrule\vskip\baselineskip}

\usepackage{lipsum}
\begin{document}

\lipsum[2]

\begin{code}
  Test the verbatim.  
  Here is some more.
\end{code}

\lipsum[4]

\end{document}

Salida de muestra

\hrulepor sí solo producirá una línea de longitud \textwidth, sin embargo, solo agrega una cantidad mínima de espacio vertical. Ésta es la razón para poner la \vskip's. Es posible que desees ajustar el tamaño de estos espacios (o usar \smallbreak, etc.) y también agregar una \vskipcantidad negativa justo después de la primera regla y justo antes de la última. Por ejemplo, lo siguiente proporciona un espaciado más cercano al obtenido de \begin{Verbatim}[frame=lines]:

\newenvironment{code}
  {
    \VerbatimEnvironment
    \vskip18pt\hrule\vskip-10pt\hskip0pt
    \begin{Verbatim}[xleftmargin=7pt]%
  }
  {\end{Verbatim}\vskip-3pt\hrule\vskip18pt}

Si necesitas que las reglas tengan un grosor diferente, puedes escribir algo así como \hrule height 2pt.

información relacionada