Subject: 30.0.50; Project.el finds incorrect project roots in git worktrees

From: Arthur Miller <[email-masked]>
Date: Sun, 26 Feb 2023 17:23:36 +0100

What actions trigger the bug:

Two different, unrelated repositories with emacs source code tree. My tree(s)
looks like this:

~/repos/emsrc/emacs/
~/repos/enacs-tests/emacs/

Where in both the last "emacs/" is the Emacs source tree from main git
repository.

~/repos/emsrc/emacs/ is the one I use for my "everyday" Emacs. I build Emacs now
and then once in a week or few weeks with a script, and I make each build in its
own our-of-source worktree. The other one is one where I used to do some tests. 
It shouldn't matter since all worktrees are contained withing parent directory,
which in one case is "emsrc" and in the other case "emacs-tests", but for some
reason project.el sees the wrong one.

1. create two parent folders each one containing a copy of emacs sources
1. create out of source worktree for Emacs source under one of those
2. navigate to the worktree/lisp/progmodes
3. run M-: (project-known-project-roots)

In my Emacs, I am in my currently installed emacs worktree, where git root is

~/repos/emsrc/emacs but project.el returns ("~/repos/emacs-tests/emacs/") as a
result, which is totally unrelated to this source tree. I don't know what
happends, but I guess project.el goes "too far" out in search for roots; no
idea, I am not chasing the bug, but I don't see much code in project.el related
to worktrees. The only place I see them mentioned is about submodules.I
personally have used this one for quite some time, and it seems to correctly
handle worktrees for me:

#+begin_src emacs-lisp
(defun git-root (&optional directory)
  "Find git root in a git project.

If DIRECTORY is not given, return git root of DEFAULT-DIRECTORY.

This should correctly find git root even for worktrees placed outside of a git
repository as well as in subdirectories in main git repository."
  (let* ((directory (expand-file-name (or directory default-directory)))
         (git-dir (locate-dominating-file directory ".git"))
         (git-file (and git-dir (expand-file-name ".git" git-dir))))
    (if (and git-file (file-directory-p git-file))
          git-dir
      (and git-file
           (with-temp-buffer
             (insert-file-contents-literally git-file)
             (when (search-forward "gitdir: " nil t)
               (let ((beg (point))
                     (end (search-forward ".git" nil t)))
                 (buffer-substring-no-properties beg (- end 4)))))))))
#+end_src

I don't use submodules, so I don't know if it works there, and there are
probably better ways to handle this, perhaps asking git for worktree list, but
that cost executing a git process, while parsing a file is relatively cheap and
much faster.

I don't know if this use-case is too bisarre; I will actually remove my
emacs-tests folder, it is an old remain, but still, I don't think project.el
should repport invalid project roots anyway.

In GNU Emacs 30.0.50 (build 1, x86_64-pc-linux-gnu, cairo version 1.17.8) of
 2023-02-26 built on pascal
Repository revision: 013655811aa1c89754372610c8c6ccccec166035
Repository branch: no-gtk-with-cairo-and-native-230226-061643
Windowing system distributor 'The X.Org Foundation', version 11.0.12101007
System Description: Arch Linux

Configured using:
 'configure --with-native-compilation --with-x --with-x-toolkit=no
 --without-gconf --without-gsettings --without-toolkit-scroll-bars
 --with-xinput2 --without-included-regex --without-compress-install 'CFLAGS=-O2
 -march=native''

Configured features:
ACL CAIRO DBUS FREETYPE GIF GLIB GMP GNUTLS GPM HARFBUZZ JPEG JSON LCMS2 LIBOTF
LIBSYSTEMD LIBXML2 M17N_FLT MODULES NATIVE_COMP NOTIFY INOTIFY OLDXMENU PDUMPER
PNG RSVG SECCOMP SOUND SQLITE3 THREADS TIFF TREE_SITTER WEBP X11 XDBE XIM
XINPUT2 XPM ZLIB

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

Major mode: Dired by name

Minor modes in effect:
  ace-window-display-mode: t
  helm-flx-mode: t
  windmove-mode: t
  emms-mode-line-mode: t
  emms-playing-time-display-mode: t
  emms-playing-time-mode: t
  beacon-mode: t
  server-mode: t
  which-key-mode: t
  wrap-region-global-mode: t
  electric-pair-mode: t
  global-auto-revert-mode: t
  global-hl-line-mode: t
  global-subword-mode: t
  subword-mode: t
  auto-image-file-mode: t
  display-time-mode: t
  delete-selection-mode: t
  save-place-mode: t
  winner-mode: t
  pixel-scroll-precision-mode: t
  auto-insert-mode: t
  helm-mode: t
  helm-minibuffer-history-mode: t
  helm-adaptive-mode: t
  dired-auto-readme-mode: t
  dired-omit-mode: t
  dired-async-mode: t
  dired-hide-details-mode: t
  shell-dirtrack-mode: t
  helm-autoresize-mode: t
  helm--remap-mouse-mode: t
  async-bytecomp-package-mode: t
  speed-of-thought-mode: t
  tooltip-mode: t
  global-eldoc-mode: t
  show-paren-mode: t
  electric-indent-mode: t
  mouse-wheel-mode: t
  tool-bar-mode: t
  menu-bar-mode: t
  file-name-shadow-mode: t
  global-font-lock-mode: t
  font-lock-mode: t
  blink-cursor-mode: t
  buffer-read-only: t
  column-number-mode: t
  line-number-mode: t
  transient-mark-mode: t
  auto-composition-mode: t
  auto-encryption-mode: t
  auto-compression-mode: t
  auto-save-visited-mode: t
  abbrev-mode: t

