I haven't looked at the patch, just at this description here. A question
arises: How would that schem cope with 'unknown'

\a 12

unless you know whether \a is defined as \def\a#1#2{#1+#2} or \def\a {x}?

Well, my assumption is that every argument is a brace, like in \newcommand{\foo}[n]{...}. Not thought about the \def case. Will think about this, hope it can be handled in the same way.

I.e. how do ou determine wheter the '1' is an argument to the
macro or some completely unrelated stuff that happens to come after some
zero-arg macro?

The key idea is that this information is only needed during draw/ metric. Only at that point arguments are shifted around between the macro and its vicinity. It doesn't matter where an argument is during load, save and export because in any case the same output should be created. The reason to shift arguments at all is to make a macro with arguments behave like one inset (e.g. it can be selected as one atom).

Schimmi


Attachment: PGP.sig
Description: Signierter Teil der Nachricht

Reply via email to