Controls in yex

Control keywords

Keyword

Group

Notes

Purpose

_Input

io

πŸ‘»

This is where the input streams live.

_Output

io

πŸ‘»

This is where the output streams live.

$

math

πŸ€ΈπŸ‘½

Switches inline maths mode on or off.

/

font

πŸ€ΈπŸ‘½

Adds an italic correction.

\-

other

πŸ‘½

?

\above

math

πŸ‘½

?

\abovedisplayshortskip

Glue

?

\abovedisplayskip

Glue

?

\abovewithdelims

math

πŸ‘½

?

\accent

other

πŸ‘½

?

\adjdemerits

Number

?

\advance

arithmetic

Adds two quantities.

\afterassignment

other

πŸ‘½

?

\aftergroup

other

πŸ‘½

?

\atop

math

πŸ‘½

?

\atopwithdelims

math

πŸ‘½

?

\badness

Number

How badly the most recent line of text was set.

\baselineskip

Glue

?

\batchmode

debug

πŸ‘½

?

\begingroup

other

πŸͺ—πŸ‘½

?

\belowdisplayshortskip

Glue

?

\belowdisplayskip

Glue

?

\binoppenalty

Number

?

\botmark

box

πŸ‘½

?

\boxmaxdepth

Dimen

?

\brokenpenalty

Number

?

\char

other

?

\chardef

register

πŸͺ—

?

\cleaders

box

πŸ‘½

?

\closein

io

πŸ‘½

?

\closeout

io

πŸ‘½

?

\clubpenalty

Number

?

\columns

tab

πŸ‘½

?

\countdef

register

πŸͺ—

?

\cr

tab

πŸ‘½

?

\crcr

tab

πŸ‘½

?

\csname

other

πŸ‘½

?

\day

Number

?

\deadcycles

Number

?

\def

macro

πŸͺ—

?

\defaulthyphenchar

Number

?

\defaultskewchar

Number

?

\delimiter

math

πŸ‘½

?

\delimiterfactor

Number

?

\delimitershortfall

Dimen

?

\dimendef

register

πŸͺ—

?

\discretionary

other

πŸ‘½

?

\displayindent

Dimen

?

\displaylimits

math

πŸ‘½

?

\displaystyle

math

πŸ‘½

?

\displaywidowpenalty

Number

?

\displaywidth

Dimen

?

\divide

arithmetic

Divides two quantities.

\doublehyphendemerits

Number

?

\dp

box

?

\dump

debug

πŸ‘½

?

\edef

macro

πŸͺ—

?

\else

conditional

πŸͺ—

?

\emergencystretch

Dimen

?

\end

other

πŸ‘½

?

\endcsname

other

πŸ‘½

?

\endgroup

other

πŸͺ—πŸ‘½

?

\endinput

io

πŸ‘½

?

\endlinechar

Number

?

\eqno

math

πŸ‘½

?

\errhelp

Tokenlist

?

\errmessage

string

πŸͺ—

?

\errorcontextlines

Number

?

\errorstopmode

debug

πŸ‘½

?

\escapechar

Number

?

\everycr

Tokenlist

?

\everydisplay

Tokenlist

?

\everyhbox

Tokenlist

?

\everyjob

Tokenlist

?

\everymath

Tokenlist

?

\everypar

Tokenlist

?

\everyvbox

Tokenlist

?

\exhyphenpenalty

Number

?

\expandafter

other

πŸ‘½

?

\fam

Number

?

\fi

conditional

πŸͺ—

?

\finalhyphendemerits

Number

?

\firstmark

box

πŸ‘½

?

\floatingpenalty

Number

?

\font

font

?

\fontdimen

font

Gets and sets various details of a font.

\fontname

font

πŸ‘½

Inserts the name of the current font.

\futurelet

other

πŸ‘½

?

\gdef

macro

πŸͺ—

?

\global

macro

πŸͺ—

?

\globaldefs

Number

?

\halign

other

πŸ‘½

?

\hangafter

Number

?

\hangindent

Dimen

?

\hbadness

Number

?

\hbox

box

?

\hfil

box

Skips horizontally by zero, but with infinite stretchability and shrinkability.

\hfill

box

?

\hfilll

box

Skips horizontally by zero, but with even more infinite stretchability.

\hfilneg

box

Cancels the stretchability of a previous hfil.

\hfuzz

Dimen

?

\hoffset

Dimen

?

\holdinginserts

Number

?

\hrule

box

Adds a horizontal rule.

\hsize

Dimen

?

\hskip

box

Adds a horizontal leader.

\hss

box

Skips horizontally by zero, but with infinite stretchability and shrinkability.

\ht

box

?

\hyphenation

hyphen

πŸ‘½

?

\hyphenchar

font

Sets the character used for hyphenation.

\hyphenpenalty

Number

?

\if

conditional

πŸͺ—

?

\ifcase

conditional

πŸͺ—

?

\ifcat

