
Definí un nuevo comando para resaltar algunas partes del texto:
\newcommand{\keyword}[1]{\colorbox{black!5}{#1}}
Desafortunadamente, cuando el texto se vuelve demasiado largo, se superpone a mis márgenes. La palabra clave ignora el margen de la tabla, así como el margen del documento completo.
\keyword{exp: c=wordExp \{ if(\$c.matches(``a string'')\{
\textbackslash\textbackslash do something \}) \}}
¿Puedo decirle a mi comando que cree una nueva línea o forzar que se rompa después de X centímetros?
Gracias.
Respuesta1
Puedes utilizar los consejos de @barbarabeeton. Sin embargo, no recomiendo el nombre \keyword
porque está definido en otras partes de algunas clases. Entonces, newcommand
puede verse así:
\newcommand{\KEY}[1]{\colorbox{black!5}{\parbox{\dimexpr\linewidth-2\fboxsep}{#1}}}
Observe esto -2\fboxsep
, que sirve para alinearlo colorbox
con el texto de arriba y de abajo. Aquí hay un ejemplo completo:
\documentclass{article}
\usepackage{xcolor}
\begin{document}
\newcommand{\KEY}[1]{\colorbox{black!5}{\parbox{\dimexpr\linewidth-2\fboxsep}{#1}}}
\begin{tabular}{|p{.4\linewidth}|p{.5\linewidth}|}
\hline
Something here to fill half &
Something here to fill half the line width
\KEY{exp: c=wordExp \{ if(\$c.matches(``a string'')\{
\textbackslash\textbackslash do something \}) \}}
\\ \hline
\end{tabular}
\end{document}