[retitling Subject: since this message is almost exclusively about terminology]
Hi Anton,
At 2024-06-25T19:44:51+0300, Anton Shepelev wrote:
> G. Branden Robinson, just quick commentincle on this:
>
> > So if "adjustment" is, as I claim, "the widening of the spaces
> > between words until glyphs abut both the left and right margins",
> > well, that's clearly not happening here.
>
> No, it is not. What you describe is "both" adjustment, whereas there
> is also left-, right-, and center adjust ment,
I find this to be an unhelpful overloading of the term.
> and only one kind of adjustment is effected by widening interword
> spaces.
The fact that this "kind of adjustment" is unique in some way suggests
that a distinct term can fruitfully be applied to describe it.
> For some reason or other, `justification' is a synonim for Groff's
> both-adjustment.
CSTR #54 does not appear to me to use the term "justification", and
groff's own documentation largely does not either. If you "git grep -i
justif[yi]" on the groff Git repository, you will find the term in only
a double handful of places, almost none of which our man pages or
Texinfo manual use to describe the operation of the formatter.[1]
Here are those places.
1. mom(7) documentation. mom is Peter Schaffter's project; he's
responsible for its lexicon, and as far as I can tell his use is
internally consistent. My understanding is that authors of mom(7)
documents are not encouraged to go mucking about with `ad` or `na`
requests; the macro package provides a preferred interface.
I notice that mom, like myself, is at pains to distinguish alignment
from adjustment/justification.
groff_mom(7):
.BR break a justified line
.CENTER
set line‐by‐line quad centre
.JUSTIFY
justify text to both margins
.LEFT set line‐by‐line quad left
.QUAD "justify" text left, centre, or right
.RIGHT
set line‐by‐line quad right
.SPREAD
force justify a line
Observe the scare quotes that recognize but express disapproval of
casual misusage of the term "justify" in a typographical context.
It's worth noting that Peter keeps his hands off of this man
page--he prefers to maintain mom's documentation in HTML, and this
page was a Bernd Warken initiative--but the language seems to be
copied from the official documentation, so there is no confusion
here.
mom(7) is responsible for 51%, by line count, of all occurrences of
forms of the word "justify" in the groff source repository.
2. It's used in GNU troff to implement and document the `rj` request,
which I think is defensible. Because this is a GNU extension, it's
a useful example of why we *don't* want to use the term "justify" to
refer to a CSTR #54 feature.
If we ever develop RTL language support (Hebrew, Farsi, Arabic) we
might want to similarly add an `lj` request, or re-mnemonicize `rj`
to mean "reverse justification". (We might still need `rtl` and
`ltr` requests to switch the direction of text flow appropriately
for the linguistic script.)
3. The meintro.me document (and its French translation) use the term to
describe alignment within titles (headers and footers) and to
describe non-indented, non-floating list displays. This is not
completely consistent with groff usage; the English version of this
document is really close to how Eric Allman left it in the 1980s.
The meref.me document, which attempts to exhaustively describe every
feature of the macro package to an experienced *roff practitioner,
does not use the term "justify" at all. It also originated with
Allman but James Clark, and much later I, heavily revised it.
4. It appears in the grn(1) man page.
src/preproc/grn/grn.1.man:or right-justify the whole
src/preproc/grn/grn.1.man:0@BOTLEFT@bottom-left-justified text
src/preproc/grn/grn.1.man:1@BOTRIGHT@bottom-right-justified text
src/preproc/grn/grn.1.man:2@CENTCENT@center-justified text
src/preproc/grn/grn.1.man:10@TOPLEFT@top-left-justified text
src/preproc/grn/grn.1.man:11@TOPCENT@top-center-justified text
src/preproc/grn/grn.1.man:12@TOPRIGHT@top-right-justified text
src/preproc/grn/grn.1.man:13@CENTLEFT@left-center-justified text
src/preproc/grn/grn.1.man:14@CENTRIGHT@right-center-justified text
src/preproc/grn/grn.1.man:15@BOTCENT@bottom-center-justified text
I would use "-aligned" here. But I don't think many people use
grn(1), let alone read its man page.
grn's source similarly uses "justify" as the name of a formal
argument to a function.
4. Two occurrences in groff_mdoc(7), both in descriptions of the `Bd`
macro. I'll fix them. (Also one source comment.)
4. ChangeLog.123:
2023-05-29 G. Branden Robinson <[email protected]>
[docs]: Revise "Page Layout" material.
* doc/groff.texi:
[...]
- Recast description of `tl` request. Migrate terminology from
"justification" to "alignment".
[...]
Fixes <https://savannah.gnu.org/bugs/?55124>. Thanks to Dave
Kemper for the report.
5. Source code comments in
contrib/mm/m.tmac
src/preproc/grn/hgraph.cpp
6. In names of classes and objects, and in diagnostic messages, in GNU
troff source to refer to _vertical_ justification of columns of
text, in an experimental feature developed by James Clark but
apparently never finished. The entire contents of the file apart
from the comment header have been "#ifdef"ed out for over 33 years.
(I observe that this would be a useful feature to have; get the
heights of the text blocks aligned in photo-ready copy is something
Kirk McCusick has complained about when asked about the typesetting
of the 4 different *BSD kernel books. I wonder where and why this
feature ran aground.)
7. In src/roff/troff/TODO, a casual list of ideas recorded by
James Clark, that doesn't get installed, and has changed little in
30 years. I have been known to apply terminological reforms to it,
though, so I reckon I should do so again. Homework for me.
8. A test case copies usage of the term from a comment in the lengthy
preamble that pod2man(1) generates. It would be wrong to change it.
9. In a few places we use the word in a sense that has nothing to do
with typography, as with a quotation from J. K. Galbraith.
> I will answer your other post as His Majesty Time permits, and I am
> beggin Him.
I look forward to it. Let's please distinguish:
A. arguments over terminology from
B. arguments over whether the "tier 1" change should be made; and
C. opinions about whether tiers 2 and/or 3 should land.
Regards,
Branden
[1] The exceptions are in the "Character Translation" section/node of
our Texinfo manual, and in descriptions of the `hys` request. I'll
fix them.
The word is used in introductory material discussing formatter
features, and in the concept index. These are to help newcomers to
GNU troff find their way into the system. ("Can it do
justification? How do I justify text?") These uses have value, in
my opinion. Once the reader finds the relevant material, we explain
it using our lexicon. That seems only appropriate to me.
signature.asc
Description: PGP signature
