On 3/15/2013 6:16 PM, Jonathan Barchi wrote:
On Fri, Mar 15, 2013 at 4:35 AM, Hans Hagen <pra...@wxs.nl> wrote:
On 3/15/2013 5:18 AM, Idris Samawi Hamid ادريس   سماوي حامد wrote:

On Thu, 14 Mar 2013 20:08:38 -0600, Idris Samawi Hamid ادريس   سماوي
حامد <isha...@colostate.edu> wrote:

To round it off I guess we need a replacement for \subfs as well.


Hmm, it seems that \subfs functionality is built in through the same
mechanism. Will study this some more...


yes, but there in successive calls the last one counts

\addff{x} \addff{y} \addff{z}  -> z is used on top of the current font's set

\feature{x} \feature{y} \feature{y} -> all are used on top

we might end up with replacing \addff etc by one mechanisms

\feature{+someset} : add
\feature{-someset} : subtract
\feature{=someset} : replace


I like this proposal for its use of only a single command with the
add/remove/reset in the args. If \feature ends up being too generic,
maybe \fontfeature or \fontfeatureset instead?

To keep things more in-line with current ConTeXt syntax, you could do
something like the following:

\feature{add=foo}
\feature{subtract=bar}    (or sub, remove, etc.)
\feature{reset,add=baz}

Which would also allow, e.g.,

\feature{add=bar,remove=baz}

I'd like to avoid parsing as much as possible here as these are state changers. So, I made:

\addfeature     [f:mine] \feature[more][f:mine] \feature[+]      [f:mine]
\subtractfeature[f:mine] \feature[less][f:mine] \feature[-]      [f:mine]
\replacefeature [f:mine] \feature[new] [f:mine] \feature[=]      [f:mine]
\revivefeature  [f:mine] \feature[old] [f:mine] \feature[default][f:mine]
\resetfeature            \feature[reset]

so there are several ways to achieve the same (and one can use {} instead of [])

similar to how we're used to using key:value pairs in so many
arguments, and being able to combine them in one function call.

Hans

-----------------------------------------------------------------
                                          Hans Hagen | PRAGMA ADE
              Ridderstraat 27 | 8061 GH Hasselt | The Netherlands
    tel: 038 477 53 69 | voip: 087 875 68 74 | www.pragma-ade.com
                                             | www.pragma-pod.nl
-----------------------------------------------------------------
___________________________________________________________________________________
If your question is of interest to others as well, please add an entry to the 
Wiki!

maillist : ntg-context@ntg.nl / http://www.ntg.nl/mailman/listinfo/ntg-context
webpage  : http://www.pragma-ade.nl / http://tex.aanhet.net
archive  : http://foundry.supelec.fr/projects/contextrev/
wiki     : http://contextgarden.net
___________________________________________________________________________________

Reply via email to