help-gnu-emacs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

RE: [External] : file metadata


From: Drew Adams
Subject: RE: [External] : file metadata
Date: Tue, 15 Oct 2024 21:14:32 +0000

> Bookmark+ seems like just what I need. However, it appears to be broken
> in Emacs 30, and I switched to 30 pre-test a month or so ago. The same
> errors do not appear when I run it in Emacs 29. This is using the latest
> commit from
> https://urldefense.com/v3/__https://github.com/emacsmirror/bookmark-
> plus__;!!ACWV5N9M2RV99hQ!M-
> 3CrV160p4kWvbEN27pGBLIT8ojzosDsDStwA5U6qiaqym41IEHS7Z06Uo8fLX_XVIkKBU9Ex
> eu8TW_-ix8bSez8w$ 

That mirror says the Bookmark+ code there is at least
8 months old.  (Dunno who mirrors the code there.)

The latest updates to Bookmark+ are from 2024-09-16 -
a month ago.  Download the files from Emacs Wiki, to
be sure to get the latest versions.

See this note in bookmark+-mac.el, which is a file of
Lisp macros:

;;    ****** NOTE ******
;;
;;      WHENEVER you update Bookmark+ (i.e., download new versions of
;;      Bookmark+ source files), I recommend that you do the
;;      following:
;;
;;      1. Delete ALL existing BYTE-COMPILED Bookmark+ files
;;         (bookmark+*.elc).
;;      2. Load Bookmark+ (`load-library' or `require').
;;      3. Byte-compile the source files.
;;
;;      In particular, ALWAYS LOAD `bookmark+-mac.el' (not
;;      `bookmark+-mac.elc') BEFORE YOU BYTE-COMPILE new versions of
;;      the files, in case there have been any changes to Lisp macros
;;      (in `bookmark+-mac.el').
;;
;;      (This is standard procedure for Lisp: code that depends on
;;      macros needs to be byte-compiled anew after loading the
;;      updated macros.)
;;
;;    ******************

However, I can't speak to compatibility with Emacs 30
dev versions - I don't have an Emacs 30 version, and I
have no idea what they might have changed that causes
backward incompatibility.  (Keep in mind that 30 isn't
released yet - you're living on the bleeding edge.)

Maybe someone here who's familiar with Emacs 30 can
advise us about the errors you see.

But first try with the latest Bookmark+ files (from
Emacs Wiki), paying attention to the above Note, and
starting with `emacs -Q' (no init file), to avoid
interactions with other things you might have in your
init file.  It's best to try with only the source
files (*.el) first - no byte-compiled files (*.elc),
for debugging purposes.

The error occurs when loading file bookmark+-key.el.
Presumably, one of the `define-key's in that file is
what Emacs 30 chokes on.

You might try manually loading the files in turn, in
the order you see in bookmark+.el.  But load a _copy_
of bookmark+-key.el, which you can bisect, to narrow
the debugging search.  You can add the sexp `(debug)',
moving it to, in effect bisect and enter the debugger
wherever you like.  In the debugger, use `d' to step
or `c' to take big steps.

Sorry for the trouble.  Let me know, if you learn
something I should know about, to prepare for Emacs
30 compatibility.

Getting the files from Emacs Wiki, etc.:

https://www.emacswiki.org/emacs/BookmarkPlus#Libraries

Thx - Drew

> When I first try to load it (through a require) a get this error:
> 
> ``` bt
> Debugger entered--Lisp error: (error "Key sequence r K starts with non-
> prefix key r")
...
>   require(bookmark+-key)
...
>   require(bookmark+)
...
>   load("/home/christopher/.emacs.d/init" noerror nomessage)
...
>   command-line()
>   normal-top-level()
>
> If I (c)ontinue, and then try C-x j, I get this error:
> 
> bt
> Debugger entered--Lisp error: (wrong-type-argument commandp bmkp-jump-
> map)
>   call-interactively(bmkp-jump-map nil nil)
>   command-execute(bmkp-jump-map)
> 
> Christopher Howard



reply via email to

[Prev in Thread] Current Thread [Next in Thread]