On Mon Feb 10, 2025 at 2:56 PM CET, Tadziu Hoffmann wrote: > > AT&T troff stores font size in points. This means it > > converts the argument to .ps from whatever unit it's in > > (default is points) to basic units and then divides that > > by the size of 1 point. > > Did AT&T troff actually allow the argument to .ps to be > in anything other than points? The Manual says: > > The default scaling is m for the horizontally-oriented > requests and functions ll, in, ti, ta, lt, po, mc, > \h, \l, and horizontal coordinates of \D; v for the > vertically-oriented requests and functions pl, wh, ch, dt, > sp, sv, ne, rt, \v, \x, \L, and vertical coordinates of > \D; p for the vs request; and u for the requests nr, if, > and ie. *All* other requests ignore any scale indicators.
Hm, good point. The only "traditional" troff I have access to is Plan 9 troff, which SEEMED to honor units in argument to ps at a first glance, but on a closer inspection it does not: $ 9 troff << EOF >/dev/null .tm \n(.s .ps 1i .tm \n(.s .nr x 1i .tm \nx .nr x 1p .tm \nx .ps 0 .tm \n(.s EOF 10 4 720 10 4 In that case, the behavior described above seems unique to neatroff, which does support units in ps argument, but doesn't (yet) support fractional font sizes. ~ onf