On Mon, Sep 22, 2025 at 6:04 PM David Rosenbaum <djr7c4@gmail.com> wrote:
>
> > Also they were designed to abbreviate prefixes, not full symbol names, so the db idea is probably not going to work. As far as I remember, these things were well explained in the manual...
>
> Intended or not, shorthands are being used this way by packages authors. For example, see cond-let and llama.
Are these packages even in Emacs?
> > By the way, I understand the problem easily now. The symbol 'dbus' has the prefix 'db' and when the example file is read 'dbus' becomes 'cl-destructuring-bindus'. This happens at read-time well before evaluation or byte-compilation.
>
> (require 'dbus) isn't in the example file though. It's in tramp-gvfs which was precompiled when emacs was built. It is tramp-gvfs that is required from the example file.
I see the problem and have reproduced it. It's a bug. And I don't understand it. The `tramp-gvfs` file should have been read long before the shorthand was established in in the example file.