"mostrar" comandos de depuración familiar

"mostrar" comandos de depuración familiar

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 \showcomando 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=xxcomo se puede veraquí.

¿Existe alguna lista de dichos comandos y sus acciones?

Respuesta1

El libroTeX By Topicde Victor Eijkhout describe algunas \show...macros.

En la siguiente descripción general, significa algún valor entero e Y y un número de X8 bits, \Zes la abreviatura de alguna 'cantidad interna' como count, o registro, es una palabra o una lista de palabras separadas por espacios.dimen\skiptokenW

  • \showEs un comando primitivo y muestra el significado de un token, es decir, lo que \meaning\foohace dentro del documento.
  • \showboxdepth=Xtiene el valor del nivel más profundo de anidamiento de cajas, por defecto X=3en planoTeX
  • \showboxbreadth=Xtiene el número máximo de elementos mostrados por nivel. Esto tiene un TeXvalor predeterminado simple deX=5
  • \showlistses 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\Yimprime el contenido de una \Ycantidad 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 eTeXestá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)
  • \showtokenspara listas de tokens y contenido, que no es posible mostrar con \showo \showthe.

Estas tres eTeXadiciones son independientes del modo.

LaTeX agrega algunas macros contenedoras, como

  • \showoutput
  • \showoverfull
  • \showhyphens(siendo redefinido)

y establece inicialmente \showboxbreadth=-1y \showboxdepth=-1tambié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 .logarchivo (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 []

información relacionada