Subject: bug#78522: closed (Re: bug#78522: 31.0.50; Conflict between standard-display-unicode-special-glyphs and whitespace-mode)

From: [email-masked] (GNU bug Tracking System)
Date: Sat, 07 Jun 2025 09:25:02 +0000

Your bug report

#78522: 31.0.50; Conflict between standard-display-unicode-special-glyphs and whitespace-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].

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

Subject: Re: bug#78522: 31.0.50; Conflict between standard-display-unicode-special-glyphs and whitespace-mode
From: Eli Zaretskii <[email-masked]>
To: [email-masked], [email-masked]
Cc: [email-masked], [email-masked]
Date: Sat, 07 Jun 2025 12:24:10 +0300
List-Id: <debbugs-submit.debbugs.gnu.org>

> Cc: [email-masked], [email-masked], [email-masked]
> Date: Sun, 01 Jun 2025 12:53:28 +0300
> From: Eli Zaretskii <[email-masked]>
> 
> > From: Visuwesh <[email-masked]>
> > Cc: Ergus <[email-masked]>,  [email-masked],  [email-masked]
> > Date: Sun, 01 Jun 2025 15:16:25 +0530
> > 
> > [சனி மே 31, 2025] Eli Zaretskii wrote:
> > 
> > >> Date: Thu, 29 May 2025 21:14:35 +0000 (UTC)
> > >> From: Ergus <[email-masked]>
> > >> Cc: "[email-masked]" <[email-masked]>, 
> > >> 	"[email-masked]" <[email-masked]>
> > >> 
> > >> > > M-x standard-display-unicode-special-glyphs ;; This looks as expected
> > >> > > M-x whitespace-mode ;; reverts the effect
> > >> > 
> > >> > This part of the issue is still there exactly like before.
> > >> 
> > >> ??? I've just tried, and it definitely does solve the problem here.
> > >> 
> > >> Or maybe I don't understand well enough what you mean by "reverts the
> > >> effect"?  You've never actually shown a recipe with detailed
> > >> explanations which explain what exactly is "reverted".  Because
> > >> standard-display-unicode-special-glyphs by itself doesn't change
> > >> anything on display in 'emacs -Q", you must do something else to see
> > >> its effect.  In my testing, I used "C-x 3", which shows the vertical
> > >> border between two windows using a Unicode character when
> > >> standard-display-unicode-special-glyphs is in effect.  Before my
> > >> changes, whitespace-mode would revert the border back to the ASCII
> > >> characters they used originally; after my changes this no longer
> > >> happens.
> > >> emacs -Q -nwC-x 3    ;; See the vertical division line with |
> > >> S-M-: (standard-display-unicode-special-glyphs) ;; See the vertical division line with #x2502
> > >> M-x whitespace-mode ;; See the vertical division line reverted to |
> > >> M-x whitespace-mode ;; whitespace mode disabled vertical divisor back to #x2502
> > >> M-x whitespace-mode ;; whitespace mode enabled again, vertical divisor stays #x2502
> > >
> > > I cannot reproduce the revert in the initial "M-x whitespace-mode".  I
> > > wonder whether you have some local copy of whitespace.el which shadows
> > > the one you patched, or some other local customization.
> > >
> > > Can anyone else try the patch and the recipe, and report back?
> > 
> > After saying M-x whitespace-mode the first time, the vertical division
> > line is not changed to the ASCII pipe character with the patch applied.
> > Needless to say, turning off whitespace-mode and on again does not make
> > the vertical division line go back to being the ASCII character either.
> > 
> > This was all tested in Xterm, if it matters.
> 
> Thanks.  This matches what I see, so I think the bug will be solved by
> the patch.  I will install it in a few days, unless someone comes up
> with a reproducible recipe that proves we still have problems to solve
> in this scenario.

No further comments, so I've now installed my changes on the master
branch, and I'm closing this bug.

Subject: 31.0.50; Conflict between standard-display-unicode-special-glyphs and whitespace-mode
From: Ergus <[email-masked]>
To: [email-masked]
Date: Wed, 21 May 2025 02:11:16 +0200
List-Id: <debbugs-submit.debbugs.gnu.org>

