
Defini um novo comando para destacar algumas partes do texto:
\newcommand{\keyword}[1]{\colorbox{black!5}{#1}}
Infelizmente, quando o texto fica muito longo, ele se sobrepõe às minhas margens. A palavra-chave ignora a margem da tabela, bem como a margem do documento furo.
\keyword{exp: c=wordExp \{ if(\$c.matches(``a string'')\{
\textbackslash\textbackslash do something \}) \}}
Posso dizer ao meu comando para criar uma nova linha ou forçá-la a quebrar após X centímetros?
THX.
Responder1
Você pode usar o conselho de @barbarabeeton. Porém, não recomendo o nome \keyword
porque ele é definido em outro lugar em algumas classes. Então, a lata newcommand
pode ficar assim:
\newcommand{\KEY}[1]{\colorbox{black!5}{\parbox{\dimexpr\linewidth-2\fboxsep}{#1}}}
Observe isto -2\fboxsep
, que serve para alinhar colorbox
com o texto acima e abaixo. Aqui está um exemplo 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}