Load-path shadows:
/home/arthur/.config/emacs/lisp/emacs-lisp/package hides /home/arthur/.emacs.d/lisp/package
/home/arthur/.emacs.d/elpa/with-editor-20230212.2214/with-editor hides /home/arthur/.emacs.d/elpa/with-editor-20230210.1157/with-editor
/home/arthur/.emacs.d/elpa/with-editor-20230212.2214/with-editor-autoloads hides /home/arthur/.emacs.d/elpa/with-editor-20230210.1157/with-editor-autoloads
/home/arthur/.emacs.d/elpa/with-editor-20230212.2214/with-editor-pkg hides /home/arthur/.emacs.d/elpa/with-editor-20230210.1157/with-editor-pkg
/home/arthur/.emacs.d/elpa/with-editor-20230212.2214/with-editor hides /home/arthur/.emacs.d/elpa/with-editor-20230118.1656/with-editor
/home/arthur/.emacs.d/elpa/with-editor-20230212.2214/with-editor-autoloads hides /home/arthur/.emacs.d/elpa/with-editor-20230118.1656/with-editor-autoloads
/home/arthur/.emacs.d/elpa/with-editor-20230212.2214/with-editor-pkg hides /home/arthur/.emacs.d/elpa/with-editor-20230118.1656/with-editor-pkg
/home/arthur/.config/emacs/lisp/transient hides /home/arthur/.emacs.d/elpa/transient-20230220.1425/transient
/home/arthur/.config/emacs/lisp/transient hides /home/arthur/.emacs.d/elpa/transient-20230209.2250/transient
/home/arthur/.emacs.d/elpa/transient-20230220.1425/transient-autoloads hides /home/arthur/.emacs.d/elpa/transient-20230209.2250/transient-autoloads
/home/arthur/.emacs.d/elpa/transient-20230220.1425/transient-pkg hides /home/arthur/.emacs.d/elpa/transient-20230209.2250/transient-pkg
/home/arthur/.config/emacs/lisp/transient hides /home/arthur/.emacs.d/elpa/transient-20230201.1644/transient
/home/arthur/.emacs.d/elpa/transient-20230220.1425/transient-autoloads hides /home/arthur/.emacs.d/elpa/transient-20230201.1644/transient-autoloads
/home/arthur/.emacs.d/elpa/transient-20230220.1425/transient-pkg hides /home/arthur/.emacs.d/elpa/transient-20230201.1644/transient-pkg
/home/arthur/.config/emacs/lisp/transient hides /home/arthur/.emacs.d/elpa/transient-20230107.1528/transient
/home/arthur/.emacs.d/elpa/transient-20230220.1425/transient-autoloads hides /home/arthur/.emacs.d/elpa/transient-20230107.1528/transient-autoloads
/home/arthur/.emacs.d/elpa/transient-20230220.1425/transient-pkg hides /home/arthur/.emacs.d/elpa/transient-20230107.1528/transient-pkg
/home/arthur/.config/emacs/lisp/textmodes/string-edit hides /home/arthur/.emacs.d/elpa/string-edit-20220604.2128/string-edit
/home/arthur/.emacs.d/elpa/sotlisp-20220909.803/sotlisp hides /home/arthur/.emacs.d/elpa/sotlisp-1.6.2/sotlisp
/home/arthur/.emacs.d/elpa/peg-1.0.1/peg-autoloads hides /home/arthur/.emacs.d/elpa/peg-1.0/peg-autoloads
/home/arthur/.emacs.d/elpa/peg-1.0.1/peg-tests hides /home/arthur/.emacs.d/elpa/peg-1.0/peg-tests
/home/arthur/.emacs.d/elpa/peg-1.0.1/peg hides /home/arthur/.emacs.d/elpa/peg-1.0/peg
/home/arthur/.emacs.d/elpa/peg-1.0.1/peg-pkg hides /home/arthur/.emacs.d/elpa/peg-1.0/peg-pkg
/home/arthur/.emacs.d/elpa/peep-dired-20160321.2237/peep-dired hides /home/arthur/.emacs.d/elpa/peep-dired-1.1.0/peep-dired
/home/arthur/.emacs.d/elpa/peep-dired-20160321.2237/peep-dired-autoloads hides /home/arthur/.emacs.d/elpa/peep-dired-1.1.0/peep-dired-autoloads
/home/arthur/.emacs.d/elpa/peep-dired-20160321.2237/peep-dired-pkg hides /home/arthur/.emacs.d/elpa/peep-dired-1.1.0/peep-dired-pkg
/home/arthur/.emacs.d/elpa/magit-section-20230213.2018/magit-section hides /home/arthur/.emacs.d/elpa/magit-section-20230211.1642/magit-section
/home/arthur/.emacs.d/elpa/magit-section-20230213.2018/magit-section-pkg hides /home/arthur/.emacs.d/elpa/magit-section-20230211.1642/magit-section-pkg
/home/arthur/.emacs.d/elpa/magit-section-20230213.2018/magit-section-autoloads hides /home/arthur/.emacs.d/elpa/magit-section-20230211.1642/magit-section-autoloads
/home/arthur/.emacs.d/elpa/magit-section-20230213.2018/magit-section hides /home/arthur/.emacs.d/elpa/magit-section-20230204.1138/magit-section
/home/arthur/.emacs.d/elpa/magit-section-20230213.2018/magit-section-pkg hides /home/arthur/.emacs.d/elpa/magit-section-20230204.1138/magit-section-pkg
/home/arthur/.emacs.d/elpa/magit-section-20230213.2018/magit-section-autoloads hides /home/arthur/.emacs.d/elpa/magit-section-20230204.1138/magit-section-autoloads
/home/arthur/.emacs.d/elpa/magit-section-20230213.2018/magit-section hides /home/arthur/.emacs.d/elpa/magit-section-20230106.1659/magit-section
/home/arthur/.emacs.d/elpa/magit-section-20230213.2018/magit-section-pkg hides /home/arthur/.emacs.d/elpa/magit-section-20230106.1659/magit-section-pkg
/home/arthur/.emacs.d/elpa/magit-section-20230213.2018/magit-section-autoloads hides /home/arthur/.emacs.d/elpa/magit-section-20230106.1659/magit-section-autoloads
/home/arthur/.emacs.d/elpa/magit-section-20230213.2018/magit-section hides /home/arthur/.emacs.d/elpa/magit-section-20221127.2227/magit-section
/home/arthur/.emacs.d/elpa/magit-section-20230213.2018/magit-section-pkg hides /home/arthur/.emacs.d/elpa/magit-section-20221127.2227/magit-section-pkg
/home/arthur/.emacs.d/elpa/magit-section-20230213.2018/magit-section-autoloads hides /home/arthur/.emacs.d/elpa/magit-section-20221127.2227/magit-section-autoloads
/home/arthur/.emacs.d/elpa/lsp-mode-20230221.1558/lsp-xml hides /home/arthur/.emacs.d/elpa/lsp-mode-20211211.1834/lsp-xml
/home/arthur/.emacs.d/elpa/lsp-mode-20230221.1558/lsp-prolog hides /home/arthur/.emacs.d/elpa/lsp-mode-20211211.1834/lsp-prolog
/home/arthur/.emacs.d/elpa/lsp-mode-20230221.1558/lsp-steep hides /home/arthur/.emacs.d/elpa/lsp-mode-20211211.1834/lsp-steep
/home/arthur/.emacs.d/elpa/lsp-mode-20230221.1558/lsp-sorbet hides /home/arthur/.emacs.d/elpa/lsp-mode-20211211.1834/lsp-sorbet
/home/arthur/.emacs.d/elpa/lsp-mode-20230221.1558/lsp-vetur hides /home/arthur/.emacs.d/elpa/lsp-mode-20211211.1834/lsp-vetur
/home/arthur/.emacs.d/elpa/lsp-mode-20230221.1558/lsp-beancount hides /home/arthur/.emacs.d/elpa/lsp-mode-20211211.1834/lsp-beancount
/home/arthur/.emacs.d/elpa/lsp-mode-20230221.1558/lsp-dockerfile hides /home/arthur/.emacs.d/elpa/lsp-mode-20211211.1834/lsp-dockerfile
/home/arthur/.emacs.d/elpa/lsp-mode-20230221.1558/lsp-tex hides /home/arthur/.emacs.d/elpa/lsp-mode-20211211.1834/lsp-tex
/home/arthur/.emacs.d/elpa/lsp-mode-20230221.1558/lsp-hack hides /home/arthur/.emacs.d/elpa/lsp-mode-20211211.1834/lsp-hack
/home/arthur/.emacs.d/elpa/lsp-mode-20230221.1558/lsp-r hides /home/arthur/.emacs.d/elpa/lsp-mode-20211211.1834/lsp-r
/home/arthur/.emacs.d/elpa/lsp-mode-20230221.1558/lsp-haxe hides /home/arthur/.emacs.d/elpa/lsp-mode-20211211.1834/lsp-haxe
/home/arthur/.emacs.d/elpa/lsp-mode-20230221.1558/lsp-yaml hides /home/arthur/.emacs.d/elpa/lsp-mode-20211211.1834/lsp-yaml
/home/arthur/.emacs.d/elpa/lsp-mode-20230221.1558/lsp-pylsp hides /home/arthur/.emacs.d/elpa/lsp-mode-20211211.1834/lsp-pylsp
/home/arthur/.emacs.d/elpa/lsp-mode-20230221.1558/lsp-elixir hides /home/arthur/.emacs.d/elpa/lsp-mode-20211211.1834/lsp-elixir
/home/arthur/.emacs.d/elpa/lsp-mode-20230221.1558/lsp-groovy hides /home/arthur/.emacs.d/elpa/lsp-mode-20211211.1834/lsp-groovy
/home/arthur/.emacs.d/elpa/lsp-mode-20230221.1558/lsp-rf hides /home/arthur/.emacs.d/elpa/lsp-mode-20211211.1834/lsp-rf
/home/arthur/.emacs.d/elpa/lsp-mode-20230221.1558/lsp-elm hides /home/arthur/.emacs.d/elpa/lsp-mode-20211211.1834/lsp-elm
/home/arthur/.emacs.d/elpa/lsp-mode-20230221.1558/lsp-nginx hides /home/arthur/.emacs.d/elpa/lsp-mode-20211211.1834/lsp-nginx
/home/arthur/.emacs.d/elpa/lsp-mode-20230221.1558/lsp-json hides /home/arthur/.emacs.d/elpa/lsp-mode-20211211.1834/lsp-json
/home/arthur/.emacs.d/elpa/lsp-mode-20230221.1558/lsp-angular hides /home/arthur/.emacs.d/elpa/lsp-mode-20211211.1834/lsp-angular
/home/arthur/.emacs.d/elpa/lsp-mode-20230221.1558/lsp-svelte hides /home/arthur/.emacs.d/elpa/lsp-mode-20211211.1834/lsp-svelte
/home/arthur/.emacs.d/elpa/lsp-mode-20230221.1558/lsp-toml hides /home/arthur/.emacs.d/elpa/lsp-mode-20211211.1834/lsp-toml
/home/arthur/.emacs.d/elpa/lsp-mode-20230221.1558/lsp-zig hides /home/arthur/.emacs.d/elpa/lsp-mode-20211211.1834/lsp-zig
/home/arthur/.emacs.d/elpa/lsp-mode-20230221.1558/lsp-pwsh hides /home/arthur/.emacs.d/elpa/lsp-mode-20211211.1834/lsp-pwsh
/home/arthur/.emacs.d/elpa/lsp-mode-20230221.1558/lsp-protocol hides /home/arthur/.emacs.d/elpa/lsp-mode-20211211.1834/lsp-protocol
/home/arthur/.emacs.d/elpa/lsp-mode-20230221.1558/lsp-icons hides /home/arthur/.emacs.d/elpa/lsp-mode-20211211.1834/lsp-icons
/home/arthur/.emacs.d/elpa/lsp-mode-20230221.1558/lsp-cmake hides /home/arthur/.emacs.d/elpa/lsp-mode-20211211.1834/lsp-cmake
/home/arthur/.emacs.d/elpa/lsp-mode-20230221.1558/lsp-rust hides /home/arthur/.emacs.d/elpa/lsp-mode-20211211.1834/lsp-rust
/home/arthur/.emacs.d/elpa/lsp-mode-20230221.1558/lsp-php hides /home/arthur/.emacs.d/elpa/lsp-mode-20211211.1834/lsp-php
/home/arthur/.emacs.d/elpa/lsp-mode-20230221.1558/lsp-diagnostics hides /home/arthur/.emacs.d/elpa/lsp-mode-20211211.1834/lsp-diagnostics
/home/arthur/.emacs.d/elpa/lsp-mode-20230221.1558/lsp-erlang hides /home/arthur/.emacs.d/elpa/lsp-mode-20211211.1834/lsp-erlang
/home/arthur/.emacs.d/elpa/lsp-mode-20230221.1558/lsp-mode-autoloads hides /home/arthur/.emacs.d/elpa/lsp-mode-20211211.1834/lsp-mode-autoloads
/home/arthur/.emacs.d/elpa/lsp-mode-20230221.1558/lsp-actionscript hides /home/arthur/.emacs.d/elpa/lsp-mode-20211211.1834/lsp-actionscript
/home/arthur/.emacs.d/elpa/lsp-mode-20230221.1558/lsp-purescript hides /home/arthur/.emacs.d/elpa/lsp-mode-20211211.1834/lsp-purescript
/home/arthur/.emacs.d/elpa/lsp-mode-20230221.1558/lsp-racket hides /home/arthur/.emacs.d/elpa/lsp-mode-20211211.1834/lsp-racket
/home/arthur/.emacs.d/elpa/lsp-mode-20230221.1558/lsp-html hides /home/arthur/.emacs.d/elpa/lsp-mode-20211211.1834/lsp-html
/home/arthur/.emacs.d/elpa/lsp-mode-20230221.1558/lsp-solargraph hides /home/arthur/.emacs.d/elpa/lsp-mode-20211211.1834/lsp-solargraph
/home/arthur/.emacs.d/elpa/lsp-mode-20230221.1558/lsp-lens hides /home/arthur/.emacs.d/elpa/lsp-mode-20211211.1834/lsp-lens
/home/arthur/.emacs.d/elpa/lsp-mode-20230221.1558/lsp-nim hides /home/arthur/.emacs.d/elpa/lsp-mode-20211211.1834/lsp-nim
/home/arthur/.emacs.d/elpa/lsp-mode-20230221.1558/lsp-ocaml hides /home/arthur/.emacs.d/elpa/lsp-mode-20211211.1834/lsp-ocaml
/home/arthur/.emacs.d/elpa/lsp-mode-20230221.1558/lsp-ada hides /home/arthur/.emacs.d/elpa/lsp-mode-20211211.1834/lsp-ada
/home/arthur/.emacs.d/elpa/lsp-mode-20230221.1558/lsp-csharp hides /home/arthur/.emacs.d/elpa/lsp-mode-20211211.1834/lsp-csharp
/home/arthur/.emacs.d/elpa/lsp-mode-20230221.1558/lsp-semantic-tokens hides /home/arthur/.emacs.d/elpa/lsp-mode-20211211.1834/lsp-semantic-tokens
/home/arthur/.emacs.d/elpa/lsp-mode-20230221.1558/lsp-lua hides /home/arthur/.emacs.d/elpa/lsp-mode-20211211.1834/lsp-lua
/home/arthur/.emacs.d/elpa/lsp-mode-20230221.1558/lsp-css hides /home/arthur/.emacs.d/elpa/lsp-mode-20211211.1834/lsp-css
/home/arthur/.emacs.d/elpa/lsp-mode-20230221.1558/lsp-markdown hides /home/arthur/.emacs.d/elpa/lsp-mode-20211211.1834/lsp-markdown
/home/arthur/.emacs.d/elpa/lsp-mode-20230221.1558/lsp-v hides /home/arthur/.emacs.d/elpa/lsp-mode-20211211.1834/lsp-v
/home/arthur/.emacs.d/elpa/lsp-mode-20230221.1558/lsp-vimscript hides /home/arthur/.emacs.d/elpa/lsp-mode-20211211.1834/lsp-vimscript
/home/arthur/.emacs.d/elpa/lsp-mode-20230221.1558/lsp-dired hides /home/arthur/.emacs.d/elpa/lsp-mode-20211211.1834/lsp-dired
/home/arthur/.emacs.d/elpa/lsp-mode-20230221.1558/lsp-graphql hides /home/arthur/.emacs.d/elpa/lsp-mode-20211211.1834/lsp-graphql
/home/arthur/.emacs.d/elpa/lsp-mode-20230221.1558/lsp-go hides /home/arthur/.emacs.d/elpa/lsp-mode-20211211.1834/lsp-go
/home/arthur/.emacs.d/elpa/lsp-mode-20230221.1558/lsp-vala hides /home/arthur/.emacs.d/elpa/lsp-mode-20211211.1834/lsp-vala
/home/arthur/.emacs.d/elpa/lsp-mode-20230221.1558/lsp-mode hides /home/arthur/.emacs.d/elpa/lsp-mode-20211211.1834/lsp-mode
/home/arthur/.emacs.d/elpa/lsp-mode-20230221.1558/lsp-javascript hides /home/arthur/.emacs.d/elpa/lsp-mode-20211211.1834/lsp-javascript
/home/arthur/.emacs.d/elpa/lsp-mode-20230221.1558/lsp-completion hides /home/arthur/.emacs.d/elpa/lsp-mode-20211211.1834/lsp-completion
/home/arthur/.emacs.d/elpa/lsp-mode-20230221.1558/lsp-fsharp hides /home/arthur/.emacs.d/elpa/lsp-mode-20211211.1834/lsp-fsharp
/home/arthur/.emacs.d/elpa/lsp-mode-20230221.1558/lsp-sqls hides /home/arthur/.emacs.d/elpa/lsp-mode-20211211.1834/lsp-sqls
/home/arthur/.emacs.d/elpa/lsp-mode-20230221.1558/lsp-perl hides /home/arthur/.emacs.d/elpa/lsp-mode-20211211.1834/lsp-perl
/home/arthur/.emacs.d/elpa/lsp-mode-20230221.1558/lsp-clojure hides /home/arthur/.emacs.d/elpa/lsp-mode-20211211.1834/lsp-clojure
/home/arthur/.emacs.d/elpa/lsp-mode-20230221.1558/lsp-gdscript hides /home/arthur/.emacs.d/elpa/lsp-mode-20211211.1834/lsp-gdscript
/home/arthur/.emacs.d/elpa/lsp-mode-20230221.1558/lsp-dhall hides /home/arthur/.emacs.d/elpa/lsp-mode-20211211.1834/lsp-dhall
/home/arthur/.emacs.d/elpa/lsp-mode-20230221.1558/lsp-pyls hides /home/arthur/.emacs.d/elpa/lsp-mode-20211211.1834/lsp-pyls
/home/arthur/.emacs.d/elpa/lsp-mode-20230221.1558/lsp-nix hides /home/arthur/.emacs.d/elpa/lsp-mode-20211211.1834/lsp-nix
/home/arthur/.emacs.d/elpa/lsp-mode-20230221.1558/lsp-verilog hides /home/arthur/.emacs.d/elpa/lsp-mode-20211211.1834/lsp-verilog
/home/arthur/.emacs.d/elpa/lsp-mode-20230221.1558/lsp-fortran hides /home/arthur/.emacs.d/elpa/lsp-mode-20211211.1834/lsp-fortran
/home/arthur/.emacs.d/elpa/lsp-mode-20230221.1558/lsp-kotlin hides /home/arthur/.emacs.d/elpa/lsp-mode-20211211.1834/lsp-kotlin
/home/arthur/.emacs.d/elpa/lsp-mode-20230221.1558/lsp-modeline hides /home/arthur/.emacs.d/elpa/lsp-mode-20211211.1834/lsp-modeline
/home/arthur/.emacs.d/elpa/lsp-mode-20230221.1558/lsp-iedit hides /home/arthur/.emacs.d/elpa/lsp-mode-20211211.1834/lsp-iedit
/home/arthur/.emacs.d/elpa/lsp-mode-20230221.1558/lsp-ido hides /home/arthur/.emacs.d/elpa/lsp-mode-20211211.1834/lsp-ido
/home/arthur/.emacs.d/elpa/lsp-mode-20230221.1558/lsp-crystal hides /home/arthur/.emacs.d/elpa/lsp-mode-20211211.1834/lsp-crystal
/home/arthur/.emacs.d/elpa/lsp-mode-20230221.1558/lsp-terraform hides /home/arthur/.emacs.d/elpa/lsp-mode-20211211.1834/lsp-terraform
/home/arthur/.emacs.d/elpa/lsp-mode-20230221.1558/lsp-vhdl hides /home/arthur/.emacs.d/elpa/lsp-mode-20211211.1834/lsp-vhdl
/home/arthur/.emacs.d/elpa/lsp-mode-20230221.1558/lsp-clangd hides /home/arthur/.emacs.d/elpa/lsp-mode-20211211.1834/lsp-clangd
/home/arthur/.emacs.d/elpa/lsp-mode-20230221.1558/lsp-headerline hides /home/arthur/.emacs.d/elpa/lsp-mode-20211211.1834/lsp-headerline
/home/arthur/.emacs.d/elpa/lsp-mode-20230221.1558/lsp-d hides /home/arthur/.emacs.d/elpa/lsp-mode-20211211.1834/lsp-d
/home/arthur/.emacs.d/elpa/lsp-mode-20230221.1558/lsp-bash hides /home/arthur/.emacs.d/elpa/lsp-mode-20211211.1834/lsp-bash
/home/arthur/.emacs.d/elpa/lsp-mode-20230221.1558/lsp-mode-pkg hides /home/arthur/.emacs.d/elpa/lsp-mode-20211211.1834/lsp-mode-pkg
/home/arthur/.emacs.d/elpa/lsp-mode-20230221.1558/lsp hides /home/arthur/.emacs.d/elpa/lsp-mode-20211211.1834/lsp
/home/arthur/.emacs.d/elpa/lsp-mode-20230221.1558/lsp-eslint hides /home/arthur/.emacs.d/elpa/lsp-mode-20211211.1834/lsp-eslint
/home/arthur/.emacs.d/elpa/lispy-20221225.1927/elpa hides /home/arthur/.emacs.d/elpa/ivy-20220926.1250/elpa
/home/arthur/.config/emacs/lisp/emacs-lisp/helper hides /home/arthur/.emacs.d/elpa/helper-0.5/helper
/home/arthur/.emacs.d/lisp/helm-git-branch hides /home/arthur/.emacs.d/elpa/helm-git-branch-0.1/helm-git-branch
/home/arthur/.emacs.d/elpa/git-commit-20230220.1901/git-commit hides /home/arthur/.emacs.d/elpa/git-commit-20221106.1128/git-commit
/home/arthur/.emacs.d/elpa/git-commit-20230220.1901/git-commit-autoloads hides /home/arthur/.emacs.d/elpa/git-commit-20221106.1128/git-commit-autoloads
/home/arthur/.emacs.d/elpa/git-commit-20230220.1901/git-commit-pkg hides /home/arthur/.emacs.d/elpa/git-commit-20221106.1128/git-commit-pkg
/home/arthur/.emacs.d/elpa/emacsql-sqlite-20230221.1532/emacsql-sqlite hides /home/arthur/.emacs.d/elpa/emacsql-20230221.1532/emacsql-sqlite
/home/arthur/.emacs.d/elpa/emacsql-20230221.1532/emacsql hides /home/arthur/.emacs.d/elpa/emacsql-20230118.2020/emacsql
/home/arthur/.emacs.d/elpa/emacsql-20230221.1532/emacsql-pkg hides /home/arthur/.emacs.d/elpa/emacsql-20230118.2020/emacsql-pkg
/home/arthur/.emacs.d/elpa/emacsql-20230221.1532/emacsql-compiler hides /home/arthur/.emacs.d/elpa/emacsql-20230118.2020/emacsql-compiler
/home/arthur/.emacs.d/elpa/emacsql-20230221.1532/emacsql-autoloads hides /home/arthur/.emacs.d/elpa/emacsql-20230118.2020/emacsql-autoloads
/home/arthur/.emacs.d/elpa/elisp-refs-20220704.2141/elisp-refs hides /home/arthur/.emacs.d/elpa/elisp-refs-1.4/elisp-refs
/home/arthur/.emacs.d/elpa/elisp-refs-20220704.2141/elisp-refs-autoloads hides /home/arthur/.emacs.d/elpa/elisp-refs-1.4/elisp-refs-autoloads
/home/arthur/.emacs.d/elpa/elisp-refs-20220704.2141/elisp-refs-pkg hides /home/arthur/.emacs.d/elpa/elisp-refs-1.4/elisp-refs-pkg
/home/arthur/.emacs.d/elpa/compat-29.1.3.4/compat-26 hides /home/arthur/.emacs.d/elpa/compat-29.1.3.2/compat-26
/home/arthur/.emacs.d/elpa/compat-29.1.3.4/compat-25 hides /home/arthur/.emacs.d/elpa/compat-29.1.3.2/compat-25
/home/arthur/.emacs.d/elpa/compat-29.1.3.4/compat-29 hides /home/arthur/.emacs.d/elpa/compat-29.1.3.2/compat-29
/home/arthur/.emacs.d/elpa/compat-29.1.3.4/compat-27 hides /home/arthur/.emacs.d/elpa/compat-29.1.3.2/compat-27
/home/arthur/.emacs.d/elpa/compat-29.1.3.4/compat-pkg hides /home/arthur/.emacs.d/elpa/compat-29.1.3.2/compat-pkg
/home/arthur/.emacs.d/elpa/compat-29.1.3.4/compat-28 hides /home/arthur/.emacs.d/elpa/compat-29.1.3.2/compat-28
/home/arthur/.emacs.d/elpa/compat-29.1.3.4/compat-autoloads hides /home/arthur/.emacs.d/elpa/compat-29.1.3.2/compat-autoloads
/home/arthur/.emacs.d/elpa/compat-29.1.3.4/compat-macs hides /home/arthur/.emacs.d/elpa/compat-29.1.3.2/compat-macs
/home/arthur/.emacs.d/elpa/compat-29.1.3.4/compat hides /home/arthur/.emacs.d/elpa/compat-29.1.3.2/compat
/home/arthur/.emacs.d/elpa/compat-29.1.3.4/compat-26 hides /home/arthur/.emacs.d/elpa/compat-29.1.1.0/compat-26
/home/arthur/.emacs.d/elpa/compat-29.1.3.4/compat-25 hides /home/arthur/.emacs.d/elpa/compat-29.1.1.0/compat-25
/home/arthur/.emacs.d/elpa/compat-29.1.3.4/compat-29 hides /home/arthur/.emacs.d/elpa/compat-29.1.1.0/compat-29
/home/arthur/.emacs.d/elpa/compat-29.1.3.4/compat-27 hides /home/arthur/.emacs.d/elpa/compat-29.1.1.0/compat-27
/home/arthur/.emacs.d/elpa/compat-29.1.3.4/compat-pkg hides /home/arthur/.emacs.d/elpa/compat-29.1.1.0/compat-pkg
/home/arthur/.emacs.d/elpa/compat-29.1.3.4/compat-28 hides /home/arthur/.emacs.d/elpa/compat-29.1.1.0/compat-28
/home/arthur/.emacs.d/elpa/compat-29.1.3.4/compat-autoloads hides /home/arthur/.emacs.d/elpa/compat-29.1.1.0/compat-autoloads
/home/arthur/.emacs.d/elpa/compat-29.1.3.4/compat-macs hides /home/arthur/.emacs.d/elpa/compat-29.1.1.0/compat-macs
/home/arthur/.emacs.d/elpa/compat-29.1.3.4/compat hides /home/arthur/.emacs.d/elpa/compat-29.1.1.0/compat
/home/arthur/.emacs.d/elpa/compat-29.1.3.4/compat-26 hides /home/arthur/.emacs.d/elpa/compat-28.1.2.2/compat-26
/home/arthur/.emacs.d/elpa/compat-29.1.3.4/compat-25 hides /home/arthur/.emacs.d/elpa/compat-28.1.2.2/compat-25
/home/arthur/.emacs.d/elpa/compat-29.1.3.4/compat-27 hides /home/arthur/.emacs.d/elpa/compat-28.1.2.2/compat-27
/home/arthur/.emacs.d/elpa/compat-29.1.3.4/compat-pkg hides /home/arthur/.emacs.d/elpa/compat-28.1.2.2/compat-pkg
/home/arthur/.emacs.d/elpa/compat-29.1.3.4/compat-28 hides /home/arthur/.emacs.d/elpa/compat-28.1.2.2/compat-28
/home/arthur/.emacs.d/elpa/compat-29.1.3.4/compat-autoloads hides /home/arthur/.emacs.d/elpa/compat-28.1.2.2/compat-autoloads
/home/arthur/.emacs.d/elpa/compat-29.1.3.4/compat-macs hides /home/arthur/.emacs.d/elpa/compat-28.1.2.2/compat-macs
/home/arthur/.emacs.d/elpa/compat-29.1.3.4/compat hides /home/arthur/.emacs.d/elpa/compat-28.1.2.2/compat
/home/arthur/.emacs.d/elpa/compat-29.1.3.4/compat-26 hides /home/arthur/.emacs.d/elpa/compat-28.1.1.1/compat-26
/home/arthur/.emacs.d/elpa/compat-29.1.3.4/compat-25 hides /home/arthur/.emacs.d/elpa/compat-28.1.1.1/compat-25
/home/arthur/.emacs.d/elpa/compat-28.1.2.2/compat-help hides /home/arthur/.emacs.d/elpa/compat-28.1.1.1/compat-help
/home/arthur/.emacs.d/elpa/compat-29.1.3.4/compat-27 hides /home/arthur/.emacs.d/elpa/compat-28.1.1.1/compat-27
/home/arthur/.emacs.d/elpa/compat-28.1.2.2/compat-font-lock hides /home/arthur/.emacs.d/elpa/compat-28.1.1.1/compat-font-lock
/home/arthur/.emacs.d/elpa/compat-28.1.2.2/compat-24 hides /home/arthur/.emacs.d/elpa/compat-28.1.1.1/compat-24
/home/arthur/.emacs.d/elpa/compat-29.1.3.4/compat-pkg hides /home/arthur/.emacs.d/elpa/compat-28.1.1.1/compat-pkg
/home/arthur/.emacs.d/elpa/compat-29.1.3.4/compat-macs hides /home/arthur/.emacs.d/elpa/compat-28.1.1.1/compat-macs
/home/arthur/.emacs.d/elpa/compat-29.1.3.4/compat-28 hides /home/arthur/.emacs.d/elpa/compat-28.1.1.1/compat-28
/home/arthur/.emacs.d/elpa/compat-29.1.3.4/compat-autoloads hides /home/arthur/.emacs.d/elpa/compat-28.1.1.1/compat-autoloads
/home/arthur/.emacs.d/elpa/compat-29.1.3.4/compat hides /home/arthur/.emacs.d/elpa/compat-28.1.1.1/compat
/home/arthur/.emacs.d/lisp/company-cmake hides /home/arthur/.emacs.d/elpa/company-20230209.134/company-cmake
/home/arthur/.emacs.d/elpa/closql-20230220.1944/closql-autoloads hides /home/arthur/.emacs.d/elpa/closql-20230212.2019/closql-autoloads
/home/arthur/.emacs.d/elpa/closql-20230220.1944/closql-pkg hides /home/arthur/.emacs.d/elpa/closql-20230212.2019/closql-pkg
/home/arthur/.emacs.d/elpa/closql-20230220.1944/closql hides /home/arthur/.emacs.d/elpa/closql-20230212.2019/closql
/home/arthur/.emacs.d/elpa/cider-20230218.915/cider-clojuredocs hides /home/arthur/.emacs.d/elpa/cider-20230208.2108/cider-clojuredocs
/home/arthur/.emacs.d/elpa/cider-20230218.915/cider-completion hides /home/arthur/.emacs.d/elpa/cider-20230208.2108/cider-completion
/home/arthur/.emacs.d/elpa/cider-20230218.915/cider-profile hides /home/arthur/.emacs.d/elpa/cider-20230208.2108/cider-profile
/home/arthur/.emacs.d/elpa/cider-20230218.915/cider-cheatsheet hides /home/arthur/.emacs.d/elpa/cider-20230208.2108/cider-cheatsheet
/home/arthur/.emacs.d/elpa/cider-20230218.915/cider-format hides /home/arthur/.emacs.d/elpa/cider-20230208.2108/cider-format
/home/arthur/.emacs.d/elpa/cider-20230218.915/cider-eldoc hides /home/arthur/.emacs.d/elpa/cider-20230208.2108/cider-eldoc
/home/arthur/.emacs.d/elpa/cider-20230218.915/cider-find hides /home/arthur/.emacs.d/elpa/cider-20230208.2108/cider-find
/home/arthur/.emacs.d/elpa/cider-20230218.915/cider-client hides /home/arthur/.emacs.d/elpa/cider-20230208.2108/cider-client
/home/arthur/.emacs.d/elpa/cider-20230218.915/cider-classpath hides /home/arthur/.emacs.d/elpa/cider-20230208.2108/cider-classpath
/home/arthur/.emacs.d/elpa/cider-20230218.915/cider-common hides /home/arthur/.emacs.d/elpa/cider-20230208.2108/cider-common
/home/arthur/.emacs.d/elpa/cider-20230218.915/cider-jar hides /home/arthur/.emacs.d/elpa/cider-20230208.2108/cider-jar
/home/arthur/.emacs.d/elpa/cider-20230218.915/cider-util hides /home/arthur/.emacs.d/elpa/cider-20230208.2108/cider-util
/home/arthur/.emacs.d/elpa/cider-20230218.915/cider-repl-history hides /home/arthur/.emacs.d/elpa/cider-20230208.2108/cider-repl-history
/home/arthur/.emacs.d/elpa/cider-20230218.915/cider-debug hides /home/arthur/.emacs.d/elpa/cider-20230208.2108/cider-debug
/home/arthur/.emacs.d/elpa/cider-20230218.915/cider-eval hides /home/arthur/.emacs.d/elpa/cider-20230208.2108/cider-eval
/home/arthur/.emacs.d/elpa/cider-20230218.915/cider-browse-ns hides /home/arthur/.emacs.d/elpa/cider-20230208.2108/cider-browse-ns
/home/arthur/.emacs.d/elpa/cider-20230218.915/cider-stacktrace hides /home/arthur/.emacs.d/elpa/cider-20230208.2108/cider-stacktrace
/home/arthur/.emacs.d/elpa/cider-20230218.915/cider-overlays hides /home/arthur/.emacs.d/elpa/cider-20230208.2108/cider-overlays
/home/arthur/.emacs.d/elpa/cider-20230218.915/cider-repl hides /home/arthur/.emacs.d/elpa/cider-20230208.2108/cider-repl
/home/arthur/.emacs.d/elpa/cider-20230218.915/cider-tracing hides /home/arthur/.emacs.d/elpa/cider-20230208.2108/cider-tracing
/home/arthur/.emacs.d/elpa/cider-20230218.915/nrepl-dict hides /home/arthur/.emacs.d/elpa/cider-20230208.2108/nrepl-dict
/home/arthur/.emacs.d/elpa/cider-20230218.915/cider-selector hides /home/arthur/.emacs.d/elpa/cider-20230208.2108/cider-selector
/home/arthur/.emacs.d/elpa/cider-20230218.915/cider-ns hides /home/arthur/.emacs.d/elpa/cider-20230208.2108/cider-ns
/home/arthur/.emacs.d/elpa/cider-20230218.915/cider-browse-spec hides /home/arthur/.emacs.d/elpa/cider-20230208.2108/cider-browse-spec
/home/arthur/.emacs.d/elpa/cider-20230218.915/cider-test hides /home/arthur/.emacs.d/elpa/cider-20230208.2108/cider-test
/home/arthur/.emacs.d/elpa/cider-20230218.915/nrepl-client hides /home/arthur/.emacs.d/elpa/cider-20230208.2108/nrepl-client
/home/arthur/.emacs.d/elpa/cider-20230218.915/cider-macroexpansion hides /home/arthur/.emacs.d/elpa/cider-20230208.2108/cider-macroexpansion
/home/arthur/.emacs.d/elpa/cider-20230218.915/cider-connection hides /home/arthur/.emacs.d/elpa/cider-20230208.2108/cider-connection
/home/arthur/.emacs.d/elpa/cider-20230218.915/cider hides /home/arthur/.emacs.d/elpa/cider-20230208.2108/cider
/home/arthur/.emacs.d/elpa/cider-20230218.915/cider-doc hides /home/arthur/.emacs.d/elpa/cider-20230208.2108/cider-doc
/home/arthur/.emacs.d/elpa/cider-20230218.915/cider-resolve hides /home/arthur/.emacs.d/elpa/cider-20230208.2108/cider-resolve
/home/arthur/.emacs.d/elpa/cider-20230218.915/cider-xref hides /home/arthur/.emacs.d/elpa/cider-20230208.2108/cider-xref
/home/arthur/.emacs.d/elpa/cider-20230218.915/cider-scratch hides /home/arthur/.emacs.d/elpa/cider-20230208.2108/cider-scratch
/home/arthur/.emacs.d/elpa/cider-20230218.915/cider-inspector hides /home/arthur/.emacs.d/elpa/cider-20230208.2108/cider-inspector
/home/arthur/.emacs.d/elpa/cider-20230218.915/cider-autoloads hides /home/arthur/.emacs.d/elpa/cider-20230208.2108/cider-autoloads
/home/arthur/.emacs.d/elpa/cider-20230218.915/cider-mode hides /home/arthur/.emacs.d/elpa/cider-20230208.2108/cider-mode
/home/arthur/.emacs.d/elpa/cider-20230218.915/cider-apropos hides /home/arthur/.emacs.d/elpa/cider-20230208.2108/cider-apropos
/home/arthur/.emacs.d/elpa/cider-20230218.915/cider-popup hides /home/arthur/.emacs.d/elpa/cider-20230208.2108/cider-popup
/home/arthur/.emacs.d/elpa/cider-20230218.915/cider-pkg hides /home/arthur/.emacs.d/elpa/cider-20230208.2108/cider-pkg

