[Tex/LaTex] colored full width box with some verbatim text inside

colorframedverbatim

I would like to create a text box of "reminders" for my readers. I'd like the box to be gray, go full text width, and have both normal and verbatim text in it.

Reminder

ensure blah blah \underline{before} running \verb!-egrmaclean-!. 
make blah blah ``\emph{2. TEMP filename.dta}'' \emph{2. country project.do} file. 

Best Answer

You can use the mdframed package. A simple example (please refer to the package documentation to learn all the possibilities for customization offered by the package):

\documentclass{article}
\usepackage{xcolor}
\usepackage{mdframed}
\usepackage{lipsum}% just to generate text for the example

\newmdenv[
  backgroundcolor=gray!20,
  frametitle=Reminder,
  skipabove=\topsep,
  skipbelow=\topsep,
]{reminder}

\begin{document}

\lipsum[2]
\begin{reminder}
ensure blah blah \underline{before} running \verb!-egrmaclean-!. 
make blah blah ``\emph{2. TEMP filename.dta}'' \emph{2. country project.do} file.
\end{reminder}
\lipsum[2]

\end{document}

enter image description here

Another option would be to use the framed package:

\documentclass{article}
\usepackage{xcolor}
\usepackage{framed}
\usepackage{lipsum}% just to generate text for the example

\colorlet{shadecolor}{gray!20}

\newenvironment{myshaded}
  {\def\FrameCommand{\fboxsep=\topsep\colorbox{shadecolor}}%
  \MakeFramed {\advance\hsize-\width \FrameRestore}}%
 {\endMakeFramed}

\newenvironment{reminder}
  {\begin{myshaded}\noindent\textbf{Reminder}\par\nobreak\noindent\ignorespaces}
  {\end{myshaded}}

\begin{document}

\lipsum[2]
\begin{reminder}
ensure blah blah \underline{before} running \verb!-egrmaclean-!. 
make blah blah ``\emph{2. TEMP filename.dta}'' \emph{2. country project.do} file.\end{reminder}
\lipsum[2]

\end{document}

enter image description here

Related Question