@baxx \- is a discretionary hyphen, if you need the space then just use \hspace*{1cm} (preferably hidden behind some more reasonable document structure markup)
@AlexG About your AR-bug widget: under which condition should it be inserted? And how often? One per page, per layer, per document, per link? With the newest expl3 code I get lots of them and I think one should reduce this a bit with some booleans (@JosephWright).
@JosephWright well while the difference between pagesattr and pageattr is not large I think on the driver level it should be enough (and follows the pdftex/luatex naming). Should there be (or is there) an expl3 variant for \pdfpagesattr?.
@JosephWright I think safety code (also e.g. when a key is overwritten) can be added later.
@JosephWright when we need page resources we will have to use numbers, so I would suggest _pages_ and _page_1_ (and we need an absolute page counter ...).
You can use \@tfor. I provide also a better redefinition of the dot under according to your wish:
\documentclass{article}
\usepackage{graphicx}
\let\d\relax
\DeclareRobustCommand{\d}[1]{%
\oalign{#1\cr\hidewidth\scalebox{0.5}{\textbullet}\hidewidth\cr}%
}
\makeatletter
\newcommand{\ds}[1]{%
...
@JosephWright Yes, I think so. I want to put a box around every character in a string. And the string can certainly include blank characters.
So a blank space would require its own box.
Can anyone provide a reference for \@tfor? It appears to be part of the language.
Are there other newer commands that do the same thing? Say in LaTeX 3?
\@tfor NAME := LIST \do {BODY}
if, before expansion, LIST = T1 ... Tn where each Ti is a
token or {...}, then executes BODY n times, with NAME = Ti
on the i-th iteration. Works for n=0.
@FaheemMitha We have an internal set up in expl3 for expandable loops with spaces, etc., but it's really not a general function (at the moment at lest)
@egreg it depends how one defines "string" for the input. If you choose to allow brace groups it's easily extended, and I leave as an exercise for the reader...
@UlrikeFischer this is wrong though texfaq.org/FAQ-dvipsgraphics dvips supports several bitmap formats, pcx, bmp, msp, pict from emtex specials and pict and pntg from oztex
@JosephWright That's a pitty, indeed. Thatswhy I had to define \pbs_zap_properties: in order to "clean" page resources from unneeded entries, in pdfbase.
@egreg do you know any old oztex users.... what was the pntg filetype , it is documented page 50 of repo1.macintoshgarden.org/Garden/manuals/ozuser.pdf and dvips.def still has a line \@namedef{Gin@[email protected]}#1{{pntg}{}{#1}} but I couldn't see any code in the dvips sources supporting this (and didn't know how to make such a file to test...) (@JosephWright)
@FaheemMitha it is just letting \d to \relax to undefine it so it can be defined later
@FaheemMitha it is a dot-under accent by default but in that question it was being defined to be something else, but if you do not want to use the command \d just forget about it it is not relevant to the general loop issue.
@FaheemMitha Unlike individual users who tend to update quite frequently, businesses are extremely conservative in using new hardware or software; the cost of porting is too large. So there is a ton of truly ancient hardware and software in the business world.
@FaheemMitha The US military is also a big user of ancient hardware.
@FaheemMitha I don't think it's as simple as that. Not quite sure what a portable language is, though. All languages are portable to some degree, but I doubt any language is truly portable in reality.
@FaheemMitha Of course I guess assembly language isn't really portable.
@DavidCarlisle My main worry these days is making sure my version of PsychoPy (a Python based experiment platform) will run my experiments. Sometimes this involves successive downgrades until you find a version that works. It's all very scientific. :)
@FaheemMitha Of course this is a minimum requirement. But that doesn't guarantee portability. Writing portable code at that level also requires a strict prohibition on using OS-specific functions, for example. So code can be portable, languages, not so much.
@FaheemMitha define "C"... C from a vax era is probably K&R C and good luck with java or python or R, the environments and languages that were portable between machines of the 80s and 90s are not necessarily portable between machines now, and that is what matters if you are talking about upgrading old hardware
@FaheemMitha NewDocumentCommand is xparse, the \tl_... functions are from expl3
@FaheemMitha that's why 2e is called 2e, latex3 was already in test but not ready for public use, so 2-epsilon was supposed to be a small step towards latex3 from latex 2.09
@FaheemMitha also that's the documentation for expl3 which was a refactoring of (some of) the latex3 code (can't remember when, 2000-and something) to work as a package in latex2e (and be more robust and usable) documentation of the earlier latex3 work is available in various papers on the project website, but it was never released for general use.
Looks like \l_tmpa_tl is just a temporary variable, right? If so, what's with the wacky name? I found some discussion of temporary variable name conventions, but what's wrong with x, for example?
@FaheemMitha Most of the time, the name should be split up: \<scope>_<module>_<name>_<type>, but for a small number of very common cases we have shortened names
@FaheemMitha What \x doesn't allow is checking: we have 'sanity' code for programmers to check that they don't do e.g.\tl_set:Nn \g_tmpa_tl - local setting of a global variable
@FaheemMitha look at common "normal" latex code, it used to be that packages would all use \@tempa as a local scratch variable and everything seemed to work until users combined different packages in interesting ways and they over-wrote each other, now most packages use \mypackage@temp or some such, the l3 module system is just a formalisation of that idea.
@FaheemMitha not related to messages really. Messages in newer packages can be more informative as there are rather more bytes available. latex2e+amsmath only just had enough space to make a document really couldn't spare any more bytes on error reporting.
@FaheemMitha actually tex's error reporting is pretty useful, people just use it incorrectly, or use "tex editors" that do not show the full message, just a mangled summary.