summaryrefslogtreecommitdiff
path: root/tex/context/base/mkiv/symb-ini.mkxl
diff options
context:
space:
mode:
Diffstat (limited to 'tex/context/base/mkiv/symb-ini.mkxl')
-rw-r--r--tex/context/base/mkiv/symb-ini.mkxl341
1 files changed, 0 insertions, 341 deletions
diff --git a/tex/context/base/mkiv/symb-ini.mkxl b/tex/context/base/mkiv/symb-ini.mkxl
deleted file mode 100644
index 53a1f8979..000000000
--- a/tex/context/base/mkiv/symb-ini.mkxl
+++ /dev/null
@@ -1,341 +0,0 @@
-%D \module
-%D [ file=symb-ini,
-%D version=1998.07.20,
-%D title=\CONTEXT\ Symbol Libraries,
-%D subtitle=Basic Symbols Commands,
-%D author=Hans Hagen,
-%D date=\currentdate,
-%D copyright={PRAGMA ADE \& \CONTEXT\ Development Team}]
-%C
-%C This module is part of the \CONTEXT\ macro||package and is
-%C therefore copyrighted by \PRAGMA. See mreadme.pdf for
-%C details.
-
-%D The macros described here used to be part of the \type {core-con} module. I
-%D decided to move them here when symbolsets saw the light. Let their light shine.
-
-\writestatus{loading}{ConTeXt Symbol Libraries / Initialization}
-
-\registerctxluafile{symb-ini}{}
-
-\unprotect
-
-%D \macros
-%D {definesymbol, symbol}
-%D
-%D Converting numbers or levels into a character, romannumeral, symbol or something
-%D else, is supported by many \CONTEXT\ commands. Therefore we need a mechanism for
-%D linking such numbers to their counterparts.
-%D
-%D First we take care of symbols. These are for instance used in enumerations and
-%D itemizations. We have:
-%D
-%D \showsetup{definesymbol}
-%D \showsetup{symbol}
-%D
-%D Symbols are simply linked to a tag. Such tags can be numbers or strings.
-%D
-%D \starttyping
-%D \definesymbol [1] [$\bullet$]
-%D \definesymbol [level 5] [$\star$]
-%D \stoptyping
-
-\installcorenamespace{symbol}
-\installcorenamespace{symbols}
-\installcorenamespace{symbolset}
-\installcorenamespace{symboldefault}
-
-%D For now we only have one option.
-
-\installparameterhandler\??symbols {symbols}
-\installsetuphandler \??symbols {symbols}
-
-\appendtoks
- \doifelse{\symbolsparameter\c!stylealternative}\v!math
- \settrue\setfalse\prefermathovertextchar
-\to \everysetupsymbols
-
-\setupsymbols
- [\c!stylealternative=\v!text]
-
-\let\currentsymbol \empty
-\let\currentsymbolset\empty
-
-\newtoks\t_symb_setups
-
-\let\m_symb_current_set\empty
-
-\newconditional\c_symb_found
-
-\newtoks\everysymbol
-
-%D We don't use the commandhandler as symbols have their own subsystem for resolving
-%D values.
-
-\permanent\tolerant\protected\def\definesymbol[#1]#*[#2]#*[#3]%
- {\ifparameter#3\or
- \setvalue{\??symbol#1:#2}{#3}%
- \doifsomething{#1}{\addvalue{\??symbolset#1}{#2}}%
- \else
- \setvalue{\??symbol\m_symb_current_set:#1}{#2}%
- \addvalue{\??symbolset\m_symb_current_set}{#1}%
- \fi}
-
-\permanent\protected\def\doifelseinsymbolset#1#2{\ifcsname\??symbol#1:#2\endcsname\expandafter\firstoftwoarguments\else\expandafter\secondoftwoarguments\fi}
-\permanent\protected\def\doifinsymbolset #1#2{\ifcsname\??symbol#1:#2\endcsname\expandafter\firstofoneargument \else\expandafter\gobbleoneargument \fi}
-\permanent\protected\def\doifelsesymbolset #1{\ifcsname\??symbolset#1\endcsname\expandafter\firstoftwoarguments\else\expandafter\secondoftwoarguments\fi}
-
-\aliased\let\doifinsymbolsetelse\doifelseinsymbolset
-\aliased\let\doifsymbolsetelse \doifelsesymbolset
-
-\letvalue{\??symbolset}\empty
-
-%def\symbolset#1{\csname\??symbolset\ifcsname\??symbolset#1\endcsname#1\fi\endcsname} % no [#1], to be used in commalists etc
-
-\permanent\def\symbolset#1{\begincsname\??symbolset#1\endcsname} % no [#1], to be used in commalists etc
-
-%D Since symbols are used frequently in interactive documents, we speed up this one.
-%D Well, that was history, since now we simplified things a bit, because the low
-%D level macros have been sped up every now and then.
-
-% We support both:
-%
-% Test test \symbol[whatever]\ test \symbol[whatever].
-% Test test \symbol{whatever} test \symbol{whatever}.
-
-\permanent\tolerant\protected\def\symbol[#1]#*[#2]%
- {\ifarguments
- \expandafter\symb_place_argument
- \or
- \symb_place_argument{#1}%
- \or
- \dontleavehmode
- \edef\currentsymbol{#2}%
- \ifcsname\??symbol#1:#2\endcsname
- \symb_place_indeed{#1:#2}% maybe use \lastnamescs
- \orelse\ifcsname\??symboldefault#1\endcsname
- \symb_place_named{#1}% maybe use \lastnamescs
- \else
- \symb_place_normal
- \fi
- \fi}
-
-\def\symb_place_argument#1%
- {\dontleavehmode
- \edef\currentsymbol{#1}%
- \ifcsname\??symbol\currentsymbolset:#1\endcsname
- \symb_place_indeed{\currentsymbolset:#1}%
- \else
- \symb_place_normal
- \fi}
-
-\def\symb_place_normal
- {\setfalse\c_symb_found
- \the\t_symb_setups
- \ifconditional\c_symb_found \else
- \symb_place_retry\currentsymbol % hm, isn't this redundant?
- \fi}
-
-\def\symb_place_indeed#1% \relax's prevent lookahead problems
- {\settrue\c_symb_found
- \begingroup
- \the\everysymbol
- \csname\??symbol#1\endcsname\relax
- \endgroup}
-
-\letvalue{\??symbol}\firstofoneargument
-
-\permanent\def\directsymbol#1#2% no \relax, there can be an argument, see lists
- {\begincsname\??symbol#1:#2\endcsname}
-
-\protected\def\symb_fetch
- {\ifconditional\c_symb_found
- \expandafter\gobbleoneargument
- \else
- \expandafter\symb_fetch_indeed
- \fi}
-
-\def\symb_fetch_indeed#1%
- {\ifcsname\??symbol#1:\currentsymbol\endcsname
- \symb_place_indeed{#1:\currentsymbol}%
- \orelse\ifcsname\??symboldefault#1\endcsname
- \symb_place_named{#1}%
- \fi}
-
-\def\symb_place_named#1% \relax's prevent lookahead problems
- {\begingroup
- \setbox\scratchbox\hbox\bgroup
- \the\everysymbol
- \getglyphstyled
- {\csname\??symboldefault#1\endcsname}%
- {\tochar{n:\currentsymbol}}%
- \relax
- \egroup
- \ifdim\wd\scratchbox>\zeropoint
- \unhbox\scratchbox
- \endgroup
- \setxvalue{\??symbol#1:\currentsymbol}%
- {\symb_place_named_indeed{#1}{\currentsymbol}}%
- \settrue\c_symb_found
- \else
- \endgroup
- \fi}
-
-\protected\def\symb_place_named_indeed#1#2% \relax's prevent lookahead problems
- {\settrue\c_symb_found
- \begingroup
- \the\everysymbol
- \getglyphstyled
- {\csname\??symboldefault#1\endcsname}%
- {\tochar{n:#2}}%
- \relax
- \endgroup}
-
-\def\symb_place_retry#1%
- {\ifcsname\??symbol:#1\endcsname
- \symb_place_indeed{:#1}%
- \else
- #1%
- \fi}
-
-%D \macros
-%D {definefiguresymbol}
-%D
-%D To simplify defining figure symbols, we offer:
-%D
-%D \showsetup{definefiguresymbol}
-%D
-%D By default, such symbols scale along the current bodyfont size or running font
-%D size (which is better).
-
-\ifdefined\externalfigure \else \def\externalfigure[#1][#2]{#1} \fi
-
-\def\defaultsymbolfactor{10}
-\def\defaultsymbolheight{1.25ex}
-
-\permanent\tolerant\protected\def\figuresymbol[#1]#*[#2]%
- {\externalfigure[#1][\c!reset=\v!yes,\c!symbol=\v!yes,\c!height=\defaultsymbolheight,#2]}
-
-\permanent\tolerant\protected\def\definefiguresymbol[#1]#*[#2]#*[#3]%
- {\ifarguments\or\else
- \definesymbol[#1][{\symb_figure[#2][#3]}]%
- \fi}
-
-%D \macros
-%D {doifsymboldefinedelse}
-%D
-%D A handy private one:
-
-\def\symb_fetch_first
- {\ifconditional\c_symb_found
- \expandafter\gobbleoneargument
- \else
- \expandafter\symb_fetch_first_indeed
- \fi}
-
-\def\symb_fetch_first_indeed#1%
- {\doifinsymbolset{#1}\currentsymbol{\settrue\c_symb_found}}
-
-\def\symb_fetch_second#1%
- {\doifinsymbolset\empty\currentsymbol{\settrue\c_symb_found}}
-
-\permanent\protected\def\doifelsesymboldefined#1%
- {\begingroup
- \edef\currentsymbol{#1}%
- \let\symb_fetch\symb_fetch_first
- \setfalse\c_symb_found
- \the\t_symb_setups
- \ifconditional\c_symb_found
- \endgroup\expandafter\firstoftwoarguments
- \else
- \symb_fetch_second\currentsymbol
- \ifconditional\c_symb_found
- \endgroup\doubleexpandafter\firstoftwoarguments
- \else
- \endgroup\doubleexpandafter\secondoftwoarguments
- \fi
- \fi}
-
-\aliased\let\doifsymboldefinedelse\doifelsesymboldefined
-
-%D \macros
-%D {setupsymbolset,startsymbolset}
-%D
-%D From these macro definitions one can deduce that symbols can be grouped in
-%D symbol sets:
-%D
-%D \starttyping
-%D \startsymbolset [navigation 1]
-%D \definefiguresymbol [Next] [mp-symb.1]
-%D \definefiguresymbol [Prev] [mp-symb.2]
-%D \stopsymbolset
-%D \stoptyping
-%D
-%D Such a symbol can be typeset with:
-%D
-%D \starttyping
-%D \setupsymbolset[navigation 1]\symbol[Next]
-%D \stoptyping
-%D
-%D or simply:
-%D
-%D \starttyping
-%D \symbol[navigation 1][Next]
-%D \stoptyping
-%D
-%D Formally:
-%D
-%D \showsetup{setupsymbolset}
-%D \showsetup{startsymbolset}
-
-\installcorenamespace{symbolsets}
-
-\permanent\tolerant\protected\def\startsymbolset[#1]#*[#2]%
- {\pushmacro\m_symb_current_set
- \def\m_symb_current_set{#1}%
- \ifarguments\or\or
- \getdummyparameters[\s!font=,#2]%
- \edef\p_font{\dummyparameter\s!font}%
- \ifempty\p_font\else
- \letvalue{\??symboldefault#1}\p_font
- \fi
- \fi}
-
-\permanent\protected\def\stopsymbolset
- {\popmacro\m_symb_current_set}
-
-\permanent\protected\def\setupsymbolset[#1]%
- {\edef\currentsymbolset{#1}%
- \ifcsname\??symbolsets\currentsymbolset\endcsname \else
- \symb_setup_symbol_set
- \fi}
-
-\def\symb_setup_symbol_set
- {\normalexpanded{\t_symb_setups{\symb_fetch{\currentsymbolset}\the\t_symb_setups}}%
- \letvalue{\??symbolsets\currentsymbolset}\empty} % speedup
-
-\permanent\protected\def\resetsymbolset
- {\t_symb_setups\emptytoks}
-
-\permanent\protected\def\forcesymbolset[#1]%
- {\t_symb_setups{\symb_fetch{#1}}}
-
-%D \macros
-%D {showsymbolset}
-%D
-%D \showsetup{showsymbolset}
-
-\fetchruntimecommand \showsymbolset \f!symb_run
-
-%D \macros
-%D {usesymbols}
-%D
-%D \showsetup{usesymbols}
-
-\permanent\protected\def\usesymbols[#1]{\clf_usesymbols{#1}}
-
-%D As longs as symbols are linked to levels or numbers, we can also use the
-%D conversion mechanism, but in for instance the itemization macros, we prefer
-%D symbols because they can more easier be (partially) redefined.
-
-\protect \endinput