Subject: 30.0.50; Typing SPC in a minibuffer with completion

From: Stefan Monnier <[email-masked]>
Date: Tue, 03 Jan 2023 14:05:17 -0500

Package: Emacs
Version: 30.0.50

I wish the SPC binding to `minibuffer-complete-word` would go because it
makes it hard to type SPC in the minibuffer whenever there's completion.

Typing a SPC in a "minibuffer with completion" can be needed when the
things we want to complete contains a SPC character (e.g. file names,
which is why we disable that SPC binding when completing file names),
but also when using completion styles like `orderless` which make the
use of a SPC character to specify how to select the
completion candidates.

So my favorite option is indeed to simply remove this binding.
Those few users who like it and use it (probably long-time users of
Emacs) could easily get it back with:

    (define-key minibuffer-local-completion-map
                " " 'minibuffer-complete-word)

Another option is to change `minibuffer-complete-word` so that instead
of beeping "No match", it inserts a SPC when there's no completion and
`require-match` is nil (after checking that the command was invoked via
SPC).

Yet another option would be to let callers of `completing-read` indicate
that it's likely the users will sometimes want to type a SPC character
for this specific minibuffer input (i.e. `completing-read` would then
use a map like `minibuffer-local-filename-completion-map`).

Currently packages which want to use `completing-read` to let the users
enter a string that will often contain spaces are reduced the either
telling their users "Add this `define-key` thingy in your .emacs because
the defaults suck" or having to use a `minibuffer-with-setup-hook`
workaround that forcefully rebinds SPC during that minibuffer session,
which may be the wrong thing to do if SPC was binding to something else
than `minibuffer-complete-word`.
Both of those options are undesirable, IMO.  We should instead improve
the defaults to make such recommendations and workarounds unnecessary.

        Stefan

 In GNU Emacs 30.0.50 (build 2, x86_64-pc-linux-gnu, X toolkit, cairo
 version 1.16.0, Xaw3d scroll bars) of 2023-01-01 built on pastel
Repository revision: a1dce171667209f9dc5b63fd1cf9a067d8ab419a
Repository branch: work
Windowing system distributor 'The X.Org Foundation', version 11.0.12011000
System Description: Debian GNU/Linux 11 (bullseye)

Configured using:
 'configure -C --enable-checking --enable-check-lisp-object-type --with-modules --with-cairo --with-tiff=ifavailable
 'CFLAGS=-Wall -g3 -Og -Wno-pointer-sign'
 PKG_CONFIG_PATH=/home/monnier/lib/pkgconfig'

Configured features:
CAIRO DBUS FREETYPE GIF GLIB GMP GNUTLS GPM GSETTINGS HARFBUZZ JPEG JSON
LIBSELINUX LIBXML2 MODULES NOTIFY INOTIFY PDUMPER PNG RSVG SECCOMP SOUND
THREADS TOOLKIT_SCROLL_BARS TREE_SITTER WEBP X11 XAW3D XDBE XIM XINPUT2
XPM LUCID ZLIB

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

Major mode: InactiveMinibuffer

Minor modes in effect:
  server-mode: t
  electric-pair-mode: t
  global-reveal-mode: t
  reveal-mode: t
  auto-insert-mode: t
  savehist-mode: t
  minibuffer-electric-default-mode: t
  global-compact-docstrings-mode: t
  global-corfu-mode: t
  url-handler-mode: t
  global-eldoc-mode: t
  show-paren-mode: t
  electric-indent-mode: t
  mouse-wheel-mode: t
  global-prettify-symbols-mode: t
  file-name-shadow-mode: t
  global-font-lock-mode: t
  font-lock-mode: t
  line-number-mode: t
  transient-mark-mode: t
  auto-composition-mode: t
  auto-encryption-mode: t
  auto-compression-mode: t

Load-path shadows:
/home/monnier/src/emacs/nongnu/packages/org-contrib/org-contrib-autoloads hides /home/monnier/src/emacs/nongnu/packages/org-contrib/lisp/org-contrib-autoloads
/home/monnier/src/emacs/nongnu/packages/php-mode/php-mode-autoloads hides /home/monnier/src/emacs/nongnu/packages/php-mode/lisp/php-mode-autoloads
/home/monnier/src/emacs/nongnu/packages/org-contrib/lisp/ob-arduino hides /home/monnier/src/emacs/nongnu/packages/arduino-mode/ob-arduino
/home/monnier/src/emacs/nongnu/packages/stylus-mode/jade-mode hides /home/monnier/src/emacs/nongnu/packages/jade-mode/jade-mode
/home/monnier/src/emacs/nongnu/packages/stylus-mode/sws-mode hides /home/monnier/src/emacs/nongnu/packages/jade-mode/sws-mode
/home/monnier/src/emacs/nongnu/packages/stylus-mode/stylus-mode hides /home/monnier/src/emacs/nongnu/packages/jade-mode/stylus-mode
/home/monnier/src/emacs/nongnu/packages/emacsql-sqlite-builtin/emacsql-psql hides /home/monnier/src/emacs/nongnu/packages/emacsql-mysql/emacsql-psql
/home/monnier/src/emacs/nongnu/packages/emacsql-sqlite-builtin/emacsql-mysql hides /home/monnier/src/emacs/nongnu/packages/emacsql-mysql/emacsql-mysql
/home/monnier/src/emacs/nongnu/packages/emacsql-sqlite-builtin/emacsql-pg hides /home/monnier/src/emacs/nongnu/packages/emacsql-mysql/emacsql-pg
/home/monnier/src/emacs/nongnu/packages/emacsql-sqlite-builtin/emacsql hides /home/monnier/src/emacs/nongnu/packages/emacsql-mysql/emacsql
/home/monnier/src/emacs/nongnu/packages/emacsql-sqlite-builtin/emacsql-sqlite-builtin hides /home/monnier/src/emacs/nongnu/packages/emacsql-mysql/emacsql-sqlite-builtin
/home/monnier/src/emacs/nongnu/packages/emacsql-sqlite-builtin/emacsql-sqlite hides /home/monnier/src/emacs/nongnu/packages/emacsql-mysql/emacsql-sqlite
/home/monnier/src/emacs/nongnu/packages/emacsql-sqlite-builtin/emacsql-compiler hides /home/monnier/src/emacs/nongnu/packages/emacsql-mysql/emacsql-compiler
/home/monnier/src/emacs/nongnu/packages/emacsql-sqlite-builtin/emacsql-sqlite-module hides /home/monnier/src/emacs/nongnu/packages/emacsql-mysql/emacsql-sqlite-module
/home/monnier/src/emacs/nongnu/packages/emacsql-sqlite-builtin/emacsql-psql hides /home/monnier/src/emacs/nongnu/packages/emacsql-sqlite/emacsql-psql
/home/monnier/src/emacs/nongnu/packages/emacsql-sqlite-builtin/emacsql-mysql hides /home/monnier/src/emacs/nongnu/packages/emacsql-sqlite/emacsql-mysql
/home/monnier/src/emacs/nongnu/packages/emacsql-sqlite-builtin/emacsql-pg hides /home/monnier/src/emacs/nongnu/packages/emacsql-sqlite/emacsql-pg
/home/monnier/src/emacs/nongnu/packages/emacsql-sqlite-builtin/emacsql hides /home/monnier/src/emacs/nongnu/packages/emacsql-sqlite/emacsql
/home/monnier/src/emacs/nongnu/packages/emacsql-sqlite-builtin/emacsql-sqlite-builtin hides /home/monnier/src/emacs/nongnu/packages/emacsql-sqlite/emacsql-sqlite-builtin
/home/monnier/src/emacs/nongnu/packages/emacsql-sqlite-builtin/emacsql-sqlite hides /home/monnier/src/emacs/nongnu/packages/emacsql-sqlite/emacsql-sqlite
/home/monnier/src/emacs/nongnu/packages/emacsql-sqlite-builtin/emacsql-compiler hides /home/monnier/src/emacs/nongnu/packages/emacsql-sqlite/emacsql-compiler
/home/monnier/src/emacs/nongnu/packages/emacsql-sqlite-builtin/emacsql-sqlite-module hides /home/monnier/src/emacs/nongnu/packages/emacsql-sqlite/emacsql-sqlite-module
/home/monnier/src/emacs/nongnu/packages/notmuch/notmuch-autoloads hides /home/monnier/src/emacs/nongnu/packages/notmuch/emacs/notmuch-autoloads
/home/monnier/src/emacs/nongnu/packages/magit/magit-autoloads hides /home/monnier/src/emacs/nongnu/packages/magit/lisp/magit-autoloads
/home/monnier/src/emacs/nongnu/packages/magit/git-commit-autoloads hides /home/monnier/src/emacs/nongnu/packages/magit/lisp/git-commit-autoloads
/home/monnier/src/emacs/nongnu/packages/magit/magit-pkg hides /home/monnier/src/emacs/nongnu/packages/magit/lisp/magit-pkg
/home/monnier/src/emacs/nongnu/packages/magit/magit-section-autoloads hides /home/monnier/src/emacs/nongnu/packages/magit/lisp/magit-section-autoloads
/home/monnier/src/emacs/nongnu/packages/magit/git-commit-pkg hides /home/monnier/src/emacs/nongnu/packages/magit/lisp/git-commit-pkg
/home/monnier/src/emacs/nongnu/packages/magit/magit-section-pkg hides /home/monnier/src/emacs/nongnu/packages/magit/lisp/magit-section-pkg
/home/monnier/src/emacs/nongnu/packages/pdf-tools/pdf-tools-autoloads hides /home/monnier/src/emacs/nongnu/packages/pdf-tools/lisp/pdf-tools-autoloads
/home/monnier/src/emacs/nongnu/packages/geiser-kawa/geiser-kawa-autoloads hides /home/monnier/src/emacs/nongnu/packages/geiser-kawa/elisp/geiser-kawa-autoloads
/home/monnier/src/emacs/nongnu/packages/with-editor/with-editor-autoloads hides /home/monnier/src/emacs/nongnu/packages/with-editor/lisp/with-editor-autoloads
/home/monnier/src/emacs/nongnu/packages/geiser/geiser-autoloads hides /home/monnier/src/emacs/nongnu/packages/geiser/elisp/geiser-autoloads
/home/monnier/src/emacs/nongnu/packages/subed/subed-autoloads hides /home/monnier/src/emacs/nongnu/packages/subed/subed/subed-autoloads
/home/monnier/src/emacs/nongnu/packages/emacsql-sqlite-builtin/emacsql-psql hides /home/monnier/src/emacs/nongnu/packages/emacsql-psql/emacsql-psql
/home/monnier/src/emacs/nongnu/packages/emacsql-sqlite-builtin/emacsql-mysql hides /home/monnier/src/emacs/nongnu/packages/emacsql-psql/emacsql-mysql
/home/monnier/src/emacs/nongnu/packages/emacsql-sqlite-builtin/emacsql-pg hides /home/monnier/src/emacs/nongnu/packages/emacsql-psql/emacsql-pg
/home/monnier/src/emacs/nongnu/packages/emacsql-sqlite-builtin/emacsql hides /home/monnier/src/emacs/nongnu/packages/emacsql-psql/emacsql
/home/monnier/src/emacs/nongnu/packages/emacsql-sqlite-builtin/emacsql-sqlite-builtin hides /home/monnier/src/emacs/nongnu/packages/emacsql-psql/emacsql-sqlite-builtin
/home/monnier/src/emacs/nongnu/packages/emacsql-sqlite-builtin/emacsql-sqlite hides /home/monnier/src/emacs/nongnu/packages/emacsql-psql/emacsql-sqlite
/home/monnier/src/emacs/nongnu/packages/emacsql-sqlite-builtin/emacsql-compiler hides /home/monnier/src/emacs/nongnu/packages/emacsql-psql/emacsql-compiler
/home/monnier/src/emacs/nongnu/packages/emacsql-sqlite-builtin/emacsql-sqlite-module hides /home/monnier/src/emacs/nongnu/packages/emacsql-psql/emacsql-sqlite-module
/home/monnier/src/emacs/nongnu/packages/emacsql-sqlite-builtin/emacsql-psql hides /home/monnier/src/emacs/nongnu/packages/emacsql/emacsql-psql
/home/monnier/src/emacs/nongnu/packages/emacsql-sqlite-builtin/emacsql-mysql hides /home/monnier/src/emacs/nongnu/packages/emacsql/emacsql-mysql
/home/monnier/src/emacs/nongnu/packages/emacsql-sqlite-builtin/emacsql-pg hides /home/monnier/src/emacs/nongnu/packages/emacsql/emacsql-pg
/home/monnier/src/emacs/nongnu/packages/emacsql-sqlite-builtin/emacsql hides /home/monnier/src/emacs/nongnu/packages/emacsql/emacsql
/home/monnier/src/emacs/nongnu/packages/emacsql-sqlite-builtin/emacsql-sqlite-builtin hides /home/monnier/src/emacs/nongnu/packages/emacsql/emacsql-sqlite-builtin
/home/monnier/src/emacs/nongnu/packages/emacsql-sqlite-builtin/emacsql-sqlite hides /home/monnier/src/emacs/nongnu/packages/emacsql/emacsql-sqlite
/home/monnier/src/emacs/nongnu/packages/emacsql-sqlite-builtin/emacsql-compiler hides /home/monnier/src/emacs/nongnu/packages/emacsql/emacsql-compiler
/home/monnier/src/emacs/nongnu/packages/emacsql-sqlite-builtin/emacsql-sqlite-module hides /home/monnier/src/emacs/nongnu/packages/emacsql/emacsql-sqlite-module
/home/monnier/src/emacs/nongnu/packages/flx-ido/flx-ido hides /home/monnier/src/emacs/nongnu/packages/flx/flx-ido
/home/monnier/src/emacs/nongnu/packages/flx-ido/flx hides /home/monnier/src/emacs/nongnu/packages/flx/flx
/home/monnier/src/emacs/nongnu/packages/mastodon/mastodon-autoloads hides /home/monnier/src/emacs/nongnu/packages/mastodon/lisp/mastodon-autoloads
/home/monnier/src/emacs/elpa/packages/bbdb/bbdb-autoloads hides /home/monnier/src/emacs/elpa/packages/bbdb/lisp/bbdb-autoloads
/home/monnier/src/emacs/nongnu/packages/org-contrib/lisp/org-notify hides /home/monnier/src/emacs/elpa/packages/org-notify/org-notify
/home/monnier/src/emacs/elpa/packages/srht/srht-autoloads hides /home/monnier/src/emacs/elpa/packages/srht/lisp/srht-autoloads
/home/monnier/src/emacs/elpa/packages/transient/transient-autoloads hides /home/monnier/src/emacs/elpa/packages/transient/lisp/transient-autoloads
/home/monnier/src/emacs/nongnu/packages/paredit/test hides /home/monnier/src/emacs/elpa/packages/num3-mode/test
/home/monnier/src/emacs/elpa/packages/gpr-query/gpr-query hides /home/monnier/src/emacs/elpa/packages/ada-mode/gpr-query
/home/monnier/src/emacs/elpa/packages/gpr-query/prj hides /home/monnier/src/emacs/elpa/packages/ada-mode/prj
/home/monnier/src/emacs/nongnu/packages/org-contrib/lisp/org-contacts hides /home/monnier/src/emacs/elpa/packages/org-contacts/org-contacts
/home/monnier/src/emacs/elpa/packages/taxy-magit-section/taxy-magit-section hides /home/monnier/src/emacs/elpa/packages/taxy/taxy-magit-section
/home/monnier/src/emacs/nongnu/packages/forth-mode/build hides /home/monnier/src/emacs/elpa/packages/lentic/build
/home/monnier/src/emacs/elpa/packages/realgud-lldb/cask-install hides /home/monnier/src/emacs/elpa/packages/realgud-trepan-ni/cask-install
/home/monnier/src/emacs/nongnu/packages/mentor/url-scgi hides /home/monnier/src/emacs/elpa/packages/url-scgi/url-scgi
/home/monnier/src/emacs/elpa/packages/ada-mode/gpr-mode hides /home/monnier/src/emacs/elpa/packages/gpr-mode/gpr-mode
/home/monnier/src/emacs/elpa/packages/ada-mode/gpr-skel hides /home/monnier/src/emacs/elpa/packages/gpr-mode/gpr-skel
/home/monnier/src/emacs/elpa/packages/ada-mode/gpr-process hides /home/monnier/src/emacs/elpa/packages/gpr-mode/gpr-process
/home/monnier/src/emacs/elpa/packages/ada-mode/gpr-indent-user-options hides /home/monnier/src/emacs/elpa/packages/gpr-mode/gpr-indent-user-options
/home/monnier/src/emacs/elpa/packages/ada-mode/gnat-core hides /home/monnier/src/emacs/elpa/packages/wisi/gnat-core
/home/monnier/src/emacs/nongnu/packages/paredit/test hides /home/monnier/src/emacs/elpa/packages/easy-kill/test
/home/monnier/src/emacs/elpa/packages/use-package/use-package-tests hides /home/monnier/src/emacs/elpa/packages/bind-key/use-package-tests
/home/monnier/src/emacs/elpa/packages/use-package/use-package-delight hides /home/monnier/src/emacs/elpa/packages/bind-key/use-package-delight
/home/monnier/src/emacs/elpa/packages/use-package/use-package-diminish hides /home/monnier/src/emacs/elpa/packages/bind-key/use-package-diminish
/home/monnier/src/emacs/elpa/packages/use-package/bind-chord hides /home/monnier/src/emacs/elpa/packages/bind-key/bind-chord
/home/monnier/src/emacs/elpa/packages/use-package/use-package-lint hides /home/monnier/src/emacs/elpa/packages/bind-key/use-package-lint
/home/monnier/src/emacs/elpa/packages/use-package/use-package-core hides /home/monnier/src/emacs/elpa/packages/bind-key/use-package-core
/home/monnier/src/emacs/elpa/packages/use-package/use-package-ensure hides /home/monnier/src/emacs/elpa/packages/bind-key/use-package-ensure
/home/monnier/src/emacs/elpa/packages/use-package/use-package-chords hides /home/monnier/src/emacs/elpa/packages/bind-key/use-package-chords
/home/monnier/src/emacs/elpa/packages/use-package/bind-key hides /home/monnier/src/emacs/elpa/packages/bind-key/bind-key
/home/monnier/src/emacs/elpa/packages/use-package/use-package-chords-tests hides /home/monnier/src/emacs/elpa/packages/bind-key/use-package-chords-tests
/home/monnier/src/emacs/elpa/packages/use-package/use-package-jump hides /home/monnier/src/emacs/elpa/packages/bind-key/use-package-jump
/home/monnier/src/emacs/elpa/packages/use-package/use-package hides /home/monnier/src/emacs/elpa/packages/bind-key/use-package
/home/monnier/src/emacs/elpa/packages/use-package/use-package-bind-key hides /home/monnier/src/emacs/elpa/packages/bind-key/use-package-bind-key
/home/monnier/src/emacs/elpa/packages/use-package/use-package-ensure-system-package hides /home/monnier/src/emacs/elpa/packages/bind-key/use-package-ensure-system-package
/home/monnier/src/emacs/elpa/packages/realgud-lldb/cask-install hides /home/monnier/src/emacs/elpa/packages/realgud/cask-install
/home/monnier/src/emacs/elpa/packages/hydra/hydra-test hides /home/monnier/src/emacs/elpa/packages/lv/hydra-test
/home/monnier/src/emacs/elpa/packages/hydra/hydra hides /home/monnier/src/emacs/elpa/packages/lv/hydra
/home/monnier/src/emacs/elpa/packages/hydra/lv hides /home/monnier/src/emacs/elpa/packages/lv/lv
/home/monnier/src/emacs/elpa/packages/hydra/hydra-ox hides /home/monnier/src/emacs/elpa/packages/lv/hydra-ox
/home/monnier/src/emacs/elpa/packages/hydra/hydra-examples hides /home/monnier/src/emacs/elpa/packages/lv/hydra-examples
/home/monnier/src/emacs/elpa/packages/embark-consult/embark-consult hides /home/monnier/src/emacs/elpa/packages/embark/embark-consult
/home/monnier/src/emacs/elpa/packages/embark-consult/embark-org hides /home/monnier/src/emacs/elpa/packages/embark/embark-org
/home/monnier/src/emacs/elpa/packages/embark-consult/embark hides /home/monnier/src/emacs/elpa/packages/embark/embark
/home/monnier/src/emacs/elpa/packages/embark-consult/avy-embark-collect hides /home/monnier/src/emacs/elpa/packages/embark/avy-embark-collect
/home/monnier/src/emacs/elpa/packages/ess/ess-autoloads hides /home/monnier/src/emacs/elpa/packages/ess/lisp/ess-autoloads
/home/monnier/src/emacs/elpa/packages/transient/lisp/transient hides /home/monnier/src/emacs/work/lisp/transient
/home/monnier/src/emacs/elpa/packages/use-package/use-package-delight hides /home/monnier/src/emacs/work/lisp/use-package/use-package-delight
/home/monnier/src/emacs/elpa/packages/use-package/use-package-diminish hides /home/monnier/src/emacs/work/lisp/use-package/use-package-diminish
/home/monnier/src/emacs/elpa/packages/use-package/use-package-lint hides /home/monnier/src/emacs/work/lisp/use-package/use-package-lint
/home/monnier/src/emacs/elpa/packages/use-package/use-package-core hides /home/monnier/src/emacs/work/lisp/use-package/use-package-core
/home/monnier/src/emacs/elpa/packages/use-package/use-package-ensure hides /home/monnier/src/emacs/work/lisp/use-package/use-package-ensure
/home/monnier/src/emacs/elpa/packages/use-package/bind-key hides /home/monnier/src/emacs/work/lisp/use-package/bind-key
/home/monnier/src/emacs/elpa/packages/use-package/use-package-jump hides /home/monnier/src/emacs/work/lisp/use-package/use-package-jump
/home/monnier/src/emacs/elpa/packages/use-package/use-package hides /home/monnier/src/emacs/work/lisp/use-package/use-package
/home/monnier/src/emacs/elpa/packages/use-package/use-package-bind-key hides /home/monnier/src/emacs/work/lisp/use-package/use-package-bind-key
/home/monnier/src/emacs/elpa/packages/use-package/use-package-ensure-system-package hides /home/monnier/src/emacs/work/lisp/use-package/use-package-ensure-system-package
/home/monnier/src/emacs/elpa/packages/eglot/eglot hides /home/monnier/src/emacs/work/lisp/progmodes/eglot
/home/monnier/src/emacs/elpa/packages/csharp-mode/csharp-mode hides /home/monnier/src/emacs/work/lisp/progmodes/csharp-mode
/home/monnier/src/emacs/nongnu/packages/lua-mode/lua-mode hides /home/monnier/src/emacs/work/lisp/progmodes/lua-mode
/home/monnier/src/emacs/nongnu/packages/org-contrib/lisp/ob-julia hides /home/monnier/src/emacs/work/lisp/org/ob-julia
/home/monnier/src/emacs/nongnu/packages/org-contrib/lisp/ol-man hides /home/monnier/src/emacs/work/lisp/org/ol-man
/home/monnier/src/emacs/nongnu/packages/org-contrib/lisp/ox-koma-letter hides /home/monnier/src/emacs/work/lisp/org/ox-koma-letter
/home/monnier/src/emacs/elpa/packages/cl-generic/cl-generic hides /home/monnier/src/emacs/work/lisp/emacs-lisp/cl-generic
/home/monnier/.emacs.d/elpa/hyperbole-8.0.0/set hides /home/monnier/src/emacs/work/lisp/emacs-lisp/set
/home/monnier/src/emacs/elpa/packages/nadvice/nadvice hides /home/monnier/src/emacs/work/lisp/emacs-lisp/nadvice
/home/monnier/src/emacs/elpa/packages/seq/seq hides /home/monnier/src/emacs/work/lisp/emacs-lisp/seq
/home/monnier/src/emacs/elpa/packages/cl-lib/cl-lib hides /home/monnier/src/emacs/work/lisp/emacs-lisp/cl-lib
/home/monnier/src/emacs/work/lisp/keymap hides /home/monnier/src/emacs/work/lisp/emacs-lisp/keymap
/home/monnier/src/emacs/elpa/packages/landmark/landmark hides /home/monnier/src/emacs/work/lisp/obsolete/landmark
/home/monnier/src/emacs/elpa/packages/crisp/crisp hides /home/monnier/src/emacs/work/lisp/obsolete/crisp

Features:
(shadow sort mail-extr emacsbug rect cl-print debug backtrace mule-util
autorevert org-eldoc org-element org-persist org-id org-refile avl-tree
generator oc-basic ol-eww eww xdg 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 dbus xml gnus-cloud nnimap
nnmail mail-source utf7 nnoo parse-time gnus-spec gnus-int gnus-range
gnus-win gnus nnheader range wid-edit ol-docview doc-view filenotify
jka-compr image-mode exif ol-bibtex bibtex iso8601 ol-bbdb ol-w3m ol-doi
org-link-doi org ob ob-tangle ob-ref ob-lob ob-table ob-exp org-macro
org-src ob-comint org-pcomplete drupal/pcomplete pcomplete org-list
org-footnote org-faces org-entities ob-emacs-lisp ob-core ob-eval
org-cycle org-table org-keys oc org-loaddefs find-func cal-menu calendar
cal-loaddefs gitignore-mode conf-mode vc-fossil vc-backup vc-hg vc-bzr
vc-src vc-sccs vc-svn vc-cvs vc-rcs vc-got log-edit message sendmail
yank-media puny dired dired-loaddefs rfc822 mml mml-sec epa derived epg
rfc6068 epg-config gnus-util mm-decode mm-bodies mm-encode mail-parse
rfc2231 rfc2047 rfc2045 mm-util ietf-drums mail-prsvr mailabbrev
mail-utils gmm-utils mailheader vc-annotate vc-dir ewoc whitespace
executable copyright dabbrev shortdoc help-fns radix-tree smerge-mode
diff add-log log-view pcvs-util vc misearch multi-isearch vc-git
diff-mode easy-mmode vc-dispatcher filecache bug-reference raku-detect
server cl-extra time-date flymake-proc flymake project compile
text-property-search comint ansi-osc ansi-color ring noutline outline
flyspell ispell checkdoc lisp-mnt thingatpt help-mode elec-pair reveal
autoinsert savehist minibuf-eldef disp-table compact-docstrings corfu
undo-fu-autoloads inkpot-theme-autoloads keycast-autoloads
rubocop-autoloads pcmpl-args-autoloads undo-fu-session-autoloads
camera-autoloads bash-completion-autoloads flymake-popon-autoloads
drupal-mode-autoloads org-superstar-autoloads apache-mode-autoloads
dart-mode-autoloads lua-mode-autoloads evil-goggles-autoloads
monokai-theme-autoloads cyberpunk-theme-autoloads mpv-autoloads
highlight-parentheses-autoloads minibar-autoloads
multiple-cursors-autoloads dockerfile-mode-autoloads
symbol-overlay-autoloads diff-ansi-autoloads eat-autoloads
free-keys-autoloads evil-anzu-autoloads anzu-autoloads tuareg-autoloads
caml-autoloads jinja2-mode-autoloads pcre2el-autoloads paredit-autoloads
apropospriate-theme-autoloads shellcop-autoloads racket-mode-autoloads
pacmacs-autoloads gnuplot-autoloads stylus-mode-autoloads
spell-fu-autoloads nginx-mode-autoloads material-theme-autoloads
el-mock-autoloads raku-mode-autoloads denote-refs-autoloads
arduino-mode-autoloads ede/auto eieio-base guru-mode-autoloads
vc-fossil-autoloads jade-mode-autoloads zig-mode-autoloads
subatomic-theme-autoloads orgit-autoloads evil-nerd-commenter-autoloads
typescript-mode-autoloads why-this-autoloads
emacsql-sqlite-builtin-autoloads iwindow-autoloads workroom-autoloads
gnu-indent-autoloads buttercup-autoloads evil-numbers-autoloads
emacsql-mysql-autoloads git-modes-autoloads
with-simulated-input-autoloads evil-indent-plus-autoloads
jabber-autoloads emacsql-sqlite-autoloads alect-themes-autoloads
geiser-chicken-autoloads sly-autoloads gruvbox-theme-autoloads
vcomplete-autoloads editorconfig-autoloads devhelp-autoloads
auto-dim-other-buffers-autoloads org-journal-autoloads elpher-autoloads
coffee-mode-autoloads blow-autoloads scala-mode-autoloads
ample-theme-autoloads htmlize-autoloads meow-autoloads
graphql-mode-autoloads wgrep-autoloads markdown-mode-autoloads
inf-clojure-autoloads yasnippet-snippets-autoloads autothemer-autoloads
moe-theme-autoloads evil-visualstar-autoloads gc-buffers-autoloads
org-auto-tangle-autoloads gnu-apl-mode-autoloads geiser-mit-autoloads
zenburn-theme-autoloads afternoon-theme-autoloads org-mime-autoloads
xkcd-autoloads xah-fly-keys-autoloads testcover-mark-line-autoloads
geiser-stklos-autoloads proof-general-autoloads proof-site
proof-autoloads flx-ido-autoloads lorem-ipsum-autoloads
webpaste-autoloads evil-args-autoloads org-present-autoloads
org-drill-autoloads julia-mode-autoloads corfu-terminal-autoloads
cycle-at-point-autoloads gotham-theme-autoloads
tangotango-theme-autoloads telephone-line-autoloads
geiser-gambit-autoloads d-mode-autoloads ws-butler-autoloads
nasm-mode-autoloads spacemacs-theme-autoloads opam-switch-mode-autoloads
boxquote-autoloads org-tree-slide-autoloads projectile-autoloads
nix-mode-autoloads swift-mode-autoloads ujelly-theme-autoloads
geiser-gauche-autoloads swsw-autoloads idle-highlight-mode-autoloads
flymake-kondor-autoloads hl-block-mode-autoloads web-mode-autoloads
j-mode-autoloads notmuch-autoloads inf-ruby-autoloads
anti-zenburn-theme-autoloads evil-exchange-autoloads hl-column-autoloads
haskell-mode-autoloads geiser-guile-autoloads popon-autoloads
evil-lisp-state-autoloads better-jumper-autoloads annotate-autoloads
doc-show-inline-autoloads gruber-darker-theme-autoloads
tablist-autoloads rainbow-delimiters-autoloads mentor-autoloads
xml-rpc-autoloads textile-mode-autoloads bison-mode-autoloads
rfc-mode-autoloads geiser-chibi-autoloads sass-mode-autoloads
haml-mode-autoloads systemd-autoloads rust-mode-autoloads
elixir-mode-autoloads writegood-mode-autoloads cdlatex-autoloads
haskell-tng-mode-autoloads geiser-kawa-autoloads cider-autoloads
parseedn-autoloads parseclj-autoloads yaml-mode-autoloads
evil-matchit-autoloads oblivion-theme-autoloads recomplete-autoloads
forth-mode-autoloads engine-mode-autoloads scroll-on-jump-autoloads
geiser-chez-autoloads sesman-autoloads geiser-racket-autoloads
geiser-autoloads helm-autoloads popup-autoloads helm-core-autoloads
scroll-on-drag-autoloads toc-org-autoloads subed-autoloads
prescient-autoloads focus-autoloads edit-indirect-autoloads
sweeprolog-autoloads visual-fill-column-autoloads emacsql-psql-autoloads
emacsql-autoloads go-mode-autoloads dracula-theme-autoloads
solarized-theme-autoloads slime-autoloads macrostep-autoloads
kotlin-mode-autoloads flx-autoloads smartparens-autoloads
evil-iedit-state-autoloads iedit-autoloads evil-autoloads
goto-chg-autoloads crux-autoloads bind-map-autoloads
clojure-mode-autoloads idris-mode-autoloads prop-menu-autoloads
mastodon-autoloads ement-autoloads gnugo-autoloads detached-autoloads
wconf-autoloads json-mode-autoloads ada-ref-man-autoloads
memory-usage-autoloads rich-minority-autoloads
capf-autosuggest-autoloads rt-liberation-autoloads bbdb-autoloads
auto-correct-autoloads tramp-nspawn-autoloads
yasnippet-classic-snippets-autoloads elisp-benchmarks-autoloads
luwak-autoloads gnus-mock-autoloads fontaine-autoloads vdiff-autoloads
omn-mode-autoloads osc-autoloads pspp-mode-autoloads hcel-autoloads
mines-autoloads comint-mime-autoloads tiny-autoloads phps-mode-autoloads
sql-indent-autoloads ascii-art-to-unicode-autoloads agitate-autoloads
vc-hgcmd-autoloads wpuzzle-autoloads nameless-autoloads
gle-mode-autoloads crdt-autoloads perl-doc-autoloads
ahungry-theme-autoloads nano-modeline-autoloads dired-du-autoloads
adjust-parens-autoloads dired-git-info-autoloads polymode-autoloads
pyim-basedict-autoloads sxhkdrc-mode-autoloads repology-autoloads
ace-window-autoloads easy-escape-autoloads org-notify-autoloads
flymake-proselint-autoloads yasnippet-autoloads elsa-autoloads
org-translate-autoloads highlight-escape-sequences-autoloads
lmc-autoloads counsel-autoloads landmark-autoloads diffview-autoloads
validate-autoloads muse-autoloads sql-smie-autoloads
code-cells-autoloads jgraph-mode-autoloads multishell-autoloads
wcheck-mode-autoloads gcmh-autoloads marginalia-autoloads
dts-mode-autoloads ediprolog-autoloads paced-autoloads exwm-autoloads
devdocs-autoloads sokoban-autoloads valign-autoloads rnc-mode-autoloads
el-search-autoloads stream-autoloads sml-mode-autoloads
scanner-autoloads djvu-autoloads expand-region-autoloads
poke-mode-autoloads org-modern-autoloads
gnu-elpa-keyring-update-autoloads minimap-autoloads plz-autoloads
sql-beeline-autoloads cycle-quotes-autoloads lin-autoloads
buffer-expose-autoloads midi-kbd-autoloads isearch-mb-autoloads
eglot-autoloads f90-interface-browser-autoloads emacspeak-autoloads
xclip-autoloads brief-autoloads company-math-autoloads
dbus-codegen-autoloads csv-mode-autoloads chess-autoloads
svg-tag-mode-autoloads visual-filename-abbrev-autoloads mct-autoloads
rcirc-menu-autoloads beacon-autoloads org-remark-autoloads
aggressive-indent-autoloads ack-autoloads arbitools-autoloads
shelisp-autoloads gpr-query-autoloads ob-haxe-autoloads
ebdb-i18n-chn-autoloads vlf-autoloads enwc-autoloads
system-packages-autoloads docbook-autoloads notmuch-indicator-autoloads
num3-mode-autoloads notes-mode-autoloads trinary-autoloads
temp-buffer-browse-autoloads scroll-restore-autoloads
html5-schema-autoloads math-symbol-lists-autoloads poke-autoloads
gnu-elpa-autoloads gnu-elpa-features vcl-mode-autoloads
jarchive-autoloads guess-language-autoloads oauth2-autoloads
svg-clock-autoloads org-real-autoloads ol rx org-fold org-fold-core
org-compat org-version org-macs format-spec inspector-autoloads
treeview-autoloads uni-confusables-autoloads register-list-autoloads
excorporate-autoloads url-http-ntlm-autoloads url-auth
ada-mode-autoloads fsm-autoloads pq-autoloads multi-mode-autoloads
ftable-autoloads crisp-autoloads captain-autoloads cursory-autoloads
realgud-node-debug-autoloads diminish-autoloads org-edna-autoloads
aumix-mode-autoloads parsec-autoloads coterm-autoloads
uniquify-files-autoloads cape-autoloads minibuffer-header-autoloads
advice-patch-autoloads org-contacts-autoloads sed-mode-autoloads
poker-autoloads wrap-search-autoloads sisu-mode-autoloads
sketch-mode-autoloads quarter-plane-autoloads markchars-autoloads
setup-autoloads engrave-faces-autoloads pinentry-autoloads
sotlisp-autoloads ggtags-autoloads gtags-mode-autoloads
hiddenquote-autoloads which-key-autoloads minibuffer-line-autoloads
epoch-view-autoloads disk-usage-autoloads rmsbolt-autoloads
debbugs-autoloads standard-themes-autoloads vc-got-autoloads
ivy-hydra-autoloads hydra-autoloads blist-autoloads ilist-autoloads
timerfunctions-autoloads spinner-autoloads smart-yank-autoloads
transcribe-autoloads ssh-deploy-autoloads path-iterator-autoloads
all-autoloads nano-agenda-autoloads electric-spacing-autoloads
tramp-theme-autoloads relint-autoloads slime-volleyball-autoloads
ergoemacs-mode-autoloads on-screen-autoloads nlinum-autoloads
bug-hunter-autoloads org-transclusion-autoloads nhexl-mode-autoloads
auto-overlays-autoloads jumpc-autoloads zones-autoloads
shell-quasiquote-autoloads nano-theme-autoloads realgud-lldb-autoloads
boxy-headlines-autoloads zuul-autoloads tempel-autoloads
delight-autoloads darkroom-autoloads cobol-mode-autoloads
visual-fill-autoloads diff-hl-autoloads ampc-autoloads
ivy-posframe-autoloads pyim-autoloads xr-autoloads frog-menu-autoloads
taxy-magit-section-autoloads taxy-autoloads smalltalk-mode-autoloads
prefixed-core-autoloads lentic-server-autoloads lentic-autoloads
logos-autoloads dismal-autoloads gited-autoloads sql-cassandra-autoloads
kind-icon-autoloads tomelr-autoloads windower-autoloads
parser-generator-autoloads javaimp-autoloads triples-autoloads
realgud-trepan-ni-autoloads async-autoloads finder-inf
orgalist-autoloads compact-docstrings-autoloads altcaps-autoloads
tmr-autoloads bluetooth-autoloads dash-autoloads peg-autoloads
rcirc-color-autoloads objed-autoloads flylisp-autoloads
dict-tree-autoloads undo-tree-autoloads xpm-autoloads denote-autoloads
realgud-ipdb-autoloads vcard-autoloads lex-autoloads cpio-mode-autoloads
vertico-posframe-autoloads kmb-autoloads gnome-c-style-autoloads
websocket-autoloads wisitoken-grammar-mode-autoloads mmm-mode-autoloads
topspace-autoloads realgud-jdb-autoloads rainbow-mode-autoloads
js2-mode-autoloads ioccur-autoloads osm-autoloads
boxy-headings-autoloads shell-command+-autoloads url-scgi-autoloads
rbit-autoloads vertico-autoloads company-statistics-autoloads
sm-c-mode-autoloads gpr-mode-autoloads gnat-compiler-autoloads
wisi-autoloads web-server-autoloads swiper-autoloads trie-autoloads
heap-autoloads tNFA-autoloads queue-autoloads vigenere-autoloads
package-fixes-autoloads toc-mode-autoloads ebdb-gnorb-autoloads cl-seq
gnorb-autoloads ivy-explorer-autoloads buffer-env-autoloads
vc-backup-autoloads satchel-autoloads xelb-autoloads
cl-generic-autoloads easy-kill-autoloads csharp-mode-autoloads
aircon-theme-autoloads loccur-autoloads aggressive-completion-autoloads
webfeeder-autoloads boxy-autoloads nftables-mode-autoloads
consult-recoll-autoloads bnf-mode-autoloads pabbrev-autoloads
leaf-autoloads adaptive-wrap-autoloads doc-toc-autoloads ztree-autoloads
use-package-autoloads bind-key-autoloads gpastel-autoloads
cpupower-autoloads ef-themes-autoloads transient-cycles-autoloads
vundo-autoloads pulsar-autoloads context-coloring-autoloads
caps-lock-autoloads persist-autoloads realgud-node-inspect-autoloads
realgud-autoloads test-simple-autoloads loc-changes-autoloads
eldoc-eval-autoloads psgml-autoloads frame-tabs-autoloads
myers-autoloads eev-autoloads names-autoloads kiwix-autoloads
request-autoloads greenbar-autoloads rec-mode-autoloads
shen-mode-autoloads greader-autoloads orderless-autoloads
graphql-autoloads load-relative-autoloads emms-autoloads
iterators-autoloads load-dir-autoloads clipboard-collector-autoloads
hook-helpers-autoloads other-frame-window-autoloads
company-ebdb-autoloads info ebdb-autoloads company-autoloads
assess-autoloads m-buffer-autoloads seq-autoloads ivy-avy-autoloads
avy-autoloads ivy-autoloads corfu-doc-autoloads corfu-autoloads
posframe-autoloads filladapt-autoloads svg-lib-autoloads metar-autoloads
cl-lib-autoloads lv-autoloads embark-consult-autoloads consult-autoloads
compat-autoloads nadvice-autoloads embark-autoloads windresize-autoloads
ess-autoloads ustar-withsub-autoloads rudel-autoloads rudel-backend
warnings icons 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 eieio eieio-core
cl-macs gv pcase password-cache json subr-x map byte-opt 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 button loaddefs theme-loaddefs
oclosure cl-preloaded faces cus-face macroexp files window
text-properties overlay sha1 md5 base64 format env code-pages mule
custom widget keymap hashtable-print-readable backquote threads dbusbind
inotify dynamic-setting system-font-setting font-render-setting cairo
x-toolkit xinput2 x multi-tty make-network-process emacs)

Memory information:
((conses 16 446004 226855) (symbols 48 32264 176) (strings 32 139470 29573)
 (string-bytes 1 4602266) (vectors 16 70511) (vector-slots 8 1801395 281279)
 (floats 8 514 350) (intervals 56 20148 0) (buffers 984 43))