all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
* bug#36927: 26.2.90; include stdarg.h is without hyperlinking on vfprintf's manpage
@ 2019-08-05  1:51 VanL
  2019-08-05 16:10 ` Eli Zaretskii
  0 siblings, 1 reply; 13+ messages in thread
From: VanL @ 2019-08-05  1:51 UTC (permalink / raw)
  To: 36927


Hello,

See manpage for vfprintf().

Unlike the first instance of the #include preprocessing directive

  #include <stdio.h>

at approximately line 12 of printf(3), which is underlined and
hyperlinked, the second instance at approximately line 32, is not
underlined and not hyperlinked.

1. M-x man RET vfprintf
2. on line 32 see #include <stdarg.h> which is without hyperlinking


In GNU Emacs 26.2.90 (build 2, x86_64-apple-darwin15.6.0, NS appkit-1404.47 Version 10.11.6 (Build 15G22010))
of 2019-06-19 built on xxx.xxx
Repository revision: 9473231e0f0e96752447e76217ce8938ddeb00c7
Windowing system distributor 'Apple', version 10.3.1404
Recent messages:
For information about GNU Emacs and the GNU system, type C-h C-a.
Invoking man vfprintf in the background
vfprintf man page formatted

Configured using:
'configure CC=/usr/bin/clang --without-compress-install --with-ns
--enable-ns-self-contained --with-jpeg=no --with-gif=no --with-tiff=no
--without-x --with-cairo --without-xwidgets --with-mailutils'

Configured features:
RSVG DBUS GLIB NOTIFY ACL GNUTLS LIBXML2 ZLIB TOOLKIT_SCROLL_BARS XIM NS
THREADS LCMS2

Important settings:
  value of $LANG: en_AU.UTF-8
  locale-coding-system: utf-8-unix

Major mode: Dired by name

Minor modes in effect:
  show-paren-mode: t
  electric-pair-mode: t
  shell-dirtrack-mode: t
  doom-modeline-mode: t
  global-eldoc-mode: t
  electric-indent-mode: t
  mouse-wheel-mode: t
  tool-bar-mode: t
  menu-bar-mode: t
  file-name-shadow-mode: t
  global-font-lock-mode: t
  font-lock-mode: t
  blink-cursor-mode: t
  auto-composition-mode: t
  auto-encryption-mode: t
  auto-compression-mode: t
  buffer-read-only: t
  column-number-mode: t
  line-number-mode: t
  transient-mark-mode: t

Load-path shadows:
/Users/xxx/.emacs.d/elpa/org-20190801/ox hides /Users/xxx/src/emacs-26.2.90-build-ns/nextstep/Emacs.app/Contents/Resources/lisp/org/ox
/Users/xxx/.emacs.d/elpa/org-20190801/ox-texinfo hides /Users/xxx/src/emacs-26.2.90-build-ns/nextstep/Emacs.app/Contents/Resources/lisp/org/ox-texinfo
/Users/xxx/.emacs.d/elpa/org-20190801/ox-publish hides /Users/xxx/src/emacs-26.2.90-build-ns/nextstep/Emacs.app/Contents/Resources/lisp/org/ox-publish
/Users/xxx/.emacs.d/elpa/org-20190801/ox-org hides /Users/xxx/src/emacs-26.2.90-build-ns/nextstep/Emacs.app/Contents/Resources/lisp/org/ox-org
/Users/xxx/.emacs.d/elpa/org-20190801/ox-odt hides /Users/xxx/src/emacs-26.2.90-build-ns/nextstep/Emacs.app/Contents/Resources/lisp/org/ox-odt
/Users/xxx/.emacs.d/elpa/org-20190801/ox-md hides /Users/xxx/src/emacs-26.2.90-build-ns/nextstep/Emacs.app/Contents/Resources/lisp/org/ox-md
/Users/xxx/.emacs.d/elpa/org-20190801/ox-man hides /Users/xxx/src/emacs-26.2.90-build-ns/nextstep/Emacs.app/Contents/Resources/lisp/org/ox-man
/Users/xxx/.emacs.d/elpa/org-20190801/ox-latex hides /Users/xxx/src/emacs-26.2.90-build-ns/nextstep/Emacs.app/Contents/Resources/lisp/org/ox-latex
/Users/xxx/.emacs.d/elpa/org-20190801/ox-icalendar hides /Users/xxx/src/emacs-26.2.90-build-ns/nextstep/Emacs.app/Contents/Resources/lisp/org/ox-icalendar
/Users/xxx/.emacs.d/elpa/org-20190801/ox-html hides /Users/xxx/src/emacs-26.2.90-build-ns/nextstep/Emacs.app/Contents/Resources/lisp/org/ox-html
/Users/xxx/.emacs.d/elpa/org-20190801/ox-beamer hides /Users/xxx/src/emacs-26.2.90-build-ns/nextstep/Emacs.app/Contents/Resources/lisp/org/ox-beamer
/Users/xxx/.emacs.d/elpa/org-20190801/ox-ascii hides /Users/xxx/src/emacs-26.2.90-build-ns/nextstep/Emacs.app/Contents/Resources/lisp/org/ox-ascii
/Users/xxx/.emacs.d/elpa/org-20190801/org hides /Users/xxx/src/emacs-26.2.90-build-ns/nextstep/Emacs.app/Contents/Resources/lisp/org/org
/Users/xxx/.emacs.d/elpa/org-20190801/org-w3m hides /Users/xxx/src/emacs-26.2.90-build-ns/nextstep/Emacs.app/Contents/Resources/lisp/org/org-w3m
/Users/xxx/.emacs.d/elpa/org-20190801/org-version hides /Users/xxx/src/emacs-26.2.90-build-ns/nextstep/Emacs.app/Contents/Resources/lisp/org/org-version
/Users/xxx/.emacs.d/elpa/org-20190801/org-timer hides /Users/xxx/src/emacs-26.2.90-build-ns/nextstep/Emacs.app/Contents/Resources/lisp/org/org-timer
/Users/xxx/.emacs.d/elpa/org-20190801/org-table hides /Users/xxx/src/emacs-26.2.90-build-ns/nextstep/Emacs.app/Contents/Resources/lisp/org/org-table
/Users/xxx/.emacs.d/elpa/org-20190801/org-src hides /Users/xxx/src/emacs-26.2.90-build-ns/nextstep/Emacs.app/Contents/Resources/lisp/org/org-src
/Users/xxx/.emacs.d/elpa/org-20190801/org-rmail hides /Users/xxx/src/emacs-26.2.90-build-ns/nextstep/Emacs.app/Contents/Resources/lisp/org/org-rmail
/Users/xxx/.emacs.d/elpa/org-20190801/org-protocol hides /Users/xxx/src/emacs-26.2.90-build-ns/nextstep/Emacs.app/Contents/Resources/lisp/org/org-protocol
/Users/xxx/.emacs.d/elpa/org-20190801/org-plot hides /Users/xxx/src/emacs-26.2.90-build-ns/nextstep/Emacs.app/Contents/Resources/lisp/org/org-plot
/Users/xxx/.emacs.d/elpa/org-20190801/org-pcomplete hides /Users/xxx/src/emacs-26.2.90-build-ns/nextstep/Emacs.app/Contents/Resources/lisp/org/org-pcomplete
/Users/xxx/.emacs.d/elpa/org-20190801/org-mouse hides /Users/xxx/src/emacs-26.2.90-build-ns/nextstep/Emacs.app/Contents/Resources/lisp/org/org-mouse
/Users/xxx/.emacs.d/elpa/org-20190801/org-mobile hides /Users/xxx/src/emacs-26.2.90-build-ns/nextstep/Emacs.app/Contents/Resources/lisp/org/org-mobile
/Users/xxx/.emacs.d/elpa/org-20190801/org-mhe hides /Users/xxx/src/emacs-26.2.90-build-ns/nextstep/Emacs.app/Contents/Resources/lisp/org/org-mhe
/Users/xxx/.emacs.d/elpa/org-20190801/org-macs hides /Users/xxx/src/emacs-26.2.90-build-ns/nextstep/Emacs.app/Contents/Resources/lisp/org/org-macs
/Users/xxx/.emacs.d/elpa/org-20190801/org-macro hides /Users/xxx/src/emacs-26.2.90-build-ns/nextstep/Emacs.app/Contents/Resources/lisp/org/org-macro
/Users/xxx/.emacs.d/elpa/org-20190801/org-loaddefs hides /Users/xxx/src/emacs-26.2.90-build-ns/nextstep/Emacs.app/Contents/Resources/lisp/org/org-loaddefs
/Users/xxx/.emacs.d/elpa/org-20190801/org-list hides /Users/xxx/src/emacs-26.2.90-build-ns/nextstep/Emacs.app/Contents/Resources/lisp/org/org-list
/Users/xxx/.emacs.d/elpa/org-20190801/org-lint hides /Users/xxx/src/emacs-26.2.90-build-ns/nextstep/Emacs.app/Contents/Resources/lisp/org/org-lint
/Users/xxx/.emacs.d/elpa/org-20190801/org-irc hides /Users/xxx/src/emacs-26.2.90-build-ns/nextstep/Emacs.app/Contents/Resources/lisp/org/org-irc
/Users/xxx/.emacs.d/elpa/org-20190801/org-install hides /Users/xxx/src/emacs-26.2.90-build-ns/nextstep/Emacs.app/Contents/Resources/lisp/org/org-install
/Users/xxx/.emacs.d/elpa/org-20190801/org-inlinetask hides /Users/xxx/src/emacs-26.2.90-build-ns/nextstep/Emacs.app/Contents/Resources/lisp/org/org-inlinetask
/Users/xxx/.emacs.d/elpa/org-20190801/org-info hides /Users/xxx/src/emacs-26.2.90-build-ns/nextstep/Emacs.app/Contents/Resources/lisp/org/org-info
/Users/xxx/.emacs.d/elpa/org-20190801/org-indent hides /Users/xxx/src/emacs-26.2.90-build-ns/nextstep/Emacs.app/Contents/Resources/lisp/org/org-indent
/Users/xxx/.emacs.d/elpa/org-20190801/org-id hides /Users/xxx/src/emacs-26.2.90-build-ns/nextstep/Emacs.app/Contents/Resources/lisp/org/org-id
/Users/xxx/.emacs.d/elpa/org-20190801/org-habit hides /Users/xxx/src/emacs-26.2.90-build-ns/nextstep/Emacs.app/Contents/Resources/lisp/org/org-habit
/Users/xxx/.emacs.d/elpa/org-20190801/org-gnus hides /Users/xxx/src/emacs-26.2.90-build-ns/nextstep/Emacs.app/Contents/Resources/lisp/org/org-gnus
/Users/xxx/.emacs.d/elpa/org-20190801/org-footnote hides /Users/xxx/src/emacs-26.2.90-build-ns/nextstep/Emacs.app/Contents/Resources/lisp/org/org-footnote
/Users/xxx/.emacs.d/elpa/org-20190801/org-feed hides /Users/xxx/src/emacs-26.2.90-build-ns/nextstep/Emacs.app/Contents/Resources/lisp/org/org-feed
/Users/xxx/.emacs.d/elpa/org-20190801/org-faces hides /Users/xxx/src/emacs-26.2.90-build-ns/nextstep/Emacs.app/Contents/Resources/lisp/org/org-faces
/Users/xxx/.emacs.d/elpa/org-20190801/org-eww hides /Users/xxx/src/emacs-26.2.90-build-ns/nextstep/Emacs.app/Contents/Resources/lisp/org/org-eww
/Users/xxx/.emacs.d/elpa/org-20190801/org-eshell hides /Users/xxx/src/emacs-26.2.90-build-ns/nextstep/Emacs.app/Contents/Resources/lisp/org/org-eshell
/Users/xxx/.emacs.d/elpa/org-20190801/org-entities hides /Users/xxx/src/emacs-26.2.90-build-ns/nextstep/Emacs.app/Contents/Resources/lisp/org/org-entities
/Users/xxx/.emacs.d/elpa/org-20190801/org-element hides /Users/xxx/src/emacs-26.2.90-build-ns/nextstep/Emacs.app/Contents/Resources/lisp/org/org-element
/Users/xxx/.emacs.d/elpa/org-20190801/org-duration hides /Users/xxx/src/emacs-26.2.90-build-ns/nextstep/Emacs.app/Contents/Resources/lisp/org/org-duration
/Users/xxx/.emacs.d/elpa/org-20190801/org-docview hides /Users/xxx/src/emacs-26.2.90-build-ns/nextstep/Emacs.app/Contents/Resources/lisp/org/org-docview
/Users/xxx/.emacs.d/elpa/org-20190801/org-datetree hides /Users/xxx/src/emacs-26.2.90-build-ns/nextstep/Emacs.app/Contents/Resources/lisp/org/org-datetree
/Users/xxx/.emacs.d/elpa/org-20190801/org-ctags hides /Users/xxx/src/emacs-26.2.90-build-ns/nextstep/Emacs.app/Contents/Resources/lisp/org/org-ctags
/Users/xxx/.emacs.d/elpa/org-20190801/org-crypt hides /Users/xxx/src/emacs-26.2.90-build-ns/nextstep/Emacs.app/Contents/Resources/lisp/org/org-crypt
/Users/xxx/.emacs.d/elpa/org-20190801/org-compat hides /Users/xxx/src/emacs-26.2.90-build-ns/nextstep/Emacs.app/Contents/Resources/lisp/org/org-compat
/Users/xxx/.emacs.d/elpa/org-20190801/org-colview hides /Users/xxx/src/emacs-26.2.90-build-ns/nextstep/Emacs.app/Contents/Resources/lisp/org/org-colview
/Users/xxx/.emacs.d/elpa/org-20190801/org-clock hides /Users/xxx/src/emacs-26.2.90-build-ns/nextstep/Emacs.app/Contents/Resources/lisp/org/org-clock
/Users/xxx/.emacs.d/elpa/org-20190801/org-capture hides /Users/xxx/src/emacs-26.2.90-build-ns/nextstep/Emacs.app/Contents/Resources/lisp/org/org-capture
/Users/xxx/.emacs.d/elpa/org-20190801/org-bibtex hides /Users/xxx/src/emacs-26.2.90-build-ns/nextstep/Emacs.app/Contents/Resources/lisp/org/org-bibtex
/Users/xxx/.emacs.d/elpa/org-20190801/org-bbdb hides /Users/xxx/src/emacs-26.2.90-build-ns/nextstep/Emacs.app/Contents/Resources/lisp/org/org-bbdb
/Users/xxx/.emacs.d/elpa/org-20190801/org-attach hides /Users/xxx/src/emacs-26.2.90-build-ns/nextstep/Emacs.app/Contents/Resources/lisp/org/org-attach
/Users/xxx/.emacs.d/elpa/org-20190801/org-archive hides /Users/xxx/src/emacs-26.2.90-build-ns/nextstep/Emacs.app/Contents/Resources/lisp/org/org-archive
/Users/xxx/.emacs.d/elpa/org-20190801/org-agenda hides /Users/xxx/src/emacs-26.2.90-build-ns/nextstep/Emacs.app/Contents/Resources/lisp/org/org-agenda
/Users/xxx/.emacs.d/elpa/org-20190801/ob hides /Users/xxx/src/emacs-26.2.90-build-ns/nextstep/Emacs.app/Contents/Resources/lisp/org/ob
/Users/xxx/.emacs.d/elpa/org-20190801/ob-vala hides /Users/xxx/src/emacs-26.2.90-build-ns/nextstep/Emacs.app/Contents/Resources/lisp/org/ob-vala
/Users/xxx/.emacs.d/elpa/org-20190801/ob-tangle hides /Users/xxx/src/emacs-26.2.90-build-ns/nextstep/Emacs.app/Contents/Resources/lisp/org/ob-tangle
/Users/xxx/.emacs.d/elpa/org-20190801/ob-table hides /Users/xxx/src/emacs-26.2.90-build-ns/nextstep/Emacs.app/Contents/Resources/lisp/org/ob-table
/Users/xxx/.emacs.d/elpa/org-20190801/ob-stan hides /Users/xxx/src/emacs-26.2.90-build-ns/nextstep/Emacs.app/Contents/Resources/lisp/org/ob-stan
/Users/xxx/.emacs.d/elpa/org-20190801/ob-sqlite hides /Users/xxx/src/emacs-26.2.90-build-ns/nextstep/Emacs.app/Contents/Resources/lisp/org/ob-sqlite
/Users/xxx/.emacs.d/elpa/org-20190801/ob-sql hides /Users/xxx/src/emacs-26.2.90-build-ns/nextstep/Emacs.app/Contents/Resources/lisp/org/ob-sql
/Users/xxx/.emacs.d/elpa/org-20190801/ob-shen hides /Users/xxx/src/emacs-26.2.90-build-ns/nextstep/Emacs.app/Contents/Resources/lisp/org/ob-shen
/Users/xxx/.emacs.d/elpa/org-20190801/ob-shell hides /Users/xxx/src/emacs-26.2.90-build-ns/nextstep/Emacs.app/Contents/Resources/lisp/org/ob-shell
/Users/xxx/.emacs.d/elpa/org-20190801/ob-sed hides /Users/xxx/src/emacs-26.2.90-build-ns/nextstep/Emacs.app/Contents/Resources/lisp/org/ob-sed
/Users/xxx/.emacs.d/elpa/org-20190801/ob-screen hides /Users/xxx/src/emacs-26.2.90-build-ns/nextstep/Emacs.app/Contents/Resources/lisp/org/ob-screen
/Users/xxx/.emacs.d/elpa/org-20190801/ob-scheme hides /Users/xxx/src/emacs-26.2.90-build-ns/nextstep/Emacs.app/Contents/Resources/lisp/org/ob-scheme
/Users/xxx/.emacs.d/elpa/org-20190801/ob-sass hides /Users/xxx/src/emacs-26.2.90-build-ns/nextstep/Emacs.app/Contents/Resources/lisp/org/ob-sass
/Users/xxx/.emacs.d/elpa/org-20190801/ob-ruby hides /Users/xxx/src/emacs-26.2.90-build-ns/nextstep/Emacs.app/Contents/Resources/lisp/org/ob-ruby
/Users/xxx/.emacs.d/elpa/org-20190801/ob-ref hides /Users/xxx/src/emacs-26.2.90-build-ns/nextstep/Emacs.app/Contents/Resources/lisp/org/ob-ref
/Users/xxx/.emacs.d/elpa/org-20190801/ob-python hides /Users/xxx/src/emacs-26.2.90-build-ns/nextstep/Emacs.app/Contents/Resources/lisp/org/ob-python
/Users/xxx/.emacs.d/elpa/org-20190801/ob-processing hides /Users/xxx/src/emacs-26.2.90-build-ns/nextstep/Emacs.app/Contents/Resources/lisp/org/ob-processing
/Users/xxx/.emacs.d/elpa/org-20190801/ob-plantuml hides /Users/xxx/src/emacs-26.2.90-build-ns/nextstep/Emacs.app/Contents/Resources/lisp/org/ob-plantuml
/Users/xxx/.emacs.d/elpa/org-20190801/ob-picolisp hides /Users/xxx/src/emacs-26.2.90-build-ns/nextstep/Emacs.app/Contents/Resources/lisp/org/ob-picolisp
/Users/xxx/.emacs.d/elpa/org-20190801/ob-perl hides /Users/xxx/src/emacs-26.2.90-build-ns/nextstep/Emacs.app/Contents/Resources/lisp/org/ob-perl
/Users/xxx/.emacs.d/elpa/org-20190801/ob-org hides /Users/xxx/src/emacs-26.2.90-build-ns/nextstep/Emacs.app/Contents/Resources/lisp/org/ob-org
/Users/xxx/.emacs.d/elpa/org-20190801/ob-octave hides /Users/xxx/src/emacs-26.2.90-build-ns/nextstep/Emacs.app/Contents/Resources/lisp/org/ob-octave
/Users/xxx/.emacs.d/elpa/org-20190801/ob-ocaml hides /Users/xxx/src/emacs-26.2.90-build-ns/nextstep/Emacs.app/Contents/Resources/lisp/org/ob-ocaml
/Users/xxx/.emacs.d/elpa/org-20190801/ob-mscgen hides /Users/xxx/src/emacs-26.2.90-build-ns/nextstep/Emacs.app/Contents/Resources/lisp/org/ob-mscgen
/Users/xxx/.emacs.d/elpa/org-20190801/ob-maxima hides /Users/xxx/src/emacs-26.2.90-build-ns/nextstep/Emacs.app/Contents/Resources/lisp/org/ob-maxima
/Users/xxx/.emacs.d/elpa/org-20190801/ob-matlab hides /Users/xxx/src/emacs-26.2.90-build-ns/nextstep/Emacs.app/Contents/Resources/lisp/org/ob-matlab
/Users/xxx/.emacs.d/elpa/org-20190801/ob-makefile hides /Users/xxx/src/emacs-26.2.90-build-ns/nextstep/Emacs.app/Contents/Resources/lisp/org/ob-makefile
/Users/xxx/.emacs.d/elpa/org-20190801/ob-lua hides /Users/xxx/src/emacs-26.2.90-build-ns/nextstep/Emacs.app/Contents/Resources/lisp/org/ob-lua
/Users/xxx/.emacs.d/elpa/org-20190801/ob-lob hides /Users/xxx/src/emacs-26.2.90-build-ns/nextstep/Emacs.app/Contents/Resources/lisp/org/ob-lob
/Users/xxx/.emacs.d/elpa/org-20190801/ob-lisp hides /Users/xxx/src/emacs-26.2.90-build-ns/nextstep/Emacs.app/Contents/Resources/lisp/org/ob-lisp
/Users/xxx/.emacs.d/elpa/org-20190801/ob-lilypond hides /Users/xxx/src/emacs-26.2.90-build-ns/nextstep/Emacs.app/Contents/Resources/lisp/org/ob-lilypond
/Users/xxx/.emacs.d/elpa/org-20190801/ob-ledger hides /Users/xxx/src/emacs-26.2.90-build-ns/nextstep/Emacs.app/Contents/Resources/lisp/org/ob-ledger
/Users/xxx/.emacs.d/elpa/org-20190801/ob-latex hides /Users/xxx/src/emacs-26.2.90-build-ns/nextstep/Emacs.app/Contents/Resources/lisp/org/ob-latex
/Users/xxx/.emacs.d/elpa/org-20190801/ob-keys hides /Users/xxx/src/emacs-26.2.90-build-ns/nextstep/Emacs.app/Contents/Resources/lisp/org/ob-keys
/Users/xxx/.emacs.d/elpa/org-20190801/ob-js hides /Users/xxx/src/emacs-26.2.90-build-ns/nextstep/Emacs.app/Contents/Resources/lisp/org/ob-js
/Users/xxx/.emacs.d/elpa/org-20190801/ob-java hides /Users/xxx/src/emacs-26.2.90-build-ns/nextstep/Emacs.app/Contents/Resources/lisp/org/ob-java
/Users/xxx/.emacs.d/elpa/org-20190801/ob-io hides /Users/xxx/src/emacs-26.2.90-build-ns/nextstep/Emacs.app/Contents/Resources/lisp/org/ob-io
/Users/xxx/.emacs.d/elpa/org-20190801/ob-hledger hides /Users/xxx/src/emacs-26.2.90-build-ns/nextstep/Emacs.app/Contents/Resources/lisp/org/ob-hledger
/Users/xxx/.emacs.d/elpa/org-20190801/ob-haskell hides /Users/xxx/src/emacs-26.2.90-build-ns/nextstep/Emacs.app/Contents/Resources/lisp/org/ob-haskell
/Users/xxx/.emacs.d/elpa/org-20190801/ob-groovy hides /Users/xxx/src/emacs-26.2.90-build-ns/nextstep/Emacs.app/Contents/Resources/lisp/org/ob-groovy
/Users/xxx/.emacs.d/elpa/org-20190801/ob-gnuplot hides /Users/xxx/src/emacs-26.2.90-build-ns/nextstep/Emacs.app/Contents/Resources/lisp/org/ob-gnuplot
/Users/xxx/.emacs.d/elpa/org-20190801/ob-fortran hides /Users/xxx/src/emacs-26.2.90-build-ns/nextstep/Emacs.app/Contents/Resources/lisp/org/ob-fortran
/Users/xxx/.emacs.d/elpa/org-20190801/ob-forth hides /Users/xxx/src/emacs-26.2.90-build-ns/nextstep/Emacs.app/Contents/Resources/lisp/org/ob-forth
/Users/xxx/.emacs.d/elpa/org-20190801/ob-exp hides /Users/xxx/src/emacs-26.2.90-build-ns/nextstep/Emacs.app/Contents/Resources/lisp/org/ob-exp
/Users/xxx/.emacs.d/elpa/org-20190801/ob-eval hides /Users/xxx/src/emacs-26.2.90-build-ns/nextstep/Emacs.app/Contents/Resources/lisp/org/ob-eval
/Users/xxx/.emacs.d/elpa/org-20190801/ob-emacs-lisp hides /Users/xxx/src/emacs-26.2.90-build-ns/nextstep/Emacs.app/Contents/Resources/lisp/org/ob-emacs-lisp
/Users/xxx/.emacs.d/elpa/org-20190801/ob-ebnf hides /Users/xxx/src/emacs-26.2.90-build-ns/nextstep/Emacs.app/Contents/Resources/lisp/org/ob-ebnf
/Users/xxx/.emacs.d/elpa/org-20190801/ob-dot hides /Users/xxx/src/emacs-26.2.90-build-ns/nextstep/Emacs.app/Contents/Resources/lisp/org/ob-dot
/Users/xxx/.emacs.d/elpa/org-20190801/ob-ditaa hides /Users/xxx/src/emacs-26.2.90-build-ns/nextstep/Emacs.app/Contents/Resources/lisp/org/ob-ditaa
/Users/xxx/.emacs.d/elpa/org-20190801/ob-css hides /Users/xxx/src/emacs-26.2.90-build-ns/nextstep/Emacs.app/Contents/Resources/lisp/org/ob-css
/Users/xxx/.emacs.d/elpa/org-20190801/ob-core hides /Users/xxx/src/emacs-26.2.90-build-ns/nextstep/Emacs.app/Contents/Resources/lisp/org/ob-core
/Users/xxx/.emacs.d/elpa/org-20190801/ob-coq hides /Users/xxx/src/emacs-26.2.90-build-ns/nextstep/Emacs.app/Contents/Resources/lisp/org/ob-coq
/Users/xxx/.emacs.d/elpa/org-20190801/ob-comint hides /Users/xxx/src/emacs-26.2.90-build-ns/nextstep/Emacs.app/Contents/Resources/lisp/org/ob-comint
/Users/xxx/.emacs.d/elpa/org-20190801/ob-clojure hides /Users/xxx/src/emacs-26.2.90-build-ns/nextstep/Emacs.app/Contents/Resources/lisp/org/ob-clojure
/Users/xxx/.emacs.d/elpa/org-20190801/ob-calc hides /Users/xxx/src/emacs-26.2.90-build-ns/nextstep/Emacs.app/Contents/Resources/lisp/org/ob-calc
/Users/xxx/.emacs.d/elpa/org-20190801/ob-awk hides /Users/xxx/src/emacs-26.2.90-build-ns/nextstep/Emacs.app/Contents/Resources/lisp/org/ob-awk
/Users/xxx/.emacs.d/elpa/org-20190801/ob-asymptote hides /Users/xxx/src/emacs-26.2.90-build-ns/nextstep/Emacs.app/Contents/Resources/lisp/org/ob-asymptote
/Users/xxx/.emacs.d/elpa/org-20190801/ob-abc hides /Users/xxx/src/emacs-26.2.90-build-ns/nextstep/Emacs.app/Contents/Resources/lisp/org/ob-abc
/Users/xxx/.emacs.d/elpa/org-20190801/ob-R hides /Users/xxx/src/emacs-26.2.90-build-ns/nextstep/Emacs.app/Contents/Resources/lisp/org/ob-R
/Users/xxx/.emacs.d/elpa/org-20190801/ob-J hides /Users/xxx/src/emacs-26.2.90-build-ns/nextstep/Emacs.app/Contents/Resources/lisp/org/ob-J
/Users/xxx/.emacs.d/elpa/org-20190801/ob-C hides /Users/xxx/src/emacs-26.2.90-build-ns/nextstep/Emacs.app/Contents/Resources/lisp/org/ob-C

Features:
(shadow sort mail-extr emacsbug message rmc puny rfc822 mml mml-sec epa
derived epg gnus-util rmail rmail-loaddefs mm-decode mm-bodies mm-encode
mail-parse rfc2231 mailabbrev gmm-utils mailheader sendmail rfc2047
rfc2045 ietf-drums mm-util mail-prsvr mail-utils tabify imenu man dired
dired-loaddefs paren elec-pair doom-tomorrow-night-theme ob-shell shell
ob-scheme ob-lisp doom-themes-ext-org doom-themes-ext-treemacs
doom-themes-ext-neotree doom-themes-ext-visual-bell doom-themes
doom-themes-base doom-modeline doom-modeline-segments doom-modeline-env
doom-modeline-core subr-x shrink-path rx f s dash all-the-icons
all-the-icons-faces data-material data-weathericons data-octicons
data-fileicons data-faicons data-alltheicons memoize org-tempo
org-element avl-tree generator org ob ob-tangle ob-ref ob-lob ob-table
ob-exp org-macro org-footnote org-src ob-comint ob-keys org-pcomplete
pcomplete comint ansi-color ring org-list org-faces org-entities
noutline outline easy-mmode org-version ob-emacs-lisp ob-core ob-eval
org-compat advice org-macs org-loaddefs format-spec find-func cal-menu
calendar cal-loaddefs tempo edmacro kmacro finder-inf kotl-autoloads
info package easymenu epg-config url-handlers url-parse auth-source
cl-seq eieio eieio-core cl-macs eieio-loaddefs password-cache url-vars
seq byte-opt gv bytecomp byte-compile cconv cl-loaddefs cl-lib time-date
tooltip eldoc electric uniquify ediff-hook vc-hooks lisp-float-type
mwheel term/ns-win ns-win ucs-normalize mule-util term/common-win
tool-bar dnd fontset image regexp-opt fringe tabulated-list replace
newcomment text-mode elisp-mode lisp-mode prog-mode register page
menu-bar rfn-eshadow isearch timer select scroll-bar mouse jit-lock
font-lock syntax facemenu font-core term/tty-colors frame cl-generic
cham georgian utf-8-lang misc-lang vietnamese tibetan thai tai-viet lao
korean japanese eucjp-ms cp51932 hebrew greek romanian slovak czech
european ethiopic indian cyrillic chinese composite charscript charprop
case-table epa-hook jka-cmpr-hook help simple abbrev obarray minibuffer
cl-preloaded nadvice loaddefs button faces cus-face macroexp files
text-properties overlay sha1 md5 base64 format env code-pages mule
custom widget hashtable-print-readable backquote threads dbusbind kqueue
cocoa ns lcms2 multi-tty make-network-process emacs)

Memory information:
((conses 16 344133 31021)
(symbols 48 29823 1)
(miscs 40 128 432)
(strings 32 69017 3368)
(string-bytes 1 1943722)
(vectors 16 47165)
(vector-slots 8 858635 12912)
(floats 8 570 496)
(intervals 56 3003 2582)
(buffers 992 13))





^ permalink raw reply	[flat|nested] 13+ messages in thread

* bug#36927: 26.2.90; include stdarg.h is without hyperlinking on vfprintf's manpage
  2019-08-05  1:51 bug#36927: 26.2.90; include stdarg.h is without hyperlinking on vfprintf's manpage VanL
@ 2019-08-05 16:10 ` Eli Zaretskii
  2019-08-06  2:36   ` VanL
  2019-08-09 13:58   ` Eli Zaretskii
  0 siblings, 2 replies; 13+ messages in thread
