GNU bug report logs -
#36927
26.2.90; include stdarg.h is without hyperlinking on vfprintf's manpage
Previous Next
Reported by: VanL <van <at> scratch.space>
Date: Mon, 5 Aug 2019 01:53:02 UTC
Severity: minor
Tags: fixed
Found in version 26.2.90
Fixed in version 27.1
Done: Noam Postavsky <npostavs <at> gmail.com>
Bug is archived. No further changes may be made.
Full log
View this message in rfc822 format
> From: VanL <van <at> scratch.space>
> Date: Sun, 11 Aug 2019 15:26:50 +1000
> Cc: 36927 <at> debbugs.gnu.org
>
> >> A possible way is to wait for all the subprocess sections to be done and to post-process on the fully collected buffer having lines like
> >
> > I considered this possibility, but rejected it: since we display the
> > man page even before the async subprocess exits, it would mean that
> > the displayed portion is not fontified until the very end, which would
> > render the entire idea of formatting in the background useless, and
> > would have use behave on all platforms as we do on MS-DOS.
>
> Graphics engines use a two buffer mechanism for collecting unfinished pixels backstage in one buffer and displaying finished pixels on stage in the ready buffer and then they alternate in their role.
We already do that in man.el, effectively: a new chunk of the text is
first fontified and buttonized, and only afterwards displayed.
> Not having all the `#include' lines buttonized is like missing a main character on stage.
I never said anything to the contrary. I've just spent several hours
of my time fixing that.
> Of the 40 `(defun' signatures in man.el the following 6 hint of opportunities in the event model's pipeline to place buttons in at
>
> 2) `update' or 6) `cleanup' before 3) `notify-when-ready'
>
> 1) on line 1075: (defun Man-getpage-in-background (topic)
That's the top-level function which does the job of, among other
things, fontifying and buttonizing the man page.
> 2) on line 1127: (defun Man-update-manpage ()
Not relevant to the issue at hand: this command is for a different use
case, and it invokes 'man' synchronously anyway.
> 3) on line 1154: (defun Man-notify-when-ready (man-buffer)
This one is called when the 'man' program exits, so waiting until that
time will eliminate the advantage of running 'man' in the background.
Irrelevant.
> 4) on line 1262: (defun Man-highlight-references (&optional xref-man-type)
> 5) on line 1289: (defun Man-highlight-references0 (start-section regexp button-pos target type)
These two are the ones where I made the changes (the first one just
calls the second one).
> 6) on line 1331: (defun Man-cleanup-manpage (&optional interactive)
Isn't called in the scenario discussed here, so is irrelevant.
Not sure where you are trying to take this discussion.
This bug report was last modified 5 years and 341 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.