Subject: 28.0.50; height display property causes text to render with incorrect spacing

From: Adam Edge <[email-masked]>
Date: Wed, 14 Jul 2021 01:27:22 +0300

Hello,

I have encountered this bug while using lsp-ui mode. When a text is
propertized with the display property `height', it is then displayed
with the incorrect spacing. To test it, I have used this code:

(require 'lsp-ui)
(let* ((text "Hello world")
      (propertized (progn (add-face-text-property 0 (length text)
'lsp-ui-sideline-code-action nil text)
                          text))
      (overlay (make-overlay 1 1)))
  (overlay-put overlay 'after-string (concat propertized
                                        (propertize propertized 'display
(lsp-ui-sideline--compute-height)))))

lsp-ui-sideline-code-action can be any face with a font with different
spacing. In my Emacs configuration, it is defined as:

(font-spec :family "Fira Code" :size 14 :weight 'regular :spacing 100)

When the two "Hello world"s are displayed next to each other, the one
which is propertized with the "height" property displays wider. In
lsp-ui's case, this causes text to be cut off by the right side of the
Emacs frame as it overflows (since the code actions are displayed as an
overlay on the right side of the frame).

I can share images of what I see if there is an image hosting website
you'd like me to share it on.

In GNU Emacs 28.0.50 (build 1, x86_64-pc-linux-gnu, GTK+ Version
3.24.29, cairo version 1.16.0)
 of 2021-06-13 built on localhost
Repository revision: dc471feee3bcac872cc52cdc73282955cd2d219d
Repository branch: master
Windowing system distributor 'The X.Org Foundation', version 11.0.12011000
System Description: Gentoo/Linux

Configured using:
 'configure --prefix=/usr --build=x86_64-pc-linux-gnu
 --host=x86_64-pc-linux-gnu --mandir=/usr/share/man
 --infodir=/usr/share/info --datadir=/usr/share --sysconfdir=/etc
 --localstatedir=/var/lib --disable-silent-rules
 --docdir=/usr/share/doc/emacs-28.0.9999
 --htmldir=/usr/share/doc/emacs-28.0.9999/html --libdir=/usr/lib64
 --program-suffix=-emacs-28-vcs --includedir=/usr/include/emacs-28-vcs
 --infodir=/usr/share/info/emacs-28-vcs --localstatedir=/var
 --enable-locallisppath=/etc/emacs:/usr/share/emacs/site-lisp
 --without-compress-install --without-hesiod --without-pop
 --with-file-notification=inotify --with-pdumper --enable-acl
 --with-dbus --without-modules --without-gameuser --with-libgmp
 --with-gpm --with-native-compilation --without-json --without-kerberos
 --without-kerberos5 --with-lcms2 --with-xml2 --without-mailutils
 --without-selinux --with-gnutls --without-libsystemd --with-threads
 --with-wide-int --with-zlib --with-sound=alsa --with-x --without-ns
 --without-gconf --without-gsettings --without-toolkit-scroll-bars
 --with-gif --with-jpeg --with-png --with-rsvg --with-tiff --with-xpm
 --without-imagemagick --with-xft --with-cairo --without-harfbuzz
 --without-libotf --without-m17n-flt --with-x-toolkit=gtk3
 --without-xwidgets --with-dumping=pdumper 'CFLAGS=-O2 -pipe
 -march=native -mtune=native' CPPFLAGS= 'LDFLAGS=-Wl,-O1
 -Wl,--as-needed''

Configured features:
ACL CAIRO DBUS FREETYPE GIF GLIB GMP GNUTLS GPM JPEG LCMS2 LIBXML2
NATIVE_COMP NOTIFY INOTIFY PDUMPER PNG RSVG SECCOMP SOUND THREADS TIFF
X11 XDBE XIM XPM GTK3 ZLIB

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

Major mode: RJSX

Minor modes in effect:
  evil-traces-mode: t
  global-anzu-mode: t
  anzu-mode: t
  lsp-diagnostics-mode: t
  lsp-modeline-workspace-status-mode: t
  lsp-modeline-diagnostics-mode: t
  lsp-modeline-code-actions-mode: t
  lsp-ui-mode: t
  lsp-ui-sideline-mode: t
  lsp-completion-mode: t
  git-gutter-mode: t
  tide-hl-identifier-mode: t
  tide-mode: t
  emmet-mode: t
  js2-refactor-mode: t
  npm-mode: t
  cursor-sensor-mode: t
  whitespace-mode: t
  flycheck-popup-tip-mode: t
  global-evil-surround-mode: t
  evil-surround-mode: t
  eros-mode: t
  rainbow-delimiters-mode: t
  display-fill-column-indicator-mode: t
  vi-tilde-fringe-mode: t
  highlight-numbers-mode: t
  display-line-numbers-mode: t
  hl-todo-mode: t
  highlight-indent-guides-mode: t
  recentf-mode: t
  save-place-mode: t
  global-so-long-mode: t
  global-git-commit-mode: t
  gcmh-mode: t
  global-hl-line-mode: t
  hl-line-mode: t
  winner-mode: t
  show-paren-mode: t
  ws-butler-global-mode: t
  ws-butler-mode: t
  global-undo-fu-session-mode: t
  undo-fu-session-mode: t
  undo-fu-mode: t
  which-key-mode: t
  savehist-mode: t
  better-jumper-mode: t
  better-jumper-local-mode: t
  global-company-mode: t
  company-mode: t
  evil-goggles-mode: t
  evil-escape-mode: t
  evil-snipe-override-mode: t
  evil-snipe-mode: t
  evil-snipe-override-local-mode: t
  evil-snipe-local-mode: t
  format-all-mode: t
  xterm-mouse-mode: t
  xclip-mode: t
  solaire-global-mode: t
  doom-modeline-mode: t
  projectile-mode: t
  lsp-managed-mode: t
  lsp-mode: t
  dtrt-indent-mode: t
  yas-global-mode: t
  yas-minor-mode: t
  ivy-rich-project-root-cache-mode: t
  ivy-rich-mode: t
  ivy-mode: t
  smartparens-global-mode: t
  smartparens-mode: t
  persp-mode: t
  global-flycheck-mode: t
  flycheck-mode: t
  +web-react-mode: t
  +javascript-npm-mode: t
  +lsp-optimization-mode: t
  shell-dirtrack-mode: t
  evil-mode: t
  evil-local-mode: t
  windmove-mode: t
  +popup-mode: t
  general-override-mode: t
  global-eldoc-mode: t
  eldoc-mode: t
  electric-indent-mode: t
  mouse-wheel-mode: t
  file-name-shadow-mode: t
  global-font-lock-mode: t
  font-lock-mode: t
  window-divider-mode: t
  auto-composition-mode: t
  auto-encryption-mode: t
  auto-compression-mode: t
  size-indication-mode: t
  column-number-mode: t
  line-number-mode: t
  transient-mark-mode: t

Load-path shadows:
/home/aedge/.emacs.d/.local/straight/build-28.0.50/use-package/use-package
hides /home/aedge/.emacs.d/.local/straight/repos/use-package/use-package
/home/aedge/.emacs.d/.local/straight/build-28.0.50/use-package/use-package-lint
hides
/home/aedge/.emacs.d/.local/straight/repos/use-package/use-package-lint
/home/aedge/.emacs.d/.local/straight/build-28.0.50/use-package/use-package-jump
hides
/home/aedge/.emacs.d/.local/straight/repos/use-package/use-package-jump
/home/aedge/.emacs.d/.local/straight/build-28.0.50/use-package/use-package-ensure
hides
/home/aedge/.emacs.d/.local/straight/repos/use-package/use-package-ensure
/home/aedge/.emacs.d/.local/straight/build-28.0.50/use-package/use-package-diminish
hides
/home/aedge/.emacs.d/.local/straight/repos/use-package/use-package-diminish
/home/aedge/.emacs.d/.local/straight/build-28.0.50/use-package/use-package-delight
hides
/home/aedge/.emacs.d/.local/straight/repos/use-package/use-package-delight
/home/aedge/.emacs.d/.local/straight/build-28.0.50/use-package/use-package-core
hides
/home/aedge/.emacs.d/.local/straight/repos/use-package/use-package-core
/home/aedge/.emacs.d/.local/straight/build-28.0.50/use-package/use-package-bind-key
hides
/home/aedge/.emacs.d/.local/straight/repos/use-package/use-package-bind-key
/home/aedge/.emacs.d/.local/straight/build-28.0.50/bind-key/bind-key
hides /home/aedge/.emacs.d/.local/straight/repos/use-package/bind-key
/home/aedge/.emacs.d/.local/straight/build-28.0.50/straight/straight
hides /home/aedge/.emacs.d/.local/straight/repos/straight.el/straight
/home/aedge/.emacs.d/.local/straight/build-28.0.50/straight/straight-x
hides /home/aedge/.emacs.d/.local/straight/repos/straight.el/straight-x
/home/aedge/.emacs.d/.local/straight/build-28.0.50/cmake-mode/cmake-mode
hides /usr/share/emacs/site-lisp/cmake-mode
/home/aedge/.emacs.d/.local/straight/build-28.0.50/transient/transient
hides /usr/share/emacs/28.0.50/lisp/transient
/home/aedge/.emacs.d/.local/straight/repos/straight.el/indent hides
/usr/share/emacs/28.0.50/lisp/indent
/home/aedge/.emacs.d/.local/straight/build-28.0.50/project/project hides
/usr/share/emacs/28.0.50/lisp/progmodes/project
/home/aedge/.emacs.d/.local/straight/build-28.0.50/xref/xref hides
/usr/share/emacs/28.0.50/lisp/progmodes/xref
/home/aedge/.emacs.d/.local/straight/build-28.0.50/org-mode/ob-css hides
/usr/share/emacs/28.0.50/lisp/org/ob-css
/home/aedge/.emacs.d/.local/straight/build-28.0.50/org-mode/ob-exp hides
/usr/share/emacs/28.0.50/lisp/org/ob-exp
/home/aedge/.emacs.d/.local/straight/build-28.0.50/org-mode/ob-python
hides /usr/share/emacs/28.0.50/lisp/org/ob-python
/home/aedge/.emacs.d/.local/straight/build-28.0.50/org-mode/ox-icalendar
hides /usr/share/emacs/28.0.50/lisp/org/ox-icalendar
/home/aedge/.emacs.d/.local/straight/build-28.0.50/org-mode/ob-tangle
hides /usr/share/emacs/28.0.50/lisp/org/ob-tangle
/home/aedge/.emacs.d/.local/straight/build-28.0.50/org-mode/org-lint
hides /usr/share/emacs/28.0.50/lisp/org/org-lint
/home/aedge/.emacs.d/.local/straight/build-28.0.50/org-mode/org-attach-git
hides /usr/share/emacs/28.0.50/lisp/org/org-attach-git
/home/aedge/.emacs.d/.local/straight/build-28.0.50/org-mode/ob-io hides
/usr/share/emacs/28.0.50/lisp/org/ob-io
/home/aedge/.emacs.d/.local/straight/build-28.0.50/org-mode/org-ctags
hides /usr/share/emacs/28.0.50/lisp/org/org-ctags
/home/aedge/.emacs.d/.local/straight/build-28.0.50/org-mode/org-mouse
hides /usr/share/emacs/28.0.50/lisp/org/org-mouse
/home/aedge/.emacs.d/.local/straight/build-28.0.50/org-mode/ol-gnus
hides /usr/share/emacs/28.0.50/lisp/org/ol-gnus
/home/aedge/.emacs.d/.local/straight/build-28.0.50/org-mode/ob-emacs-lisp
hides /usr/share/emacs/28.0.50/lisp/org/ob-emacs-lisp
/home/aedge/.emacs.d/.local/straight/build-28.0.50/org-mode/ob-R hides
/usr/share/emacs/28.0.50/lisp/org/ob-R
/home/aedge/.emacs.d/.local/straight/build-28.0.50/org-mode/ob-haskell
hides /usr/share/emacs/28.0.50/lisp/org/ob-haskell
/home/aedge/.emacs.d/.local/straight/build-28.0.50/org-mode/ob-picolisp
hides /usr/share/emacs/28.0.50/lisp/org/ob-picolisp
/home/aedge/.emacs.d/.local/straight/build-28.0.50/org-mode/org-plot
hides /usr/share/emacs/28.0.50/lisp/org/org-plot
/home/aedge/.emacs.d/.local/straight/build-28.0.50/org-mode/ol-w3m hides
/usr/share/emacs/28.0.50/lisp/org/ol-w3m
/home/aedge/.emacs.d/.local/straight/build-28.0.50/org-mode/ob-matlab
hides /usr/share/emacs/28.0.50/lisp/org/ob-matlab
/home/aedge/.emacs.d/.local/straight/build-28.0.50/org-mode/ob-lilypond
hides /usr/share/emacs/28.0.50/lisp/org/ob-lilypond
/home/aedge/.emacs.d/.local/straight/build-28.0.50/org-mode/org-element
hides /usr/share/emacs/28.0.50/lisp/org/org-element
/home/aedge/.emacs.d/.local/straight/build-28.0.50/org-mode/ob-clojure
hides /usr/share/emacs/28.0.50/lisp/org/ob-clojure
/home/aedge/.emacs.d/.local/straight/build-28.0.50/org-mode/ob-stan
hides /usr/share/emacs/28.0.50/lisp/org/ob-stan
/home/aedge/.emacs.d/.local/straight/build-28.0.50/org-mode/ob-gnuplot
hides /usr/share/emacs/28.0.50/lisp/org/ob-gnuplot
/home/aedge/.emacs.d/.local/straight/build-28.0.50/org-mode/ob-calc
hides /usr/share/emacs/28.0.50/lisp/org/ob-calc
/home/aedge/.emacs.d/.local/straight/build-28.0.50/org-mode/org-crypt
hides /usr/share/emacs/28.0.50/lisp/org/org-crypt
/home/aedge/.emacs.d/.local/straight/build-28.0.50/org-mode/ol-eww hides
/usr/share/emacs/28.0.50/lisp/org/ol-eww
/home/aedge/.emacs.d/.local/straight/build-28.0.50/org-mode/ox-md hides
/usr/share/emacs/28.0.50/lisp/org/ox-md
/home/aedge/.emacs.d/.local/straight/build-28.0.50/org-mode/ob-shell
hides /usr/share/emacs/28.0.50/lisp/org/ob-shell
/home/aedge/.emacs.d/.local/straight/build-28.0.50/org-mode/org-feed
hides /usr/share/emacs/28.0.50/lisp/org/org-feed
/home/aedge/.emacs.d/.local/straight/build-28.0.50/org-mode/ob-sql hides
/usr/share/emacs/28.0.50/lisp/org/ob-sql
/home/aedge/.emacs.d/.local/straight/build-28.0.50/org-mode/ox-odt hides
/usr/share/emacs/28.0.50/lisp/org/ox-odt
/home/aedge/.emacs.d/.local/straight/build-28.0.50/org-mode/ob-makefile
hides /usr/share/emacs/28.0.50/lisp/org/ob-makefile
/home/aedge/.emacs.d/.local/straight/build-28.0.50/org-mode/ob-abc hides
/usr/share/emacs/28.0.50/lisp/org/ob-abc
/home/aedge/.emacs.d/.local/straight/build-28.0.50/org-mode/ob-plantuml
hides /usr/share/emacs/28.0.50/lisp/org/ob-plantuml
/home/aedge/.emacs.d/.local/straight/build-28.0.50/org-mode/ox-org hides
/usr/share/emacs/28.0.50/lisp/org/ox-org
/home/aedge/.emacs.d/.local/straight/build-28.0.50/org-mode/org-pcomplete
hides /usr/share/emacs/28.0.50/lisp/org/org-pcomplete
/home/aedge/.emacs.d/.local/straight/build-28.0.50/org-mode/ox-publish
hides /usr/share/emacs/28.0.50/lisp/org/ox-publish
/home/aedge/.emacs.d/.local/straight/build-28.0.50/org-mode/ob-groovy
hides /usr/share/emacs/28.0.50/lisp/org/ob-groovy
/home/aedge/.emacs.d/.local/straight/build-28.0.50/org-mode/ox-html
hides /usr/share/emacs/28.0.50/lisp/org/ox-html
/home/aedge/.emacs.d/.local/straight/build-28.0.50/org-mode/org-tempo
hides /usr/share/emacs/28.0.50/lisp/org/org-tempo
/home/aedge/.emacs.d/.local/straight/build-28.0.50/org-mode/ox-beamer
hides /usr/share/emacs/28.0.50/lisp/org/ox-beamer
/home/aedge/.emacs.d/.local/straight/build-28.0.50/org-mode/ob-table
hides /usr/share/emacs/28.0.50/lisp/org/ob-table
/home/aedge/.emacs.d/.local/straight/build-28.0.50/org-mode/ob-java
hides /usr/share/emacs/28.0.50/lisp/org/ob-java
/home/aedge/.emacs.d/.local/straight/build-28.0.50/org-mode/org-attach
hides /usr/share/emacs/28.0.50/lisp/org/org-attach
/home/aedge/.emacs.d/.local/straight/build-28.0.50/org-mode/ob-J hides
/usr/share/emacs/28.0.50/lisp/org/ob-J
/home/aedge/.emacs.d/.local/straight/build-28.0.50/org-mode/org-macs
hides /usr/share/emacs/28.0.50/lisp/org/org-macs
/home/aedge/.emacs.d/.local/straight/build-28.0.50/org-mode/ol-info
hides /usr/share/emacs/28.0.50/lisp/org/ol-info
/home/aedge/.emacs.d/.local/straight/build-28.0.50/org-mode/org-src
hides /usr/share/emacs/28.0.50/lisp/org/org-src
/home/aedge/.emacs.d/.local/straight/build-28.0.50/org-mode/ob-lisp
hides /usr/share/emacs/28.0.50/lisp/org/ob-lisp
/home/aedge/.emacs.d/.local/straight/build-28.0.50/org-mode/ob-asymptote
hides /usr/share/emacs/28.0.50/lisp/org/ob-asymptote
/home/aedge/.emacs.d/.local/straight/build-28.0.50/org-mode/org-list
hides /usr/share/emacs/28.0.50/lisp/org/org-list
/home/aedge/.emacs.d/.local/straight/build-28.0.50/org-mode/ox-texinfo
hides /usr/share/emacs/28.0.50/lisp/org/ox-texinfo
/home/aedge/.emacs.d/.local/straight/build-28.0.50/org-mode/org-table
hides /usr/share/emacs/28.0.50/lisp/org/org-table
/home/aedge/.emacs.d/.local/straight/build-28.0.50/org-mode/ol-irc hides
/usr/share/emacs/28.0.50/lisp/org/ol-irc
/home/aedge/.emacs.d/.local/straight/build-28.0.50/org-mode/org-refile
hides /usr/share/emacs/28.0.50/lisp/org/org-refile
/home/aedge/.emacs.d/.local/straight/build-28.0.50/org-mode/ol-eshell
hides /usr/share/emacs/28.0.50/lisp/org/ol-eshell
/home/aedge/.emacs.d/.local/straight/build-28.0.50/org-mode/org-capture
hides /usr/share/emacs/28.0.50/lisp/org/org-capture
/home/aedge/.emacs.d/.local/straight/build-28.0.50/org-mode/org-colview
hides /usr/share/emacs/28.0.50/lisp/org/org-colview
/home/aedge/.emacs.d/.local/straight/build-28.0.50/org-mode/ob-eval
hides /usr/share/emacs/28.0.50/lisp/org/ob-eval
/home/aedge/.emacs.d/.local/straight/build-28.0.50/org-mode/ob-octave
hides /usr/share/emacs/28.0.50/lisp/org/ob-octave
/home/aedge/.emacs.d/.local/straight/build-28.0.50/org-mode/ob-eshell
hides /usr/share/emacs/28.0.50/lisp/org/ob-eshell
/home/aedge/.emacs.d/.local/straight/build-28.0.50/org-mode/ob-ditaa
hides /usr/share/emacs/28.0.50/lisp/org/ob-ditaa
/home/aedge/.emacs.d/.local/straight/build-28.0.50/org-mode/ox-latex
hides /usr/share/emacs/28.0.50/lisp/org/ox-latex
/home/aedge/.emacs.d/.local/straight/build-28.0.50/org-mode/ob hides
/usr/share/emacs/28.0.50/lisp/org/ob
/home/aedge/.emacs.d/.local/straight/build-28.0.50/org-mode/org-archive
hides /usr/share/emacs/28.0.50/lisp/org/org-archive
/home/aedge/.emacs.d/.local/straight/build-28.0.50/org-mode/org-protocol
hides /usr/share/emacs/28.0.50/lisp/org/org-protocol
/home/aedge/.emacs.d/.local/straight/build-28.0.50/org-mode/ol hides
/usr/share/emacs/28.0.50/lisp/org/ol
/home/aedge/.emacs.d/.local/straight/build-28.0.50/org-mode/org-compat
hides /usr/share/emacs/28.0.50/lisp/org/org-compat
/home/aedge/.emacs.d/.local/straight/build-28.0.50/org-mode/ob-js hides
/usr/share/emacs/28.0.50/lisp/org/ob-js
/home/aedge/.emacs.d/.local/straight/build-28.0.50/org-mode/org-clock
hides /usr/share/emacs/28.0.50/lisp/org/org-clock
/home/aedge/.emacs.d/.local/straight/build-28.0.50/org-mode/org-duration
hides /usr/share/emacs/28.0.50/lisp/org/org-duration
/home/aedge/.emacs.d/.local/straight/build-28.0.50/org-mode/org-macro
hides /usr/share/emacs/28.0.50/lisp/org/org-macro
/home/aedge/.emacs.d/.local/straight/build-28.0.50/org-mode/ob-sass
hides /usr/share/emacs/28.0.50/lisp/org/ob-sass
/home/aedge/.emacs.d/.local/straight/build-28.0.50/org-mode/org-timer
hides /usr/share/emacs/28.0.50/lisp/org/org-timer
/home/aedge/.emacs.d/.local/straight/build-28.0.50/org-mode/org-agenda
hides /usr/share/emacs/28.0.50/lisp/org/org-agenda
/home/aedge/.emacs.d/.local/straight/build-28.0.50/org-mode/ob-screen
hides /usr/share/emacs/28.0.50/lisp/org/ob-screen
/home/aedge/.emacs.d/.local/straight/build-28.0.50/org-mode/ob-forth
hides /usr/share/emacs/28.0.50/lisp/org/ob-forth
/home/aedge/.emacs.d/.local/straight/build-28.0.50/org-mode/org-habit
hides /usr/share/emacs/28.0.50/lisp/org/org-habit
/home/aedge/.emacs.d/.local/straight/build-28.0.50/org-mode/ob-perl
hides /usr/share/emacs/28.0.50/lisp/org/ob-perl
/home/aedge/.emacs.d/.local/straight/build-28.0.50/org-mode/org-footnote
hides /usr/share/emacs/28.0.50/lisp/org/org-footnote
/home/aedge/.emacs.d/.local/straight/build-28.0.50/org-mode/ob-ebnf
hides /usr/share/emacs/28.0.50/lisp/org/ob-ebnf
/home/aedge/.emacs.d/.local/straight/build-28.0.50/org-mode/org-inlinetask
hides /usr/share/emacs/28.0.50/lisp/org/org-inlinetask
/home/aedge/.emacs.d/.local/straight/build-28.0.50/org-mode/org-loaddefs
hides /usr/share/emacs/28.0.50/lisp/org/org-loaddefs
/home/aedge/.emacs.d/.local/straight/build-28.0.50/org-mode/ob-vala
hides /usr/share/emacs/28.0.50/lisp/org/ob-vala
/home/aedge/.emacs.d/.local/straight/build-28.0.50/org-mode/ob-lob hides
/usr/share/emacs/28.0.50/lisp/org/ob-lob
/home/aedge/.emacs.d/.local/straight/build-28.0.50/org-mode/ob-sqlite
hides /usr/share/emacs/28.0.50/lisp/org/ob-sqlite
/home/aedge/.emacs.d/.local/straight/build-28.0.50/org-mode/ob-awk hides
/usr/share/emacs/28.0.50/lisp/org/ob-awk
/home/aedge/.emacs.d/.local/straight/build-28.0.50/org-mode/org-mobile
hides /usr/share/emacs/28.0.50/lisp/org/org-mobile
/home/aedge/.emacs.d/.local/straight/build-28.0.50/org-mode/ol-rmail
hides /usr/share/emacs/28.0.50/lisp/org/ol-rmail
/home/aedge/.emacs.d/.local/straight/build-28.0.50/org-mode/ob-comint
hides /usr/share/emacs/28.0.50/lisp/org/ob-comint
/home/aedge/.emacs.d/.local/straight/build-28.0.50/org-mode/org-goto
hides /usr/share/emacs/28.0.50/lisp/org/org-goto
/home/aedge/.emacs.d/.local/straight/build-28.0.50/org-mode/ob-mscgen
hides /usr/share/emacs/28.0.50/lisp/org/ob-mscgen
/home/aedge/.emacs.d/.local/straight/build-28.0.50/org-mode/org-id hides
/usr/share/emacs/28.0.50/lisp/org/org-id
/home/aedge/.emacs.d/.local/straight/build-28.0.50/org-mode/org hides
/usr/share/emacs/28.0.50/lisp/org/org
/home/aedge/.emacs.d/.local/straight/build-28.0.50/org-mode/ob-core
hides /usr/share/emacs/28.0.50/lisp/org/ob-core
/home/aedge/.emacs.d/.local/straight/build-28.0.50/org-mode/ob-lua hides
/usr/share/emacs/28.0.50/lisp/org/ob-lua
/home/aedge/.emacs.d/.local/straight/build-28.0.50/org-mode/ob-ruby
hides /usr/share/emacs/28.0.50/lisp/org/ob-ruby
/home/aedge/.emacs.d/.local/straight/build-28.0.50/org-mode/ob-maxima
hides /usr/share/emacs/28.0.50/lisp/org/ob-maxima
/home/aedge/.emacs.d/.local/straight/build-28.0.50/org-mode/ob-latex
hides /usr/share/emacs/28.0.50/lisp/org/ob-latex
/home/aedge/.emacs.d/.local/straight/build-28.0.50/org-mode/ob-dot hides
/usr/share/emacs/28.0.50/lisp/org/ob-dot
/home/aedge/.emacs.d/.local/straight/build-28.0.50/org-mode/ol-docview
hides /usr/share/emacs/28.0.50/lisp/org/ol-docview
/home/aedge/.emacs.d/.local/straight/build-28.0.50/org-mode/ob-processing
hides /usr/share/emacs/28.0.50/lisp/org/ob-processing
/home/aedge/.emacs.d/.local/straight/build-28.0.50/org-mode/ol-bbdb
hides /usr/share/emacs/28.0.50/lisp/org/ol-bbdb
/home/aedge/.emacs.d/.local/straight/build-28.0.50/org-mode/ob-ledger
hides /usr/share/emacs/28.0.50/lisp/org/ob-ledger
/home/aedge/.emacs.d/.local/straight/build-28.0.50/org-mode/ob-scheme
hides /usr/share/emacs/28.0.50/lisp/org/ob-scheme
/home/aedge/.emacs.d/.local/straight/build-28.0.50/org-mode/org-indent
hides /usr/share/emacs/28.0.50/lisp/org/org-indent
/home/aedge/.emacs.d/.local/straight/build-28.0.50/org-mode/org-num
hides /usr/share/emacs/28.0.50/lisp/org/org-num
/home/aedge/.emacs.d/.local/straight/build-28.0.50/org-mode/ob-fortran
hides /usr/share/emacs/28.0.50/lisp/org/ob-fortran
/home/aedge/.emacs.d/.local/straight/build-28.0.50/org-mode/ob-sed hides
/usr/share/emacs/28.0.50/lisp/org/ob-sed
/home/aedge/.emacs.d/.local/straight/build-28.0.50/org-mode/org-faces
hides /usr/share/emacs/28.0.50/lisp/org/org-faces
/home/aedge/.emacs.d/.local/straight/build-28.0.50/org-mode/ob-hledger
hides /usr/share/emacs/28.0.50/lisp/org/ob-hledger
/home/aedge/.emacs.d/.local/straight/build-28.0.50/org-mode/ol-mhe hides
/usr/share/emacs/28.0.50/lisp/org/ol-mhe
/home/aedge/.emacs.d/.local/straight/build-28.0.50/org-mode/org-keys
hides /usr/share/emacs/28.0.50/lisp/org/org-keys
/home/aedge/.emacs.d/.local/straight/build-28.0.50/org-mode/ox-ascii
hides /usr/share/emacs/28.0.50/lisp/org/ox-ascii
/home/aedge/.emacs.d/.local/straight/build-28.0.50/org-mode/ob-C hides
/usr/share/emacs/28.0.50/lisp/org/ob-C
/home/aedge/.emacs.d/.local/straight/build-28.0.50/org-mode/ox-man hides
/usr/share/emacs/28.0.50/lisp/org/ox-man
/home/aedge/.emacs.d/.local/straight/build-28.0.50/org-mode/ob-org hides
/usr/share/emacs/28.0.50/lisp/org/ob-org
/home/aedge/.emacs.d/.local/straight/build-28.0.50/org-mode/ox hides
/usr/share/emacs/28.0.50/lisp/org/ox
/home/aedge/.emacs.d/.local/straight/build-28.0.50/org-mode/ob-ref hides
/usr/share/emacs/28.0.50/lisp/org/ob-ref
/home/aedge/.emacs.d/.local/straight/build-28.0.50/org-mode/ob-coq hides
/usr/share/emacs/28.0.50/lisp/org/ob-coq
/home/aedge/.emacs.d/.local/straight/build-28.0.50/org-mode/ob-shen
hides /usr/share/emacs/28.0.50/lisp/org/ob-shen
/home/aedge/.emacs.d/.local/straight/build-28.0.50/org-mode/ol-bibtex
hides /usr/share/emacs/28.0.50/lisp/org/ol-bibtex
/home/aedge/.emacs.d/.local/straight/build-28.0.50/org-mode/org-entities
hides /usr/share/emacs/28.0.50/lisp/org/org-entities
/home/aedge/.emacs.d/.local/straight/build-28.0.50/org-mode/org-version
hides /usr/share/emacs/28.0.50/lisp/org/org-version
/home/aedge/.emacs.d/.local/straight/build-28.0.50/org-mode/org-datetree
hides /usr/share/emacs/28.0.50/lisp/org/org-datetree
/home/aedge/.emacs.d/.local/straight/build-28.0.50/org-mode/org-install
hides /usr/share/emacs/28.0.50/lisp/org/org-install
/home/aedge/.emacs.d/.local/straight/build-28.0.50/org-mode/ob-ocaml
hides /usr/share/emacs/28.0.50/lisp/org/ob-ocaml

Features:
(shadow sort adaptive-wrap mail-extr emacsbug sendmail restart-emacs
desktop frameset ace-window overseer pkg-info lisp-mnt epl
semantic/symref/grep semantic/symref semantic/util-modes semantic/util
semantic semantic/tag semantic/lex semantic/fw mode-local cedet vc-hg
vc-svn nginx-mode-autoloads yaml-mode-autoloads smalltalk-mode-autoloads
meson-mode-autoloads link-hint-autoloads drag-stuff-autoloads
emacs-everywhere-autoloads zig-mode-autoloads counsel-css-autoloads
sws-mode-autoloads stylus-mode-autoloads sass-mode-autoloads
company-web-autoloads web-mode-autoloads slim-mode-autoloads
pug-mode-autoloads haml-mode-autoloads emmet-mode-autoloads
company-shell-autoloads inflections-autoloads projectile-rails-autoloads
minitest-autoloads rspec-mode-autoloads rake-autoloads bundler-autoloads
robe-autoloads rubocop-autoloads company-inf-ruby-autoloads
inf-ruby-autoloads yard-mode-autoloads sphinx-mode-autoloads
company-restclient-autoloads restclient-autoloads qt-pro-mode-autoloads
qml-mode-autoloads py-isort-autoloads pyimport-autoloads
python-pytest-autoloads nose-autoloads pyvenv-autoloads pipenv-autoloads
company-anaconda-autoloads anaconda-mode-autoloads
lsp-python-ms-autoloads pip-requirements-autoloads async-autoloads
php-cs-fixer-autoloads company-phpactor-autoloads phpactor-autoloads
phpunit-autoloads php-refactor-mode-autoloads php-mode-autoloads
php-extras-autoloads php-boris-autoloads ox-rst-autoloads
ob-restclient-autoloads ob-go-autoloads ob-async-autoloads
orgit-forge-autoloads orgit-autoloads org-pdftools-autoloads
evil-org-autoloads org-cliplink-autoloads toc-org-autoloads
ox-clip-autoloads org-yt-autoloads htmlize-autoloads avy-autoloads
org-mode-autoloads evil-markdown-autoloads edit-indirect-autoloads
markdown-toc-autoloads markdown-mode-autoloads company-math-autoloads
company-reftex-autoloads company-auctex-autoloads evil-tex-autoloads
latex-preview-pane-autoloads auctex-autoloads xref-js2-autoloads
tide-autoloads skewer-mode-autoloads nodejs-repl-autoloads
add-node-modules-path-autoloads npm-mode-autoloads
js2-refactor-autoloads typescript-mode-autoloads rjsx-mode-autoloads
js2-mode-autoloads coffee-mode-autoloads meghanada-autoloads
groovy-mode-autoloads android-mode-autoloads counsel-jq-autoloads
json-snatcher-autoloads json-mode-autoloads idris-mode-autoloads
attrap-autoloads dante-autoloads haskell-mode-autoloads
flycheck-golangci-lint-autoloads company-go-autoloads
go-gen-test-autoloads go-tag-autoloads gorepl-mode-autoloads
go-mode-autoloads go-guru-autoloads go-eldoc-autoloads
buttercup-autoloads flycheck-cask-autoloads elisp-demos-autoloads
elisp-def-autoloads overseer-autoloads macrostep-autoloads
highlight-quoted-autoloads hover-autoloads flutter-autoloads
dart-mode-autoloads csv-mode-autoloads sly-repl-ansi-color-autoloads
sly-macrostep-autoloads sly-autoloads ccls-autoloads
company-glsl-autoloads glsl-mode-autoloads opencl-mode-autoloads
modern-cpp-font-lock-autoloads disaster-autoloads
demangle-mode-autoloads cuda-mode-autoloads cmake-mode-autoloads
evil-terminal-cursor-changer-autoloads xclip-autoloads
kurecolor-autoloads rainbow-mode-autoloads saveplace-pdf-view-autoloads
pdf-tools-autoloads github-review-autoloads magit-todos-autoloads
magit-gitflow-autoloads forge-autoloads lsp-ivy-autoloads
lsp-ui-autoloads lsp-mode-autoloads request-autoloads ivy-xref-autoloads
dumb-jump-autoloads eros-autoloads quickrun-autoloads
dockerfile-mode-autoloads docker-tramp-autoloads docker-autoloads
realgud-autoloads flycheck-popup-tip-autoloads flycheck-autoloads
gitignore-mode-autoloads gitconfig-mode-autoloads
git-timemachine-autoloads git-commit-autoloads
browse-at-remote-autoloads undo-fu-session-autoloads undo-fu-autoloads
fd-dired-autoloads dired-rsync-autoloads diff-hl-autoloads
dired-git-info-autoloads diredfl-autoloads adaptive-wrap-autoloads
doom-snippets-autoloads auto-yasnippet-autoloads format-all-autoloads
evil-vimish-fold-autoloads vimish-fold-autoloads yasnippet-autoloads
evil-collection-autoloads evil-quick-diff-autoloads exato-autoloads
evil-visualstar-autoloads evil-traces-autoloads
evil-textobj-anyblock-autoloads evil-surround-autoloads
evil-snipe-autoloads evil-numbers-autoloads
evil-nerd-commenter-autoloads evil-lion-autoloads
evil-indent-plus-autoloads evil-exchange-autoloads evil-escape-autoloads
evil-embrace-autoloads evil-easymotion-autoloads evil-args-autoloads
evil-autoloads persp-mode-autoloads ace-window-autoloads
vi-tilde-fringe-autoloads git-gutter-fringe-autoloads
unicode-fonts-autoloads treemacs-persp-autoloads
treemacs-magit-autoloads treemacs-projectile-autoloads
treemacs-evil-autoloads treemacs-autoloads evil-goggles-autoloads
nav-flash-autoloads evil-anzu-autoloads anzu-autoloads
doom-modeline-autoloads minimap-autoloads
highlight-indent-guides-autoloads hl-todo-autoloads
solaire-mode-autoloads doom-themes-autoloads wgrep-autoloads
ivy-rich-autoloads counsel-projectile-autoloads amx-autoloads
counsel-autoloads ivy-avy-autoloads ivy-hydra-autoloads ivy-autoloads
swiper-autoloads company-dict-autoloads company-autoloads
which-key-autoloads general-autoloads project-autoloads
projectile-autoloads ws-butler-autoloads smartparens-autoloads
pcre2el-autoloads helpful-autoloads dtrt-indent-autoloads
better-jumper-autoloads restart-emacs-autoloads
rainbow-delimiters-autoloads highlight-numbers-autoloads
hide-mode-line-autoloads all-the-icons-autoloads use-package-autoloads
straight-autoloads explain-pause-mode-autoloads gcmh-autoloads
auto-minor-mode-autoloads finder-inf straight counsel-projectile ffap
docker-tramp tramp-cache tramp tramp-loaddefs trampver tramp-integration
files-x tramp-compat parse-time ls-lisp two-column elisp-def ert
evil-collection-debug debug tabify evil-traces evil-ex cus-start
evil-anzu anzu org-indent ol-bibtex bibtex iso8601 elisp-demos
evil-collection-indent hide-mode-line evil-collection-helpful helpful
trace evil-collection-edebug edebug backtrace lisp-mode info-look
evil-collection-info info help-fns radix-tree evil-collection-help help
evil-collection-elisp-refs elisp-refs mule-util org-capture org-agenda
org-refile evil-collection-magit-todos magit-todos pcre2el rxt
re-builder async the-org-mode-expansions orgit smartparens-org org-yt
org-element avl-tree org ob ob-tangle ob-ref ob-lob ob-table ob-exp
org-macro org-footnote org-src ob-comint org-pcomplete org-list
org-faces org-entities org-version ob-emacs-lisp ob-core ob-eval
org-table ol org-keys org-compat org-macs org-loaddefs
evil-collection-calendar cal-menu calendar cal-loaddefs github-review
ghub-graphql treepy gsexp ghub url-http url-gw url-auth deferred a
evil-collection-magit magit-autoloads magit-submodule magit-obsolete
magit-popup magit-blame magit-stash magit-reflog magit-bisect magit-push
magit-pull magit-fetch magit-clone magit-remote magit-commit
magit-sequence magit-notes magit-worktree magit-tag magit-merge
magit-branch magit-reset magit-files magit-refs magit-status magit
magit-repos magit-apply magit-wip magit-log which-func magit-diff
smerge-mode diff magit-core magit-autorevert magit-margin
magit-transient magit-process magit-mode lsp-diagnostics
company-yasnippet lsp-modeline lsp-ui lsp-ui-flycheck lsp-ui-doc
goto-addr evil-collection-lsp-ui-imenu lsp-ui-imenu lsp-ui-peek
lsp-ui-sideline lsp-ui-util evil-collection-view view lsp-zig lsp-steep
lsp-svelte lsp-sqls lsp-yaml lsp-xml lsp-vimscript lsp-vhdl lsp-vetur
lsp-html lsp-verilog lsp-vala lsp-terraform lsp-tex lsp-sorbet
lsp-solargraph lsp-rust lsp-rf lsp-r lsp-purescript lsp-pylsp lsp-pyls
lsp-pwsh lsp-php lsp-perl lsp-ocaml lsp-nix lsp-nim lsp-markdown lsp-lua
lsp-kotlin lsp-json lsp-javascript lsp-haxe lsp-groovy lsp-hack lsp-go
lsp-completion lsp-gdscript lsp-fsharp lsp-fortran lsp-eslint lsp-erlang
lsp-elixir lsp-elm lsp-dockerfile lsp-dhall lsp-d lsp-css lsp-csharp
gnutls lsp-crystal lsp-cmake lsp-clojure lsp-clangd lsp-bash lsp-angular
lsp-ada lsp-actionscript amx git-gutter-fringe fringe-helper git-gutter
evil-collection-vc-git vc-git evil-collection-diff-mode diff-mode
evil-collection-tide tide tide-lv evil-collection-typescript-mode
typescript-mode emmet-mode js2-refactor js2r-paredit js2r-conveniences
js2r-conditionals js2r-wrapping js2r-functions js2r-vars
mc-hide-unmatched-lines-mode mc-mark-more mc-cycle-cursors
multiple-cursors-core js2r-iife js2r-formatting js2r-helpers
add-node-modules-path npm-mode cursor-sensor xref-js2 vc vc-dispatcher
evil-collection-rjsx-mode rjsx-mode html-mode-expansions
smartparens-html sgml-mode facemenu dom js2-mode-expansions
evil-collection-js2-mode js2-mode etags fileloop generator
js-mode-expansions smartparens-javascript js nav-flash jka-compr
auto-minor-mode disp-table whitespace flycheck-popup-tip
evil-collection-popup popup flycheck-cask core-packages package
browse-url url url-proxy url-privacy url-expand url-methods url-history
url-cookie url-domsuf mailcap url-handlers evil-embrace evil-surround
embrace expand-region text-mode-expansions cc-mode-expansions
er-basic-expansions expand-region-core expand-region-custom eros
highlight-quoted rainbow-delimiters display-fill-column-indicator
vi-tilde-fringe highlight-numbers parent-mode display-line-numbers
hl-todo highlight-indent-guides recentf saveplace so-long git-commit
with-editor transient format-spec evil-collection-log-edit log-edit
message rfc822 mml mml-sec evil-collection-epa epa gnus-util rmail
rmail-loaddefs time-date mm-decode mm-bodies mm-encode mail-parse
rfc2231 rfc2047 rfc2045 mm-util ietf-drums mail-prsvr mailabbrev
mail-utils gmm-utils mailheader pcvs-util add-log magit-git
magit-section magit-utils crm gcmh hl-line winner paren ws-butler
undo-fu-session undo-fu evil-collection-which-key which-key savehist
better-jumper company-capf php-extras company evil-goggles pulse
evil-easymotion evil-escape evil-snipe server autorevert persistent-soft
list-utils pcache eieio-base font-utils unicode-fonts format-all
xt-mouse xclip evil-terminal-cursor-changer doom-themes-ext-treemacs
doom-themes-ext-org solaire-mode face-remap doom-one-theme doom-themes
doom-themes-base doom-modeline doom-modeline-segments doom-modeline-env
doom-modeline-core shrink-path all-the-icons all-the-icons-faces
data-material data-weathericons data-octicons data-fileicons
data-faicons data-alltheicons lsp-python-ms projectile
evil-collection-grep grep ibuf-ext evil-collection-ibuffer ibuffer
ibuffer-loaddefs ccls ccls-member-hierarchy ccls-inheritance-hierarchy
ccls-call-hierarchy ccls-tree ccls-code-lens ccls-semantic-highlight
ccls-common smartparens-c cc-mode cc-fonts cc-guess cc-menus cc-cmds
cc-styles cc-align cc-engine cc-vars cc-defs lsp-mode lsp-protocol
doom-snippets doom-snippets-lib yasnippet dtrt-indent
evil-collection-elisp-mode elisp-mode ivy-xref evil-collection-ivy
ivy-avy avy ivy-rich counsel xdg evil-collection-dired dired
dired-loaddefs swiper ivy delsel ivy-faces ivy-overlay colir
evil-collection-xref xref project url-util tree-widget spinner
network-stream puny nsm rmc smartparens-config smartparens-markdown
smartparens-text smartparens markdown-mode edit-indirect color url-parse
auth-source eieio password-cache url-vars noutline outline lv inline
evil-collection-imenu imenu ht filenotify f s ewoc epg epg-config
evil-collection-compile compile text-property-search zig-mode drag-stuff
persp-mode evil-collection-flycheck evil-collection-custom cus-edit
cus-load wid-edit evil-collection-comint evil-collection annalist
flycheck json map find-func help-mode dash let-alist evil
evil-integration evil-maps evil-commands reveal flyspell ispell
evil-jumps evil-command-window evil-types evil-search shell pcomplete
comint ansi-color evil-macros evil-repeat evil-states evil-core advice
evil-common windmove calc calc-loaddefs calc-macs thingatpt rect
evil-digraphs evil-vars ring derived edmacro kmacro core-editor
core-projects core-ui easy-mmode comp comp-cstr warnings core-keybinds
pp general cl-extra seq byte-opt cl-seq use-package-core bytecomp
byte-compile cconv core-modules eieio-core eieio-loaddefs tex-site rx
realgud-recursive-autoloads cl site-gentoo core core-lib pcase cl-macs
gv cl-loaddefs cl-lib subr-x iso-transl tooltip eldoc electric uniquify
ediff-hook vc-hooks lisp-float-type 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 prog-mode register page
tab-bar menu-bar rfn-eshadow isearch easymenu timer select scroll-bar
mouse jit-lock font-lock syntax font-core term/tty-colors frame
minibuffer cl-generic cham georgian utf-8-lang misc-lang vietnamese
tibetan thai tai-viet lao korean japanese eucjp-ms cp51932 hebrew greek
romanian slovak czech european ethiopic indian cyrillic chinese
composite charscript charprop case-table epa-hook jka-cmpr-hook simple
abbrev obarray cl-preloaded nadvice button loaddefs faces cus-face
macroexp files window text-properties overlay sha1 md5 base64 format env
code-pages mule custom widget hashtable-print-readable backquote threads
dbusbind inotify lcms2 dynamic-setting font-render-setting cairo
move-toolbar gtk x-toolkit x multi-tty make-network-process
native-compile emacs)

Memory information:
((conses 16 1551355 791213)
 (symbols 48 72105 100)
 (strings 32 313573 102912)
 (string-bytes 1 12252803)
 (vectors 16 144162)
 (vector-slots 8 4175068 230649)
 (floats 8 1332 2791)
 (intervals 56 17045 4923)
 (buffers 992 46))