From: Eli Zaretskii @ 2019-08-05 16:10 UTC (permalink / raw)
  To: VanL; +Cc: 36927

> From: VanL <van@scratch.space>
> Date: Mon, 5 Aug 2019 11:51:56 +1000
> 
> See manpage for vfprintf().
> 
> Unlike the first instance of the #include preprocessing directive
> 
>   #include <stdio.h>
> 
> at approximately line 12 of printf(3), which is underlined and
> hyperlinked, the second instance at approximately line 32, is not
> underlined and not hyperlinked.
> 
> 1. M-x man RET vfprintf
> 2. on line 32 see #include <stdarg.h> which is without hyperlinking

For some reason, we don't put a button on the second #include.

Interestingly enough, I can reproduce this on GNU/Linux, but not on
MS-Windows, even if I produce the formatted man page on GNU/Linux and
then display it on Windows.  So I guess the problem is somehow related
to the slightly  different scripts we use to massage the man page for
display.





^ permalink raw reply	[flat|nested] 13+ messages in thread

* bug#36927: 26.2.90; include stdarg.h is without hyperlinking on vfprintf's manpage
  2019-08-05 16:10 ` Eli Zaretskii
@ 2019-08-06  2:36   ` VanL
  2019-08-06  3:56     ` Eli Zaretskii
  2019-08-09 13:58   ` Eli Zaretskii
  1 sibling, 1 reply; 13+ messages in thread
