ntg-context - mailing list for ConTeXt users
 help / color / mirror / Atom feed
From: Hans Hagen <pragma@wxs.nl>
Cc: ntg-context@ntg.nl
Subject: Re: Math module alpha version
Date: Sat, 23 Oct 1999 15:03:12 +0100	[thread overview]
Message-ID: <3811C020.76372BDF@wxs.nl> (raw)
In-Reply-To: <14352.28477.809258.332762@PC709.wkap.nl>

[sorry for this rather technical reply, but since many present on this
list use math ...]

Taco Hoekwater wrote:

> I just uploaded a preliminary, very alpha version of the math
> module. The largest portion of the module is actually a more or less
> automatic conversion of Michael Downes' breqn package for latex.
> 
> The code is far from perfect, but it is about time to get some
> feedback on macros that should be added and/or stuff that is *really*
> broken. Therefore, if you are interested, have a go!
> 
>   http://wwww.cybercomm.nl/~bittext/temp/m-math.zip
           ^^^
> Stuff I already know:
> 
>  - all the limitations in Downes' package still apply
>  - no amsfonts support
>  - no 'array'-like command

Some first remarks:

(1) Can we still use the \dostartformula in this form, since it is tuned
for grid snapping and spacing, or should it be applied to math lines?  

(2) Option processing: moving the inits to the setup macro will speed up
things. (To suit the current code: 

   \appendtoks \processaction[..]\to \everymathsetup 

combined with 

  \def\setupmath[#1]{\getparameters[..][#1]\the\everymathsetup}

this saves some init time.

(3) Change hard coded 12pt (10pt) into \bodyfontsize. 

(4) \dotext cum suis can be combine with existing stuff in core-mat.tex

(5) Suggestion: 

\def\definemathoperator#1 #2 #3 %
  {\unexpanded\def#1{\dohandlemathoperator{#2}{#3}}

\def\dohandlemathoperator#1#2%
  {..}

saves memory (which is I admit a bit of a joke) but permits runtime
overruling e.g. when stripping down. 

(6) \def\boldmath... 

more efficient is to use an additional level of indirectness, and only
change the file name mappings (see preliminary unicode/chinese module). 

\def\boldmath%
  {\definefontsynonym[MathRoman][BoldMathRoman]....\setmathfamilies}

or, 

[mr=\truefontname{Math}Roman,...]

and \definefontsynonym[Math][MathRoman] which is only one call! Untested
for \setmathfamilies, but when failing there it can be made to work. 

(7) Extend the symbols module with math symbols, and then map the latex
stuff on that. \usesymbols is already taken / reserved, so loading latex
symbols will take place with \UseMathSymbols (uppercase suits the
definition macros better

(8) Use \convertargument/command instead of \meaning stuff. 

(9) Reverse \; and \stickspace defs. Functionally the same but looks
better -) 

(10) This root macro is awful indeed. A cold winternight challenge. 

(11) sans and type: not a mistake, on purpose; switching style is a
massive operation. We can use fma 15 for someting like that, but then I
prefer a more functional name over ss 

(12) This ^ _ looks solvable since we know that we're dealing with
context. 

(13) \let\samplerelation\hiderel

(14) use [style=] for style only and add use [inner=] (more in tune with
context) 

(15) replace the ams framed stuff and parameters: 

   \presetlocalframed[mo]

(frame=1pt does not suit context anyway, frameset => offset) 

by hooking framed into this we get much more functionality! Actually I
would like to have frame applied to every component of an eq, but that's
for later. I also want a [command=] hook. 

(16) Is this ifstar thing needed? 

(17) Can't you use a \hbox{}\setbox\scratchbox=\lastbox instead of relax
in \z@rule?

(18) \saveprimitive -> syst module and more in tune with context,
\normal...

(19) Ah, this \do#1#2 is a joke, isn't it? par 124-126 can best be
parameterized. 

(20) \listwidth; you can use \setlocalhsize .. 

(21) .. incorrectly set .. this was rather on purpose -) Just beter
avarage spacing with the normal correction macros but maybe the ams
alternative shortskip macros take care of this. 

(22) Nice \lowercase hack (if I get it right) in 180. Can't you use
syst-* macros for this btw?  

(23) Inserts and marks. Something for later (at least \localcolorstrue
and \postponefootnote..). 

(x) Off line we can discuss removing some of the code uggliness you
mention. 
(y) Corrections to documentation not included here. 
(z) Now we need a sample document (with davids examples etc). 

Hans

-----------------------------------------------------------------
                                          Hans Hagen | PRAGMA ADE
              Ridderstraat 27 | 8061 GH Hasselt | The Netherlands
      tel: 038 477 53 69 | fax: 038 477 53 74 | www.pragma-ade.nl
-----------------------------------------------------------------


  reply	other threads:[~1999-10-23 14:03 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
1999-10-22 14:05 Taco Hoekwater
1999-10-23 14:03 ` Hans Hagen [this message]
1999-10-25 10:17   ` Taco Hoekwater
1999-10-25  9:29     ` Hans Hagen

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=3811C020.76372BDF@wxs.nl \
    --to=pragma@wxs.nl \
    --cc=ntg-context@ntg.nl \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).