Hi. ** Aditya Mahajan [2010-12-09 23:49:26 -0500]:
This is a proposal for a new way of selecting math mappings in MkIV. I want to get input from other math users whether this syntax would take care of all scenarios or not.
There are five different ranges in mathematics: - digits (0..9) - lower case Latin (abc..z) - upper case Latin (ABC..Z) - lower case Greek (αβγ..ζ) - upper case Greek (ΑΒΓ..Z) Should be: αβγ..ω and ΑΒΓ..Ω A user may want to control what each range is mapped to. So, I suggest a setup command
\setupmathmappings [ digits={style,alternative}, lclatin={style,alternative}, uclatin={style,alternative}, lcgreek={style,alternative}, ucgreek={style,alternative}, ]
where the options for style are
normal, bold
while the options for alternative are
normal, italic, sans, sansitalic, blackboard, script
This command will the mappings for each range. **NOTE**: All combinations are not valid.
A companion command
\definemathmappings [whatever] [....]
can be used to define multiple mappings. These mappings can be used by
\setupmathmappings[whatever]
(An alternative is that these mappings are activated using \whatever ...)
For example, we can define a command to typeset vectors using
\definemathmappings [vectors] [ digits={bold,normal}, lclatin={bold,normal}, uclatin={bold,normal}, lcgreek={bold,normal}, ucgreek={bold,normal}]
\def\VEC{\groupedcommand{\setupmathmappings[vector]}{}} Is it should be \def\VEC{\groupedcommand{\setupmathmappings[vectors]}{}} ?
If later, we want to represent vectors as sans serif, we can use
\definemathmappings [vectors] [ digits={normal,sans}, lclatin={normal,sans}, uclatin={normal,sans}, lcgreek={normal,sans}, ucgreek={normal,sans}]
This interface makes it easy to switch math fonts for disiplines that want different style for different alphabet ranges.
It is relatively easy to implement the above interface. All we need is some bookkeeping to set the right attributes. The default math mapping commands can be reimplmeneted using \definemappings. Before implementing this, I want to ask the opinion of other math users.
Would the above interface take care of different use cases, or is it missing something? IMHO, style is already used so it is normal. Finally, I am not too happy with the syntax. There are only a few ConTeXt commands in which the keys take a pair of values. Another option is to allow all 12 valid options
normal, italic, sans, sansitalic, blackboard, script, bold, bolditlaic, boldsans, boldsansitalic, boldblackboard, boldscript This very depends on used fonts. with the variants sansitalic-italicsans, boldsans-sansbold, etc. as synonmyms.
Which way of specifying the keys do you prefer?
Aditya Actually I don't get what you try to do. I thought that 'font switching' command should take care of font switching either in math or text modes (if typescript is set properly). Right now the only good example of usage of proposed mechanism is \VEC command (for vectors and etc).
--- WBR, Vladimir Lomov. -- I share the belief of many of my contemporaries that the spiritual crisis pervading all spheres of Western industrial society can be remedied only by a change in our world view. We shall have to shift from the materialistic, dualistic belief that people and their environment are separate, toward a new conciousness of an all-encompassing reality, which embraces the experiencing ego, a reality in which people feel their oneness with animate nature and all of creation. - Dr. Albert Hoffman