From: VanL @ 2019-08-06  2:36 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: 36927


> On 6 Aug 2019, at 02:10, Eli Zaretskii <eliz@gnu.org> wrote:
> 
>> 1. M-x man RET vfprintf
>> 2. on line 32 see #include <stdarg.h> which is without hyperlinking
> 
> For some reason, we don't put a button on the second #include.

The buttoning needs to be more aggressive.

> Interestingly enough, I can reproduce this on GNU/Linux, but not on
> MS-Windows, even if I produce the formatted man page on GNU/Linux and
> then display it on Windows.  So I guess the problem is somehow related
> to the slightly  different scripts we use to massage the man page for
> display.

Three variants of bsd platform reproduces this like GNU/Linux.





^ permalink raw reply	[flat|nested] 13+ messages in thread

* bug#36927: 26.2.90; include stdarg.h is without hyperlinking on vfprintf's manpage
  2019-08-06  2:36   ` VanL
@ 2019-08-06  3:56     ` Eli Zaretskii
  2019-08-06  7:22       ` VanL
  0 siblings, 1 reply; 13+ messages in thread
From: Eli Zaretskii @ 2019-08-06  3:56 UTC (permalink / raw)
  To: VanL; +Cc: 36927

On August 6, 2019 5:36:17 AM GMT+03:00, VanL <van@scratch.space> wrote:
> 
> > On 6 Aug 2019, at 02:10, Eli Zaretskii <eliz@gnu.org> wrote:
> > 
> >> 1. M-x man RET vfprintf
> >> 2. on line 32 see #include <stdarg.h> which is without hyperlinking
> > 
> > For some reason, we don't put a button on the second #include.
> 
> The buttoning needs to be more aggressive.

You mean, like making every word a button?

> > Interestingly enough, I can reproduce this on GNU/Linux, but not on
> > MS-Windows, even if I produce the formatted man page on GNU/Linux
> and
> > then display it on Windows.  So I guess the problem is somehow
> related
> > to the slightly  different scripts we use to massage the man page
> for
> > display.
> 
> Three variants of bsd platform reproduces this like GNU/Linux.

All Posix platforms use the same script to massage the 'man' output, so this is hardly surprising.

Do you actually see what causes the failure to put a button on the second include?







^ permalink raw reply	[flat|nested] 13+ messages in thread

* bug#36927: 26.2.90; include stdarg.h is without hyperlinking on vfprintf's manpage
  2019-08-06  3:56     ` Eli Zaretskii
