ntg-context - mailing list for ConTeXt users
 help / color / mirror / Atom feed
From: Taco Hoekwater <taco.hoekwater@wkap.nl>
Subject: Re: Math module alpha version
Date: Mon, 25 Oct 1999 10:17:58 +0000 (GMT)	[thread overview]
Message-ID: <14356.11862.866526.233863@PC709.wkap.nl> (raw)
In-Reply-To: <3811C020.76372BDF@wxs.nl>

>>>>> "Hans" == Hans Hagen <pragma@wxs.nl> writes:

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

Amount of feedback is truely amazing. Thanks all!

    >> Stuff I already know:
    >> 
    >> - all the limitations in Downes' package still apply - no
    >> amsfonts support - no 'array'-like command

    Hans> Some first remarks:

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

Grid snapping etc. should be applied to both. I'll start working on
that today.  \dostartformula is still functional (even has some extra
options), but \startdmath has the 'advantage' of automatic line
breaking. I think both should stay (at least until \startdmath is as
good as \startformula).

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

Still needs work anyway. Too much stuff is hardwired as it is.

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

    Hans> combined with

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

    Hans> this saves some init time.

OK, I understand that.

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

This is in \QED? \QED Should be merged with the trailing punct. code,
since it is essentially a very special kind of punctuation.

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

Will check. But the idea is that this will stay a module, agreed?.

    Hans> (5) Suggestion:

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

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

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

Saving memory is hardly a concern, but the flexibility gain is
important. Will do (and try to blend in the name with the other
command names).

    Hans> (6) \def\boldmath...

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

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

    Hans> or,

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

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

Clear. But this is still a hack. I want a 'mx' family along with 'mm',
since \boldmath might well mean \serifmath or something. It all depends
on how you define your headings.

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

Will check and merge if doable.

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

The \meaning stuff is typically amstex.

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

Sure.

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

Wait till you see the \dots one... I'll reinsert that sooner or later 
anyway.

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

I don't care about the name here, but lots of math really needs a
sans-serif shape for identifiers and constants. (much like the way
bold is used for vector notation). I think we can live without tt, but 
the sans is really needed.

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

I dont care if ^ and _ are active, but I need to check some conflicts
with the mathtime macros (where _ is active to solve a spacing problem 
for $x_j$).

    Hans> (13) \let\samplerelation\hiderel

Huh?

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

OK, but style= doesn't make much sense then. Anyway, we are not
limited by the latex commands

    Hans> (15) replace the ams framed stuff and parameters:

    Hans>    \presetlocalframed[mo]

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

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

I know. Just hacked something quickly so that it will more or less
work. I didn't want to get into the \framed stuff then, because lots
of portions of the code wouldn't even compile yet.

    Hans> (16) Is this ifstar thing needed?

No, not any more. LaTeX artifact, I'll kill it in the next version. 

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

No, not the way the macros are now. See Michael's comments on the subject.

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

Just use

  \saveprimitive \mark

then, with automatic addition of 'normal' by \saveprimitive?

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

I thought it was quite funny ;-) This is probably the most compact
code I've ever seen that is still documented! Will move this into
parameters, since I do want to change some of the values
interactively. 

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

Hm. The \listwidth is another latex artifact, and it is related to
latex's list handling macros. This is actually a part of context I
don't understand very well. Suppose I am in e.g. a nested
\startsmaller or a second-level \item.  Then where is the identation
coming from? Is there a macro I can use to get at these values?

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

That's the idea. 

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

In the gp@continue, you mean? This can be done a lot cleaner than it
is now. The latex code has to go through a lot of trouble, because it
is called from somewhere in the middle of the expansion of \end{..},
but in context there is no need to be so tricky.

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

OK, later.

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

    Hans> Hans

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

-- 
Taco Hoekwater                                 taco.hoekwater@wkap.nl
Kluwer Academic Publishers                            -- Pre Press --
Achterom 119, 3311 KB Dordrecht, The Netherlands  tel.  31-78-6392550
---------------------------------------------------------------------


  reply	other threads:[~1999-10-25 10:17 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
1999-10-25 10:17   ` Taco Hoekwater [this message]
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=14356.11862.866526.233863@PC709.wkap.nl \
    --to=taco.hoekwater@wkap.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).