[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

More rubbish about arrows



I'm sure you're all heartily sick and tired of hearing about arrows by 
now, but...
 
I've been playing around with VFs trying to implement the control glyphs 
for the arrow-building kit I sent out last week.  As a reminder, the 
syntax there was:
 
   <leftarrow><rightarrow><extarrow>^*
   
For example, a negated long long right arrow was:
 
   <leftarrowhead><rightarrowhead><extarrowone><extarrowneg><extarrowone>
   
Unfortunately, it turns out that this syntax is a total pig to implement 
using TeX's ligtable, since the kern table ends up spending most of its 
time swapping the <rightarrow> and <extarrow> glyphs around.  A much 
simpler syntax to implement is:
 
   <leftarrow><extarrow>^*<rightarrow>
   
The advantage of this is that it's much easier to implement!  The 
disadvantage is that you can't have a single <leftarrownone> control glyph 
meaning `there is no arrow on the left end of this glyph'.  Instead, you 
need to have different <leftarrow> control glyphs depending on whether 
the <rightarrow> is a single arrow, a double arrow, a triple arrow, two 
stacked harpoons, or two stacked arrows, since these need different 
extension glyphs.
 
Unless anyone objects violently to this change (seems pretty unlikely to 
me!) I'll put together a test implemention of this version of the 
arrow-building kit, and see what it looks like.
 
Alan.