Package: emacs;
Reported by: Adriel Dumas--Jondeau <leirda <at> disroot.org>
Date: Tue, 21 Feb 2023 13:38:01 UTC
Severity: wishlist
Found in version 30.0.50
To reply to this bug, email your comments to 61677 AT debbugs.gnu.org.
Toggle the display of automated, internal messages from the tracker.
View this report as an mbox folder, status mbox, maintainer mbox
bug-gnu-emacs <at> gnu.org
:bug#61677
; Package emacs
.
(Tue, 21 Feb 2023 13:38:02 GMT) Full text and rfc822 format available.Adriel Dumas--Jondeau <leirda <at> disroot.org>
:bug-gnu-emacs <at> gnu.org
.
(Tue, 21 Feb 2023 13:38:02 GMT) Full text and rfc822 format available.Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):
From: Adriel Dumas--Jondeau <leirda <at> disroot.org> To: bug-gnu-emacs <at> gnu.org Subject: 30.0.50; Display-Fill-Column-Indicator mode shifts with narrow characters near end of line Date: Tue, 21 Feb 2023 12:40:45 +0100
[Message part 1 (text/plain, inline)]
Starting from ~emacs -Q~: 1. Enable the Display-Full-Column-Indicator mode (~M-x di-i~). 2. Conveniently set fill-column value to the lowest (~C-x f 1~). 3. Set a font that properly displays narrow chars (~M-x s-fr-f~), e.g "-PfEd-DejaVu Serif-regular-normal-normal-*-*-*-*-*-*-0-iso10646-1". 4. Use a newline terminated line as the guide doesn't show up on the last line of the file (e.g ~C-p~, ~C-o~ and whatnot). 5. Insert some special characters, such as the narrow nobreak-space (~C-x 8 RET 202f~), up to three times. Observed behavior: The guide on this line is slightly shifted to the right in regards to the next and previous lines, and it get worse as narrow chars are added. Expected Behavior: The guide should stay properly aligned to the fill-column value. This is my first bug report, so I'm a bit overwhelmed and I'm really sorry if this is a duplicate (If so, how can I tell so next time?) I don't know the internals of display-fill-column-indicator-mode, but my guts says that we should compensate this by using some another narrow characters (without any face) to properly align to fill-column. I don't know if it can be done accurately for every narrow characters of every font as width may greatly vary between each of them, though. I'm on Emacs 30.0.50, but I'm pretty sure this can be reproduced on most of the previous recent emacs versions. Thank you, -- Adriel In GNU Emacs 30.0.50 (build 1, x86_64-pc-linux-gnu, GTK+ Version 3.24.30, cairo version 1.16.0) System Description: Guix System Configured using: 'configure CONFIG_SHELL=/gnu/store/4y5m9lb8k3qkb1y9m02sw9w9a6hacd16-bash-minimal-5.1.8/bin/bash SHELL=/gnu/store/4y5m9lb8k3qkb1y9m02sw9w9a6hacd16-bash-minimal-5.1.8/bin/bash --prefix=/gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87 --enable-fast-install --with-pgtk --with-xwidgets --with-modules --with-cairo --with-native-compilation --disable-build-details' Configured features: ACL CAIRO DBUS FREETYPE GIF GLIB GMP GNUTLS GPM GSETTINGS HARFBUZZ JPEG JSON LCMS2 LIBOTF LIBSELINUX LIBSYSTEMD LIBXML2 MODULES NATIVE_COMP NOTIFY INOTIFY PDUMPER PGTK PNG RSVG SECCOMP SOUND SQLITE3 THREADS TIFF TOOLKIT_SCROLL_BARS TREE_SITTER XIM XWIDGETS GTK3 ZLIB Important settings: value of $EMACSLOADPATH: /home/leirda/.guix-home/profile/share/emacs/site-lisp:/gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87/share/emacs/30.0.50/lisp value of $EMACSNATIVELOADPATH: /home/leirda/.guix-home/profile/lib/emacs/native-site-lisp value of $LANG: en_US.utf8 locale-coding-system: utf-8-unix Major mode: ELisp/d Load-path shadows: /gnu/store/4hjddd63p2wnymjbi1x2wy56a5fcb13v-emacs-jsonrpc-1.0.16/share/emacs/site-lisp/jsonrpc-1.0.16/jsonrpc hides /gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87/share/emacs/30.0.50/lisp/jsonrpc /gnu/store/8ssgcwh2wy8d9pihqdrm7cizq4ja1klz-emacs-external-completion-0.1/share/emacs/site-lisp/external-completion-0.1/external-completion hides /gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87/share/emacs/30.0.50/lisp/external-completion /gnu/store/bz2079dzdhzvbv3p450ccm76dyhzj106-emacs-xref-1.6.1/share/emacs/site-lisp/xref-1.6.1/xref hides /gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87/share/emacs/30.0.50/lisp/progmodes/xref /gnu/store/0ikj7v4vdl9n6z3jxihwlyh6h3nqyxmv-emacs-project-0.9.7/share/emacs/site-lisp/project-0.9.7/project hides /gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87/share/emacs/30.0.50/lisp/progmodes/project /gnu/store/mmmhg3vg7hafr0yklvksim27rmrslb88-emacs-eglot-1.11/share/emacs/site-lisp/eglot-1.11/eglot hides /gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87/share/emacs/30.0.50/lisp/progmodes/eglot /gnu/store/7vvbh1hb4cdbkvyh3zbjk8ikh72b2ksl-emacs-org-9.6.1/share/emacs/site-lisp/org-9.6.1/ox hides /gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87/share/emacs/30.0.50/lisp/org/ox /gnu/store/7vvbh1hb4cdbkvyh3zbjk8ikh72b2ksl-emacs-org-9.6.1/share/emacs/site-lisp/org-9.6.1/ox-texinfo hides /gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87/share/emacs/30.0.50/lisp/org/ox-texinfo /gnu/store/7vvbh1hb4cdbkvyh3zbjk8ikh72b2ksl-emacs-org-9.6.1/share/emacs/site-lisp/org-9.6.1/ox-publish hides /gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87/share/emacs/30.0.50/lisp/org/ox-publish /gnu/store/7vvbh1hb4cdbkvyh3zbjk8ikh72b2ksl-emacs-org-9.6.1/share/emacs/site-lisp/org-9.6.1/ox-org hides /gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87/share/emacs/30.0.50/lisp/org/ox-org /gnu/store/7vvbh1hb4cdbkvyh3zbjk8ikh72b2ksl-emacs-org-9.6.1/share/emacs/site-lisp/org-9.6.1/ox-odt hides /gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87/share/emacs/30.0.50/lisp/org/ox-odt /gnu/store/7vvbh1hb4cdbkvyh3zbjk8ikh72b2ksl-emacs-org-9.6.1/share/emacs/site-lisp/org-9.6.1/ox-md hides /gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87/share/emacs/30.0.50/lisp/org/ox-md /gnu/store/7vvbh1hb4cdbkvyh3zbjk8ikh72b2ksl-emacs-org-9.6.1/share/emacs/site-lisp/org-9.6.1/ox-man hides /gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87/share/emacs/30.0.50/lisp/org/ox-man /gnu/store/7vvbh1hb4cdbkvyh3zbjk8ikh72b2ksl-emacs-org-9.6.1/share/emacs/site-lisp/org-9.6.1/ox-latex hides /gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87/share/emacs/30.0.50/lisp/org/ox-latex /gnu/store/7vvbh1hb4cdbkvyh3zbjk8ikh72b2ksl-emacs-org-9.6.1/share/emacs/site-lisp/org-9.6.1/ox-koma-letter hides /gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87/share/emacs/30.0.50/lisp/org/ox-koma-letter /gnu/store/7vvbh1hb4cdbkvyh3zbjk8ikh72b2ksl-emacs-org-9.6.1/share/emacs/site-lisp/org-9.6.1/ox-icalendar hides /gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87/share/emacs/30.0.50/lisp/org/ox-icalendar /gnu/store/7vvbh1hb4cdbkvyh3zbjk8ikh72b2ksl-emacs-org-9.6.1/share/emacs/site-lisp/org-9.6.1/ox-html hides /gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87/share/emacs/30.0.50/lisp/org/ox-html /gnu/store/7vvbh1hb4cdbkvyh3zbjk8ikh72b2ksl-emacs-org-9.6.1/share/emacs/site-lisp/org-9.6.1/ox-beamer hides /gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87/share/emacs/30.0.50/lisp/org/ox-beamer /gnu/store/7vvbh1hb4cdbkvyh3zbjk8ikh72b2ksl-emacs-org-9.6.1/share/emacs/site-lisp/org-9.6.1/ox-ascii hides /gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87/share/emacs/30.0.50/lisp/org/ox-ascii /gnu/store/7vvbh1hb4cdbkvyh3zbjk8ikh72b2ksl-emacs-org-9.6.1/share/emacs/site-lisp/org-9.6.1/org hides /gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87/share/emacs/30.0.50/lisp/org/org /gnu/store/7vvbh1hb4cdbkvyh3zbjk8ikh72b2ksl-emacs-org-9.6.1/share/emacs/site-lisp/org-9.6.1/org-timer hides /gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87/share/emacs/30.0.50/lisp/org/org-timer /gnu/store/7vvbh1hb4cdbkvyh3zbjk8ikh72b2ksl-emacs-org-9.6.1/share/emacs/site-lisp/org-9.6.1/org-table hides /gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87/share/emacs/30.0.50/lisp/org/org-table /gnu/store/7vvbh1hb4cdbkvyh3zbjk8ikh72b2ksl-emacs-org-9.6.1/share/emacs/site-lisp/org-9.6.1/org-src hides /gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87/share/emacs/30.0.50/lisp/org/org-src /gnu/store/7vvbh1hb4cdbkvyh3zbjk8ikh72b2ksl-emacs-org-9.6.1/share/emacs/site-lisp/org-9.6.1/org-refile hides /gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87/share/emacs/30.0.50/lisp/org/org-refile /gnu/store/7vvbh1hb4cdbkvyh3zbjk8ikh72b2ksl-emacs-org-9.6.1/share/emacs/site-lisp/org-9.6.1/org-protocol hides /gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87/share/emacs/30.0.50/lisp/org/org-protocol /gnu/store/7vvbh1hb4cdbkvyh3zbjk8ikh72b2ksl-emacs-org-9.6.1/share/emacs/site-lisp/org-9.6.1/org-plot hides /gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87/share/emacs/30.0.50/lisp/org/org-plot /gnu/store/7vvbh1hb4cdbkvyh3zbjk8ikh72b2ksl-emacs-org-9.6.1/share/emacs/site-lisp/org-9.6.1/org-persist hides /gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87/share/emacs/30.0.50/lisp/org/org-persist /gnu/store/7vvbh1hb4cdbkvyh3zbjk8ikh72b2ksl-emacs-org-9.6.1/share/emacs/site-lisp/org-9.6.1/org-pcomplete hides /gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87/share/emacs/30.0.50/lisp/org/org-pcomplete /gnu/store/7vvbh1hb4cdbkvyh3zbjk8ikh72b2ksl-emacs-org-9.6.1/share/emacs/site-lisp/org-9.6.1/org-num hides /gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87/share/emacs/30.0.50/lisp/org/org-num /gnu/store/7vvbh1hb4cdbkvyh3zbjk8ikh72b2ksl-emacs-org-9.6.1/share/emacs/site-lisp/org-9.6.1/org-mouse hides /gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87/share/emacs/30.0.50/lisp/org/org-mouse /gnu/store/7vvbh1hb4cdbkvyh3zbjk8ikh72b2ksl-emacs-org-9.6.1/share/emacs/site-lisp/org-9.6.1/org-mobile hides /gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87/share/emacs/30.0.50/lisp/org/org-mobile /gnu/store/7vvbh1hb4cdbkvyh3zbjk8ikh72b2ksl-emacs-org-9.6.1/share/emacs/site-lisp/org-9.6.1/org-macs hides /gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87/share/emacs/30.0.50/lisp/org/org-macs /gnu/store/7vvbh1hb4cdbkvyh3zbjk8ikh72b2ksl-emacs-org-9.6.1/share/emacs/site-lisp/org-9.6.1/org-macro hides /gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87/share/emacs/30.0.50/lisp/org/org-macro /gnu/store/7vvbh1hb4cdbkvyh3zbjk8ikh72b2ksl-emacs-org-9.6.1/share/emacs/site-lisp/org-9.6.1/org-loaddefs hides /gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87/share/emacs/30.0.50/lisp/org/org-loaddefs /gnu/store/7vvbh1hb4cdbkvyh3zbjk8ikh72b2ksl-emacs-org-9.6.1/share/emacs/site-lisp/org-9.6.1/org-list hides /gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87/share/emacs/30.0.50/lisp/org/org-list /gnu/store/7vvbh1hb4cdbkvyh3zbjk8ikh72b2ksl-emacs-org-9.6.1/share/emacs/site-lisp/org-9.6.1/org-lint hides /gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87/share/emacs/30.0.50/lisp/org/org-lint /gnu/store/7vvbh1hb4cdbkvyh3zbjk8ikh72b2ksl-emacs-org-9.6.1/share/emacs/site-lisp/org-9.6.1/org-keys hides /gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87/share/emacs/30.0.50/lisp/org/org-keys /gnu/store/7vvbh1hb4cdbkvyh3zbjk8ikh72b2ksl-emacs-org-9.6.1/share/emacs/site-lisp/org-9.6.1/org-inlinetask hides /gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87/share/emacs/30.0.50/lisp/org/org-inlinetask /gnu/store/7vvbh1hb4cdbkvyh3zbjk8ikh72b2ksl-emacs-org-9.6.1/share/emacs/site-lisp/org-9.6.1/org-indent hides /gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87/share/emacs/30.0.50/lisp/org/org-indent /gnu/store/7vvbh1hb4cdbkvyh3zbjk8ikh72b2ksl-emacs-org-9.6.1/share/emacs/site-lisp/org-9.6.1/org-id hides /gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87/share/emacs/30.0.50/lisp/org/org-id /gnu/store/7vvbh1hb4cdbkvyh3zbjk8ikh72b2ksl-emacs-org-9.6.1/share/emacs/site-lisp/org-9.6.1/org-habit hides /gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87/share/emacs/30.0.50/lisp/org/org-habit /gnu/store/7vvbh1hb4cdbkvyh3zbjk8ikh72b2ksl-emacs-org-9.6.1/share/emacs/site-lisp/org-9.6.1/org-goto hides /gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87/share/emacs/30.0.50/lisp/org/org-goto /gnu/store/7vvbh1hb4cdbkvyh3zbjk8ikh72b2ksl-emacs-org-9.6.1/share/emacs/site-lisp/org-9.6.1/org-footnote hides /gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87/share/emacs/30.0.50/lisp/org/org-footnote /gnu/store/7vvbh1hb4cdbkvyh3zbjk8ikh72b2ksl-emacs-org-9.6.1/share/emacs/site-lisp/org-9.6.1/org-fold hides /gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87/share/emacs/30.0.50/lisp/org/org-fold /gnu/store/7vvbh1hb4cdbkvyh3zbjk8ikh72b2ksl-emacs-org-9.6.1/share/emacs/site-lisp/org-9.6.1/org-fold-core hides /gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87/share/emacs/30.0.50/lisp/org/org-fold-core /gnu/store/7vvbh1hb4cdbkvyh3zbjk8ikh72b2ksl-emacs-org-9.6.1/share/emacs/site-lisp/org-9.6.1/org-feed hides /gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87/share/emacs/30.0.50/lisp/org/org-feed /gnu/store/7vvbh1hb4cdbkvyh3zbjk8ikh72b2ksl-emacs-org-9.6.1/share/emacs/site-lisp/org-9.6.1/org-faces hides /gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87/share/emacs/30.0.50/lisp/org/org-faces /gnu/store/7vvbh1hb4cdbkvyh3zbjk8ikh72b2ksl-emacs-org-9.6.1/share/emacs/site-lisp/org-9.6.1/org-entities hides /gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87/share/emacs/30.0.50/lisp/org/org-entities /gnu/store/7vvbh1hb4cdbkvyh3zbjk8ikh72b2ksl-emacs-org-9.6.1/share/emacs/site-lisp/org-9.6.1/org-element hides /gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87/share/emacs/30.0.50/lisp/org/org-element /gnu/store/7vvbh1hb4cdbkvyh3zbjk8ikh72b2ksl-emacs-org-9.6.1/share/emacs/site-lisp/org-9.6.1/org-duration hides /gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87/share/emacs/30.0.50/lisp/org/org-duration /gnu/store/7vvbh1hb4cdbkvyh3zbjk8ikh72b2ksl-emacs-org-9.6.1/share/emacs/site-lisp/org-9.6.1/org-datetree hides /gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87/share/emacs/30.0.50/lisp/org/org-datetree /gnu/store/7vvbh1hb4cdbkvyh3zbjk8ikh72b2ksl-emacs-org-9.6.1/share/emacs/site-lisp/org-9.6.1/org-cycle hides /gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87/share/emacs/30.0.50/lisp/org/org-cycle /gnu/store/7vvbh1hb4cdbkvyh3zbjk8ikh72b2ksl-emacs-org-9.6.1/share/emacs/site-lisp/org-9.6.1/org-ctags hides /gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87/share/emacs/30.0.50/lisp/org/org-ctags /gnu/store/7vvbh1hb4cdbkvyh3zbjk8ikh72b2ksl-emacs-org-9.6.1/share/emacs/site-lisp/org-9.6.1/org-crypt hides /gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87/share/emacs/30.0.50/lisp/org/org-crypt /gnu/store/7vvbh1hb4cdbkvyh3zbjk8ikh72b2ksl-emacs-org-9.6.1/share/emacs/site-lisp/org-9.6.1/org-compat hides /gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87/share/emacs/30.0.50/lisp/org/org-compat /gnu/store/7vvbh1hb4cdbkvyh3zbjk8ikh72b2ksl-emacs-org-9.6.1/share/emacs/site-lisp/org-9.6.1/org-colview hides /gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87/share/emacs/30.0.50/lisp/org/org-colview /gnu/store/7vvbh1hb4cdbkvyh3zbjk8ikh72b2ksl-emacs-org-9.6.1/share/emacs/site-lisp/org-9.6.1/org-clock hides /gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87/share/emacs/30.0.50/lisp/org/org-clock /gnu/store/7vvbh1hb4cdbkvyh3zbjk8ikh72b2ksl-emacs-org-9.6.1/share/emacs/site-lisp/org-9.6.1/org-capture hides /gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87/share/emacs/30.0.50/lisp/org/org-capture /gnu/store/7vvbh1hb4cdbkvyh3zbjk8ikh72b2ksl-emacs-org-9.6.1/share/emacs/site-lisp/org-9.6.1/org-attach hides /gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87/share/emacs/30.0.50/lisp/org/org-attach /gnu/store/7vvbh1hb4cdbkvyh3zbjk8ikh72b2ksl-emacs-org-9.6.1/share/emacs/site-lisp/org-9.6.1/org-archive hides /gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87/share/emacs/30.0.50/lisp/org/org-archive /gnu/store/7vvbh1hb4cdbkvyh3zbjk8ikh72b2ksl-emacs-org-9.6.1/share/emacs/site-lisp/org-9.6.1/org-agenda hides /gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87/share/emacs/30.0.50/lisp/org/org-agenda /gnu/store/7vvbh1hb4cdbkvyh3zbjk8ikh72b2ksl-emacs-org-9.6.1/share/emacs/site-lisp/org-9.6.1/ol hides /gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87/share/emacs/30.0.50/lisp/org/ol /gnu/store/7vvbh1hb4cdbkvyh3zbjk8ikh72b2ksl-emacs-org-9.6.1/share/emacs/site-lisp/org-9.6.1/ol-gnus hides /gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87/share/emacs/30.0.50/lisp/org/ol-gnus /gnu/store/7vvbh1hb4cdbkvyh3zbjk8ikh72b2ksl-emacs-org-9.6.1/share/emacs/site-lisp/org-9.6.1/ol-bibtex hides /gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87/share/emacs/30.0.50/lisp/org/ol-bibtex /gnu/store/7vvbh1hb4cdbkvyh3zbjk8ikh72b2ksl-emacs-org-9.6.1/share/emacs/site-lisp/org-9.6.1/ol-bbdb hides /gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87/share/emacs/30.0.50/lisp/org/ol-bbdb /gnu/store/7vvbh1hb4cdbkvyh3zbjk8ikh72b2ksl-emacs-org-9.6.1/share/emacs/site-lisp/org-9.6.1/oc hides /gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87/share/emacs/30.0.50/lisp/org/oc /gnu/store/7vvbh1hb4cdbkvyh3zbjk8ikh72b2ksl-emacs-org-9.6.1/share/emacs/site-lisp/org-9.6.1/oc-csl hides /gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87/share/emacs/30.0.50/lisp/org/oc-csl /gnu/store/7vvbh1hb4cdbkvyh3zbjk8ikh72b2ksl-emacs-org-9.6.1/share/emacs/site-lisp/org-9.6.1/oc-biblatex hides /gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87/share/emacs/30.0.50/lisp/org/oc-biblatex /gnu/store/7vvbh1hb4cdbkvyh3zbjk8ikh72b2ksl-emacs-org-9.6.1/share/emacs/site-lisp/org-9.6.1/oc-basic hides /gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87/share/emacs/30.0.50/lisp/org/oc-basic /gnu/store/7vvbh1hb4cdbkvyh3zbjk8ikh72b2ksl-emacs-org-9.6.1/share/emacs/site-lisp/org-9.6.1/ob-tangle hides /gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87/share/emacs/30.0.50/lisp/org/ob-tangle /gnu/store/7vvbh1hb4cdbkvyh3zbjk8ikh72b2ksl-emacs-org-9.6.1/share/emacs/site-lisp/org-9.6.1/ob-shell hides /gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87/share/emacs/30.0.50/lisp/org/ob-shell /gnu/store/7vvbh1hb4cdbkvyh3zbjk8ikh72b2ksl-emacs-org-9.6.1/share/emacs/site-lisp/org-9.6.1/ob-sql hides /gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87/share/emacs/30.0.50/lisp/org/ob-sql /gnu/store/7vvbh1hb4cdbkvyh3zbjk8ikh72b2ksl-emacs-org-9.6.1/share/emacs/site-lisp/org-9.6.1/ob-ruby hides /gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87/share/emacs/30.0.50/lisp/org/ob-ruby /gnu/store/7vvbh1hb4cdbkvyh3zbjk8ikh72b2ksl-emacs-org-9.6.1/share/emacs/site-lisp/org-9.6.1/ob-python hides /gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87/share/emacs/30.0.50/lisp/org/ob-python /gnu/store/7vvbh1hb4cdbkvyh3zbjk8ikh72b2ksl-emacs-org-9.6.1/share/emacs/site-lisp/org-9.6.1/ob-octave hides /gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87/share/emacs/30.0.50/lisp/org/ob-octave /gnu/store/7vvbh1hb4cdbkvyh3zbjk8ikh72b2ksl-emacs-org-9.6.1/share/emacs/site-lisp/org-9.6.1/ob-lua hides /gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87/share/emacs/30.0.50/lisp/org/ob-lua /gnu/store/7vvbh1hb4cdbkvyh3zbjk8ikh72b2ksl-emacs-org-9.6.1/share/emacs/site-lisp/org-9.6.1/ob-lilypond hides /gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87/share/emacs/30.0.50/lisp/org/ob-lilypond /gnu/store/7vvbh1hb4cdbkvyh3zbjk8ikh72b2ksl-emacs-org-9.6.1/share/emacs/site-lisp/org-9.6.1/ob-latex hides /gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87/share/emacs/30.0.50/lisp/org/ob-latex /gnu/store/7vvbh1hb4cdbkvyh3zbjk8ikh72b2ksl-emacs-org-9.6.1/share/emacs/site-lisp/org-9.6.1/ob-julia hides /gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87/share/emacs/30.0.50/lisp/org/ob-julia /gnu/store/7vvbh1hb4cdbkvyh3zbjk8ikh72b2ksl-emacs-org-9.6.1/share/emacs/site-lisp/org-9.6.1/ob-java hides /gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87/share/emacs/30.0.50/lisp/org/ob-java /gnu/store/7vvbh1hb4cdbkvyh3zbjk8ikh72b2ksl-emacs-org-9.6.1/share/emacs/site-lisp/org-9.6.1/ob-haskell hides /gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87/share/emacs/30.0.50/lisp/org/ob-haskell /gnu/store/7vvbh1hb4cdbkvyh3zbjk8ikh72b2ksl-emacs-org-9.6.1/share/emacs/site-lisp/org-9.6.1/ob-gnuplot hides /gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87/share/emacs/30.0.50/lisp/org/ob-gnuplot /gnu/store/7vvbh1hb4cdbkvyh3zbjk8ikh72b2ksl-emacs-org-9.6.1/share/emacs/site-lisp/org-9.6.1/ob-exp hides /gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87/share/emacs/30.0.50/lisp/org/ob-exp /gnu/store/7vvbh1hb4cdbkvyh3zbjk8ikh72b2ksl-emacs-org-9.6.1/share/emacs/site-lisp/org-9.6.1/ob-core hides /gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87/share/emacs/30.0.50/lisp/org/ob-core /gnu/store/7vvbh1hb4cdbkvyh3zbjk8ikh72b2ksl-emacs-org-9.6.1/share/emacs/site-lisp/org-9.6.1/ob-comint hides /gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87/share/emacs/30.0.50/lisp/org/ob-comint /gnu/store/7vvbh1hb4cdbkvyh3zbjk8ikh72b2ksl-emacs-org-9.6.1/share/emacs/site-lisp/org-9.6.1/ob-clojure hides /gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87/share/emacs/30.0.50/lisp/org/ob-clojure /gnu/store/7vvbh1hb4cdbkvyh3zbjk8ikh72b2ksl-emacs-org-9.6.1/share/emacs/site-lisp/org-9.6.1/ob-R hides /gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87/share/emacs/30.0.50/lisp/org/ob-R /gnu/store/7vvbh1hb4cdbkvyh3zbjk8ikh72b2ksl-emacs-org-9.6.1/share/emacs/site-lisp/org-9.6.1/ob-C hides /gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87/share/emacs/30.0.50/lisp/org/ob-C /gnu/store/7vvbh1hb4cdbkvyh3zbjk8ikh72b2ksl-emacs-org-9.6.1/share/emacs/site-lisp/org-9.6.1/org-version hides /gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87/share/emacs/30.0.50/lisp/org/org-version /gnu/store/7vvbh1hb4cdbkvyh3zbjk8ikh72b2ksl-emacs-org-9.6.1/share/emacs/site-lisp/org-9.6.1/org-tempo hides /gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87/share/emacs/30.0.50/lisp/org/org-tempo /gnu/store/7vvbh1hb4cdbkvyh3zbjk8ikh72b2ksl-emacs-org-9.6.1/share/emacs/site-lisp/org-9.6.1/org-attach-git hides /gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87/share/emacs/30.0.50/lisp/org/org-attach-git /gnu/store/7vvbh1hb4cdbkvyh3zbjk8ikh72b2ksl-emacs-org-9.6.1/share/emacs/site-lisp/org-9.6.1/ol-w3m hides /gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87/share/emacs/30.0.50/lisp/org/ol-w3m /gnu/store/7vvbh1hb4cdbkvyh3zbjk8ikh72b2ksl-emacs-org-9.6.1/share/emacs/site-lisp/org-9.6.1/ol-rmail hides /gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87/share/emacs/30.0.50/lisp/org/ol-rmail /gnu/store/7vvbh1hb4cdbkvyh3zbjk8ikh72b2ksl-emacs-org-9.6.1/share/emacs/site-lisp/org-9.6.1/ol-mhe hides /gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87/share/emacs/30.0.50/lisp/org/ol-mhe /gnu/store/7vvbh1hb4cdbkvyh3zbjk8ikh72b2ksl-emacs-org-9.6.1/share/emacs/site-lisp/org-9.6.1/ol-man hides /gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87/share/emacs/30.0.50/lisp/org/ol-man /gnu/store/7vvbh1hb4cdbkvyh3zbjk8ikh72b2ksl-emacs-org-9.6.1/share/emacs/site-lisp/org-9.6.1/ol-irc hides /gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87/share/emacs/30.0.50/lisp/org/ol-irc /gnu/store/7vvbh1hb4cdbkvyh3zbjk8ikh72b2ksl-emacs-org-9.6.1/share/emacs/site-lisp/org-9.6.1/ol-info hides /gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87/share/emacs/30.0.50/lisp/org/ol-info /gnu/store/7vvbh1hb4cdbkvyh3zbjk8ikh72b2ksl-emacs-org-9.6.1/share/emacs/site-lisp/org-9.6.1/ol-eww hides /gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87/share/emacs/30.0.50/lisp/org/ol-eww /gnu/store/7vvbh1hb4cdbkvyh3zbjk8ikh72b2ksl-emacs-org-9.6.1/share/emacs/site-lisp/org-9.6.1/ol-eshell hides /gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87/share/emacs/30.0.50/lisp/org/ol-eshell /gnu/store/7vvbh1hb4cdbkvyh3zbjk8ikh72b2ksl-emacs-org-9.6.1/share/emacs/site-lisp/org-9.6.1/ol-doi hides /gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87/share/emacs/30.0.50/lisp/org/ol-doi /gnu/store/7vvbh1hb4cdbkvyh3zbjk8ikh72b2ksl-emacs-org-9.6.1/share/emacs/site-lisp/org-9.6.1/ol-docview hides /gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87/share/emacs/30.0.50/lisp/org/ol-docview /gnu/store/7vvbh1hb4cdbkvyh3zbjk8ikh72b2ksl-emacs-org-9.6.1/share/emacs/site-lisp/org-9.6.1/oc-natbib hides /gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87/share/emacs/30.0.50/lisp/org/oc-natbib /gnu/store/7vvbh1hb4cdbkvyh3zbjk8ikh72b2ksl-emacs-org-9.6.1/share/emacs/site-lisp/org-9.6.1/oc-bibtex hides /gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87/share/emacs/30.0.50/lisp/org/oc-bibtex /gnu/store/7vvbh1hb4cdbkvyh3zbjk8ikh72b2ksl-emacs-org-9.6.1/share/emacs/site-lisp/org-9.6.1/ob hides /gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87/share/emacs/30.0.50/lisp/org/ob /gnu/store/7vvbh1hb4cdbkvyh3zbjk8ikh72b2ksl-emacs-org-9.6.1/share/emacs/site-lisp/org-9.6.1/ob-table hides /gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87/share/emacs/30.0.50/lisp/org/ob-table /gnu/store/7vvbh1hb4cdbkvyh3zbjk8ikh72b2ksl-emacs-org-9.6.1/share/emacs/site-lisp/org-9.6.1/ob-sqlite hides /gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87/share/emacs/30.0.50/lisp/org/ob-sqlite /gnu/store/7vvbh1hb4cdbkvyh3zbjk8ikh72b2ksl-emacs-org-9.6.1/share/emacs/site-lisp/org-9.6.1/ob-screen hides /gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87/share/emacs/30.0.50/lisp/org/ob-screen /gnu/store/7vvbh1hb4cdbkvyh3zbjk8ikh72b2ksl-emacs-org-9.6.1/share/emacs/site-lisp/org-9.6.1/ob-sed hides /gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87/share/emacs/30.0.50/lisp/org/ob-sed /gnu/store/7vvbh1hb4cdbkvyh3zbjk8ikh72b2ksl-emacs-org-9.6.1/share/emacs/site-lisp/org-9.6.1/ob-scheme hides /gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87/share/emacs/30.0.50/lisp/org/ob-scheme /gnu/store/7vvbh1hb4cdbkvyh3zbjk8ikh72b2ksl-emacs-org-9.6.1/share/emacs/site-lisp/org-9.6.1/ob-sass hides /gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87/share/emacs/30.0.50/lisp/org/ob-sass /gnu/store/7vvbh1hb4cdbkvyh3zbjk8ikh72b2ksl-emacs-org-9.6.1/share/emacs/site-lisp/org-9.6.1/ob-ref hides /gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87/share/emacs/30.0.50/lisp/org/ob-ref /gnu/store/7vvbh1hb4cdbkvyh3zbjk8ikh72b2ksl-emacs-org-9.6.1/share/emacs/site-lisp/org-9.6.1/ob-processing hides /gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87/share/emacs/30.0.50/lisp/org/ob-processing /gnu/store/7vvbh1hb4cdbkvyh3zbjk8ikh72b2ksl-emacs-org-9.6.1/share/emacs/site-lisp/org-9.6.1/ob-plantuml hides /gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87/share/emacs/30.0.50/lisp/org/ob-plantuml /gnu/store/7vvbh1hb4cdbkvyh3zbjk8ikh72b2ksl-emacs-org-9.6.1/share/emacs/site-lisp/org-9.6.1/ob-perl hides /gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87/share/emacs/30.0.50/lisp/org/ob-perl /gnu/store/7vvbh1hb4cdbkvyh3zbjk8ikh72b2ksl-emacs-org-9.6.1/share/emacs/site-lisp/org-9.6.1/ob-org hides /gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87/share/emacs/30.0.50/lisp/org/ob-org /gnu/store/7vvbh1hb4cdbkvyh3zbjk8ikh72b2ksl-emacs-org-9.6.1/share/emacs/site-lisp/org-9.6.1/ob-ocaml hides /gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87/share/emacs/30.0.50/lisp/org/ob-ocaml /gnu/store/7vvbh1hb4cdbkvyh3zbjk8ikh72b2ksl-emacs-org-9.6.1/share/emacs/site-lisp/org-9.6.1/ob-maxima hides /gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87/share/emacs/30.0.50/lisp/org/ob-maxima /gnu/store/7vvbh1hb4cdbkvyh3zbjk8ikh72b2ksl-emacs-org-9.6.1/share/emacs/site-lisp/org-9.6.1/ob-matlab hides /gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87/share/emacs/30.0.50/lisp/org/ob-matlab /gnu/store/7vvbh1hb4cdbkvyh3zbjk8ikh72b2ksl-emacs-org-9.6.1/share/emacs/site-lisp/org-9.6.1/ob-makefile hides /gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87/share/emacs/30.0.50/lisp/org/ob-makefile /gnu/store/7vvbh1hb4cdbkvyh3zbjk8ikh72b2ksl-emacs-org-9.6.1/share/emacs/site-lisp/org-9.6.1/ob-lob hides /gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87/share/emacs/30.0.50/lisp/org/ob-lob /gnu/store/7vvbh1hb4cdbkvyh3zbjk8ikh72b2ksl-emacs-org-9.6.1/share/emacs/site-lisp/org-9.6.1/ob-lisp hides /gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87/share/emacs/30.0.50/lisp/org/ob-lisp /gnu/store/7vvbh1hb4cdbkvyh3zbjk8ikh72b2ksl-emacs-org-9.6.1/share/emacs/site-lisp/org-9.6.1/ob-js hides /gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87/share/emacs/30.0.50/lisp/org/ob-js /gnu/store/7vvbh1hb4cdbkvyh3zbjk8ikh72b2ksl-emacs-org-9.6.1/share/emacs/site-lisp/org-9.6.1/ob-groovy hides /gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87/share/emacs/30.0.50/lisp/org/ob-groovy /gnu/store/7vvbh1hb4cdbkvyh3zbjk8ikh72b2ksl-emacs-org-9.6.1/share/emacs/site-lisp/org-9.6.1/ob-fortran hides /gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87/share/emacs/30.0.50/lisp/org/ob-fortran /gnu/store/7vvbh1hb4cdbkvyh3zbjk8ikh72b2ksl-emacs-org-9.6.1/share/emacs/site-lisp/org-9.6.1/ob-forth hides /gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87/share/emacs/30.0.50/lisp/org/ob-forth /gnu/store/7vvbh1hb4cdbkvyh3zbjk8ikh72b2ksl-emacs-org-9.6.1/share/emacs/site-lisp/org-9.6.1/ob-eval hides /gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87/share/emacs/30.0.50/lisp/org/ob-eval /gnu/store/7vvbh1hb4cdbkvyh3zbjk8ikh72b2ksl-emacs-org-9.6.1/share/emacs/site-lisp/org-9.6.1/ob-eshell hides /gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87/share/emacs/30.0.50/lisp/org/ob-eshell /gnu/store/7vvbh1hb4cdbkvyh3zbjk8ikh72b2ksl-emacs-org-9.6.1/share/emacs/site-lisp/org-9.6.1/ob-emacs-lisp hides /gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87/share/emacs/30.0.50/lisp/org/ob-emacs-lisp /gnu/store/7vvbh1hb4cdbkvyh3zbjk8ikh72b2ksl-emacs-org-9.6.1/share/emacs/site-lisp/org-9.6.1/ob-dot hides /gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87/share/emacs/30.0.50/lisp/org/ob-dot /gnu/store/7vvbh1hb4cdbkvyh3zbjk8ikh72b2ksl-emacs-org-9.6.1/share/emacs/site-lisp/org-9.6.1/ob-ditaa hides /gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87/share/emacs/30.0.50/lisp/org/ob-ditaa /gnu/store/7vvbh1hb4cdbkvyh3zbjk8ikh72b2ksl-emacs-org-9.6.1/share/emacs/site-lisp/org-9.6.1/ob-css hides /gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87/share/emacs/30.0.50/lisp/org/ob-css /gnu/store/7vvbh1hb4cdbkvyh3zbjk8ikh72b2ksl-emacs-org-9.6.1/share/emacs/site-lisp/org-9.6.1/ob-calc hides /gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87/share/emacs/30.0.50/lisp/org/ob-calc /gnu/store/7vvbh1hb4cdbkvyh3zbjk8ikh72b2ksl-emacs-org-9.6.1/share/emacs/site-lisp/org-9.6.1/ob-awk hides /gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87/share/emacs/30.0.50/lisp/org/ob-awk /gnu/store/1cwal336xhaldg6w71fskzkhyjgb7kb4-emacs-seq-2.23/share/emacs/site-lisp/seq-2.23/seq hides /gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87/share/emacs/30.0.50/lisp/emacs-lisp/seq /gnu/store/ab25nrhs5nm7gr0jl6y870q6jbgs4vvc-emacs-faceup-0.0.1-1.6c92dad/share/emacs/site-lisp/faceup-0.0.1-1.6c92dad/faceup hides /gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87/share/emacs/30.0.50/lisp/emacs-lisp/faceup /gnu/store/l6h2lw1zpy61rwvs1fv2wdnllb3yjwxr-emacs-eldoc-1.13.0/share/emacs/site-lisp/eldoc-1.13.0/eldoc hides /gnu/store/52l8km136bn59wvk9qxyycqy4c5s91pa-emacs-next-pgtk-29.0.60-0.ac7ec87/share/emacs/30.0.50/lisp/emacs-lisp/eldoc
[signature.asc (application/pgp-signature, inline)]
bug-gnu-emacs <at> gnu.org
:bug#61677
; Package emacs
.
(Tue, 21 Feb 2023 15:01:02 GMT) Full text and rfc822 format available.Message #8 received at 61677 <at> debbugs.gnu.org (full text, mbox):
From: Eli Zaretskii <eliz <at> gnu.org> To: Adriel Dumas--Jondeau <leirda <at> disroot.org> Cc: 61677 <at> debbugs.gnu.org Subject: Re: bug#61677: 30.0.50; Display-Fill-Column-Indicator mode shifts with narrow characters near end of line Date: Tue, 21 Feb 2023 17:00:29 +0200
> Date: Tue, 21 Feb 2023 12:40:45 +0100 > From: Adriel Dumas--Jondeau via "Bug reports for GNU Emacs, > the Swiss army knife of text editors" <bug-gnu-emacs <at> gnu.org> > > 1. Enable the Display-Full-Column-Indicator mode (~M-x di-i~). > > 2. Conveniently set fill-column value to the lowest (~C-x f 1~). > > 3. Set a font that properly displays narrow chars (~M-x s-fr-f~), e.g > "-PfEd-DejaVu Serif-regular-normal-normal-*-*-*-*-*-*-0-iso10646-1". > > 4. Use a newline terminated line as the guide doesn't show up on the > last line of the file (e.g ~C-p~, ~C-o~ and whatnot). > > 5. Insert some special characters, such as the narrow nobreak-space > (~C-x 8 RET 202f~), up to three times. > > Observed behavior: The guide on this line is slightly shifted to the > right in regards to the next and previous lines, and it get worse as > narrow chars are added. AFAIU, you are using a font that is effectively a variable-pitch font: not all of the characters have glyphs of the same width, some have narrower glyphs. Is that correct? If so, the display-full-column-indicator feature is not prepared to deal with such fonts. The whole notion of "fill-column" only makes sense with fixed-pitch fonts, because otherwise either column N will mean different pixel coordinates depending on which characters are shown in the screen line (and the vertical line of indicators will appear broken, unaligned), or (if we forcibly align the indicators on the same pixel coordinate) the indicator will show a different column on each line, again depending on what characters are shown in that line. What happens in your case is that the layout calculations performed by the display engine go awry because this font's glyphs have different widths, something the current code doesn't expect. It should be possible to modify the layout calculations so that the indicators align on display on the same pixel, but then the number of the column where the indicator is shown in each line will be different, which basically makes this feature useless for its purpose. So I think we won't fix this issue. Unless I'm missing something, that is. Caveat: I don't have that font, so I used a different variable-pitch font to see what happens. > I don't know the internals of display-fill-column-indicator-mode, but my > guts says that we should compensate this by using some another narrow > characters (without any face) to properly align to fill-column. On GUI displays, we don't use characters, we use a special stretch glyph whose width we calculate as needed. So that's not the problem. The problem is that different characters produce glyphs of different widths, and the code is not prepared to deal with that situations because fill-column indicator only makes sense with fonts of fixed width.
bug-gnu-emacs <at> gnu.org
:bug#61677
; Package emacs
.
(Wed, 22 Feb 2023 04:56:04 GMT) Full text and rfc822 format available.Message #11 received at 61677 <at> debbugs.gnu.org (full text, mbox):
From: Adriel Dumas--Jondeau <leirda <at> disroot.org> To: Eli Zaretskii <eliz <at> gnu.org> Cc: 61677 <at> debbugs.gnu.org Subject: Re: bug#61677: 30.0.50; Display-Fill-Column-Indicator mode shifts with narrow characters near end of line Date: Tue, 21 Feb 2023 19:35:21 +0100
[Message part 1 (text/plain, inline)]
Thank you for your answer and these crystal clear explanations! I have a much better understanding of what's happening now :) Eli Zaretskii <eliz <at> gnu.org> writes: > AFAIU, you are using a font that is effectively a variable-pitch font: > not all of the characters have glyphs of the same width, some have > narrower glyphs. Is that correct? Yes, that's it! I didn't knew it was the “pitch” of the characters and couldn't look it up online. Thank you for the pointer. > Caveat: I don't have that font, so I used a different variable-pitch > font to see what happens. I assumed that this font should be available on most of systems as I made nothing to get it installed. But this assumption is wrong. I guess it should apply to any other variable-pitch font as well, perhaps on different characters. Narrow nobreak-space should behave the same on most of said fonts, though. --- 8< --- What I expect from display-fill-column-indicator is at least to be able to tell at a glance whether the actual number of characters on a given line goes beyond a certain point or not, independently from their size with any given font. So having the indicator displayed even after I type 3 narrow nobreak-spaces at fill-column 1 bothers me a bit (as it should disappear once it gets past the character count limit anyway). But I also understand why we can't make it disappear based on the number of characters, as the space between the text and the indicator wouldn't represent the actual remaining empty characters in that case. Whether this expectation is shared or not, and based on my current knowledge, I think there's at least these three choices: - Leaving things as is (The most straightforward and efficient way, and I would be absolutely okay with that) - Is there any documentation somewhere about that? Adding a warning based on the current font pitch with a pointer towards a more detailed explanation on Display-Fill-Column-Indicator triggers (and maybe hooking it at frame-font changes). This would at least give some hints to users and would reduce the occurence of threads as the current one (Probably low effort unless there is doc to write about it). - Modifying Display-Fill-Column-Indicator in order to display two vertical guides: the “global” vertical line that we currently have but with the catch that it should hold true for the current font pitch, pixel based, a single line at ~fill-column~ for normal characters, independent from the character count. A “character count” indicator, relative to each line, that may or may not be the same as the global one, with different glyph and color, doesn't show up if the same as the global one. It means the character count glyph may only be shown with a variable-pitch font on a line that contains narrowed or wide characters (This is the most controversial suggestion I'd say). The benefit of the latter suggestion is that it still works the same with fixed-pitch font (the character count should actually be the same as the pixel size in this case), but it would be more expressive with variable-pitch, thus fixing the inconsistencies that currently occur. The caveat is it brokes the implicit rule that the indicator is about the character count with variable-pitch font (as it would truly be about taken physical space on the screen). But the fact that a new character is displayed when it's not should (could?) make things clear. I can make code suggestions for this last one (not right now though) if nobody else is willing to, and if there's no real objection to it. What do you think? -- Adriel
[signature.asc (application/pgp-signature, inline)]
bug-gnu-emacs <at> gnu.org
:bug#61677
; Package emacs
.
(Wed, 22 Feb 2023 13:20:02 GMT) Full text and rfc822 format available.Message #14 received at 61677 <at> debbugs.gnu.org (full text, mbox):
From: Eli Zaretskii <eliz <at> gnu.org> To: Adriel Dumas--Jondeau <leirda <at> disroot.org> Cc: 61677 <at> debbugs.gnu.org Subject: Re: bug#61677: 30.0.50; Display-Fill-Column-Indicator mode shifts with narrow characters near end of line Date: Wed, 22 Feb 2023 15:19:38 +0200
> From: Adriel Dumas--Jondeau <leirda <at> disroot.org> > Cc: 61677 <at> debbugs.gnu.org > Date: Tue, 21 Feb 2023 19:35:21 +0100 > > Whether this expectation is shared or not, and based on my current > knowledge, I think there's at least these three choices: > > - Leaving things as is (The most straightforward and efficient way, and > I would be absolutely okay with that) > > - Is there any documentation somewhere about that? Adding a warning > based on the current font pitch with a pointer towards a more detailed > explanation on Display-Fill-Column-Indicator triggers (and maybe > hooking it at frame-font changes). This would at least give some hints > to users and would reduce the occurence of threads as the current one > (Probably low effort unless there is doc to write about it). > > - Modifying Display-Fill-Column-Indicator in order to display two > vertical guides: the “global” vertical line that we currently have but > with the catch that it should hold true for the current font pitch, > pixel based, a single line at ~fill-column~ for normal characters, > independent from the character count. A “character count” indicator, > relative to each line, that may or may not be the same as the global > one, with different glyph and color, doesn't show up if the same as > the global one. It means the character count glyph may only be shown > with a variable-pitch font on a line that contains narrowed or wide > characters (This is the most controversial suggestion I'd say). > > The benefit of the latter suggestion is that it still works the same > with fixed-pitch font (the character count should actually be the same > as the pixel size in this case), but it would be more expressive with > variable-pitch, thus fixing the inconsistencies that currently occur. > > The caveat is it brokes the implicit rule that the indicator is about > the character count with variable-pitch font (as it would truly be about > taken physical space on the screen). But the fact that a new character > is displayed when it's not should (could?) make things clear. > > I can make code suggestions for this last one (not right now though) if > nobody else is willing to, and if there's no real objection to it. > > What do you think? I decided to go with the second alternative, and documented these caveats in the doc string of display-fill-column-indicator-mode and in the Emacs manual (on the emacs-29 branch). I think extending this feature as you suggest in the last alternative would be too much. However, if someone wants to work on this feature, I'm okay with considering such an extension. So I'm leaving this bug open for now. Thanks.
bug-gnu-emacs <at> gnu.org
:bug#61677
; Package emacs
.
(Wed, 22 Feb 2023 23:07:01 GMT) Full text and rfc822 format available.Message #17 received at 61677 <at> debbugs.gnu.org (full text, mbox):
From: Adriel Dumas--Jondeau <leirda <at> disroot.org> To: Eli Zaretskii <eliz <at> gnu.org> Cc: 61677 <at> debbugs.gnu.org Subject: Re: bug#61677: 30.0.50; Display-Fill-Column-Indicator mode shifts with narrow characters near end of line Date: Wed, 22 Feb 2023 23:54:39 +0100
[Message part 1 (text/plain, inline)]
Eli Zaretskii <eliz <at> gnu.org> writes: > I decided to go with the second alternative, and documented these > caveats in the doc string of display-fill-column-indicator-mode and in > the Emacs manual (on the emacs-29 branch). I think extending this > feature as you suggest in the last alternative would be too much. > However, if someone wants to work on this feature, I'm okay with > considering such an extension. > > So I'm leaving this bug open for now. > > Thanks. Thank you for this quick and considerate take! I won't work either on the third one anytime soon but I'll come back here when (if) I start to do so. -- Adriel
[signature.asc (application/pgp-signature, inline)]
Stefan Kangas <stefankangas <at> gmail.com>
to control <at> debbugs.gnu.org
.
(Sun, 08 Oct 2023 16:26:01 GMT) Full text and rfc822 format available.
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.