
Como se discutioaquí, hay muchos comandos que se pueden utilizar para "depurar" el proceso de composición de (La)TeX.
También sé que a veces el \show
comando se puede utilizar para mostrar las definiciones de macro.
Sin embargo, sé que hay algunos comandos de depuración/rastreo que comienzan con show, por ejemplo, \showboxbreadth=xx
como se puede veraquí.
¿Existe alguna lista de dichos comandos y sus acciones?
Respuesta1
El libroTeX By Topic
de Victor Eijkhout describe algunas \show...
macros.
En la siguiente descripción general, significa algún valor entero e Y y un número de X
8 bits, \Z
es la abreviatura de alguna 'cantidad interna' como count
, o registro, es una palabra o una lista de palabras separadas por espacios.dimen
\skip
token
W
\show
Es un comando primitivo y muestra el significado de un token, es decir, lo que\meaning\foo
hace dentro del documento.\showboxdepth=X
tiene el valor del nivel más profundo de anidamiento de cajas, por defectoX=3
en planoTeX
\showboxbreadth=X
tiene el número máximo de elementos mostrados por nivel. Esto tiene unTeX
valor predeterminado simple deX=5
\showlists
es una primitiva y escribe el contenido de listas de cuadros parciales en los 4 modos TeX no matemáticos (es decir, horizontal/vertical y las versiones restringidas)\showthe\Y
imprime el contenido de una\Y
cantidad como en el documento con\the
,\the\footoks
\showhyphens{W}
muestra la separación de palabras de W en el terminal/registro de acuerdo con las reglas de separación de palabras.
Ahora, el eTeX
estándar (que ya es un estándar al momento de escribir esto en abril de 2017) agrega algunas \show...
herramientas más.
\showifs
(activado con\tracingifs=1
)\showgroups
(\tracinggroups=1
)\showtokens
para listas de tokens y contenido, que no es posible mostrar con\show
o\showthe
.
Estas tres eTeX
adiciones son independientes del modo.
LaTeX agrega algunas macros contenedoras, como
\showoutput
\showoverfull
\showhyphens
(siendo redefinido)
y establece inicialmente \showboxbreadth=-1
y \showboxdepth=-1
también.
Aquí hay un documento LaTeX de muestra para las \show...
entidades TeX simples.
\documentclass{article}
\newbox\foobox
\setbox\foobox=\hbox{A nice text}
\newcount\foocnt
\foocnt=17
\newtoks\footok
\footok={Gandalf The Grey}
\tracingoutput=1
\tracingonline=1
\begin{document}
\showboxbreadth=10
\showboxdepth=2
\scrollmode
\showbox\foobox
\showthe\footok
\showthe\foocnt
% Show lists
a\hfil\break b\par
c\hfill\break d
\hbox{e\vbox{f\showlists}}
\end{document}
El resultado está tanto en la consola como en el .log
archivo (aquí corté el encabezado y las estadísticas inferiores para proporcionar \show...
solo el resultado relacionado):
> \box26=
\hbox(6.83331+0.0)x48.88896
.\OT1/cmr/m/n/10 A
.\glue 3.33333 plus 1.66498 minus 1.11221
.\OT1/cmr/m/n/10 n
.\OT1/cmr/m/n/10 i
.\OT1/cmr/m/n/10 c
.\OT1/cmr/m/n/10 e
.\glue 3.33333 plus 1.66666 minus 1.11111
.\OT1/cmr/m/n/10 t
.\OT1/cmr/m/n/10 e
.\OT1/cmr/m/n/10 x
.etc.
! OK.
l.23 \showbox\foobox
> Gandalf The Grey.
l.25 \showthe\footok
> 17.
l.27 \showthe\foocnt
### horizontal mode entered at line 32
\hbox(0.0+0.0)x15.0
\OT1/cmr/m/n/10 f
spacefactor 1000
### internal vertical mode entered at line 32
prevdepth ignored
### restricted horizontal mode entered at line 32
\OT1/cmr/m/n/10 e
spacefactor 1000
### horizontal mode entered at line 31
\hbox(0.0+0.0)x15.0
\OT1/cmr/m/n/10 c
\glue 0.0 plus 1.0fill
\penalty -10000
\OT1/cmr/m/n/10 d
\glue 3.33333 plus 1.66666 minus 1.11111
spacefactor 1000
### vertical mode entered at line 0
### current page:
\write-{}
\glue(\topskip) 5.69446
\hbox(4.30554+0.0)x345.0, glue set 324.99998fil
.\hbox(0.0+0.0)x15.0
.\OT1/cmr/m/n/10 a
.\glue 0.0 plus 1.0fil
.\penalty -10000
.\glue(\rightskip) 0.0
\penalty 300
\glue(\baselineskip) 5.05556
\hbox(6.94444+0.0)x345.0, glue set 339.44443fil
.\OT1/cmr/m/n/10 b
.\penalty 10000
.\glue(\parfillskip) 0.0 plus 1.0fil
.\glue(\rightskip) 0.0
\glue(\parskip) 0.0 plus 1.0
total height 22.0 plus 1.0
goal height 550.0
prevdepth 0.0
! OK.
l.32 \hbox{e\vbox{f\showlists
}}
Overfull \hbox (12.22223pt too wide) in paragraph at lines 31--33
\OT1/cmr/m/n/10 d []
\hbox(6.94444+0.0)x345.0, glue set - 1.0
.\OT1/cmr/m/n/10 d
.\glue 3.33333 plus 1.66666 minus 1.11111
.\hbox(6.94444+0.0)x349.44444
..\OT1/cmr/m/n/10 e
..\vbox(6.94444+0.0)x345.0 []
.\penalty 10000
.\glue(\parfillskip) 0.0 plus 1.0fil
.\glue(\rightskip) 0.0
Completed box being shipped out [1]
\vbox(633.0+0.0)x407.0
.\glue 16.0
.\vbox(617.0+0.0)x345.0, shifted 62.0
..\vbox(12.0+0.0)x345.0, glue set 12.0fil []
..\glue 25.0
..\glue(\lineskip) 0.0
..\vbox(550.0+0.0)x345.0, glue set 503.94617fil []
..\glue(\baselineskip) 23.55556
..\hbox(6.44444+0.0)x345.0, glue set 170.0fil []