Open main menu

Changes

no edit summary
= {{cmd|definemathstackers}} =
 
 
ConTeXt has a nice structure called {{code|1=mathstackers}} in order to define new math commands in which some characters
are stacked over another one. For more information refer to {{src|math-stc.mkiv}}.
 
The two command {{code|1=\mathover[symbol]{}{}}} and {{code|\mathunder[symbol]{}{}}} are built and can be used directly. However one may define one's own commands.
 
A typical example is when you want to put a small circle on top of a letter (as one would when defining the topological interior of a set…).
To do so we define first a new stacker named here {{code|1=MySymbol}}, and then invoking that with {{code|1=\definemathover}} we define two new commands {{code|1=\interior}} and {{code|1=\mystarred}} which can be used in math mode.
 
<context source="yes">
\definemathstackers[MySymbol]
[voffset=-.3\mathexheight,
hoffset=\zeropoint,
mathclass=ord,
topoffset=.4\mathemwidth, % poor man's italic correction
middlecommand=\mathematics]
\definemathover[MySymbol][interior]["2218] %this a small circle
\definemathover[MySymbol][mystarred]["2717] % this is an asterisk
\starttext
 
Here is the new command \type{\interior{K}}: $\interior{K}$. Compare this to \type{\mathring{K}}: $\mathring{K}$.
 
Here is the new command \type{\mystarred{K}}: $\mystarred{K}$.
 
Here are the built-in commands \type{\mathover} and \type{\mathunder}:
 
$\mathover[symbol]{"2217}{A}$, % 2217 is an asterisk
$\mathover[symbol]{"2218}{A}$, % 2218 is a circle
$\mathover[symbol]{"2219}{A}$, % 2219 is a bullet
$\mathunder[symbol]{"2217}{A}$,
$\mathunder[symbol]{"2218}{A}$,
$\mathunder[symbol]{"2219}{A}$.
 
 
\stoptext
</context>
When typeset in {{code|1=mkiv}} one can see that the command {{code|1=\interior{K}}} shows the letter K with a small circle above it.
 
 
== Overbraces and underbraces ==
1,005

edits