conditional

πŸͺ—

?

\ifdim

conditional

πŸͺ—

?

\ifeof

conditional

πŸͺ—

?

\iffalse

conditional

πŸͺ—

?

\ifhbox

conditional

πŸͺ—

?

\ifhmode

conditional

πŸͺ—

?

\ifinner

conditional

πŸͺ—

?

\ifmmode

conditional

πŸͺ—

?

\ifnum

conditional

πŸͺ—

?

\ifodd

conditional

πŸͺ—

?

\iftrue

conditional

πŸͺ—

?

\ifvbox

conditional

πŸͺ—

?

\ifvmode

conditional

πŸͺ—

?

\ifvoid

conditional

πŸͺ—

?

\ifx

conditional

πŸͺ—

?

\ignorespaces

other

πŸ‘½

?

\immediate

io

?

\indent

other

?

\input

io

πŸ‘½

?

\inputlineno

Number

?

\insert

other

πŸ‘½

?

\insertpenalties

Number

?

\interlinepenalty

Number

?

\jobname

Tokenlist

?

\kern

gismo

?

\language

Number

?

\lastbox

box

?

\lastkern

Dimen

?

\lastpenalty

Number

?

\lastskip

Glue

?

\leaders

box

πŸ‘½

?

\left

math

πŸ‘½

?

\lefthyphenmin

Number

?

\leftskip

Glue

?

\leqno

math

πŸ‘½

?

\let

other

TODO

\limits

math

πŸ‘½

?

\linepenalty

Number

?

\lineskip

Glue

?

\lineskiplimit

Dimen

?

\long

macro

πŸͺ—

?

\looseness

Number

?

\lower

box

?

\lowercase

other

πŸͺ—

?

\mag

Number

?

\mark

box

πŸ‘½

?

\mathaccent

math

πŸ‘½

?

\mathbin

math

πŸ‘½

?

\mathchar

math

πŸ‘½

?

\mathchardef

register

πŸͺ—

?

\mathchoice

math

πŸ‘½

?

\mathclose

math

πŸ‘½

?

\mathinner

math

πŸ‘½

?

\mathop

math

πŸ‘½

?

\mathopen

math

πŸ‘½

?

\mathord

math

πŸ‘½

?

\mathpunct

math

πŸ‘½

?

\mathrel

math

πŸ‘½

?

\mathsurround

Dimen

?

\maxdeadcycles

Number

?

\maxdepth

Dimen

?

\meaning

other

πŸ‘½

?

\medmuskip

Muglue

?

\message

string

πŸͺ—

?

\mkern

gismo

πŸ‘½

?

\month

Number

?

\moveleft

box

?

\moveright

box

?

\mskip

math

πŸ‘½

?

\multiply

arithmetic

Multiplies two quantities.

\muskipdef

register

πŸͺ—

?

\newlinechar

Number

?

\noalign

other

πŸ‘½

?

\noboundary

other

πŸ‘½

?

\noexpand

other

πŸͺ—

The argument is not expanded.

\noindent

other

?

\nolimits

math

πŸ‘½

?

\nonscript

math

πŸ‘½

?

\nonstopmode

debug

πŸ‘½

?

\nulldelimiterspace

Dimen

?

\nullfont

font

Selects the null font, which contains no characters.

\number

other

πŸ‘½

?

\omit

tab

πŸ‘½

?

\openin

io

πŸ‘½

?

\openout

io

πŸ‘½

?

\or

conditional

πŸͺ—

?

\outer

macro

πŸͺ—

?

\output

Tokenlist

?

\outputpenalty

Number

?

\over

math

πŸ‘½

?

\overfullrule

Dimen

?

\overline

math

πŸ‘½

?

\overwithdelims

math

πŸ‘½

?

\pagedepth

Dimen

?

\pagefilllstretch

Dimen

?

\pagefillstretch

Dimen

?

\pagefilstretch

Dimen

?

\pagegoal

Dimen

?

\pageshrink

Dimen

?

\pagestretch

Dimen

?

\pagetotal

Dimen

?

\par

other

Add a paragraph break.

\parfillskip

Glue

The amount of space to add at the end of a paragraph.

\parindent

Dimen

?

\parshape

other

πŸͺ—

?

\parskip

Glue

?

\patterns

hyphen

πŸ‘½

?

\pausing

Number

?

\penalty

other

?

\postdisplaypenalty

Number

?

\predisplaypenalty

Number

?

\predisplaysize

Dimen

?

\pretolerance

Number

?

\prevdepth

Dimen

?

\prevgraf

Number

?

\radical

math

πŸ‘½

?

\raise

box

?

\read

io

πŸ‘½

?

\relax

other

Does nothing.

\relpenalty

Number

?

\right

math

πŸ‘½

?

\righthyphenmin

Number

?

\rightskip

Glue

?

\romannumeral

other

πŸ‘½

?

\scriptscriptstyle

math

πŸ‘½

?