Whitespace mode contradicts the standard-display-unicode-special-glyphs
effect

Reproduce:
;; -------------------------------
emacs -Q -nw
M-x standard-display-unicode-special-glyphs ;; This looks as expected
M-x whitespace-mode ;; reverts the effect
;; -------------------------------

The only way to get back the effect of
standard-display-unicode-special-glyphs is disabling whitespace-mode.

In GNU Emacs 31.0.50 (build 4, x86_64-pc-linux-gnu, GTK+ Version
 3.24.49, cairo version 1.18.4) of 2025-05-19 built on RTX
Repository revision: b499898a5e6e27ecacfb6a60b22a2289afc589dd
Repository branch: project
System Description: Arch Linux

Configured using:
 'configure --prefix=/home/ergo/.local/ --with-mailutils --with-pgtk
 --with-modules --with-cairo --with-harfbuzz
 --with-native-compilation=aot
 '--program-transform-name=s/^ctags$/ctags.emacs/''

Configured features:
ACL CAIRO DBUS FREETYPE GIF GLIB GMP GNUTLS GPM GSETTINGS HARFBUZZ JPEG
LCMS2 LIBSYSTEMD LIBXML2 MODULES NATIVE_COMP NOTIFY INOTIFY PDUMPER PGTK
PNG RSVG SECCOMP SOUND SQLITE3 THREADS TIFF TOOLKIT_SCROLL_BARS
TREE_SITTER WEBP XIM GTK3 ZLIB

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

Major mode: Lisp Interaction

Minor modes in effect:
  global-auto-revert-mode: t
  recentf-mode: t
  electric-pair-mode: t
  flyspell-mode: t
  completion-preview-mode: t
  diff-hl-margin-mode: t
  global-corfu-mode: t
  corfu-mode: t
  fancy-compilation-mode: t
  winner-mode: t
  project-multi-mode: t
  gtags-mode: t
  repeat-mode: t
  xterm-mouse-mode: t
  tty-tip-mode: t
  xclip-mode: t
  override-global-mode: t
  save-place-mode: t
  delete-selection-mode: t
  savehist-mode: t
  global-display-fill-column-indicator-mode: t
  display-fill-column-indicator-mode: t
  global-display-line-numbers-mode: t
  display-line-numbers-mode: t
  which-key-mode: t
  tooltip-mode: t
  eldoc-mode: t
  show-paren-mode: t
  electric-indent-mode: t
  mouse-wheel-mode: t
  file-name-shadow-mode: t
  context-menu-mode: t
  global-font-lock-mode: t
  font-lock-mode: t
  blink-cursor-mode: t
  minibuffer-regexp-mode: t
  size-indication-mode: t
  column-number-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:
/mnt/casa/gits/emacs_clones/gtags-mode/gtags-mode hides /home/ergo/.config/emacs/elpa/gtags-mode-1.8.6/gtags-mode
/home/ergo/.config/emacs/elpa/transient-20250516.1031/transient hides /home/ergo/.local/share/emacs/31.0.50/lisp/transient

