On 1/27/2014 7:01 PM, Stephan Hennig wrote:
Am 27.01.2014 15:33, schrieb Stephan Hennig:

But one thing to consider for such iterators:

Another thing, the iterator should be robust in the sense that a user
can replace first and last node of the current word, e.g., during
ligature building.

There can even be times when a manipulation needs to change nodes
outside the current word, e.g., insert a node before the first or after
the last node of a word.  For that reason, when returning two word nodes
n1,n2, the iterator should not save n2.next in the state, but rather the
next node returned as n1.  That way, on could insert/replace inter-word
nodes without wrecking havoc.

in most cases writing node list manipulation code in lua is efficient enough (the average page has only a couple of thousands nodes) so then you have control over that; the more is hardcoded, the more you have to fight (complex macros at the tex end can be more of a bottleneck)

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
-----------------------------------------------------------------

Reply via email to