\scriptspace

Dimen

?

\scriptstyle

math

πŸ‘½

?

\scrollmode

debug

πŸ‘½

?

\setbox

box

?

\setlanguage

hyphen

πŸ‘½

?

\settabs

tab

πŸ‘½

?

\shipout

other

Sends a box to the output.

\show

other

πŸ‘½

?

\showbox

box

?

\showboxbreadth

Number

?

\showboxdepth

Number

?

\showlists

other

πŸͺ—

?

\showthe

other

πŸ‘½

?

\skewchar

font

?

\skipdef

register

πŸͺ—

?

\spacefactor

Number

?

\spaceskip

Glue

?

\span

tab

πŸ‘½

?

\special

gismo

πŸ‘½

?

\splitbotmark

box

πŸ‘½

?

\splitfirstmark

box

πŸ‘½

?

\splitmaxdepth

Dimen

?

\splittopskip

Glue

?

\string

other

?

\tabskip

Glue

?

\textstyle

math

πŸ‘½

?

\the

other

Takes an argument, one of many kinds (see the TeXbook p212ff) and returns a representation of that argument.

\thickmuskip

Muglue

?

\thinmuskip

Muglue

?

\time

Number

?

\toksdef

register

πŸͺ—

?

\tolerance

Number

?

\topmark

box

πŸ‘½

?

\topskip

Glue

?

\tracingcommands

log

Commands before they are executed

\tracinglostchars

log

Characters not in the font

\tracingmacros

log

Macros, as they are expanded

\tracingonline

log

If positive, logs go to stdout; otherwise they go to the logfile.

\tracingoutput

log

Boxes that are shipped out

\tracingpages

log

Page-break calculations

\tracingparagraphs

log

Line-break calculations

\tracingrestores

log

Deassignments when groups end

\tracingstats

log

Statistics about memory usage

\uchyph

Number

?

\underline

math

πŸ‘½

?

\unhbox

other

πŸ‘½

?

\unhcopy

other

πŸ‘½

?

\unkern

box

πŸ‘½

?

\unpenalty

box

πŸ‘½

?

\unskip

box

πŸ‘½

?

\unvbox

other

πŸ‘½

?

\unvcopy

other

πŸ‘½

?

\uppercase

other

πŸͺ—

?

\vadjust

other

πŸ‘½

?

\valign

other

πŸ‘½

?

\vbadness

Number

?

\vbox

box

?

\vcenter

box

?

\vfil

box

Skips vertically by zero, but with infinite stretchability.

\vfill

box

Skips vertically by zero, but with more infinite stretchability.

\vfilneg

box

Cancels the stretchability of a previous vfil.

\vfuzz

Dimen

?

\voffset

Dimen

?

\vrule

box

Adds a vertical rule.

\vsize

Dimen

?

\vskip

box

Adds a vertical leader.

\vsplit

box

?

\vss

box

Skips vertically by zero, but with infinite stretchability and shrinkability.

\vtop

box

?

\wd

box

?

\widowpenalty

Number

?

\write

io

πŸͺ—

?

\xdef

macro

πŸͺ—

?

\xleaders

box

πŸ‘½

?

\xspaceskip

Glue

?

\year

Number

?

\␣

other

Add an unbreakable space.

Parameters are listed with their type name in the group column, in italics.

Key

Symbol

Meaning

🀸

Active character. Whenever the character appears in ordinary text, this routine will be called.

πŸͺ—

Expandable control. These controls work at a low level, because they deal with the flow of control. For example, \if falls into this group. Unless you’re messing with the parser, you may never run into these.

πŸ‘»

Appears in the controls table, but is not visible from TeX code.

πŸ‘½

Not currently implemented. Eventually, everything will be implemented, but at present this isn’t. (Parameters are not marked.)

class yex.control.C_Control(is_long=False, is_outer=False, name=None, *args, **kwargs)[source]

Bases: object

Superclass of all controls.

A control has:
  • a name, which is a string. If you don’t pass one in,

    we default to the name of the class in lowercase.

  • a __call__() method, which causes it to run

  • the flags is_long and is_outer, which affect

    where it can be called

Each control is usually referred to by at least one yex.parse.Control object in a given Document. But those objects are symbols, and these are procedures; don’t get them confused.

A Document keeps track of many controls. The control doesn’t know which doc it’s in, but when it’s called, it can find it by looking in the doc field of tokens.

Some controls (such as the superclass) have names beginning with C_. This is so that they can’t be called from TeX code; TeX identifiers can’t contain underscores. If they began with a plain underscore, Python wouldn’t export them from their modules.

property identifier

A good string to use for looking up this control in a document.

In practice, it could be stored under a different string as well, or instead, or it might not be stored at all. But this is often a reasonable shot.

β€œ.. list-table:: Control keywordsn” ” :header-rows: 1n” β€œn” ” * - Keywordn” ” - Groupn” ” - Notesn” ” - Purposen”