@ 2019-08-06  7:22       ` VanL
  2019-08-06 14:36         ` Eli Zaretskii
  0 siblings, 1 reply; 13+ messages in thread
From: VanL @ 2019-08-06  7:22 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: 36927


> On 6 Aug 2019, at 13:56, Eli Zaretskii <eliz@gnu.org> wrote:
> 
>>> For some reason, we don't put a button on the second #include.
>> 
>> The buttoning needs to be more aggressive.
> 
> You mean, like making every word a button?

In this case, I mean the lines containing the 'include' preprocessing directive for C.

Where you make every word a button, possibly, leads to an inverted tree index for search engines to digest, perhaps 'C-h a' short for '(ask-emacs-anything)' is then possible. 

>> Three variants of bsd platform reproduces this like GNU/Linux.
> 
> All Posix platforms use the same script to massage the 'man' output, so this is hardly surprising.

The script to massage by 'M-x woman RET vfprintf' produces pure, unadulterated formatting in text-mode.

line 11: .In stdio.h
line 24: .In stdarg.h

> Do you actually see what causes the failure to put a button on the second include?

There's that below but lisp/button.el.gz doesn't have any Man variable I can see.

2 matches for "Man-include-regexp" in buffer: man.el.gz
    338:(defvar Man-include-regexp "#[ \t]*include[ \t]*"
    348:  (concat "\\(" Man-include-regexp "\\)"

14 matches in 12 lines for "include" in buffer: man.el.gz
    231:        (base '("/usr/include" "/usr/local/include")))
    234:      (append base (list (expand-file-name arch "/usr/include")))))
    338:(defvar Man-include-regexp "#[ \t]*include[ \t]*"
    339:  "Regular expression describing the #include (directive of cpp).")
    342:  "Regular expression describing <> in #include line (directive of cpp).")
    348:  (concat "\\(" Man-include-regexp "\\)"
    358:;; This includes the section as an optional part to catch hyphenated
    794:          ;; doesn't include a hyphen, we consider the hyphen to be
    799:	;; Make sure the section number gets included by the code below.
    812:	      ;; include the section number in the returned value.
   1265:References include items in the SEE ALSO section,
   1266:header file (#include <foo.h>), and files in FILES.







^ permalink raw reply	[flat|nested] 13+ messages in thread

* bug#36927: 26.2.90; include stdarg.h is without hyperlinking on vfprintf's manpage
  2019-08-06  7:22       ` VanL
@ 2019-08-06 14:36         ` Eli Zaretskii
  2019-08-07  8:57           ` VanL
  0 siblings, 1 reply; 13+ messages in thread
From: Eli Zaretskii @ 2019-08-06 14:36 UTC (permalink / raw)
  To: VanL; +Cc: 36927

> From: VanL <van@scratch.space>
> Date: Tue, 6 Aug 2019 17:22:42 +1000
> Cc: 36927@debbugs.gnu.org
> 
> >> Three variants of bsd platform reproduces this like GNU/Linux.
> > 
> > All Posix platforms use the same script to massage the 'man' output, so this is hardly surprising.
> 
> The script to massage by 'M-x woman RET vfprintf' produces pure, unadulterated formatting in text-mode.

"M-x woman" uses an entirely different implementation: it actually
formats the man page by itself, and thus doesn't need any script for
massaging the output of 'man'.

> > Do you actually see what causes the failure to put a button on the second include?
> 
> There's that below but lisp/button.el.gz doesn't have any Man variable I can see.

Thanks.





^ permalink raw reply	[flat|nested] 13+ messages in thread

* bug#36927: 26.2.90; include stdarg.h is without hyperlinking on vfprintf's manpage
  2019-08-06 14:36         ` Eli Zaretskii
@ 2019-08-07  8:57           ` VanL
  0 siblings, 0 replies; 13+ messages in thread
From: VanL @ 2019-08-07  8:57 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: 36927


> On 7 Aug 2019, at 00:36, Eli Zaretskii <eliz@gnu.org> wrote:
> 
> "M-x woman" uses an entirely different implementation: it actually
> formats the man page by itself, and thus doesn't need any script for
> massaging the output of 'man'.

IIRC "M-x woman" was made for MS-Windows and the Posix box could be ticked by some versions of MS-Windows.




^ permalink raw reply	[flat|nested] 13+ messages in thread

* bug#36927: 26.2.90; include stdarg.h is without hyperlinking on vfprintf's manpage
  2019-08-05 16:10 ` Eli Zaretskii
  2019-08-06  2:36   ` VanL
@ 2019-08-09 13:58   ` Eli Zaretskii
  2019-08-10  5:05     ` VanL
  2019-08-18 22:37     ` Noam Postavsky
  1 sibling, 2 replies; 13+ messages in thread
From: Eli Zaretskii @ 2019-08-09 13:58 UTC (permalink / raw)
  To: van; +Cc: 36927

> Date: Mon, 05 Aug 2019 19:10:28 +0300
> From: Eli Zaretskii <eliz@gnu.org>
> Cc: 36927@debbugs.gnu.org
> 
> > From: VanL <van@scratch.space>
> > Date: Mon, 5 Aug 2019 11:51:56 +1000
> > 
> > See manpage for vfprintf().
> > 
> > Unlike the first instance of the #include preprocessing directive
> > 
> >   #include <stdio.h>
> > 
> > at approximately line 12 of printf(3), which is underlined and
> > hyperlinked, the second instance at approximately line 32, is not
> > underlined and not hyperlinked.
> > 
> > 1. M-x man RET vfprintf
> > 2. on line 32 see #include <stdarg.h> which is without hyperlinking
> 
> For some reason, we don't put a button on the second #include.

The logic in Man-highlight-references0 was flawed: it assumed that a
section ("SYNOPSIS", "FILES", "SEE ALSO", etc.) is always received
entirely in a single chunk of text that is read from the subprocess,
which is, of course, not guaranteed, and depends on factors such as
the size of each section, buffering, how busy is the system, etc.
(Those reasons also made this a bitch to debug, because a bug comes
and goes unpredictably, and never shows when one steps with Edebug.)

I think I made it much better on master, although I still see a rare
case where one or the other "include" is not buttonized.  But I've run
out of time, so someone else will have to find and fix what I missed.

I'm leaving this bug open because I don't think it's 100% fixed.





^ permalink raw reply	[flat|nested] 13+ messages in thread

* bug#36927: 26.2.90; include stdarg.h is without hyperlinking on vfprintf's manpage
  2019-08-09 13:58   ` Eli Zaretskii
@ 2019-08-10  5:05     ` VanL
  2019-08-10  7:48       ` Eli Zaretskii
  2019-08-18 22:37     ` Noam Postavsky
  1 sibling, 1 reply; 13+ messages in thread
From: VanL @ 2019-08-10  5:05 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: 36927


> On 9 Aug 2019, at 23:58, Eli Zaretskii <eliz@gnu.org> wrote:
> 
>> Date: Mon, 05 Aug 2019 19:10:28 +0300
>> From: Eli Zaretskii <eliz@gnu.org>
>> Cc: 36927@debbugs.gnu.org
>> 
>>> From: VanL <van@scratch.space>
>>> Date: Mon, 5 Aug 2019 11:51:56 +1000
>>> 
>>> See manpage for vfprintf().
>>> 
>>> Unlike the first instance of the #include preprocessing directive
>>> 
>>>  #include <stdio.h>
>>> 
>>> at approximately line 12 of printf(3), which is underlined and
>>> hyperlinked, the second instance at approximately line 32, is not
>>> underlined and not hyperlinked.
>>> 
>>> 1. M-x man RET vfprintf
>>> 2. on line 32 see #include <stdarg.h> which is without hyperlinking
>> 
>> For some reason, we don't put a button on the second #include.
> 
> The logic in Man-highlight-references0 was flawed: it assumed that a
> section ("SYNOPSIS", "FILES", "SEE ALSO", etc.) is always received
> entirely in a single chunk of text that is read from the subprocess,
> which is, of course, not guaranteed, and depends on factors such as
> the size of each section, buffering, how busy is the system, etc.
> (Those reasons also made this a bitch to debug, because a bug comes
> and goes unpredictably, and never shows when one steps with Edebug.)

Thanks.

That sounds really convoluted and this is what I can see

diff --git a/lisp/man.el b/lisp/man.el
index d52ca2156d..8858451b38 100644
--- a/lisp/man.el
+++ b/lisp/man.el
@@ -1288,8 +1288,23 @@ Man-highlight-references
 
 (defun Man-highlight-references0 (start-section regexp button-pos target type)
   ;; Based on `Man-build-references-alist'
-  (when (or (null start-section)
-	    (Man-find-section start-section))
+  (when (or (null start-section)        ;; Search regardless of sections.
+            ;; Section header is in this chunk.
+	    (Man-find-section start-section)
+            ;; Section header was in one of the previous chunks.
+            (save-excursion
+              (save-restriction
+                (let ((orig-pos (point)))
+                  (widen)
+                  (if (Man-find-section start-section)
+                      ;; We are in the right section of the next
+                      ;; section is either not yet in the buffer, or
+                      ;; it starts after the position where we should
+                      ;; start highlighting.
+                      (progn
+                        (forward-line 1)
+                        (or (null (re-search-forward Man-heading-regexp nil t))
+                            (> (point) orig-pos))))))))
     (let ((end (if start-section
 		   (progn
 		     (forward-line 1)

> I think I made it much better on master, although I still see a rare
> case where one or the other "include" is not buttonized.  But I've run
> out of time, so someone else will have to find and fix what I missed.
> 
> I'm leaving this bug open because I don't think it's 100% fixed.

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

line 11: .In stdio.h
line 24: .In stdarg.h

with buttonization transformation in theory like [1]

--
[1] 
	8.4 Computing with Lists
	https://htdp.org/2019-02-24/part_two.html#%28part._sec~3aeval-list%29






^ permalink raw reply related	[flat|nested] 13+ messages in thread

* bug#36927: 26.2.90; include stdarg.h is without hyperlinking on vfprintf's manpage
  2019-08-10  5:05     ` VanL
@ 2019-08-10  7:48       ` Eli Zaretskii
  2019-08-11  5:26         ` VanL
  0 siblings, 1 reply; 13+ messages in thread
From: Eli Zaretskii @ 2019-08-10  7:48 UTC (permalink / raw)
  To: VanL; +Cc: 36927

> From: VanL <van@scratch.space>
> Date: Sat, 10 Aug 2019 15:05:16 +1000
> Cc: 36927@debbugs.gnu.org
> 
> > The logic in Man-highlight-references0 was flawed: it assumed that a
> > section ("SYNOPSIS", "FILES", "SEE ALSO", etc.) is always received
> > entirely in a single chunk of text that is read from the subprocess,
> > which is, of course, not guaranteed, and depends on factors such as
> > the size of each section, buffering, how busy is the system, etc.
> > (Those reasons also made this a bitch to debug, because a bug comes
> > and goes unpredictably, and never shows when one steps with Edebug.)
> 
> Thanks.
> 
> That sounds really convoluted and this is what I can see

The comments should explain what the code does.  Let me know which
parts are unclear.

> 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.





^ permalink raw reply	[flat|nested] 13+ messages in thread

* bug#36927: 26.2.90; include stdarg.h is without hyperlinking on vfprintf's manpage
  2019-08-10  7:48       ` Eli Zaretskii
@ 2019-08-11  5:26         ` VanL
  2019-08-11 14:09           ` Eli Zaretskii
  0 siblings, 1 reply; 13+ messages in thread
From: VanL @ 2019-08-11  5:26 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: 36927


> On 10 Aug 2019, at 17:48, Eli Zaretskii <eliz@gnu.org> wrote:
> 
>> 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.  Not having all the `#include' lines buttonized is like missing a main character on stage.  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)
2) on line 1127: (defun Man-update-manpage ()
3) on line 1154: (defun Man-notify-when-ready (man-buffer)
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)
6) on line 1331: (defun Man-cleanup-manpage (&optional interactive)     






^ permalink raw reply	[flat|nested] 13+ messages in thread

* bug#36927: 26.2.90; include stdarg.h is without hyperlinking on vfprintf's manpage
  2019-08-11  5:26         ` VanL
@ 2019-08-11 14:09           ` Eli Zaretskii
  0 siblings, 0 replies; 13+ messages in thread
From: Eli Zaretskii @ 2019-08-11 14:09 UTC (permalink / raw)
  To: VanL; +Cc: 36927

> From: VanL <van@scratch.space>
> Date: Sun, 11 Aug 2019 15:26:50 +1000
> Cc: 36927@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.





^ permalink raw reply	[flat|nested] 13+ messages in thread

* bug#36927: 26.2.90; include stdarg.h is without hyperlinking on vfprintf's manpage
  2019-08-09 13:58   ` Eli Zaretskii
  2019-08-10  5:05     ` VanL
@ 2019-08-18 22:37     ` Noam Postavsky
  1 sibling, 0 replies; 13+ messages in thread
From: Noam Postavsky @ 2019-08-18 22:37 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: van, 36927

tags 36927 fixed
close 36927 27.1
quit

Eli Zaretskii <eliz@gnu.org> writes:

> never shows when one steps with Edebug.)

I had a similar experience when fixing term.el to handle chunking.  I
found using trace-function on the filter function, and then reproducing
the same chunking by calling the filter function directly was an
effective way to handle this.

(Also, changing the default handling of filters as Stefan suggests in
Bug#13400 might help with this.)

> I think I made it much better on master, although I still see a rare
> case where one or the other "include" is not buttonized.  But I've run
> out of time, so someone else will have to find and fix what I missed.
>
> I'm leaving this bug open because I don't think it's 100% fixed.

I think it should be fully fixed now.

f9464020d4 2019-08-18T18:19:21-04:00 "Handle more subprocess chunking in M-x man (Bug#36927)"
https://git.savannah.gnu.org/cgit/emacs.git/commit/?id=f9464020d403be8344f8293297b27276872571d4






^ permalink raw reply	[flat|nested] 13+ messages in thread

end of thread, other threads:[~2019-08-18 22:37 UTC | newest]

Thread overview: 13+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2019-08-05  1:51 bug#36927: 26.2.90; include stdarg.h is without hyperlinking on vfprintf's manpage VanL
2019-08-05 16:10 ` Eli Zaretskii
2019-08-06  2:36   ` VanL
2019-08-06  3:56     ` Eli Zaretskii
2019-08-06  7:22       ` VanL
2019-08-06 14:36         ` Eli Zaretskii
2019-08-07  8:57           ` VanL
2019-08-09 13:58   ` Eli Zaretskii
2019-08-10  5:05     ` VanL
2019-08-10  7:48       ` Eli Zaretskii
2019-08-11  5:26         ` VanL
2019-08-11 14:09           ` Eli Zaretskii
2019-08-18 22:37     ` Noam Postavsky

Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/emacs.git
	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.