Selon Herbert Voss <[email protected]>: > Hi all, > > am I right that I cannot use node.traverse_id for node _trees_ > like the following one? > > \directlua{function checknode(head) > for t in node.traverse(head) do > if t.id==0 or t.id==1 then checknode(t.list) end > if t.id==37 then > if t.char>96 and t.char<122 then t.char=t.char-32 end > end > end > return true > end > callback.register("post_linebreak_filter",checknode)} > > abc2112\par And so on \dots %% converting into uppercase > > \bye > > traverse and traverse_id work only on lists, right?
I'm not sure I understand the point, but indeed traverse(_id) browses the nodes of a list; if one of those nodes is a v/hlist, then you have to call the function recursively on its head (it isn't done automatically, if that's what you're asking). > And next question: should one use t.head instead of t.list. > I read that the name list changes to head, but I can't find > the documentation where I read it. You should use "head", because "list" is more or less deprecated, but for the moment they're equivalent (I *think* "list" will disappear in v.0.80). Best, Paul
