groff
[Top][All Lists]
Advanced

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

Re: [Groff] .FONT for man(7)


From: Werner LEMBERG
Subject: Re: [Groff] .FONT for man(7)
Date: Sun, 05 Jan 2014 08:06:48 +0100 (CET)

>> I consider this a very, very bad idea for multiple reasons and
>> kindly ask that it be reverted, completely.
> 
> No, it's logical evolution.  That's modern groff, not the limitation
> to the abbreviation bullshit of the 1970s.  RUNOFF of the 1960s at
> MIT had the original long request names, the then coming roff
> abbreviations were very dull, when compared to the original.
> Historical Unix was not everything.

Bernd, you've missed a very important part of `an-ext.tmac's function:
It is written in *generic troff*, where groff extensions are hidden by
the `.do' request, so that this file can be used by other troff
implementations also.  Your `.FONT' macro violates this in multiple
ways.

  1. `FONT' is not a valid macro name in legacy troff implementations.
  2. You are using groff extensions in the macro body so that it can't
     processing with legacy troff implementations fail.

I second both Ralph's and Ingo's concerns: I don't see an urgent
necessity to add such a macro to `man'.  Please bear in mind that in
most cases man pages are no longer processed with troff or groff at
all; instead, they are parsed by external, simpler utilities that
convert them into a different format.  We have to stay on the
conservative side, otherwise we get illegible results.

It might be nice to `rewrite' the man macros; however, there is
already the much more flexible `mdoc', so I don't see an urgent need
for that either.

Please revert this commit.

> I did not change man.7, but only groff_man.man.  That's totally
> legal, [...]

You mean `valid', not `legal' :-)  Anyways, here's another reason to
revert: You've mixed up three things in groff_man.man which should be
added as three separate commits so that the changes can be easier
understood:

  1. Formatting.  Adding or removing `empty lines' should be a single
     commit (without a ChangeLog entry).

  2. Documenting `FONT' should have been a separate commit, together
     with the implementation of the macro.

  3. Changes to the documentation should be another commit; probably
     with a ChangeLog entry in case fundamental things have been
     changed.

  4. You changed the license without contacting the list.  Never do
     that!  Additionally, you've changed it to a *more restrictive*
     one.  This again is a no-no!

After a revert, please apply items 1 and 3 in *separate commits*.  I
know that this is extra work for the committer, but it is really worth
the additional effort to make commits reflect logical changes.

> Maybe you are right. I'll change the .ds-name into `FONT_result".

No.  Assuming for a short moment that `FONT' gets added to the `man'
package (which I don't want): The macro space of an-old.tmac is `an-',
thus a possible macro name would be `an-font-result'.  I now see that
there are some violations of that in `an-old.tmac' (e.g. `need_eo_h');
this should be fixed eventually.

> Have a look at http://7dim.org, ignore, when evil forces try to
> forbid the reading!

Bernd, we already know about that page.  No need to reiterate that.

>> It looks like you broke the ChangeLog as well.
> 
> No, that's only a fixing of broken empty spaces and tabs when using
> Emacs.

This is OK, however, it should be again a separate commit to avoid
confusion.


    Werner



reply via email to

[Prev in Thread] Current Thread [Next in Thread]