Subject: bug#19923: 24.4: diredp-do-bookmark fails: claims "Wrong number of arguments"

From: Drew Adams <[email-masked]>
Date: Sun, 22 Feb 2015 12:33:58 -0800 (PST)

Boruch,

Should be OK now. Please download the latest dired+.el from
Emacs Wiki, or wait up to a day for it to be mirrored on MELPA.
http://www.emacswiki.org/emacs/download/dired%2b.el.

Thanks for the bug report.

In answer to your questions:

1. Why function `diredp-bookmark' has parameter NO-MSG-P?
   Non-nil is passed for that arg when called from `diredp-do-bookmark'
   and `diredp-do-bookmark-recursive', which create multiple bookmarks.
   This is to prevent umpteen progress messages.

2. Why the funky error message?
   Dunno why the file name was shown as `<filename>', unless somehow
   `dired-get-file-for-visit' returned that.  The rest of the error
   message is from `error-message-string', from the error that was
   raised.  Why that looks like byte-code, I don't know.  That part
   looks like an Emacs bug, to me.  And the error is raised by the
   vanilla `bookmark-store' code in bookmark.el.

3. Why doesn't `diredp-do-bookmark' prompt the user for a bookmark,
   and just assumes that the user wants the bookmark name to be the
   filename?
   That's the feature. ;-) `diredp-do-bookmark' etc. are really aimed
   at quickly creating multiple bookmarks without naming them, in which
   case you (I, at least)) would not want to have to provide a bookmark
   name for each file.

   In addition, these commands are most useful in conjunction with
   library Bookmark+, in which case the aim is precisely to have
   (so-called "autofile") bookmarks whose names are the (non-directory)
   file names, so they can be manipulated using file commands etc.

   It might be possible to have these commands prompt for the bookmark
   name in the case where they act on only one bookmark, but I'm not
   in favor of that either; sorry.  You can easily write a modified
   version of `diredp-bookmark' that does that, for your own use.

4. Why the comment about keeping part of the code in sync with the
   code for `bmkp-make-record-for-target-file', and where is that
   function?
   This is a note to myself, so that if I improve one of these
   functions later I will remember to consider improving the other
   one similarly.  Function `bmkp-make-record-for-target-file' is in
   library Bookmark+:  http://www.emacswiki.org/emacs/BookmarkPlus

HTH.