* bug#70989: 29.3; Calling isearch-forward when using Unifont throws error "Invalid font name" @ 2024-05-16 18:39 Rodrigo Morales 2024-05-16 19:31 ` Eli Zaretskii 0 siblings, 1 reply; 17+ messages in thread From: Rodrigo Morales @ 2024-05-16 18:39 UTC (permalink / raw) To: 70989 I used the font "Unifont" to reproduce this issue: I downloaded the font from https://unifoundry.com/unifont/index.html . The file was called =unifont-15.1.05.bdf.gz=. I decompressed the file using gunzip and copied the file to ~/.fonts. Afterwards, I executed "fc-cache -f". To reproduce this issue, I did not start Emacs using "emacs -Q", but I deleted the file ~/.config/emacs/init.el and I only added the following sexp to ~/.config/emacs/init.el #+HEADER: :tangle ~/.config/emacs/init.el #+BEGIN_SRC elisp (add-to-list 'default-frame-alist '(font . "Unifont")) #+END_SRC I launched Emacs without the =-Q= flag so that the file ~/.config/emacs/init.el . When the Emacs window opened, the modeline and the sentence "For information about GNU Emacs and the GNU system, type C-h C-a" which is shown in the minibuffer was shown using "Unifont" (the C-h C-a was shown using other font). I pressed C-s and the following error was shown in the minibuffer: #+BEGIN_SRC text window-max-chars-per-line: Invalid font name: -GNU-Unifont-medium-normal-normal-Sans-Serif-16-*-*-*-c-80-iso10646-1 #+END_SRC I enabled =toggle-debug-on-error= and the following was shown in the buffer *Backtrace*: #+BEGIN_SRC text Debugger entered--Lisp error: (error "Invalid font name: -GNU-Unifont-medium-normal-norm...") window-font-width(nil nil) window-max-chars-per-line() isearch-update() isearch-mode(t nil nil nil) isearch-forward(nil 1) funcall-interactively(isearch-forward nil 1) command-execute(isearch-forward) #+END_SRC In GNU Emacs 29.3 (build 1, x86_64-pc-linux-gnu, GTK+ Version 3.24.41, cairo version 1.18.0) Windowing system distributor 'The X.Org Foundation', version 11.0.12101004 System Description: Ubuntu 22.04.4 LTS Configured using: 'configure CONFIG_SHELL=/gnu/store/v9p25q9l5nnaixkhpap5rnymmwbhf9rp-bash-minimal-5.1.16/bin/bash SHELL=/gnu/store/v9p25q9l5nnaixkhpap5rnymmwbhf9rp-bash-minimal-5.1.16/bin/bash --prefix=/gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3 --enable-fast-install --with-cairo --with-modules --with-native-compilation=aot --disable-build-details' Configured features: ACL CAIRO DBUS FREETYPE GIF GLIB GMP GNUTLS GPM GSETTINGS HARFBUZZ JPEG JSON LCMS2 LIBOTF LIBSELINUX LIBSYSTEMD LIBXML2 M17N_FLT MODULES NATIVE_COMP NOTIFY INOTIFY PDUMPER PNG RSVG SECCOMP SOUND SQLITE3 THREADS TIFF TOOLKIT_SCROLL_BARS TREE_SITTER X11 XDBE XIM XINPUT2 XPM GTK3 ZLIB Important settings: value of $EMACSLOADPATH: /home/rodrigo/.guix-home/profile/share/emacs/site-lisp:/gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp:/gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp:/gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp value of $EMACSNATIVELOADPATH: /home/rodrigo/.guix-home/profile/lib/emacs/native-site-lisp value of $LC_MONETARY: en_US.UTF-8 value of $LC_NUMERIC: en_US.UTF-8 value of $LC_TIME: en_US.UTF-8 value of $LANG: en_US.UTF-8 value of $XMODIFIERS: @im=ibus locale-coding-system: utf-8-unix Major mode: Fundamental Minor modes in effect: cl-old-struct-compat-mode: 1 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 blink-cursor-mode: t buffer-read-only: 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: /gnu/store/v8r6az9568lv4p8srgamrmsm92krn130-emacs-transient-0.6.0/share/emacs/site-lisp/transient-0.6.0/transient hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/transient /gnu/store/b3dv0m30c3aqjcf3qdvfl67faw3zp8fy-emacs-use-package-2.4.4/share/emacs/site-lisp/use-package-2.4.4/use-package-ensure hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/use-package/use-package-ensure /gnu/store/b3dv0m30c3aqjcf3qdvfl67faw3zp8fy-emacs-use-package-2.4.4/share/emacs/site-lisp/use-package-2.4.4/use-package-core hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/use-package/use-package-core /gnu/store/b3dv0m30c3aqjcf3qdvfl67faw3zp8fy-emacs-use-package-2.4.4/share/emacs/site-lisp/use-package-2.4.4/use-package-ensure-system-package hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/use-package/use-package-ensure-system-package /gnu/store/b3dv0m30c3aqjcf3qdvfl67faw3zp8fy-emacs-use-package-2.4.4/share/emacs/site-lisp/use-package-2.4.4/use-package-delight hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/use-package/use-package-delight /gnu/store/b3dv0m30c3aqjcf3qdvfl67faw3zp8fy-emacs-use-package-2.4.4/share/emacs/site-lisp/use-package-2.4.4/use-package-jump hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/use-package/use-package-jump /gnu/store/b3dv0m30c3aqjcf3qdvfl67faw3zp8fy-emacs-use-package-2.4.4/share/emacs/site-lisp/use-package-2.4.4/use-package-bind-key hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/use-package/use-package-bind-key /gnu/store/b3dv0m30c3aqjcf3qdvfl67faw3zp8fy-emacs-use-package-2.4.4/share/emacs/site-lisp/use-package-2.4.4/use-package-diminish hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/use-package/use-package-diminish /gnu/store/b3dv0m30c3aqjcf3qdvfl67faw3zp8fy-emacs-use-package-2.4.4/share/emacs/site-lisp/use-package-2.4.4/use-package hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/use-package/use-package /gnu/store/b3dv0m30c3aqjcf3qdvfl67faw3zp8fy-emacs-use-package-2.4.4/share/emacs/site-lisp/use-package-2.4.4/bind-key hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/use-package/bind-key /gnu/store/b3dv0m30c3aqjcf3qdvfl67faw3zp8fy-emacs-use-package-2.4.4/share/emacs/site-lisp/use-package-2.4.4/use-package-lint hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/use-package/use-package-lint /gnu/store/031352359pz52775hfcm6kr4qlckkrx1-emacs-org-9.6.28/share/emacs/site-lisp/org-9.6.28/ob-forth hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/org/ob-forth /gnu/store/031352359pz52775hfcm6kr4qlckkrx1-emacs-org-9.6.28/share/emacs/site-lisp/org-9.6.28/org-cycle hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/org/org-cycle /gnu/store/031352359pz52775hfcm6kr4qlckkrx1-emacs-org-9.6.28/share/emacs/site-lisp/org-9.6.28/ol-bibtex hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/org/ol-bibtex /gnu/store/031352359pz52775hfcm6kr4qlckkrx1-emacs-org-9.6.28/share/emacs/site-lisp/org-9.6.28/ob-sql hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/org/ob-sql /gnu/store/031352359pz52775hfcm6kr4qlckkrx1-emacs-org-9.6.28/share/emacs/site-lisp/org-9.6.28/ob-R hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/org/ob-R /gnu/store/031352359pz52775hfcm6kr4qlckkrx1-emacs-org-9.6.28/share/emacs/site-lisp/org-9.6.28/ob hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/org/ob /gnu/store/031352359pz52775hfcm6kr4qlckkrx1-emacs-org-9.6.28/share/emacs/site-lisp/org-9.6.28/org-macs hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/org/org-macs /gnu/store/031352359pz52775hfcm6kr4qlckkrx1-emacs-org-9.6.28/share/emacs/site-lisp/org-9.6.28/ob-js hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/org/ob-js /gnu/store/031352359pz52775hfcm6kr4qlckkrx1-emacs-org-9.6.28/share/emacs/site-lisp/org-9.6.28/ob-tangle hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/org/ob-tangle /gnu/store/031352359pz52775hfcm6kr4qlckkrx1-emacs-org-9.6.28/share/emacs/site-lisp/org-9.6.28/org-faces hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/org/org-faces /gnu/store/031352359pz52775hfcm6kr4qlckkrx1-emacs-org-9.6.28/share/emacs/site-lisp/org-9.6.28/ol-doi hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/org/ol-doi /gnu/store/031352359pz52775hfcm6kr4qlckkrx1-emacs-org-9.6.28/share/emacs/site-lisp/org-9.6.28/ob-python hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/org/ob-python /gnu/store/031352359pz52775hfcm6kr4qlckkrx1-emacs-org-9.6.28/share/emacs/site-lisp/org-9.6.28/org-mobile hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/org/org-mobile /gnu/store/031352359pz52775hfcm6kr4qlckkrx1-emacs-org-9.6.28/share/emacs/site-lisp/org-9.6.28/ox-odt hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/org/ox-odt /gnu/store/031352359pz52775hfcm6kr4qlckkrx1-emacs-org-9.6.28/share/emacs/site-lisp/org-9.6.28/org-refile hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/org/org-refile /gnu/store/031352359pz52775hfcm6kr4qlckkrx1-emacs-org-9.6.28/share/emacs/site-lisp/org-9.6.28/org-clock hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/org/org-clock /gnu/store/031352359pz52775hfcm6kr4qlckkrx1-emacs-org-9.6.28/share/emacs/site-lisp/org-9.6.28/ob-sass hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/org/ob-sass /gnu/store/031352359pz52775hfcm6kr4qlckkrx1-emacs-org-9.6.28/share/emacs/site-lisp/org-9.6.28/ob-lilypond hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/org/ob-lilypond /gnu/store/031352359pz52775hfcm6kr4qlckkrx1-emacs-org-9.6.28/share/emacs/site-lisp/org-9.6.28/org-keys hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/org/org-keys /gnu/store/031352359pz52775hfcm6kr4qlckkrx1-emacs-org-9.6.28/share/emacs/site-lisp/org-9.6.28/ob-core hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/org/ob-core /gnu/store/031352359pz52775hfcm6kr4qlckkrx1-emacs-org-9.6.28/share/emacs/site-lisp/org-9.6.28/org-loaddefs hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/org/org-loaddefs /gnu/store/031352359pz52775hfcm6kr4qlckkrx1-emacs-org-9.6.28/share/emacs/site-lisp/org-9.6.28/org-fold hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/org/org-fold /gnu/store/031352359pz52775hfcm6kr4qlckkrx1-emacs-org-9.6.28/share/emacs/site-lisp/org-9.6.28/oc-natbib hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/org/oc-natbib /gnu/store/031352359pz52775hfcm6kr4qlckkrx1-emacs-org-9.6.28/share/emacs/site-lisp/org-9.6.28/ob-scheme hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/org/ob-scheme /gnu/store/031352359pz52775hfcm6kr4qlckkrx1-emacs-org-9.6.28/share/emacs/site-lisp/org-9.6.28/ob-org hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/org/ob-org /gnu/store/031352359pz52775hfcm6kr4qlckkrx1-emacs-org-9.6.28/share/emacs/site-lisp/org-9.6.28/org-table hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/org/org-table /gnu/store/031352359pz52775hfcm6kr4qlckkrx1-emacs-org-9.6.28/share/emacs/site-lisp/org-9.6.28/ob-sed hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/org/ob-sed /gnu/store/031352359pz52775hfcm6kr4qlckkrx1-emacs-org-9.6.28/share/emacs/site-lisp/org-9.6.28/ol-rmail hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/org/ol-rmail /gnu/store/031352359pz52775hfcm6kr4qlckkrx1-emacs-org-9.6.28/share/emacs/site-lisp/org-9.6.28/ol-mhe hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/org/ol-mhe /gnu/store/031352359pz52775hfcm6kr4qlckkrx1-emacs-org-9.6.28/share/emacs/site-lisp/org-9.6.28/org-fold-core hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/org/org-fold-core /gnu/store/031352359pz52775hfcm6kr4qlckkrx1-emacs-org-9.6.28/share/emacs/site-lisp/org-9.6.28/org-compat hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/org/org-compat /gnu/store/031352359pz52775hfcm6kr4qlckkrx1-emacs-org-9.6.28/share/emacs/site-lisp/org-9.6.28/ox hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/org/ox /gnu/store/031352359pz52775hfcm6kr4qlckkrx1-emacs-org-9.6.28/share/emacs/site-lisp/org-9.6.28/org-attach-git hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/org/org-attach-git /gnu/store/031352359pz52775hfcm6kr4qlckkrx1-emacs-org-9.6.28/share/emacs/site-lisp/org-9.6.28/org-indent hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/org/org-indent /gnu/store/031352359pz52775hfcm6kr4qlckkrx1-emacs-org-9.6.28/share/emacs/site-lisp/org-9.6.28/ob-makefile hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/org/ob-makefile /gnu/store/031352359pz52775hfcm6kr4qlckkrx1-emacs-org-9.6.28/share/emacs/site-lisp/org-9.6.28/org-protocol hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/org/org-protocol /gnu/store/031352359pz52775hfcm6kr4qlckkrx1-emacs-org-9.6.28/share/emacs/site-lisp/org-9.6.28/ox-icalendar hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/org/ox-icalendar /gnu/store/031352359pz52775hfcm6kr4qlckkrx1-emacs-org-9.6.28/share/emacs/site-lisp/org-9.6.28/ob-css hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/org/ob-css /gnu/store/031352359pz52775hfcm6kr4qlckkrx1-emacs-org-9.6.28/share/emacs/site-lisp/org-9.6.28/org-src hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/org/org-src /gnu/store/031352359pz52775hfcm6kr4qlckkrx1-emacs-org-9.6.28/share/emacs/site-lisp/org-9.6.28/org-footnote hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/org/org-footnote /gnu/store/031352359pz52775hfcm6kr4qlckkrx1-emacs-org-9.6.28/share/emacs/site-lisp/org-9.6.28/ob-sqlite hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/org/ob-sqlite /gnu/store/031352359pz52775hfcm6kr4qlckkrx1-emacs-org-9.6.28/share/emacs/site-lisp/org-9.6.28/ol-eww hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/org/ol-eww /gnu/store/031352359pz52775hfcm6kr4qlckkrx1-emacs-org-9.6.28/share/emacs/site-lisp/org-9.6.28/ox-man hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/org/ox-man /gnu/store/031352359pz52775hfcm6kr4qlckkrx1-emacs-org-9.6.28/share/emacs/site-lisp/org-9.6.28/ob-ruby hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/org/ob-ruby /gnu/store/031352359pz52775hfcm6kr4qlckkrx1-emacs-org-9.6.28/share/emacs/site-lisp/org-9.6.28/org-element hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/org/org-element /gnu/store/031352359pz52775hfcm6kr4qlckkrx1-emacs-org-9.6.28/share/emacs/site-lisp/org-9.6.28/ox-beamer hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/org/ox-beamer /gnu/store/031352359pz52775hfcm6kr4qlckkrx1-emacs-org-9.6.28/share/emacs/site-lisp/org-9.6.28/ol-w3m hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/org/ol-w3m /gnu/store/031352359pz52775hfcm6kr4qlckkrx1-emacs-org-9.6.28/share/emacs/site-lisp/org-9.6.28/ox-md hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/org/ox-md /gnu/store/031352359pz52775hfcm6kr4qlckkrx1-emacs-org-9.6.28/share/emacs/site-lisp/org-9.6.28/org-habit hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/org/org-habit /gnu/store/031352359pz52775hfcm6kr4qlckkrx1-emacs-org-9.6.28/share/emacs/site-lisp/org-9.6.28/ob-eval hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/org/ob-eval /gnu/store/031352359pz52775hfcm6kr4qlckkrx1-emacs-org-9.6.28/share/emacs/site-lisp/org-9.6.28/ob-latex hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/org/ob-latex /gnu/store/031352359pz52775hfcm6kr4qlckkrx1-emacs-org-9.6.28/share/emacs/site-lisp/org-9.6.28/org-inlinetask hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/org/org-inlinetask /gnu/store/031352359pz52775hfcm6kr4qlckkrx1-emacs-org-9.6.28/share/emacs/site-lisp/org-9.6.28/ox-ascii hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/org/ox-ascii /gnu/store/031352359pz52775hfcm6kr4qlckkrx1-emacs-org-9.6.28/share/emacs/site-lisp/org-9.6.28/ob-screen hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/org/ob-screen /gnu/store/031352359pz52775hfcm6kr4qlckkrx1-emacs-org-9.6.28/share/emacs/site-lisp/org-9.6.28/org-crypt hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/org/org-crypt /gnu/store/031352359pz52775hfcm6kr4qlckkrx1-emacs-org-9.6.28/share/emacs/site-lisp/org-9.6.28/org-capture hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/org/org-capture /gnu/store/031352359pz52775hfcm6kr4qlckkrx1-emacs-org-9.6.28/share/emacs/site-lisp/org-9.6.28/org-entities hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/org/org-entities /gnu/store/031352359pz52775hfcm6kr4qlckkrx1-emacs-org-9.6.28/share/emacs/site-lisp/org-9.6.28/ox-org hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/org/ox-org /gnu/store/031352359pz52775hfcm6kr4qlckkrx1-emacs-org-9.6.28/share/emacs/site-lisp/org-9.6.28/org-tempo hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/org/org-tempo /gnu/store/031352359pz52775hfcm6kr4qlckkrx1-emacs-org-9.6.28/share/emacs/site-lisp/org-9.6.28/ox-publish hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/org/ox-publish /gnu/store/031352359pz52775hfcm6kr4qlckkrx1-emacs-org-9.6.28/share/emacs/site-lisp/org-9.6.28/ob-julia hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/org/ob-julia /gnu/store/031352359pz52775hfcm6kr4qlckkrx1-emacs-org-9.6.28/share/emacs/site-lisp/org-9.6.28/oc-basic hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/org/oc-basic /gnu/store/031352359pz52775hfcm6kr4qlckkrx1-emacs-org-9.6.28/share/emacs/site-lisp/org-9.6.28/ob-java hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/org/ob-java /gnu/store/031352359pz52775hfcm6kr4qlckkrx1-emacs-org-9.6.28/share/emacs/site-lisp/org-9.6.28/org-goto hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/org/org-goto /gnu/store/031352359pz52775hfcm6kr4qlckkrx1-emacs-org-9.6.28/share/emacs/site-lisp/org-9.6.28/oc hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/org/oc /gnu/store/031352359pz52775hfcm6kr4qlckkrx1-emacs-org-9.6.28/share/emacs/site-lisp/org-9.6.28/ob-matlab hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/org/ob-matlab /gnu/store/031352359pz52775hfcm6kr4qlckkrx1-emacs-org-9.6.28/share/emacs/site-lisp/org-9.6.28/org-macro hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/org/org-macro /gnu/store/031352359pz52775hfcm6kr4qlckkrx1-emacs-org-9.6.28/share/emacs/site-lisp/org-9.6.28/ob-dot hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/org/ob-dot /gnu/store/031352359pz52775hfcm6kr4qlckkrx1-emacs-org-9.6.28/share/emacs/site-lisp/org-9.6.28/org-ctags hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/org/org-ctags /gnu/store/031352359pz52775hfcm6kr4qlckkrx1-emacs-org-9.6.28/share/emacs/site-lisp/org-9.6.28/ol hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/org/ol /gnu/store/031352359pz52775hfcm6kr4qlckkrx1-emacs-org-9.6.28/share/emacs/site-lisp/org-9.6.28/ob-lob hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/org/ob-lob /gnu/store/031352359pz52775hfcm6kr4qlckkrx1-emacs-org-9.6.28/share/emacs/site-lisp/org-9.6.28/ol-docview hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/org/ol-docview /gnu/store/031352359pz52775hfcm6kr4qlckkrx1-emacs-org-9.6.28/share/emacs/site-lisp/org-9.6.28/ol-info hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/org/ol-info /gnu/store/031352359pz52775hfcm6kr4qlckkrx1-emacs-org-9.6.28/share/emacs/site-lisp/org-9.6.28/org-archive hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/org/org-archive /gnu/store/031352359pz52775hfcm6kr4qlckkrx1-emacs-org-9.6.28/share/emacs/site-lisp/org-9.6.28/ob-ocaml hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/org/ob-ocaml /gnu/store/031352359pz52775hfcm6kr4qlckkrx1-emacs-org-9.6.28/share/emacs/site-lisp/org-9.6.28/org-timer hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/org/org-timer /gnu/store/031352359pz52775hfcm6kr4qlckkrx1-emacs-org-9.6.28/share/emacs/site-lisp/org-9.6.28/ob-emacs-lisp hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/org/ob-emacs-lisp /gnu/store/031352359pz52775hfcm6kr4qlckkrx1-emacs-org-9.6.28/share/emacs/site-lisp/org-9.6.28/ob-table hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/org/ob-table /gnu/store/031352359pz52775hfcm6kr4qlckkrx1-emacs-org-9.6.28/share/emacs/site-lisp/org-9.6.28/ol-man hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/org/ol-man /gnu/store/031352359pz52775hfcm6kr4qlckkrx1-emacs-org-9.6.28/share/emacs/site-lisp/org-9.6.28/ob-perl hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/org/ob-perl /gnu/store/031352359pz52775hfcm6kr4qlckkrx1-emacs-org-9.6.28/share/emacs/site-lisp/org-9.6.28/ob-clojure hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/org/ob-clojure /gnu/store/031352359pz52775hfcm6kr4qlckkrx1-emacs-org-9.6.28/share/emacs/site-lisp/org-9.6.28/ob-shell hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/org/ob-shell /gnu/store/031352359pz52775hfcm6kr4qlckkrx1-emacs-org-9.6.28/share/emacs/site-lisp/org-9.6.28/ol-bbdb hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/org/ol-bbdb /gnu/store/031352359pz52775hfcm6kr4qlckkrx1-emacs-org-9.6.28/share/emacs/site-lisp/org-9.6.28/org-id hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/org/org-id /gnu/store/031352359pz52775hfcm6kr4qlckkrx1-emacs-org-9.6.28/share/emacs/site-lisp/org-9.6.28/ob-lua hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/org/ob-lua /gnu/store/031352359pz52775hfcm6kr4qlckkrx1-emacs-org-9.6.28/share/emacs/site-lisp/org-9.6.28/ob-calc hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/org/ob-calc /gnu/store/031352359pz52775hfcm6kr4qlckkrx1-emacs-org-9.6.28/share/emacs/site-lisp/org-9.6.28/org-datetree hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/org/org-datetree /gnu/store/031352359pz52775hfcm6kr4qlckkrx1-emacs-org-9.6.28/share/emacs/site-lisp/org-9.6.28/ox-html hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/org/ox-html /gnu/store/031352359pz52775hfcm6kr4qlckkrx1-emacs-org-9.6.28/share/emacs/site-lisp/org-9.6.28/org-colview hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/org/org-colview /gnu/store/031352359pz52775hfcm6kr4qlckkrx1-emacs-org-9.6.28/share/emacs/site-lisp/org-9.6.28/org-mouse hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/org/org-mouse /gnu/store/031352359pz52775hfcm6kr4qlckkrx1-emacs-org-9.6.28/share/emacs/site-lisp/org-9.6.28/ol-irc hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/org/ol-irc /gnu/store/031352359pz52775hfcm6kr4qlckkrx1-emacs-org-9.6.28/share/emacs/site-lisp/org-9.6.28/ob-ditaa hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/org/ob-ditaa /gnu/store/031352359pz52775hfcm6kr4qlckkrx1-emacs-org-9.6.28/share/emacs/site-lisp/org-9.6.28/ob-processing hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/org/ob-processing /gnu/store/031352359pz52775hfcm6kr4qlckkrx1-emacs-org-9.6.28/share/emacs/site-lisp/org-9.6.28/ob-eshell hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/org/ob-eshell /gnu/store/031352359pz52775hfcm6kr4qlckkrx1-emacs-org-9.6.28/share/emacs/site-lisp/org-9.6.28/ol-gnus hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/org/ol-gnus /gnu/store/031352359pz52775hfcm6kr4qlckkrx1-emacs-org-9.6.28/share/emacs/site-lisp/org-9.6.28/org-pcomplete hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/org/org-pcomplete /gnu/store/031352359pz52775hfcm6kr4qlckkrx1-emacs-org-9.6.28/share/emacs/site-lisp/org-9.6.28/ob-plantuml hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/org/ob-plantuml /gnu/store/031352359pz52775hfcm6kr4qlckkrx1-emacs-org-9.6.28/share/emacs/site-lisp/org-9.6.28/ob-fortran hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/org/ob-fortran /gnu/store/031352359pz52775hfcm6kr4qlckkrx1-emacs-org-9.6.28/share/emacs/site-lisp/org-9.6.28/org-num hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/org/org-num /gnu/store/031352359pz52775hfcm6kr4qlckkrx1-emacs-org-9.6.28/share/emacs/site-lisp/org-9.6.28/ob-groovy hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/org/ob-groovy /gnu/store/031352359pz52775hfcm6kr4qlckkrx1-emacs-org-9.6.28/share/emacs/site-lisp/org-9.6.28/org-list hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/org/org-list /gnu/store/031352359pz52775hfcm6kr4qlckkrx1-emacs-org-9.6.28/share/emacs/site-lisp/org-9.6.28/ox-latex hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/org/ox-latex /gnu/store/031352359pz52775hfcm6kr4qlckkrx1-emacs-org-9.6.28/share/emacs/site-lisp/org-9.6.28/org-lint hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/org/org-lint /gnu/store/031352359pz52775hfcm6kr4qlckkrx1-emacs-org-9.6.28/share/emacs/site-lisp/org-9.6.28/org-version hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/org/org-version /gnu/store/031352359pz52775hfcm6kr4qlckkrx1-emacs-org-9.6.28/share/emacs/site-lisp/org-9.6.28/ob-comint hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/org/ob-comint /gnu/store/031352359pz52775hfcm6kr4qlckkrx1-emacs-org-9.6.28/share/emacs/site-lisp/org-9.6.28/ob-lisp hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/org/ob-lisp /gnu/store/031352359pz52775hfcm6kr4qlckkrx1-emacs-org-9.6.28/share/emacs/site-lisp/org-9.6.28/ox-koma-letter hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/org/ox-koma-letter /gnu/store/031352359pz52775hfcm6kr4qlckkrx1-emacs-org-9.6.28/share/emacs/site-lisp/org-9.6.28/org-plot hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/org/org-plot /gnu/store/031352359pz52775hfcm6kr4qlckkrx1-emacs-org-9.6.28/share/emacs/site-lisp/org-9.6.28/org-attach hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/org/org-attach /gnu/store/031352359pz52775hfcm6kr4qlckkrx1-emacs-org-9.6.28/share/emacs/site-lisp/org-9.6.28/ox-texinfo hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/org/ox-texinfo /gnu/store/031352359pz52775hfcm6kr4qlckkrx1-emacs-org-9.6.28/share/emacs/site-lisp/org-9.6.28/ob-ref hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/org/ob-ref /gnu/store/031352359pz52775hfcm6kr4qlckkrx1-emacs-org-9.6.28/share/emacs/site-lisp/org-9.6.28/ob-awk hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/org/ob-awk /gnu/store/031352359pz52775hfcm6kr4qlckkrx1-emacs-org-9.6.28/share/emacs/site-lisp/org-9.6.28/org-feed hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/org/org-feed /gnu/store/031352359pz52775hfcm6kr4qlckkrx1-emacs-org-9.6.28/share/emacs/site-lisp/org-9.6.28/oc-bibtex hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/org/oc-bibtex /gnu/store/031352359pz52775hfcm6kr4qlckkrx1-emacs-org-9.6.28/share/emacs/site-lisp/org-9.6.28/org-persist hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/org/org-persist /gnu/store/031352359pz52775hfcm6kr4qlckkrx1-emacs-org-9.6.28/share/emacs/site-lisp/org-9.6.28/oc-csl hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/org/oc-csl /gnu/store/031352359pz52775hfcm6kr4qlckkrx1-emacs-org-9.6.28/share/emacs/site-lisp/org-9.6.28/org hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/org/org /gnu/store/031352359pz52775hfcm6kr4qlckkrx1-emacs-org-9.6.28/share/emacs/site-lisp/org-9.6.28/ob-maxima hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/org/ob-maxima /gnu/store/031352359pz52775hfcm6kr4qlckkrx1-emacs-org-9.6.28/share/emacs/site-lisp/org-9.6.28/oc-biblatex hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/org/oc-biblatex /gnu/store/031352359pz52775hfcm6kr4qlckkrx1-emacs-org-9.6.28/share/emacs/site-lisp/org-9.6.28/ob-C hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/org/ob-C /gnu/store/031352359pz52775hfcm6kr4qlckkrx1-emacs-org-9.6.28/share/emacs/site-lisp/org-9.6.28/ob-haskell hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/org/ob-haskell /gnu/store/031352359pz52775hfcm6kr4qlckkrx1-emacs-org-9.6.28/share/emacs/site-lisp/org-9.6.28/ob-exp hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/org/ob-exp /gnu/store/031352359pz52775hfcm6kr4qlckkrx1-emacs-org-9.6.28/share/emacs/site-lisp/org-9.6.28/org-agenda hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/org/org-agenda /gnu/store/031352359pz52775hfcm6kr4qlckkrx1-emacs-org-9.6.28/share/emacs/site-lisp/org-9.6.28/ob-octave hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/org/ob-octave /gnu/store/031352359pz52775hfcm6kr4qlckkrx1-emacs-org-9.6.28/share/emacs/site-lisp/org-9.6.28/ol-eshell hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/org/ol-eshell /gnu/store/031352359pz52775hfcm6kr4qlckkrx1-emacs-org-9.6.28/share/emacs/site-lisp/org-9.6.28/org-duration hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/org/org-duration /gnu/store/031352359pz52775hfcm6kr4qlckkrx1-emacs-org-9.6.28/share/emacs/site-lisp/org-9.6.28/ob-gnuplot hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/org/ob-gnuplot /gnu/store/kkjkvl02mpbi1xb4f655wsfs8d35cyav-emacs-let-alist-1.0.6/share/emacs/site-lisp/let-alist-1.0.6/let-alist hides /gnu/store/bpalqnfh1y0hy1921lpxx5a6yr6b5ksi-emacs-29.3/share/emacs/29.3/lisp/emacs-lisp/let-alist Features: (shadow sort mail-extr emacsbug message mailcap yank-media puny dired dired-loaddefs rfc822 mml mml-sec password-cache epa derived epg rfc6068 epg-config gnus-util text-property-search time-date subr-x mm-decode mm-bodies mm-encode mail-parse rfc2231 mailabbrev gmm-utils mailheader sendmail rfc2047 rfc2045 ietf-drums mm-util mail-prsvr mail-utils thingatpt misearch multi-isearch git-link-autoloads yaml-autoloads treepy-autoloads let-alist-autoloads closql-autoloads forge-autoloads tablist-autoloads pdf-tools-autoloads beacon-autoloads deferred-autoloads request-autoloads expand-region-autoloads magit-popup-autoloads geiser-guile-autoloads geiser-autoloads edit-indirect-autoloads bui-autoloads guix-autoloads rx notmuch-autoloads highlight-indentation-autoloads diminish-autoloads use-package-autoloads sparql-mode-autoloads markdown-mode-autoloads yaml-mode-autoloads org-tree-slide-autoloads pulseaudio-control-autoloads all-the-icons-dired-autoloads rainbow-mode-autoloads orderless-autoloads sqlite3-api-autoloads pg-autoloads finalize-autoloads emacsql-autoloads org-roam-autoloads orgit-autoloads ox-gfm-autoloads xelb-autoloads exwm-autoloads shut-up-autoloads loop-autoloads list-utils-autoloads cl-loaddefs cl-lib elisp-refs-autoloads helpful-autoloads marginalia-autoloads transient-autoloads magit-autoloads subed-autoloads yasnippet-autoloads pfuture-autoloads hydra-autoloads ht-autoloads ace-window-autoloads treemacs-autoloads vterm-autoloads jq-mode-autoloads async-autoloads helm-autoloads restclient-autoloads ob-restclient-autoloads page-break-lines-autoloads dashboard-autoloads memoize-autoloads s-autoloads f-autoloads all-the-icons-autoloads log4e-autoloads gntp-autoloads alert-autoloads telega-contrib-autoloads rainbow-identifiers-autoloads company-autoloads visual-fill-column-autoloads telega-autoloads pinentry-autoloads consult-autoloads avy-autoloads embark-autoloads adaptive-wrap-autoloads emms-autoloads compat-autoloads vertico-autoloads vertico-posframe-autoloads posframe-autoloads popup-autoloads dash-autoloads rime-autoloads guix-emacs 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 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 lcms2 dynamic-setting system-font-setting font-render-setting cairo move-toolbar gtk x-toolkit xinput2 x multi-tty make-network-process native-compile emacs) Memory information: ((conses 16 67412 7697) (symbols 48 6795 0) (strings 32 19151 3107) (string-bytes 1 567913) (vectors 16 11964) (vector-slots 8 287178 9220) (floats 8 22 13) (intervals 56 450 0) (buffers 984 11)) ^ permalink raw reply [flat|nested] 17+ messages in thread
* bug#70989: 29.3; Calling isearch-forward when using Unifont throws error "Invalid font name" 2024-05-16 18:39 bug#70989: 29.3; Calling isearch-forward when using Unifont throws error "Invalid font name" Rodrigo Morales @ 2024-05-16 19:31 ` Eli Zaretskii 2024-05-16 20:09 ` Rodrigo Morales 0 siblings, 1 reply; 17+ messages in thread From: Eli Zaretskii @ 2024-05-16 19:31 UTC (permalink / raw) To: Rodrigo Morales; +Cc: 70989 > Date: Thu, 16 May 2024 13:39:26 -0500 > From: Rodrigo Morales <me@rodrigomorales.site> > > > I used the font "Unifont" to reproduce this issue: I downloaded > the font from https://unifoundry.com/unifont/index.html . The file was > called =unifont-15.1.05.bdf.gz=. I decompressed the file using gunzip > and copied the file to ~/.fonts. Afterwards, I executed "fc-cache -f". > > To reproduce this issue, I did not start Emacs using "emacs -Q", but I > deleted the file ~/.config/emacs/init.el and I only added the > following sexp to ~/.config/emacs/init.el > > #+HEADER: :tangle ~/.config/emacs/init.el > #+BEGIN_SRC elisp > (add-to-list 'default-frame-alist '(font . "Unifont")) > #+END_SRC > > I launched Emacs without the =-Q= flag so that the file > ~/.config/emacs/init.el . When the Emacs window opened, the modeline > and the sentence "For information about GNU Emacs and the GNU system, > type C-h C-a" which is shown in the minibuffer was shown using > "Unifont" (the C-h C-a was shown using other font). What does the below show after you start Emacs? M-: (face-font 'default) RET ^ permalink raw reply [flat|nested] 17+ messages in thread
* bug#70989: 29.3; Calling isearch-forward when using Unifont throws error "Invalid font name" 2024-05-16 19:31 ` Eli Zaretskii @ 2024-05-16 20:09 ` Rodrigo Morales 2024-05-17 6:13 ` Eli Zaretskii 0 siblings, 1 reply; 17+ messages in thread From: Rodrigo Morales @ 2024-05-16 20:09 UTC (permalink / raw) To: Eli Zaretskii; +Cc: 70989 Eli Zaretskii <eliz@gnu.org> writes: > What does the below show after you start Emacs? > > M-: (face-font 'default) RET "-GNU-Unifont-medium-normal-normal-Sans-Serif-16-*-*-*-c-80-iso10646-1" ^ permalink raw reply [flat|nested] 17+ messages in thread
* bug#70989: 29.3; Calling isearch-forward when using Unifont throws error "Invalid font name" 2024-05-16 20:09 ` Rodrigo Morales @ 2024-05-17 6:13 ` Eli Zaretskii 2024-05-17 11:03 ` Po Lu via Bug reports for GNU Emacs, the Swiss army knife of text editors 0 siblings, 1 reply; 17+ messages in thread From: Eli Zaretskii @ 2024-05-17 6:13 UTC (permalink / raw) To: Rodrigo Morales, Po Lu; +Cc: 70989 > From: Rodrigo Morales <me@rodrigomorales.site> > CC: <70989@debbugs.gnu.org> > Date: Thu, 16 May 2024 15:09:14 -0500 > > Eli Zaretskii <eliz@gnu.org> writes: > > > What does the below show after you start Emacs? > > > > M-: (face-font 'default) RET > > "-GNU-Unifont-medium-normal-normal-Sans-Serif-16-*-*-*-c-80-iso10646-1" That "Sans-Serif" part is the problem: it shouldn't have the dash. Po Lu, any idea where does that get appended to the font's name, and why? ^ permalink raw reply [flat|nested] 17+ messages in thread
* bug#70989: 29.3; Calling isearch-forward when using Unifont throws error "Invalid font name" 2024-05-17 6:13 ` Eli Zaretskii @ 2024-05-17 11:03 ` Po Lu via Bug reports for GNU Emacs, the Swiss army knife of text editors 2024-05-17 15:14 ` Rodrigo Morales 0 siblings, 1 reply; 17+ messages in thread From: Po Lu via Bug reports for GNU Emacs, the Swiss army knife of text editors @ 2024-05-17 11:03 UTC (permalink / raw) To: Eli Zaretskii; +Cc: 70989, Rodrigo Morales Eli Zaretskii <eliz@gnu.org> writes: >> From: Rodrigo Morales <me@rodrigomorales.site> >> CC: <70989@debbugs.gnu.org> >> Date: Thu, 16 May 2024 15:09:14 -0500 >> >> Eli Zaretskii <eliz@gnu.org> writes: >> >> > What does the below show after you start Emacs? >> > >> > M-: (face-font 'default) RET >> >> "-GNU-Unifont-medium-normal-normal-Sans-Serif-16-*-*-*-c-80-iso10646-1" > > That "Sans-Serif" part is the problem: it shouldn't have the dash. > > Po Lu, any idea where does that get appended to the font's name, and > why? Rodrigo, would you please let us know which font driver this font is loaded by? Please type M-x describe-char RET with point on a character in the default font, and respond with the output of the Help buffer. ^ permalink raw reply [flat|nested] 17+ messages in thread
* bug#70989: 29.3; Calling isearch-forward when using Unifont throws error "Invalid font name" 2024-05-17 11:03 ` Po Lu via Bug reports for GNU Emacs, the Swiss army knife of text editors @ 2024-05-17 15:14 ` Rodrigo Morales 2024-05-18 12:25 ` Po Lu via Bug reports for GNU Emacs, the Swiss army knife of text editors 0 siblings, 1 reply; 17+ messages in thread From: Rodrigo Morales @ 2024-05-17 15:14 UTC (permalink / raw) To: Po Lu, Eli Zaretskii; +Cc: 70989 Po Lu <luangruo@yahoo.com> writes: > Rodrigo, would you please let us know which font driver this font is > loaded by? Please type M-x describe-char RET with point on a character > in the default font, and respond with the output of the Help buffer. I emptied the file =~/.config/emacs/init.el= and inserted the following sexp. #+HEADER: :tangle ~/.config/emacs/init.el #+BEGIN_SRC elisp (add-to-list 'default-frame-alist '(font . "Unifont")) #+END_SRC I launched emacs without using the =-Q= flag so that =~/.config/emacs/init.el= is read. I switched to the buffer =*scratch*= buffer because the buffer =*GNU Emacs*= used other fonts. See [[http://web.archive.org/web/20240517150825/http://0x0.st/XPqZ.png][this screenshot]] (note that modeline uses =Unifont= but the buffer =*GNU Emacs*= uses other fonts). The =*scratch*= buffer used Unifont. Here's the content of =*Help*= buffer which was opened when I run =M-x describe-char= in the =;= which is shown as the first character in the =*scratch*= buffer. #+BEGIN_SRC text position: 1 of 145 (0%), column: 0 character: ; (displayed as ;) (codepoint 59, #o73, #x3b) charset: ascii (ASCII (ISO646 IRV)) code point in charset: 0x3B script: latin syntax: < which means: comment category: .:Base, a:ASCII, l:Latin, r:Roman to input: type "C-x 8 RET 3b" or "C-x 8 RET SEMICOLON" buffer code: #x3B file code: #x3B (encoded by coding system utf-8-unix) display: by this font (glyph code): ftcrhb:-GNU-Unifont-medium-normal-normal-Sans-Serif-16-*-*-*-c-80-iso10646-1 (#x3C) Character code properties: customize what to show name: SEMICOLON general-category: Po (Punctuation, Other) decomposition: (59) (';') There are text properties here: face font-lock-comment-delimiter-face fontified t [back] #+END_SRC Feel free to ask for more information if needed. ^ permalink raw reply [flat|nested] 17+ messages in thread
* bug#70989: 29.3; Calling isearch-forward when using Unifont throws error "Invalid font name" 2024-05-17 15:14 ` Rodrigo Morales @ 2024-05-18 12:25 ` Po Lu via Bug reports for GNU Emacs, the Swiss army knife of text editors 2024-05-18 15:34 ` Eli Zaretskii 0 siblings, 1 reply; 17+ messages in thread From: Po Lu via Bug reports for GNU Emacs, the Swiss army knife of text editors @ 2024-05-18 12:25 UTC (permalink / raw) To: Rodrigo Morales; +Cc: 70989, Eli Zaretskii Rodrigo Morales <me@rodrigomorales.site> writes: > #+BEGIN_SRC text > position: 1 of 145 (0%), column: 0 > character: ; (displayed as ;) (codepoint 59, #o73, #x3b) > charset: ascii (ASCII (ISO646 IRV)) > code point in charset: 0x3B > script: latin > syntax: < which means: comment > category: .:Base, a:ASCII, l:Latin, r:Roman > to input: type "C-x 8 RET 3b" or "C-x 8 RET SEMICOLON" > buffer code: #x3B > file code: #x3B (encoded by coding system utf-8-unix) > display: by this font (glyph code): > ftcrhb:-GNU-Unifont-medium-normal-normal-Sans-Serif-16-*-*-*-c-80-iso10646-1 (#x3C) Thanks. The field in question is the adstyle produced from an FcPattern's FC_STYLE attribute by get_adstyle_property in the ftfont driver. What are the chances that a font will define two adstyles that collide when dashes (and other characters not representable in an XLFD) in one are replaced with a substitute? I expect that they are negligible, and as such it should suffice to substitute some fixed alternative for such characters where they appear in adstyles and perhaps other fields also, if it should ever come to that. ^ permalink raw reply [flat|nested] 17+ messages in thread
* bug#70989: 29.3; Calling isearch-forward when using Unifont throws error "Invalid font name" 2024-05-18 12:25 ` Po Lu via Bug reports for GNU Emacs, the Swiss army knife of text editors @ 2024-05-18 15:34 ` Eli Zaretskii 2024-05-19 0:15 ` Po Lu via Bug reports for GNU Emacs, the Swiss army knife of text editors 0 siblings, 1 reply; 17+ messages in thread From: Eli Zaretskii @ 2024-05-18 15:34 UTC (permalink / raw) To: Po Lu; +Cc: 70989, me > From: Po Lu <luangruo@yahoo.com> > Cc: Eli Zaretskii <eliz@gnu.org>, <70989@debbugs.gnu.org> > Date: Sat, 18 May 2024 20:25:06 +0800 > > Rodrigo Morales <me@rodrigomorales.site> writes: > > > #+BEGIN_SRC text > > position: 1 of 145 (0%), column: 0 > > character: ; (displayed as ;) (codepoint 59, #o73, #x3b) > > charset: ascii (ASCII (ISO646 IRV)) > > code point in charset: 0x3B > > script: latin > > syntax: < which means: comment > > category: .:Base, a:ASCII, l:Latin, r:Roman > > to input: type "C-x 8 RET 3b" or "C-x 8 RET SEMICOLON" > > buffer code: #x3B > > file code: #x3B (encoded by coding system utf-8-unix) > > display: by this font (glyph code): > > ftcrhb:-GNU-Unifont-medium-normal-normal-Sans-Serif-16-*-*-*-c-80-iso10646-1 (#x3C) > > Thanks. The field in question is the adstyle produced from an > FcPattern's FC_STYLE attribute by get_adstyle_property in the ftfont > driver. What are the chances that a font will define two adstyles that > collide when dashes (and other characters not representable in an XLFD) > in one are replaced with a substitute? I expect that they are > negligible, and as such it should suffice to substitute some fixed > alternative for such characters where they appear in adstyles and > perhaps other fields also, if it should ever come to that. Sorry, can you elaborate a bit, please? Specifically: . which code in get_adstyle_property does this, and how? . what is your idea for a fix, which led you to ask about "the chances that a font will define two adstyles that collide"? ^ permalink raw reply [flat|nested] 17+ messages in thread
* bug#70989: 29.3; Calling isearch-forward when using Unifont throws error "Invalid font name" 2024-05-18 15:34 ` Eli Zaretskii @ 2024-05-19 0:15 ` Po Lu via Bug reports for GNU Emacs, the Swiss army knife of text editors 2024-05-19 6:05 ` Eli Zaretskii 0 siblings, 1 reply; 17+ messages in thread From: Po Lu via Bug reports for GNU Emacs, the Swiss army knife of text editors @ 2024-05-19 0:15 UTC (permalink / raw) To: Eli Zaretskii; +Cc: 70989, me Eli Zaretskii <eliz@gnu.org> writes: > Sorry, can you elaborate a bit, please? Specifically: > > . which code in get_adstyle_property does this, and how? Not "which code", but "the code", in that the function doesn't actively generate adstyles inappropriate for XLFDs, but duly returns such adstyles when Fontconfig reports the same. > . what is your idea for a fix, which led you to ask about "the > chances that a font will define two adstyles that collide"? Replacing instances of "-" with "_" in adstyles. ^ permalink raw reply [flat|nested] 17+ messages in thread
* bug#70989: 29.3; Calling isearch-forward when using Unifont throws error "Invalid font name" 2024-05-19 0:15 ` Po Lu via Bug reports for GNU Emacs, the Swiss army knife of text editors @ 2024-05-19 6:05 ` Eli Zaretskii 2024-05-19 7:37 ` Po Lu via Bug reports for GNU Emacs, the Swiss army knife of text editors 0 siblings, 1 reply; 17+ messages in thread From: Eli Zaretskii @ 2024-05-19 6:05 UTC (permalink / raw) To: Po Lu; +Cc: 70989, me > From: Po Lu <luangruo@yahoo.com> > Cc: me@rodrigomorales.site, 70989@debbugs.gnu.org > Date: Sun, 19 May 2024 08:15:14 +0800 > > Eli Zaretskii <eliz@gnu.org> writes: > > > Sorry, can you elaborate a bit, please? Specifically: > > > > . which code in get_adstyle_property does this, and how? > > Not "which code", but "the code", in that the function doesn't actively > generate adstyles inappropriate for XLFDs, but duly returns such > adstyles when Fontconfig reports the same. Sorry, I still don't understand what you are saying. Could you please talk me through the code in that function, and tell where does "Sans-Serif" come from and how is it "injected" into the font's attributes? What I see there is the call to fond_intern_prop, and if the result is accepted by font_style_to_value as a valid value of FONT_WIDTH_INDEX, it is returned. But "Sans-Serif" is not supposed to be a valid width of a font, so I'm confused. > > . what is your idea for a fix, which led you to ask about "the > > chances that a font will define two adstyles that collide"? > > Replacing instances of "-" with "_" in adstyles. In what string or symbol name that is being processed in get_adstyle_property? ^ permalink raw reply [flat|nested] 17+ messages in thread
* bug#70989: 29.3; Calling isearch-forward when using Unifont throws error "Invalid font name" 2024-05-19 6:05 ` Eli Zaretskii @ 2024-05-19 7:37 ` Po Lu via Bug reports for GNU Emacs, the Swiss army knife of text editors 2024-05-19 7:49 ` Eli Zaretskii 0 siblings, 1 reply; 17+ messages in thread From: Po Lu via Bug reports for GNU Emacs, the Swiss army knife of text editors @ 2024-05-19 7:37 UTC (permalink / raw) To: Eli Zaretskii; +Cc: 70989, me Eli Zaretskii <eliz@gnu.org> writes: > Sorry, I still don't understand what you are saying. Could you please > talk me through the code in that function, and tell where does > "Sans-Serif" come from and how is it "injected" into the font's > attributes? > > What I see there is the call to fond_intern_prop, and if the result is > accepted by font_style_to_value as a valid value of FONT_WIDTH_INDEX, > it is returned. But "Sans-Serif" is not supposed to be a valid width > of a font, so I'm confused. Where does FONT_WIDTH_INDEX come into play? The attribute responsible is FONT_ADSTYLE_INDEX, which is set to "Sans-Serif" by: font. */ FT_Face ft_face; ASET (entity, FONT_ADSTYLE_INDEX, get_adstyle_property (p)); if ((ft_library || FT_Init_FreeType (&ft_library) == 0) in ftfont_pattern_entity. The XLFD generated from a font with such an adstyle is not parsable, the character `-' being the field separator in XLFDs, and gives rise to parser errors such as Rodrigo encountered when I-search, by proxy, attempted to deconstruct the XLFD back into a font spec. > In what string or symbol name that is being processed in > get_adstyle_property? Its return value. ^ permalink raw reply [flat|nested] 17+ messages in thread
* bug#70989: 29.3; Calling isearch-forward when using Unifont throws error "Invalid font name" 2024-05-19 7:37 ` Po Lu via Bug reports for GNU Emacs, the Swiss army knife of text editors @ 2024-05-19 7:49 ` Eli Zaretskii 2024-05-19 11:13 ` Po Lu via Bug reports for GNU Emacs, the Swiss army knife of text editors 0 siblings, 1 reply; 17+ messages in thread From: Eli Zaretskii @ 2024-05-19 7:49 UTC (permalink / raw) To: Po Lu; +Cc: 70989, me > From: Po Lu <luangruo@yahoo.com> > Cc: me@rodrigomorales.site, 70989@debbugs.gnu.org > Date: Sun, 19 May 2024 15:37:09 +0800 > > Eli Zaretskii <eliz@gnu.org> writes: > > > What I see there is the call to fond_intern_prop, and if the result is > > accepted by font_style_to_value as a valid value of FONT_WIDTH_INDEX, > > it is returned. But "Sans-Serif" is not supposed to be a valid width > > of a font, so I'm confused. > > Where does FONT_WIDTH_INDEX come into play? Inside get_adstyle_property: adstyle = font_intern_prop (str, end - str, 1); if (font_style_to_value (FONT_WIDTH_INDEX, adstyle, 0) >= 0) return Qnil; return adstyle; > The attribute responsible is FONT_ADSTYLE_INDEX, which is set to > "Sans-Serif" by: > > font. */ > FT_Face ft_face; > > ASET (entity, FONT_ADSTYLE_INDEX, get_adstyle_property (p)); > if ((ft_library || FT_Init_FreeType (&ft_library) == 0) > > in ftfont_pattern_entity. The XLFD generated from a font with such an > adstyle is not parsable, the character `-' being the field separator in > XLFDs, and gives rise to parser errors such as Rodrigo encountered when > I-search, by proxy, attempted to deconstruct the XLFD back into a font > spec. Yes, I understand all that. That was not my question. So what is the patch you'd propose. ^ permalink raw reply [flat|nested] 17+ messages in thread
* bug#70989: 29.3; Calling isearch-forward when using Unifont throws error "Invalid font name" 2024-05-19 7:49 ` Eli Zaretskii @ 2024-05-19 11:13 ` Po Lu via Bug reports for GNU Emacs, the Swiss army knife of text editors 2024-05-19 11:42 ` Eli Zaretskii 0 siblings, 1 reply; 17+ messages in thread From: Po Lu via Bug reports for GNU Emacs, the Swiss army knife of text editors @ 2024-05-19 11:13 UTC (permalink / raw) To: Eli Zaretskii; +Cc: 70989, me Eli Zaretskii <eliz@gnu.org> writes: >> From: Po Lu <luangruo@yahoo.com> >> Cc: me@rodrigomorales.site, 70989@debbugs.gnu.org >> Date: Sun, 19 May 2024 15:37:09 +0800 >> >> Eli Zaretskii <eliz@gnu.org> writes: >> >> > What I see there is the call to fond_intern_prop, and if the result is >> > accepted by font_style_to_value as a valid value of FONT_WIDTH_INDEX, >> > it is returned. But "Sans-Serif" is not supposed to be a valid width >> > of a font, so I'm confused. >> >> Where does FONT_WIDTH_INDEX come into play? > > Inside get_adstyle_property: > > adstyle = font_intern_prop (str, end - str, 1); > if (font_style_to_value (FONT_WIDTH_INDEX, adstyle, 0) >= 0) > return Qnil; > return adstyle; This tests whether the adstyle duplicates information that the pattern might provide as the font width, since if so, the adstyle is entirely redundant. You'll observe that font_style_to_value returning >= 0 indicates that the adstyle is a valid width, and therefore the function rejects, and does not validate, width values. >> The attribute responsible is FONT_ADSTYLE_INDEX, which is set to >> "Sans-Serif" by: >> >> font. */ >> FT_Face ft_face; >> >> ASET (entity, FONT_ADSTYLE_INDEX, get_adstyle_property (p)); >> if ((ft_library || FT_Init_FreeType (&ft_library) == 0) >> >> in ftfont_pattern_entity. The XLFD generated from a font with such an >> adstyle is not parsable, the character `-' being the field separator in >> XLFDs, and gives rise to parser errors such as Rodrigo encountered when >> I-search, by proxy, attempted to deconstruct the XLFD back into a font >> spec. > > Yes, I understand all that. That was not my question. > > So what is the patch you'd propose. diff --git a/src/ftfont.c b/src/ftfont.c index 2e37b62ea35..efb6bf668bb 100644 --- a/src/ftfont.c +++ b/src/ftfont.c @@ -149,7 +149,8 @@ matching_prefix (char const *str, ptrdiff_t len, char const *pat) get_adstyle_property (FcPattern *p) { FcChar8 *fcstr; - char *str, *end; + char *str, *end, *tmp; + size_t i; Lisp_Object adstyle; #ifdef FC_FONTFORMAT @@ -168,7 +169,18 @@ get_adstyle_property (FcPattern *p) || matching_prefix (str, end - str, "Oblique") || matching_prefix (str, end - str, "Italic")) return Qnil; - adstyle = font_intern_prop (str, end - str, 1); + /* The characters `-', `?', `*', and `"' are not representable in XLFDs + and therefore must be replaced by substitutes. (bug#70989) */ + USE_SAFE_ALLOCA; + tmp = SAFE_ALLOCA (end - str); + for (i = 0; i < end - str; ++i) + tmp[i] = (str[i] == '-' + ? '_' : ((str[i] != '?' + && str[i] != '*' + && str[i] != '"') + ? str[i] : ' ')); + adstyle = font_intern_prop (tmp, end - str, 1); + SAFE_FREE (); if (font_style_to_value (FONT_WIDTH_INDEX, adstyle, 0) >= 0) return Qnil; return adstyle; ^ permalink raw reply related [flat|nested] 17+ messages in thread
* bug#70989: 29.3; Calling isearch-forward when using Unifont throws error "Invalid font name" 2024-05-19 11:13 ` Po Lu via Bug reports for GNU Emacs, the Swiss army knife of text editors @ 2024-05-19 11:42 ` Eli Zaretskii 2024-05-19 13:00 ` Po Lu via Bug reports for GNU Emacs, the Swiss army knife of text editors 0 siblings, 1 reply; 17+ messages in thread From: Eli Zaretskii @ 2024-05-19 11:42 UTC (permalink / raw) To: Po Lu; +Cc: 70989, me > From: Po Lu <luangruo@yahoo.com> > Cc: me@rodrigomorales.site, 70989@debbugs.gnu.org > Date: Sun, 19 May 2024 19:13:32 +0800 > > Eli Zaretskii <eliz@gnu.org> writes: > > >> From: Po Lu <luangruo@yahoo.com> > >> Cc: me@rodrigomorales.site, 70989@debbugs.gnu.org > >> Date: Sun, 19 May 2024 15:37:09 +0800 > >> > >> Eli Zaretskii <eliz@gnu.org> writes: > >> > >> > What I see there is the call to fond_intern_prop, and if the result is > >> > accepted by font_style_to_value as a valid value of FONT_WIDTH_INDEX, > >> > it is returned. But "Sans-Serif" is not supposed to be a valid width > >> > of a font, so I'm confused. > >> > >> Where does FONT_WIDTH_INDEX come into play? > > > > Inside get_adstyle_property: > > > > adstyle = font_intern_prop (str, end - str, 1); > > if (font_style_to_value (FONT_WIDTH_INDEX, adstyle, 0) >= 0) > > return Qnil; > > return adstyle; > > This tests whether the adstyle duplicates information that the pattern > might provide as the font width, since if so, the adstyle is entirely > redundant. You'll observe that font_style_to_value returning >= 0 > indicates that the adstyle is a valid width, and therefore the function > rejects, and does not validate, width values. Thanks. > >> The attribute responsible is FONT_ADSTYLE_INDEX, which is set to > >> "Sans-Serif" by: > >> > >> font. */ > >> FT_Face ft_face; > >> > >> ASET (entity, FONT_ADSTYLE_INDEX, get_adstyle_property (p)); > >> if ((ft_library || FT_Init_FreeType (&ft_library) == 0) > >> > >> in ftfont_pattern_entity. The XLFD generated from a font with such an > >> adstyle is not parsable, the character `-' being the field separator in > >> XLFDs, and gives rise to parser errors such as Rodrigo encountered when > >> I-search, by proxy, attempted to deconstruct the XLFD back into a font > >> spec. > > > > Yes, I understand all that. That was not my question. > > > > So what is the patch you'd propose. > > diff --git a/src/ftfont.c b/src/ftfont.c > index 2e37b62ea35..efb6bf668bb 100644 > --- a/src/ftfont.c > +++ b/src/ftfont.c > @@ -149,7 +149,8 @@ matching_prefix (char const *str, ptrdiff_t len, char const *pat) > get_adstyle_property (FcPattern *p) > { > FcChar8 *fcstr; > - char *str, *end; > + char *str, *end, *tmp; > + size_t i; > Lisp_Object adstyle; > > #ifdef FC_FONTFORMAT > @@ -168,7 +169,18 @@ get_adstyle_property (FcPattern *p) > || matching_prefix (str, end - str, "Oblique") > || matching_prefix (str, end - str, "Italic")) > return Qnil; > - adstyle = font_intern_prop (str, end - str, 1); > + /* The characters `-', `?', `*', and `"' are not representable in XLFDs > + and therefore must be replaced by substitutes. (bug#70989) */ > + USE_SAFE_ALLOCA; > + tmp = SAFE_ALLOCA (end - str); > + for (i = 0; i < end - str; ++i) > + tmp[i] = (str[i] == '-' > + ? '_' : ((str[i] != '?' > + && str[i] != '*' > + && str[i] != '"') > + ? str[i] : ' ')); > + adstyle = font_intern_prop (tmp, end - str, 1); > + SAFE_FREE (); > if (font_style_to_value (FONT_WIDTH_INDEX, adstyle, 0) >= 0) > return Qnil; > return adstyle; Thanks, but why not replace all of those with a SPC? It's simpler, I think. ^ permalink raw reply [flat|nested] 17+ messages in thread
* bug#70989: 29.3; Calling isearch-forward when using Unifont throws error "Invalid font name" 2024-05-19 11:42 ` Eli Zaretskii @ 2024-05-19 13:00 ` Po Lu via Bug reports for GNU Emacs, the Swiss army knife of text editors 2024-05-19 13:19 ` Eli Zaretskii 0 siblings, 1 reply; 17+ messages in thread From: Po Lu via Bug reports for GNU Emacs, the Swiss army knife of text editors @ 2024-05-19 13:00 UTC (permalink / raw) To: Eli Zaretskii; +Cc: 70989, me Eli Zaretskii <eliz@gnu.org> writes: > Thanks, but why not replace all of those with a SPC? It's simpler, I > think. No reason in particular, I simply thought it would be more elegant to replace the other special characters with a different placeholder. ^ permalink raw reply [flat|nested] 17+ messages in thread
* bug#70989: 29.3; Calling isearch-forward when using Unifont throws error "Invalid font name" 2024-05-19 13:00 ` Po Lu via Bug reports for GNU Emacs, the Swiss army knife of text editors @ 2024-05-19 13:19 ` Eli Zaretskii 2024-05-20 13:03 ` Po Lu via Bug reports for GNU Emacs, the Swiss army knife of text editors 0 siblings, 1 reply; 17+ messages in thread From: Eli Zaretskii @ 2024-05-19 13:19 UTC (permalink / raw) To: Po Lu; +Cc: 70989, me > From: Po Lu <luangruo@yahoo.com> > Cc: me@rodrigomorales.site, 70989@debbugs.gnu.org > Date: Sun, 19 May 2024 21:00:30 +0800 > > Eli Zaretskii <eliz@gnu.org> writes: > > > Thanks, but why not replace all of those with a SPC? It's simpler, I > > think. > > No reason in particular, I simply thought it would be more elegant to > replace the other special characters with a different placeholder. I'd prefer to replace all the characters we cannot use there with a SPC, for consistency. Otherwise, I'm okay with the patch; please feel free to install. ^ permalink raw reply [flat|nested] 17+ messages in thread
* bug#70989: 29.3; Calling isearch-forward when using Unifont throws error "Invalid font name" 2024-05-19 13:19 ` Eli Zaretskii @ 2024-05-20 13:03 ` Po Lu via Bug reports for GNU Emacs, the Swiss army knife of text editors 0 siblings, 0 replies; 17+ messages in thread From: Po Lu via Bug reports for GNU Emacs, the Swiss army knife of text editors @ 2024-05-20 13:03 UTC (permalink / raw) To: Eli Zaretskii; +Cc: 70989, me Eli Zaretskii <eliz@gnu.org> writes: >> From: Po Lu <luangruo@yahoo.com> >> Cc: me@rodrigomorales.site, 70989@debbugs.gnu.org >> Date: Sun, 19 May 2024 21:00:30 +0800 >> >> Eli Zaretskii <eliz@gnu.org> writes: >> >> > Thanks, but why not replace all of those with a SPC? It's simpler, I >> > think. >> >> No reason in particular, I simply thought it would be more elegant to >> replace the other special characters with a different placeholder. > > I'd prefer to replace all the characters we cannot use there with a > SPC, for consistency. > > Otherwise, I'm okay with the patch; please feel free to install. Now done. Rodrigo, please test and ack, and thanks. ^ permalink raw reply [flat|nested] 17+ messages in thread
end of thread, other threads:[~2024-05-20 13:03 UTC | newest] Thread overview: 17+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2024-05-16 18:39 bug#70989: 29.3; Calling isearch-forward when using Unifont throws error "Invalid font name" Rodrigo Morales 2024-05-16 19:31 ` Eli Zaretskii 2024-05-16 20:09 ` Rodrigo Morales 2024-05-17 6:13 ` Eli Zaretskii 2024-05-17 11:03 ` Po Lu via Bug reports for GNU Emacs, the Swiss army knife of text editors 2024-05-17 15:14 ` Rodrigo Morales 2024-05-18 12:25 ` Po Lu via Bug reports for GNU Emacs, the Swiss army knife of text editors 2024-05-18 15:34 ` Eli Zaretskii 2024-05-19 0:15 ` Po Lu via Bug reports for GNU Emacs, the Swiss army knife of text editors 2024-05-19 6:05 ` Eli Zaretskii 2024-05-19 7:37 ` Po Lu via Bug reports for GNU Emacs, the Swiss army knife of text editors 2024-05-19 7:49 ` Eli Zaretskii 2024-05-19 11:13 ` Po Lu via Bug reports for GNU Emacs, the Swiss army knife of text editors 2024-05-19 11:42 ` Eli Zaretskii 2024-05-19 13:00 ` Po Lu via Bug reports for GNU Emacs, the Swiss army knife of text editors 2024-05-19 13:19 ` Eli Zaretskii 2024-05-20 13:03 ` Po Lu via Bug reports for GNU Emacs, the Swiss army knife of text editors
Code repositories for project(s) associated with this public inbox https://git.savannah.gnu.org/cgit/emacs.git This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).