GNU bug report logs - #51629
29.0.50; State of outline minor mode buttons not synchronized

Previous Next

Package: emacs;

Reported by: Matthias Meulien <orontee <at> gmail.com>

Date: Sat, 6 Nov 2021 08:59:01 UTC

Severity: normal

Found in version 29.0.50

Fixed in version 29.1

Done: Lars Ingebrigtsen <larsi <at> gnus.org>

Bug is archived. No further changes may be made.

To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 51629 in the body.
You can then email your comments to 51629 AT debbugs.gnu.org in the normal way.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to bug-gnu-emacs <at> gnu.org:
bug#51629; Package emacs. (Sat, 06 Nov 2021 08:59:02 GMT) Full text and rfc822 format available.

Acknowledgement sent to Matthias Meulien <orontee <at> gmail.com>:
New bug report received and forwarded. Copy sent to bug-gnu-emacs <at> gnu.org. (Sat, 06 Nov 2021 08:59:02 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Matthias Meulien <orontee <at> gmail.com>
To: bug-gnu-emacs <at> gnu.org
Subject: 29.0.50; State of outline minor mode buttons not synchronized
Date: Sat, 06 Nov 2021 09:57:57 +0100
[Message part 1 (text/plain, inline)]
1. Set `outline-minor-mode-use-buttons' to true (I've done it through
`customize-group')

2. Enter "C-h b" and switch to the *Help* buffer

3. Toggle visibility of the first heading body using `outline-minor-mode'
keybindings "C-c @ C-t" (`outline-hide-body').

4. Observe the broken buttons state as in attached screenshot:

[Message part 2 (image/png, inline)]
[Message part 3 (text/plain, inline)]
Note that it isn't related to being on the first heading or in a *Help*
buffer. The problem is easily reproduced when acting on any heading and
working with diff-mode buffers.

While speaking of diff-mode buffers, note that the arrows are simply not
displayed when the buffer is first displayed. Maybe this deserves a
dedicated bug?


In GNU Emacs 29.0.50 (build 1, x86_64-pc-linux-gnu, GTK+ Version 3.24.24, cairo version 1.16.0)
 of 2021-11-06 built on carbon
Repository revision: 6d406aee501cb6462075149683e492956ce9b7f3
Repository branch: master
Windowing system distributor 'The X.Org Foundation', version 11.0.12011000
System Description: Debian GNU/Linux 11 (bullseye)

Configured using:
 'configure --with-native-compilation'

Configured features:
ACL CAIRO DBUS FREETYPE GIF GLIB GMP GNUTLS GPM GSETTINGS HARFBUZZ JPEG
JSON LCMS2 LIBOTF LIBSELINUX LIBXML2 M17N_FLT MODULES NATIVE_COMP NOTIFY
INOTIFY PDUMPER PNG RSVG SECCOMP SOUND THREADS TIFF TOOLKIT_SCROLL_BARS
X11 XDBE XIM XPM GTK3 ZLIB

Important settings:
  value of $LANG: fr_FR.UTF-8
  value of $XMODIFIERS: @im=ibus
  locale-coding-system: utf-8-unix

Major mode: Custom

Minor modes in effect:
  highlight-changes-visible-mode: t
  shell-dirtrack-mode: t
  minions-mode: t
  desktop-save-mode: t
  save-place-mode: t
  electric-pair-mode: t
  icomplete-mode: t
  global-so-long-mode: t
  global-auto-revert-mode: t
  auto-insert-mode: t
  tooltip-mode: t
  global-eldoc-mode: t
  show-paren-mode: t
  electric-layout-mode: t
  electric-indent-mode: t
  mouse-wheel-mode: t
  tab-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
  window-divider-mode: t
  auto-composition-mode: t
  auto-encryption-mode: t
  auto-compression-mode: t
  line-number-mode: t
  indent-tabs-mode: t
  transient-mark-mode: t

Load-path shadows:
/home/matthias/.config/emacs/elpa/transient-20211029.1405/transient hides /usr/local/share/emacs/29.0.50/lisp/transient
/home/matthias/.config/emacs/elpa/dictionary-20201001.1727/dictionary hides /usr/local/share/emacs/29.0.50/lisp/net/dictionary

Features:
(shadow sort gnus-cite mail-extr emacsbug sendmail gnus-async qp gnus-ml
gnus-topic nndraft nnmh nnfolder utf-7 epa-file gnutls network-stream
nsm gnus-agent gnus-srvr gnus-score score-mode nnvirtual gnus-msg
gnus-cache kmacro two-column vc-mtn vc-hg vc-bzr vc-src vc-sccs vc-svn
vc-cvs vc-rcs cl-print help-fns radix-tree allout cus-start smerge-mode
diff pcase whitespace log-view pcvs-util hl-line yaml-mode flymake-proc
flymake project python tramp-sh tramp tramp-loaddefs trampver
tramp-integration files-x tramp-compat ls-lisp thai-util thai-word
lao-util ox-odt rng-loc rng-uri rng-parse rng-match rng-dt rng-util
rng-pttrn nxml-parse nxml-ns nxml-enc xmltok nxml-util ox-latex
ox-icalendar org-agenda ox-html table ox-ascii ox-publish ox org-element
avl-tree generator ol-eww eww xdg url-queue mm-url ol-rmail ol-mhe
ol-irc ol-info ol-gnus nnselect gnus-search eieio-opt speedbar ezimage
dframe gnus-art mm-uu mml2015 mm-view mml-smime smime dig gnus-sum shr
kinsoku svg dom ol-docview doc-view image-mode exif ol-bibtex ol-bbdb
ol-w3m ol-doi org-link-doi enriched disp-table facemenu view dired-aux
mule-util jka-compr display-line-numbers hilit-chg flyspell reftex-dcr
reftex reftex-loaddefs reftex-vars tex-mode compile shell bug-reference
goto-addr add-log vc-dir ewoc vc avoid minions carbon-custom cus-edit
cus-load gnus-demon nntp gnus-group gnus-undo gnus-start gnus-dbus dbus
xml gnus-cloud nnimap nnmail mail-source utf7 netrc parse-time gnus-spec
gnus-win nnoo gnus-int gnus-range message rmc puny rfc822 mml mml-sec
epa derived epg rfc6068 epg-config mm-decode mm-bodies mm-encode
mail-parse rfc2231 mailabbrev gmm-utils mailheader gnus nnheader
gnus-util rmail rmail-loaddefs rfc2047 rfc2045 ietf-drums mail-utils
mm-util mail-prsvr wid-edit gnus-dired dired-x dired dired-loaddefs
org-capture org-refile org ob ob-tangle ob-ref ob-lob ob-table ob-exp
org-macro org-footnote org-src ob-comint org-pcomplete pcomplete comint
ansi-color ring org-list org-faces org-entities org-version
ob-emacs-lisp ob-core ob-eval org-table oc-basic bibtex iso8601 ol
org-keys oc org-compat org-macs org-loaddefs format-spec find-func
cal-menu calendar cal-loaddefs dictionary link connection advice
markdown-mode edit-indirect color thingatpt noutline outline skeleton
find-file vc-git diff-mode easy-mmode vc-dispatcher ispell time-date
desktop frameset server bookmark text-property-search pp saveplace
elec-pair icomplete so-long autorevert filenotify autoinsert cc-mode
cc-fonts cc-guess cc-menus cc-cmds cc-styles cc-align cc-engine cc-vars
cc-defs generic-x face-remap proof-site proof-autoloads info package
browse-url url url-proxy url-privacy url-expand url-methods url-history
url-cookie url-domsuf url-util mailcap url-handlers url-parse
auth-source eieio eieio-core eieio-loaddefs password-cache json map
url-vars comp comp-cstr warnings rx cl-seq cl-macs cl-extra help-mode
seq gv subr-x byte-opt bytecomp byte-compile cconv cl-loaddefs cl-lib
iso-transl tooltip eldoc paren electric uniquify ediff-hook vc-hooks
lisp-float-type elisp-mode mwheel term/x-win x-win term/common-win x-dnd
tool-bar dnd fontset image regexp-opt fringe tabulated-list replace
newcomment text-mode lisp-mode prog-mode register page tab-bar menu-bar
rfn-eshadow isearch easymenu timer select scroll-bar mouse jit-lock
font-lock syntax font-core term/tty-colors frame minibuffer 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 emoji-zwj charscript
charprop case-table epa-hook jka-cmpr-hook help simple abbrev obarray
cl-preloaded nadvice button loaddefs faces cus-face macroexp files
window text-properties overlay sha1 md5 base64 format env code-pages
mule custom widget hashtable-print-readable backquote threads dbusbind
inotify lcms2 dynamic-setting system-font-setting font-render-setting
cairo move-toolbar gtk x-toolkit x multi-tty make-network-process
native-compile emacs)

Memory information:
((conses 16 887744 52335)
 (symbols 48 37619 10)
 (strings 32 212084 10992)
 (string-bytes 1 7363735)
 (vectors 16 85260)
 (vector-slots 8 1762020 89727)
 (floats 8 804 289)
 (intervals 56 12994 991)
 (buffers 992 52))

-- 
Matthias

Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#51629; Package emacs. (Sat, 06 Nov 2021 09:21:02 GMT) Full text and rfc822 format available.

Message #8 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Matthias Meulien <orontee <at> gmail.com>
To: bug-gnu-emacs <at> gnu.org
Subject: Re: bug#51629: 29.0.50; State of outline minor mode buttons not
 synchronized
Date: Sat, 06 Nov 2021 10:20:40 +0100
[Message part 1 (text/plain, inline)]
1. Set `outline-minor-mode-use-buttons' to true (I've done it through
`customize-group')

2. Make sure that `emacs-lisp-mode-hook' enables outline-minor-mode
(I've done it through `add-hook')

3. Visit a .el file, say lisp/outline.el from Emacs sources

4. Observe that buttons aren't displayed.

[Message part 2 (image/png, inline)]
[Message part 3 (text/plain, inline)]
If one starts toggling headings visibility using outline-minor-mode key
bindings, some buttons are displayed. Eg after "C-c @ C-t" followed by
"C-c @ C-s" I got:

[Message part 4 (image/png, inline)]
[Message part 5 (text/plain, inline)]


In GNU Emacs 29.0.50 (build 1, x86_64-pc-linux-gnu, GTK+ Version 3.24.24, cairo version 1.16.0)
 of 2021-11-06 built on carbon
Repository revision: 6d406aee501cb6462075149683e492956ce9b7f3
Repository branch: master
Windowing system distributor 'The X.Org Foundation', version 11.0.12011000
System Description: Debian GNU/Linux 11 (bullseye)

Configured using:
 'configure --with-native-compilation'

Configured features:
ACL CAIRO DBUS FREETYPE GIF GLIB GMP GNUTLS GPM GSETTINGS HARFBUZZ JPEG
JSON LCMS2 LIBOTF LIBSELINUX LIBXML2 M17N_FLT MODULES NATIVE_COMP NOTIFY
INOTIFY PDUMPER PNG RSVG SECCOMP SOUND THREADS TIFF TOOLKIT_SCROLL_BARS
X11 XDBE XIM XPM GTK3 ZLIB

Important settings:
  value of $LANG: fr_FR.UTF-8
  value of $XMODIFIERS: @im=ibus
  locale-coding-system: utf-8-unix

Major mode: ELisp/l

Minor modes in effect:
  display-line-numbers-mode: t
  highlight-changes-mode: t
  shell-dirtrack-mode: t
  bug-reference-prog-mode: t
  minions-mode: t
  outline-minor-mode: t
  desktop-save-mode: t
  save-place-mode: t
  electric-pair-mode: t
  icomplete-mode: t
  global-so-long-mode: t
  global-auto-revert-mode: t
  auto-insert-mode: t
  tooltip-mode: t
  global-eldoc-mode: t
  eldoc-mode: t
  show-paren-mode: t
  electric-layout-mode: t
  electric-indent-mode: t
  mouse-wheel-mode: t
  tab-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
  window-divider-mode: t
  auto-composition-mode: t
  auto-encryption-mode: t
  auto-compression-mode: t
  line-number-mode: t
  transient-mark-mode: t
  abbrev-mode: t

Load-path shadows:
/home/matthias/.config/emacs/elpa/transient-20211029.1405/transient hides /usr/local/share/emacs/29.0.50/lisp/transient
/home/matthias/.config/emacs/elpa/dictionary-20201001.1727/dictionary hides /usr/local/share/emacs/29.0.50/lisp/net/dictionary

Features:
(smiley gnus-bcklg nndoc gnus-dup mm-archive url-cache crm debbugs-gnu
debbugs soap-client url-http url-auth url-gw rng-xsd xsd-regexp misearch
multi-isearch mailalias smtpmail shortdoc dabbrev shadow sort gnus-cite
mail-extr emacsbug sendmail gnus-async qp gnus-ml gnus-topic nndraft
nnmh nnfolder utf-7 epa-file gnutls network-stream nsm gnus-agent
gnus-srvr gnus-score score-mode nnvirtual gnus-msg gnus-cache kmacro
two-column vc-mtn vc-hg vc-bzr vc-src vc-sccs vc-svn vc-cvs vc-rcs
cl-print help-fns radix-tree allout cus-start smerge-mode diff pcase
whitespace log-view pcvs-util hl-line yaml-mode flymake-proc flymake
project python tramp-sh tramp tramp-loaddefs trampver tramp-integration
files-x tramp-compat ls-lisp thai-util thai-word lao-util ox-odt rng-loc
rng-uri rng-parse rng-match rng-dt rng-util rng-pttrn nxml-parse nxml-ns
nxml-enc xmltok nxml-util ox-latex ox-icalendar org-agenda ox-html table
ox-ascii ox-publish ox org-element avl-tree generator ol-eww eww xdg
url-queue mm-url ol-rmail ol-mhe ol-irc ol-info ol-gnus nnselect
gnus-search eieio-opt speedbar ezimage dframe gnus-art mm-uu mml2015
mm-view mml-smime smime dig gnus-sum shr kinsoku svg dom ol-docview
doc-view image-mode exif ol-bibtex ol-bbdb ol-w3m ol-doi org-link-doi
enriched disp-table facemenu view dired-aux mule-util jka-compr
display-line-numbers hilit-chg flyspell reftex-dcr reftex
reftex-loaddefs reftex-vars tex-mode compile shell bug-reference
goto-addr add-log vc-dir ewoc vc avoid minions carbon-custom cus-edit
cus-load gnus-demon nntp gnus-group gnus-undo gnus-start gnus-dbus dbus
xml gnus-cloud nnimap nnmail mail-source utf7 netrc parse-time gnus-spec
gnus-win nnoo gnus-int gnus-range message rmc puny rfc822 mml mml-sec
epa derived epg rfc6068 epg-config mm-decode mm-bodies mm-encode
mail-parse rfc2231 mailabbrev gmm-utils mailheader gnus nnheader
gnus-util rmail rmail-loaddefs rfc2047 rfc2045 ietf-drums mail-utils
mm-util mail-prsvr wid-edit gnus-dired dired-x dired dired-loaddefs
org-capture org-refile org ob ob-tangle ob-ref ob-lob ob-table ob-exp
org-macro org-footnote org-src ob-comint org-pcomplete pcomplete comint
ansi-color ring org-list org-faces org-entities org-version
ob-emacs-lisp ob-core ob-eval org-table oc-basic bibtex iso8601 ol
org-keys oc org-compat org-macs org-loaddefs format-spec find-func
cal-menu calendar cal-loaddefs dictionary link connection advice
markdown-mode edit-indirect color thingatpt noutline outline skeleton
find-file vc-git diff-mode easy-mmode vc-dispatcher ispell time-date
desktop frameset server bookmark text-property-search pp saveplace
elec-pair icomplete so-long autorevert filenotify autoinsert cc-mode
cc-fonts cc-guess cc-menus cc-cmds cc-styles cc-align cc-engine cc-vars
cc-defs generic-x face-remap proof-site proof-autoloads info package
browse-url url url-proxy url-privacy url-expand url-methods url-history
url-cookie url-domsuf url-util mailcap url-handlers url-parse
auth-source eieio eieio-core eieio-loaddefs password-cache json map
url-vars comp comp-cstr warnings rx cl-seq cl-macs cl-extra help-mode
seq gv subr-x byte-opt bytecomp byte-compile cconv cl-loaddefs cl-lib
iso-transl tooltip eldoc paren electric uniquify ediff-hook vc-hooks
lisp-float-type elisp-mode mwheel term/x-win x-win term/common-win x-dnd
tool-bar dnd fontset image regexp-opt fringe tabulated-list replace
newcomment text-mode lisp-mode prog-mode register page tab-bar menu-bar
rfn-eshadow isearch easymenu timer select scroll-bar mouse jit-lock
font-lock syntax font-core term/tty-colors frame minibuffer 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 emoji-zwj charscript
charprop case-table epa-hook jka-cmpr-hook help simple abbrev obarray
cl-preloaded nadvice button loaddefs faces cus-face macroexp files
window text-properties overlay sha1 md5 base64 format env code-pages
mule custom widget hashtable-print-readable backquote threads dbusbind
inotify lcms2 dynamic-setting system-font-setting font-render-setting
cairo move-toolbar gtk x-toolkit x multi-tty make-network-process
native-compile emacs)

Memory information:
((conses 16 1112679 177861)
 (symbols 48 39281 10)
 (strings 32 247990 48587)
 (string-bytes 1 8130967)
 (vectors 16 89668)
 (vector-slots 8 1836287 61261)
 (floats 8 3248 1028)
 (intervals 56 21053 2105)
 (buffers 992 66))

Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#51629; Package emacs. (Sat, 06 Nov 2021 18:53:01 GMT) Full text and rfc822 format available.

Message #11 received at 51629 <at> debbugs.gnu.org (full text, mbox):

From: Lars Ingebrigtsen <larsi <at> gnus.org>
To: Matthias Meulien <orontee <at> gmail.com>
Cc: 51629 <at> debbugs.gnu.org
Subject: Re: bug#51629: 29.0.50; State of outline minor mode buttons not
 synchronized
Date: Sat, 06 Nov 2021 19:52:05 +0100
Matthias Meulien <orontee <at> gmail.com> writes:

> 4. Observe the broken buttons state as in attached screenshot:

Thanks for the detailed case for reproduction; I've now fixed this on
the trunk.  (Hopefully for all these outline commands, but probably not.  🤐)

> While speaking of diff-mode buffers, note that the arrows are simply not
> displayed when the buffer is first displayed. Maybe this deserves a
> dedicated bug?

We're thinking of making this button thing much more configurable.  As
it stands, the buttons are not useful in editing buffers -- they should
be fringe markers there instead.  But it's being worked upon: It'll be a
more general library for marking things like this.

-- 
(domestic pets only, the antidote for overdose, milk.)
   bloggy blog: http://lars.ingebrigtsen.no




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#51629; Package emacs. (Sat, 06 Nov 2021 18:56:02 GMT) Full text and rfc822 format available.

Message #14 received at 51629 <at> debbugs.gnu.org (full text, mbox):

From: Lars Ingebrigtsen <larsi <at> gnus.org>
To: Matthias Meulien <orontee <at> gmail.com>
Cc: 51629 <at> debbugs.gnu.org
Subject: Re: bug#51629: 29.0.50; State of outline minor mode buttons not
 synchronized
Date: Sat, 06 Nov 2021 19:54:55 +0100
Matthias Meulien <orontee <at> gmail.com> writes:

> 1. Set `outline-minor-mode-use-buttons' to true (I've done it through
> `customize-group')
>
> 2. Make sure that `emacs-lisp-mode-hook' enables outline-minor-mode
> (I've done it through `add-hook')
>
> 3. Visit a .el file, say lisp/outline.el from Emacs sources

I've now made the caveat (about this feature not working in editing
buffers) explicit in the doc string.

-- 
(domestic pets only, the antidote for overdose, milk.)
   bloggy blog: http://lars.ingebrigtsen.no




bug marked as fixed in version 29.1, send any further explanations to 51629 <at> debbugs.gnu.org and Matthias Meulien <orontee <at> gmail.com> Request was from Lars Ingebrigtsen <larsi <at> gnus.org> to control <at> debbugs.gnu.org. (Sat, 06 Nov 2021 18:56:02 GMT) Full text and rfc822 format available.

bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Sun, 05 Dec 2021 12:24:07 GMT) Full text and rfc822 format available.

This bug report was last modified 2 years and 141 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.