On Sat, Nov 24, 2007 at 09:35:43PM +0600, Ivan Shmakov wrote:
> >>>>> Colin Watson <[EMAIL PROTECTED]> writes:
> 
>  > If you want to check this out, install bzr and run:
> 
>  > bzr get http://www.chiark.greenend.org.uk/~cjwatson/bzr/man-db/trunk/
> 
>       I'm glad to see that so many projects benefit from using DVCS'
>       nowadays!  (Though I've recently had some problems managing a
>       Mercurial repository -- there're just so many DVCS'...  Anyway,
>       1.5 years experience with GNU Arch helps much.)

I think my scars from using GNU Arch are finally fading. If you haven't
used bzr before, you should find it to have most of the benefits and few
of the drawbacks; its designers were certainly very aware of both
aspects of Arch.

>       Unfortunately, there're a plenty of projects I'm interested to
>       participate in which still use centralized VCS'...

I have an ulterior motive, of course; I could do with more people than
just me working on man-db. :-) If it becomes necessary, I'll be happy to
move up my list the task of moving man-db's bzr repository to somewhere
where I can give access to other people, but in the meantime I expect
that just making branches will work fine.

>  > I'm not very keen on another command just for this. I would rather
>  > have something like 'man --warnings'.
> 
>       May I suggest --warnings[=WHICH-ONES] then?

Sure, that was actually what I meant but didn't say. Feel free to try it
on top of my argp branch, in fact:

  http://www.chiark.greenend.org.uk/~cjwatson/bzr/man-db/argp/

I'm not sure what to do about the IX thing; an option called --warnings
doesn't really seem to reflect the possibility of prepending some groff
input which does some other stuff. Yet, I think the important thing here
is that it should be easy for people to check their manual pages, and
that the option we add should reflect that.

How about an option called --audit (and perhaps something like
--audit-warnings=mac,escape if you want finer control)? When used, it
would add something like -wmac -M/usr/share/man-db -maudit to groff's
command line options. /usr/share/man-db/audit.tmac would be a bit like
what you suggested for man.local and mdoc.local in #377392, except that
you'd only need one file, you wouldn't need the ugly .mso request, and
you wouldn't need .warn because that would be handled by command-line
options instead in order that the level of warnings can be adjusted from
man; so it would just need to be:

  .\" Work around pod2man bug: IX is only defined if the F register is
  .\" non-zero.
  .de IX
  ..

... and whatever other workarounds are necessary.

>  > Once I finish converting man to argp, it will be easier to add
>  > options without trashing translations every time.
> 
>       In general, I don't care that much about the way this behaviour
>       is triggered.  However, I'd really be happy if Bug#377392 would
>       be closed soon.
> 
>       Certainly, Argp allows argument parsing to be implemented in a
>       much flexible way.

Right. I want to merge this as soon as I can, but it's dependent on
gettext 0.17 being packaged (#451091) since our gnulib package now
requires that version of gettext. (Though I could probably downgrade
gnulib or install gettext 0.17 locally if I had to.)

Once that's out of the way, I need to wait for translation updates, but
aside from that --audit or similar is really the only remaining blocker
to releasing 2.5.1 as far as I'm concerned. I'd like to get that done as
soon as possible since it fixes some errors in page encoding handling
that I introduced in 2.5.0, and so we need this before we can start
switching to UTF-8 manual pages. Hooray for dependency chains ...

>  >> --- man-db-2.5.0-debian-3/src/man.c       2007-11-24 01:54:12.000000000 
> +0600
>  >> +++ man-db-2.5.0-debian-3-manwe/src/man.c 2007-11-24 02:15:52.000000000 
> +0600
>  >> @@ -1522,6 +1529,7 @@
>  >>           cmd = command_new_args (fmt_prog, file, pp_string, NULL);
>  >>           if (roff_device)
>  >>                   command_arg (cmd, roff_device);
>  >> +         command_argstr (cmd, roff_opt);
>  >>           pipeline_command (p, cmd);
>  >>   }
>  >>  
> 
>  > Note that this part is incorrect because, for better or worse, the
>  > interface to custom format programs doesn't support adding *roff options
>  > (see e.g. tools/mandb_fmt-script). Fortunately, as far as I know hardly
>  > anyone uses this feature.
> 
>       I must confess that I don't really understand this ``external
>       formatter'' feature.  May it be useful to specify extra options
>       to one?  Should it be done differently (e. g., via a different
>       environment variable)?

I recommend ignoring external formatters. As far as I'm concerned
they're an obsolescent feature retained purely for compatibility.

The interface is as follows (from man(1)):

       Alternatively,   if   an   executable  program  mandb_nfmt  (or
       mandb_tfmt with -t) exists in the man tree root, it is executed
       instead.  It gets passed the manual source file, the preproces-
       sor string, and optionally the device specified with -T  or  -E
       as arguments.

There are all sorts of things that this interface can't handle, and I
don't think it's worth the effort of extending it.

Cheers,

-- 
Colin Watson                                       [EMAIL PROTECTED]



-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]

Reply via email to