Visual Debugging

From Wiki
Revision as of 10:24, 9 February 2021 by Jano Kula (talk | contribs) (Link to new Debugging page (Mark II))
Jump to navigation Jump to search

Page is focused on the old Mark II ConTeXt version, though \show... commands are still the same. Work-in-progress page on current versions is Debugging.

There's a whole lot of commands that help you analyzing and debugging your ConTeXt documents. Most of them start with \show... or \trace.... While \showsomething is a command that immediately inserts something, \tracesomethingtrue or ...false is a switch that influences the behaviour of some other commands. You can check the setting with \iftrace.... In the following we leave out the boolean value (true or false).


\tracefiles : ?

\tracepositions : ?

\traceposstring : ?

\traceboxplacement : ?

\traceotr : output routine?

\showboxes : show boxes


\showlayout : add four pages that show margins, layout sizes etc.

\showsetups : typeset a list of all defined sizes (variables) and their values

\showmakeup : show some otherwise invisible markup

\showframe : show frames of text area, layers, boxes etc.

\showlayoutcomponents : To allow Acrobat Reader users (among others?) to make layers visible/invisible at will, add this command at the start of your file.

Show attributes of visual elements

\usemodule [setups]


% \setuphead [..,..=..,..]
\showrootvalues [head]

% \setuphead [chapter] [..,..=..,..]
\showinstancevalues [head] [chapter]


Grid, Layers and Column Sets

\tracelayers : show boxes of layers

\tracecolumnset : ?

\tracetextareas : ?

\showgrid : make line grid visible

\tracegridsnapping : ?


\tracetables : ?

\traceTABLE : ?

\tracetabulate : ?


\tracemathtrue : show the layout boxes for left, middle, or right-aligned formulas.

\tracemathcommand : ?

\tracemathcollection : ?

\tracemathsymbol{name of math symbol} : show the command (name of symbol) and the symbol itself


\tracemathcharacter : ?

Bookmarks and References

\tracebookmarks : ?

\tracelinenotes : ?

\tracereferences : ?

\tracelabels : ?

Fonts and Type

\showbodyfont : actual bodyfont family with all variants

\showbodyfontenvironment : draws a table that shows which point sizes match the relative sizes

\showsymbolset[symbolset name] : shows all the symbols within a given symbol set

\showsymbolset[navigation 1]

\showcharacters : list of available chars of actual bodyfont encoding (approx. 4 pages, MkII only)

\showmathcharacters : list of all the available math (non-alphabetical) characters available in math, now including all the AMS characters. MkII only

\showaccents : shows A-Z and a-z with all available accents, MkII only

\showstruts : display struts (invisible placeholders for proper minimum line heights)

(Make a better, slightly more complex example.)

This will display \strut struts.\crlf
Frame with struts: \framed{xxx}\crlf
And frame without them: \framed[strut=no]{xxx}

\showfontstrip : the current typeface combination, with roman, sans, math, and teletype families visualised, with x-heights

\tracefonthandling :

\tracechinese : ?

\tracedfontname{Font Name} : Chain of synonyms for the given font name


\tracedfontencoding : ?

Colors and Graphics


\showcolor : see Color

\showcolorgroup : ?

\showpalet : ?

\tracedgreymode : ?

\tracedgreycolormode : ?

\tracedrgbcolormode : ?

\tracedcmykcolormode : ?

\tracedspotcolormode : ?


\showexternalfigures : ?

\traceexternalfigures : ?

\tracesidefloats : ?


\showfields : ?

\tracefields : ?

\traceJScode : trace JavaScript code

TODO: A lot of commands and switches are still unexplained. (See: To-Do List)