Difference between revisions of "Visual Debugging"
m (hints about show commands being MkII only) |
|||
(33 intermediate revisions by 4 users not shown) | |||
Line 1: | Line 1: | ||
− | < [[ | + | Page is focused on the old [[Mark_II|Mark II]] ConTeXt version, though <tt>\show...</tt> commands are still the same. Work-in-progress page on current [[LMTX]] version is [[Debugging]]. |
+ | |||
+ | |||
There's a whole lot of commands that help you analyzing and debugging your ConTeXt documents. Most of them start with {{cmd|show...}} or {{cmd|trace...}}. While {{cmd|showsomething}} is a command that immediately inserts something, {{cmd|tracesomethingtrue}} or ...<tt>false</tt> is a switch that influences the behaviour of some other commands. You can check the setting with {{cmd|iftrace...}}. In the following we leave out the boolean value (true or false). | There's a whole lot of commands that help you analyzing and debugging your ConTeXt documents. Most of them start with {{cmd|show...}} or {{cmd|trace...}}. While {{cmd|showsomething}} is a command that immediately inserts something, {{cmd|tracesomethingtrue}} or ...<tt>false</tt> is a switch that influences the behaviour of some other commands. You can check the setting with {{cmd|iftrace...}}. In the following we leave out the boolean value (true or false). | ||
− | + | =Unordered= | |
{{cmd|tracefiles}} : ? | {{cmd|tracefiles}} : ? | ||
Line 18: | Line 20: | ||
− | + | =[[Layout]]= | |
{{cmd|showlayout}} : add four pages that show margins, layout sizes etc. | {{cmd|showlayout}} : add four pages that show margins, layout sizes etc. | ||
Line 28: | Line 30: | ||
{{cmd|showframe}} : show frames of text area, layers, boxes etc. | {{cmd|showframe}} : show frames of text area, layers, boxes etc. | ||
− | ===Grid, Layers and Column Sets | + | {{cmd|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== | ||
+ | |||
+ | <texcode> | ||
+ | \usemodule [setups] | ||
+ | |||
+ | \starttext | ||
+ | |||
+ | % \setuphead [..,..=..,..] | ||
+ | \showrootvalues [head] | ||
+ | |||
+ | % \setuphead [chapter] [..,..=..,..] | ||
+ | \showinstancevalues [head] [chapter] | ||
+ | |||
+ | \stoptext | ||
+ | </texcode> | ||
+ | |||
+ | ==Grid, Layers and Column Sets== | ||
{{cmd|tracelayers}} : show boxes of layers | {{cmd|tracelayers}} : show boxes of layers | ||
Line 40: | Line 60: | ||
{{cmd|tracegridsnapping}} : ? | {{cmd|tracegridsnapping}} : ? | ||
− | + | =[[Tables Overview|Tables]]= | |
{{cmd|tracetables}} : ? | {{cmd|tracetables}} : ? | ||
Line 48: | Line 68: | ||
{{cmd|tracetabulate}} : ? | {{cmd|tracetabulate}} : ? | ||
− | + | =[[Math]]= | |
{{cmd|tracemathtrue}} : show the layout boxes for left, middle, or right-aligned formulas. | {{cmd|tracemathtrue}} : show the layout boxes for left, middle, or right-aligned formulas. | ||
Line 71: | Line 91: | ||
{{cmd|tracemathcharacter}} : ? | {{cmd|tracemathcharacter}} : ? | ||
− | + | =[[Bookmarks]] and [[References]]= | |
{{cmd|tracebookmarks}} : ? | {{cmd|tracebookmarks}} : ? | ||
Line 82: | Line 102: | ||
− | = | + | =Fonts and Type= |
{{cmd|showbodyfont}} : actual bodyfont family with all variants | {{cmd|showbodyfont}} : actual bodyfont family with all variants | ||
− | <context> | + | <context source="yes"> |
− | \ | + | \showbodyfont[pagella,7pt] |
− | |||
</context> | </context> | ||
{{cmd|showbodyfontenvironment}} : draws a table that shows which point sizes match the relative sizes | {{cmd|showbodyfontenvironment}} : draws a table that shows which point sizes match the relative sizes | ||
− | <context> | + | <context source="yes"> |
− | \ | + | \showbodyfontenvironment[pagella,7pt] |
− | |||
</context> | </context> | ||
{{cmd|showsymbolset}}[''symbolset name''] : shows all the symbols within a given symbol set | {{cmd|showsymbolset}}[''symbolset name''] : shows all the symbols within a given symbol set | ||
− | + | <context source="yes"> | |
− | |||
− | |||
− | <context> | ||
− | |||
\showsymbolset[navigation 1] | \showsymbolset[navigation 1] | ||
</context> | </context> | ||
− | {{cmd| | + | {{cmd|ShowCompleteFont}} from module <code>fnt-10</code> : list of available chars of actual bodyfont encoding (for MkII, {{cmd|showcharacters}} lists the available chars of actual bodyfont encoding ) |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | {{cmd| | ||
− | <context> | + | <context source="yes"> |
− | \ | + | \usemodule[fnt-10] |
\setupcolors[state=start] | \setupcolors[state=start] | ||
− | \ | + | \starttext |
+ | \ShowCompleteFont{name:texgyrepagella}{8pt}{1} | ||
+ | \stoptext | ||
</context> | </context> | ||
− | {{cmd| | + | {{cmd|showmathcharacters}} from module <code>math-characters</code> : list of all the available math (non-alphabetical) characters available in math, now including all the AMS characters. |
− | <context> | + | <context source="yes"> |
− | \ | + | \usemodule[math-characters] |
\setupcolors[state=start] | \setupcolors[state=start] | ||
− | \ | + | \setupbodyfont[pagella,7pt] |
+ | \starttext | ||
+ | \showmathfontcharacters | ||
+ | \stoptext | ||
</context> | </context> | ||
Line 136: | Line 147: | ||
''(Make a better, slightly more complex example.)'' | ''(Make a better, slightly more complex example.)'' | ||
− | < | + | <context source="yes"> |
− | \ | + | \setupbodyfont[pagella,7pt] |
− | \showstruts | + | \framed[frame=off,align=normal]{\showstruts |
This will display \strut struts.\crlf | This will display \strut struts.\crlf | ||
− | + | A frame with strut \framed[strut=yes]{xxx} and frame without \framed[strut=no]{xxx}} | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
</context> | </context> | ||
+ | {{cmd|showfontstrip}} : the current typeface combination, with roman, sans, math, and teletype families visualised, with x-heights and m widths. | ||
− | + | <context source="yes"> | |
− | + | \setupbodyfont[pagella,7pt] | |
− | <context> | + | \framed[frame=off]{\showfontstrip} |
− | \ | ||
− | \showfontstrip | ||
</context> | </context> | ||
− | |||
− | |||
− | |||
− | |||
{{cmd|tracedfontname}}''{Font Name}'' : Chain of synonyms for the given font name | {{cmd|tracedfontname}}''{Font Name}'' : Chain of synonyms for the given font name | ||
− | < | + | <context source="yes"> |
− | \ | + | \setupbodyfont[pagella,7pt] |
− | + | \framed[frame=off]{\tracedfontname{Bold}} | |
− | |||
− | |||
− | \ | ||
− | \tracedfontname{Bold} | ||
</context> | </context> | ||
− | + | =Colors= | |
− | |||
− | |||
− | |||
− | |||
{{cmd|showcolor}} : see [[Color]] | {{cmd|showcolor}} : see [[Color]] | ||
Line 198: | Line 186: | ||
{{cmd|tracedspotcolormode}} : ? | {{cmd|tracedspotcolormode}} : ? | ||
− | + | =Figures= | |
{{cmd|showexternalfigures}} : ? | {{cmd|showexternalfigures}} : ? | ||
Line 207: | Line 195: | ||
− | + | =Interaction= | |
{{cmd|showfields}} : ? | {{cmd|showfields}} : ? | ||
Line 217: | Line 205: | ||
{{todo|A lot of commands and switches are still unexplained.}} | {{todo|A lot of commands and switches are still unexplained.}} | ||
+ | |||
+ | [[Category:Basics]] | ||
+ | [[Category:Tools]] | ||
+ | [[Category:Layout]] | ||
+ | [[Category:Fonts]] |
Revision as of 12:58, 18 May 2024
Page is focused on the old Mark II ConTeXt version, though \show... commands are still the same. Work-in-progress page on current LMTX version 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).
Contents
Unordered
\tracefiles : ?
\tracepositions : ?
\traceposstring : ?
\traceotr : output routine?
\showboxes : show boxes
Layout
\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] \starttext % \setuphead [..,..=..,..] \showrootvalues [head] % \setuphead [chapter] [..,..=..,..] \showinstancevalues [head] [chapter] \stoptext
Grid, Layers and Column Sets
\tracelayers : show boxes of layers
\tracecolumnset : ?
\tracetextareas : ?
\showgrid : make line grid visible
Tables
\tracetables : ?
\traceTABLE : ?
\tracetabulate : ?
Math
\tracemathtrue : show the layout boxes for left, middle, or right-aligned formulas.
\tracemathsymbol{name of math symbol} : show the command (name of symbol) and the symbol itself
\tracemathcollectiontrue \tracemathsymbol{Re} \tracemathsymbol{Im}
Bookmarks and References
\tracebookmarks : ?
\tracelinenotes : ?
\tracereferences : ?
\tracelabels : ?
Fonts and Type
\showbodyfont : actual bodyfont family with all variants
\showbodyfont[pagella,7pt]
\showbodyfontenvironment : draws a table that shows which point sizes match the relative sizes
\showbodyfontenvironment[pagella,7pt]
\showsymbolset[symbolset name] : shows all the symbols within a given symbol set
\showsymbolset[navigation 1]
\ShowCompleteFont from module fnt-10
: list of available chars of actual bodyfont encoding (for MkII, \showcharacters lists the available chars of actual bodyfont encoding )
\usemodule[fnt-10] \setupcolors[state=start] \starttext \ShowCompleteFont{name:texgyrepagella}{8pt}{1} \stoptext
\showmathcharacters from module math-characters
: list of all the available math (non-alphabetical) characters available in math, now including all the AMS characters.
\usemodule[math-characters] \setupcolors[state=start] \setupbodyfont[pagella,7pt] \starttext \showmathfontcharacters \stoptext
\showstruts : display struts (invisible placeholders for proper minimum line heights)
(Make a better, slightly more complex example.)
\setupbodyfont[pagella,7pt] \framed[frame=off,align=normal]{\showstruts This will display \strut struts.\crlf A frame with strut \framed[strut=yes]{xxx} and frame without \framed[strut=no]{xxx}}
\showfontstrip : the current typeface combination, with roman, sans, math, and teletype families visualised, with x-heights and m widths.
\setupbodyfont[pagella,7pt] \framed[frame=off]{\showfontstrip}
\tracedfontname{Font Name} : Chain of synonyms for the given font name
\setupbodyfont[pagella,7pt] \framed[frame=off]{\tracedfontname{Bold}}
Colors
\showcolor : see Color
\showcolorgroup : ?
\showpalet : ?
\tracedgreymode : ?
Figures
\tracesidefloats : ?
Interaction
\showfields : ?
\tracefields : ?
\traceJScode : trace JavaScript code
TODO: A lot of commands and switches are still unexplained. (See: To-Do List) |