Subject: bug#72681: closed (Re: bug#72681: 31.0.50; visual-wrap-prefix-mode interacts badly with plain lists in org-mode)

From: [email-masked] (GNU bug Tracking System)
Date: Sun, 18 Aug 2024 01:43:02 +0000

Your bug report

#72681: 31.0.50; visual-wrap-prefix-mode interacts badly with plain lists in org-mode

which was filed against the emacs package, has been closed.

The explanation is attached below, along with your original report.
If you require more details, please reply to [email-masked].

-- 
72681: https://debbugs.gnu.org/cgi/bugreport.cgi?bug=72681
GNU Bug Tracking System
Contact [email-masked] with problems

Subject: Re: bug#72681: 31.0.50; visual-wrap-prefix-mode interacts badly with plain lists in org-mode
From: Jim Porter <[email-masked]>
To: Mark Hepburn <[email-masked]>, Eli Zaretskii <[email-masked]>
Cc: [email-masked]
Date: Sat, 17 Aug 2024 18:40:29 -0700
List-Id: <debbugs-submit.debbugs.gnu.org>

On 8/17/2024 5:02 PM, Mark Hepburn wrote:
> Thanks Jim, nice work -- yes that seems to work perfectly again for all 
> the problematic files I had before.

Great, thanks for checking. I've therefore merged this to the master 
branch as 135da3556bb. Closing this bug now.

(Though of course if you find any other issues with the new 
'visual-wrap-prefix-mode' code, just let me know and I'll try to fix it.)

Subject: 31.0.50; visual-wrap-prefix-mode interacts badly with plain lists in org-mode
From: "Mark Hepburn" <[email-masked]>
To: [email-masked]
Date: Sat, 17 Aug 2024 12:21:45 +1000
List-Id: <debbugs-submit.debbugs.gnu.org>

--text follows this line--

The recently-merged visual-wrap-prefix-mode support for variable-pitch
fonts seems to interact badly with plain lists in org-mode, causing
visual artefacts.  I think it's to do with both plain lists and a
trailing blank line.  To reproduce, from emacs -Q:
* switch to a new buffer
* M-x org-mode
* Insert a couple of headings, with a plain list followed by a blank
line afterwards:
====================
* header

- item

* second header
====================
* M-x visual-wrap-prefix-mode
* This now renders for me like:
====================
* header

- item

  *  second header
====================
(The actual artefacts are even more pronounced for me in practice
because I have org-adapt-indentation set, so the second header is even
more visually indented)

In GNU Emacs 31.0.50 (build 1, x86_64-pc-linux-gnu, GTK+ Version
3.24.41, cairo version 1.18.0) of 2024-08-17 built on x1carbon
Repository revision: 909d1d02db1c11e1309316cba2a392e1456e6053
Repository branch: master
Windowing system distributor 'The X.Org Foundation', version 11.0.12101011
System Description: Ubuntu 24.04 LTS

Configured using:
'configure --with-native-compilation --without-mailutils
--with-xwidgets --with-tree-sitter --with-libsystemd'

Configured features:
CAIRO DBUS FREETYPE GIF GLIB GMP GNUTLS GSETTINGS HARFBUZZ JPEG
LIBSELINUX LIBSYSTEMD LIBXML2 MODULES NATIVE_COMP NOTIFY INOTIFY PDUMPER
PNG SECCOMP SOUND SQLITE3 THREADS TIFF TOOLKIT_SCROLL_BARS TREE_SITTER
WEBP X11 XDBE XIM XINPUT2 XPM XWIDGETS GTK3 ZLIB

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

Major mode: Org

Minor modes in effect:
  visual-wrap-prefix-mode: t
  tooltip-mode: t
  global-eldoc-mode: t
  show-paren-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
  minibuffer-regexp-mode: t
  line-number-mode: t
  indent-tabs-mode: t
  transient-mark-mode: t
  auto-composition-mode: t
  auto-encryption-mode: t
  auto-compression-mode: t

Load-path shadows:
None found.

Features:
(shadow sort mail-extr dabbrev emacsbug reposition compile tmm
visual-wrap oc-basic cl-extra help-mode org-element org-persist org-id
org-refile org-element-ast inline avl-tree generator ol-eww eww xdg
url-queue mm-url ol-rmail ol-mhe ol-irc ol-info ol-gnus nnselect
gnus-art mm-uu mml2015 mm-view mml-smime smime gnutls dig gnus-sum shr
pixel-fill kinsoku url-file svg dom gnus-group gnus-undo gnus-start
gnus-dbus dbus comp-run comp-common xml gnus-cloud nnimap nnmail
browse-url url url-proxy url-privacy url-expand url-methods url-history
url-cookie generate-lisp-file url-domsuf url-util url-parse auth-source
cl-seq eieio eieio-core cl-macs json map byte-opt gv bytecomp
byte-compile url-vars mail-source utf7 nnoo parse-time gnus-spec
gnus-int gnus-range message sendmail mailcap yank-media puny rfc822 mml
mml-sec password-cache epa derived epg rfc6068 epg-config mm-decode
mm-bodies mm-encode mail-parse rfc2231 rfc2047 rfc2045 ietf-drums
mailabbrev gmm-utils mailheader gnus-win gnus nnheader gnus-util
text-property-search mail-utils range mm-util mail-prsvr wid-edit
ol-docview doc-view filenotify jka-compr image-mode exif dired
dired-loaddefs ol-bibtex bibtex iso8601 ol-bbdb ol-w3m ol-doi
org-link-doi org ob ob-tangle ob-ref ob-lob ob-table ob-exp org-macro
org-src sh-script smie treesit executable ob-comint org-pcomplete
pcomplete comint ansi-osc ansi-color ring org-list org-footnote
org-faces org-entities time-date subr-x noutline outline icons
ob-emacs-lisp ob-core ob-eval org-cycle org-table ol rx org-fold
org-fold-core org-keys oc org-loaddefs thingatpt find-func cal-menu
calendar cal-loaddefs org-version org-compat org-macs format-spec
cl-loaddefs cl-lib rmc iso-transl tooltip cconv eldoc paren electric
uniquify ediff-hook vc-hooks lisp-float-type elisp-mode mwheel
term/x-win x-win term/common-win x-dnd touch-screen 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 nadvice seq simple cl-generic
indonesian philippine 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 abbrev obarray oclosure cl-preloaded button loaddefs
theme-loaddefs faces cus-face macroexp files window text-properties
overlay sha1 md5 base64 format env code-pages mule custom widget keymap
hashtable-print-readable backquote threads xwidget-internal dbusbind
inotify dynamic-setting system-font-setting font-render-setting cairo
gtk x-toolkit xinput2 x multi-tty move-toolbar make-network-process
native-compile emacs)

Memory information:
((conses 16 262343 58872) (symbols 48 21342 0) (strings 32 73561 4714)
(string-bytes 1 2291125) (vectors 16 35091)
(vector-slots 8 431581 22950) (floats 8 341 49) (intervals 56 427 0)
(buffers 992 17))