Features:
(shadow mail-extr emacsbug qp gnus-ml gnus-topic nndraft nnmh nnfolder utf-7
network-stream gnus-agent gnus-srvr gnus-score score-mode nnvirtual gnus-msg
nntp gnus-cache cus-start help-fns radix-tree cl-print bug-reference bookmark
tabify org-capture timezone org-goto cursor-sensor org-mouse let-alist
ob-hide-markers ace-window avy org-eldoc org-element org-persist org-id
org-refile avl-tree oc-basic ol-eww eww url-queue mm-url ol-rmail ol-mhe ol-irc
ol-info ol-gnus nnselect gnus-art mm-uu mml2015 mm-view mml-smime smime gnutls
dig gnus-sum shr pixel-fill kinsoku url-file svg dom gnus-group gnus-undo
gnus-start gnus-dbus gnus-cloud nnimap nnmail mail-source utf7 nnoo gnus-spec
gnus-int gnus-range message sendmail yank-media rfc822 mml mml-sec epa epg
rfc6068 epg-config mm-decode mm-bodies mm-encode mailabbrev gmm-utils mailheader
gnus-win ol-docview doc-view jka-compr ol-bibtex bibtex ol-bbdb ol-w3m ol-doi
org-link-doi vc-git diff-mode vc-dispatcher helm-command dired-narrow
helm-external helm-net tramp-archive tramp-gvfs tramp-cache time-stamp zeroconf
ffap helm-flx flx emms-mpris dbus sv-kalender lunar solar cal-dst holidays
holiday-loaddefs extras windmove recentf tree-widget emms-librefm-stream xml
emms-librefm-scrobbler emms-i18n emms-history emms-score emms-stream-info
emms-metaplaylist-mode emms-bookmarks emms-cue emms-mode-line-icon emms-browser
sort emms-playlist-sort emms-last-played emms-player-xine emms-player-mpd tq
emms-lyrics emms-url emms-streams emms-show-all emms-tag-editor
emms-tag-tracktag emms-mark emms-cache emms-info-native bindat
emms-info-exiftool emms-info-tinytag emms-info-metaflac emms-info-opusinfo
emms-info-ogginfo emms-info-mp3info emms-player-vlc emms-player-mplayer
emms-player-mpv emms-mode-line-cycle emms-mode-line emms-playing-time
emms-player-simple emms-info emms-later-do emms-playlist-limit emms-volume
emms-volume-sndioctl emms-volume-mixerctl emms-volume-pulse emms-volume-amixer
emms-playlist-mode emms-source-playlist emms-source-file locate emms-setup emms
emms-compat beacon c++-setup server overseer pkg-info url-http url-auth
mail-parse rfc2231 rfc2047 rfc2045 ietf-drums url-gw nsm puny epl f f-shortdoc s
disp-table page-break-lines company-yasnippet company-ispell ispell
company-clang company-elisp company-etags etags fileloop generator xref
company-semantic company-template company-keywords make-mode nnir gnus nnheader
gnus-util mail-utils range mm-util mail-prsvr which-key solarized-dark-theme
solarized solarized-faces wrap-region elec-pair autorevert hl-line cap-words
superword subword image-file image-converter time delsel saveplace winner
pixel-scroll cua-base cl-extras autoinsert elisp-extras popup helm-pages
helm-mode helm-misc helm-adaptive helm-projectile projectile project lisp-mnt
grep compile ibuf-ext ibuffer ibuffer-loaddefs helm-eshell helm-elisp helm-files
image-dired image-dired-tags image-dired-external image-dired-util xdg
image-mode dired-setup tmtxt-dired-async tmtxt-async-tasks dired-auto-readme
text-property-search dired-git-log dired-copy-paste dired-subtree
dired-hacks-utils dash org-view-mode org-view-font face-remap markdown-mode
color thingatpt openwith dired-x wdired dired-async dired-aux dired
dired-loaddefs exif filenotify tramp tramp-loaddefs trampver tramp-integration
cus-edit pp cus-load wid-edit files-x tramp-compat shell parse-time iso8601
ls-lisp helm-buffers helm-occur helm-tags helm-locate helm-grep helm-regexp
helm-eval edebug-x comp comp-cstr warnings advice which-func imenu edebug debug
backtrace helm-info helm-utils helm-types helm-help helm helm-global-bindings
helm-core helm-source helm-multi-match helm-lib async-bytecomp async
yasnippet-snippets yasnippet cl-extra derived easy-mmode help-mode outshine
outshine-org-cmds outorg org-pretty-table org-protocol org ob ob-tangle ob-ref
ob-lob ob-table ob-exp org-macro org-src ob-comint org-pcomplete pcomplete
comint ansi-osc ansi-color ring org-list org-footnote org-faces org-entities
time-date ob-emacs-lisp ob-core ob-eval org-cycle org-table ol rx org-fold
org-fold-core org-keys oc org-loaddefs find-func cal-menu calendar cal-loaddefs
org-version org-compat org-macs format-spec noutline outline icons company-files
company-capf company sotlisp skeleton paredit edmacro kmacro diminish cl
helm-easymenu pcase info package browse-url url url-proxy url-privacy url-expand
url-methods url-history url-cookie generate-lisp-file url-domsuf url-util
mailcap url-handlers url-parse auth-source cl-seq eieio eieio-core cl-macs
password-cache json subr-x map byte-opt gv bytecomp byte-compile url-vars
cl-loaddefs cl-lib rmc iso-transl tooltip cconv eldoc paren electric uniquify
ediff-hook vc-hooks lisp-float-type elisp-mode mwheel term/x-win x-win
term/common-win x-dnd 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 font-render-setting cairo xinput2 x
multi-tty make-network-process native-compile emacs)

Memory information:
((conses 16 1097924 136505)
 (symbols 48 48935 1)
 (strings 32 202453 20654)
 (string-bytes 1 7492488)
 (vectors 16 116979)
 (vector-slots 8 2994192 162034)
 (floats 8 1542 7804)
 (intervals 56 37098 2620)
 (buffers 984 45))