<div dir="ltr">multislot.sty says (at least in the version currently on CTAN, marked "Second version":<br><div><br>% This is of course a BUG, and there doesn't seem to be any way <br>% around it, short of adding another pass of reading ETX files. Doing <br>
% so would probably not be worth the effort, since the usefulness of <br>% a \resetslot command is not clear; unlike \resetglyph, it cannot be <br>% used to amend an existing \set..., but only to override it.<br><br></div>
<div>I beg to differ: I'm trying to write customized versions of t1.etx, updating a now-lost package of Ulrik Vieth's in which he simply supplied patched versions of that file. That has all the usual maintenance problems described in newlatin.mtx [sic]. Currently, the best I can do is something like:<br>
<br></div><div>\inputetx{t1}<br></div><div>\nextslot{n}<br></div><div>\setslot{whatever}...\endsetslot<br clear="all"></div><div><br></div><div>which lets me add to slots (at least, despite warnings that a slot is multiply-defined, that seems to be the effect it has, which is exactly what I want), but since there's no way to remove the kerns and ligatures of an existing slot (since the buggy \resetslot doesn't do that), there's no way properly to override a slot; with multislot.sty I can do:<br>
</div><div><br></div><div>\input multislot.sty<br></div><div><br><div>\nextslot{n}<br></div><div>\setslot{whatever}...\endsetslot<br clear="all"></div><div><br></div><div>\inputetx{t1}<br></div><br></div><div>but then I can't add to a slot.<br>
<br></div><div>I can see two solutions:<br><br></div><div>1. Make \resetslot work properly, then a slot can be overridden with multislot.sty.<br><br></div><div>2. Allow multislot.sty to take the last definition, not the first. Then I could do:<br>
</div><div><br><div>\inputetx{t1}<br></div><br>% Add to a slot<br><div><div>\nextslot{n}<br></div>\setslot{whatever}...\endsetslot<br clear="all"></div><div><div><br>\input multislot.sty<br></div>\multislottakelast % Take last definition of a slot, not first<br>
</div><div><br></div><div>% Override a slot<br></div><div><div>\nextslot{n}<br></div><div>\setslot{whatever}...\endsetslot<br clear="all"></div><div><br></div></div>I'd argue that it's also more logical this way around, because that's how "overriding" normally works: you load the original version, then you override it. With multislot.sty as it stands, you have to put overrides first, and both overriding and adding to slots is impossible (unless I've missed something).<br>
</div><div><br></div><div>At present I can see only two rather unsatisfactory options:<br><br></div><div>1. Ship diffs to t1.etx and have my build process produce patched versions.<br><br></div><div>2. Ship a modified multislot.sty which implements \multislottakelast<br>
</div><div><br></div><div>If there's a workaround I haven't thought of, I'd love to hear it.<br></div><div><br>-- <br><a href="http://rrt.sc3d.org">http://rrt.sc3d.org</a>
</div></div>