# [NTG-context] Math literal colon

Manuel Blanco manuelbl at ucm.es
Mon Jul 20 21:34:19 CEST 2015

I'm not sure I understand what you mean. It's true that the colon used
in \colon differs from the one used if you input : directly by default
(it's smaller). In any case, I don't see where your discussion is
going, so I will write here a few definitions.

This is the definition of amsmath in LaTeX. (Used like $f\amscolon A \to B$)

\def\amscolon{\nobreak\mskip2mu\mathpunct{}\nonscript\mkern-\thinmuskip
\mathord{\mathchar\:}\mskip6muplus1mu\relax}

The definition of a coordinate separator should be with \mathpunct,
although it doesn't look particularly good, so may be better to use no
space at all (as commented in other mails). (Used like $(x\projsep y\projsep z)$)

\def\projsep{\mathpunct{\mathchar\:}}
% if no space is wanted, the definition should be
% {\mathpunct{\mathchar\:}\nonscript\mkern-\thinmuskip}

In the case of \ratio, since it's a binary operator, it should be
\mathbin; but may be that's too much space and tighter spacing would
be better. (Used like $A \ratio B \quad 3\ratio2\ratio1$)

\def\ratio{\mathbin{\mathchar\∶}} % may be tighter spacing
playing with other atom types and \mkern

And also the relation : which is the spacing that comes by default and
is the same as if a macro contained \mathrel{\mathchar\:}.

That said, if you want to define the normal : character in _input_ to
give you one of the above in _output_, just change the definition (in
this case I define : to give \amscolon)

\begingroup\lccode\~=\:\lowercase{\endgroup
\unexpanded\def~}{\amscolon}
\mathcode\:="8000 %

In any case, if this message is out of place, sorry, but I really
didn't understand where your question/discussion was going.


More information about the ntg-context mailing list