No tengo idea de cómo hacer una configuración global para encuadrar todas las matemáticas mostradas y en línea. La caja está decorada con marcos de colores, fondo de color y primer plano de color (ya sea texto o matemáticas).
Al realizar la configuración global, puedo activarla o desactivarla fácilmente y el resto queda intacto.
Sé que hay 2 macros \everydisplay
y \everymath
, pero no puedo utilizarlas más que cambiar el color del trazo con \color{red}
, por ejemplo.
Respuesta1
Para jugar, el siguiente ejemplo agrega una \fbox
matemática en línea:
\documentclass{article}
\newsavebox{\mymathbox}
\everymath{%
\mathsurround=0pt$%
\begin{lrbox}{\mymathbox}\everymath{}$%
\aftergroup\mathboxend
}
\newcommand*{\mathboxend}{%
\end{lrbox}%
\fbox{\usebox{\mymathbox}}%
}
\begin{document}
$abc$ Hello\textsuperscript{World}
\begin{tabular}{l}Hello\\World\end{tabular}
\begin{minipage}{4em}Hello\\World\end{minipage}
\begin{minipage}[t]{4em}Hello\\World\end{minipage}
\end{document}
Actualizar:Explicación y \mathsurround=0pt
agregado.
El objetivo es tener algo como
\fbox{$...$}
Si \everymath
se llama, ya estamos en modo matemático. Por lo tanto, el primero $
finaliza el modo matemático. El espacio dado por \mathsurround
se establecería alrededor de la fórmula vacía, por lo tanto se establece en cero.
Luego se abre un cuadro horizontal ( lrbox
) y volvemos a cambiar a modo matemático, pero con el \everymath
. Vía \aftergroup
llegamos al punto justo después del cierre $
y podemos cerrar el cuadro y configurarlo con \fbox
.
Variaciónagregado.
También podríamos dejar el grupo de matemáticas en su sitio y poner el lrbox
interior:
\everymath{%
\begin{lrbox}{\mymathbox}%
\everymath{}$\mathsurround=0pt\relax
\aftergroup\mathboxend
}
\newcommand*{\mathboxend}{%
\end{lrbox}%
\fbox{\usebox{\mymathbox}}%
$%
}
La diferencia de estos métodos es el manejo de \mathsurround
, si no es cero. En el primer caso el espacio se pone dentro de la caja, en el segundo caso, el espacio está fuera.
Sin embargo, existe un serio inconveniente de este método general mediante \everymath
. Las matemáticas en línea se utilizan en muchos lugares diferentes, por lo que el ejemplo también muestra cuadros en lugares donde no se esperan las matemáticas en línea.