Features:
(shadow sort mail-extr emacsbug lisp-mnt autorevert filenotify recentf
tree-widget ffap thingatpt elec-pair flyspell-correct flyspell ispell
completion-preview diff-hl-margin diff-hl-dired diff-hl log-view
log-edit message sendmail yank-media puny dired-x dired dired-loaddefs
rfc822 mml mml-sec epa derived epg rfc6068 epg-config gnus-util
time-date mm-decode mm-bodies mm-encode mail-parse rfc2231 rfc2047
rfc2045 mm-util ietf-drums mail-prsvr mailabbrev mail-utils gmm-utils
mailheader add-log pcvs-util vc-dir ewoc vc vc-dispatcher diff-mode
track-changes corfu fancy-compilation compile text-property-search
comint ansi-osc ansi-color comp-run comp-common winner cus-edit pp
cus-start cus-load wid-edit project-multi-mode gtags-mode files-x xref
project ring term/tmux term/xterm xterm init rx repeat cape compat
use-package-ensure package browse-url xdg url url-proxy url-privacy
url-expand url-methods url-history url-cookie generate-lisp-file
url-domsuf url-util mailcap url-handlers url-parse auth-source eieio
eieio-core cl-macs icons password-cache json subr-x map url-vars
use-package-diminish xt-mouse tty-tip xclip edmacro kmacro byte-opt
use-package-bind-key bind-key cl-extra help-mode simple-16-theme
saveplace delsel savehist easy-mmode display-fill-column-indicator
display-line-numbers diminish which-key cl-seq use-package-core
cl-loaddefs cl-lib bytecomp byte-compile gv disp-table info
arduino-cli-mode-autoloads auctex-autoloads tex-site avy-zap-autoloads
avy-autoloads benchmark-init-autoloads bufferlo-autoloads caml-autoloads
cape-autoloads clang-format-autoloads cobol-mode-autoloads
compile-multi-autoloads compiler-explorer-autoloads corfu-autoloads
crdt-autoloads csv-mode-autoloads d-mode-autoloads dape-autoloads
deadgrep-autoloads debbugs-autoloads diff-hl-autoloads
diminish-autoloads dired-sidebar-autoloads dired-subtree-autoloads
dired-hacks-utils-autoloads dumb-jump-autoloads e2ansi-autoloads
eglot-booster-autoloads emamux-autoloads eshell-toggle-autoloads
esup-autoloads evil-collection-autoloads annalist-autoloads
evil-leader-autoloads evil-autoloads face-explorer-autoloads
fancy-compilation-autoloads flx-autoloads flymake-nasm-autoloads
flymake-quickdef-autoloads flyspell-correct-autoloads
git-commit-ts-mode-autoloads git-modes-autoloads
git-timemachine-autoloads gnuplot-autoloads goto-chg-autoloads
groovy-mode-autoloads gtags-mode-autoloads haskell-mode-autoloads
highlight-indent-guides-autoloads i3wm-config-mode-autoloads
ibuffer-sidebar-autoloads iedit-autoloads imenu-list-autoloads
julia-ts-mode-autoloads julia-mode-autoloads languagetool-autoloads
lice-autoloads lorem-ipsum-autoloads lua-mode-autoloads magit-autoloads
magit-section-autoloads llama-autoloads move-dup-autoloads
multiple-cursors-autoloads mutt-mode-autoloads nasm-mode-autoloads
neotree-autoloads nftables-mode-autoloads nginx-mode-autoloads
notmuch-autoloads objed-autoloads phi-search-autoloads
pkgbuild-mode-autoloads plz-autoloads popup-autoloads
protobuf-ts-mode-autoloads scopeline-autoloads shell-command+-autoloads
slime-autoloads macrostep-autoloads sphinx-mode-autoloads f-autoloads
s-autoloads dash-autoloads spinner-autoloads ssh-config-mode-autoloads
string-inflection-autoloads sudo-edit-autoloads systemd-autoloads
tmux-mode-autoloads transient-autoloads urgrep-autoloads vdiff-autoloads
hydra-autoloads lv-autoloads vterm-toggle-autoloads vterm-autoloads
vundo-autoloads with-editor-autoloads xclip-autoloads
yasnippet-snippets-autoloads yasnippet-autoloads early-init rmc
iso-transl tooltip cconv eldoc paren electric uniquify ediff-hook
vc-hooks lisp-float-type elisp-mode mwheel term/pgtk-win pgtk-win
term/common-win touch-screen pgtk-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 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 dbusbind inotify
dynamic-setting system-font-setting font-render-setting cairo gtk pgtk
lcms2 multi-tty move-toolbar make-network-process tty-child-frames
native-compile emacs)

Memory information:
((conses 16 233090 116420) (symbols 48 16647 5)
 (strings 32 64231 14974) (string-bytes 1 2019767) (vectors 16 21192)
 (vector-slots 8 249206 25888) (floats 8 116 283)
 (intervals 56 1657 0) (buffers 1064 12))