Subject: Re: bug#24518: 25.2.50; dired-mark-extension with prefix arg fails

From: Eli Zaretskii <[email-masked]>
Date: Sat, 24 Sep 2016 14:52:18 +0300

> From: Tino Calancha <[email-masked]>
> Date: Fri, 23 Sep 2016 23:13:52 +0900 (JST)
> Cc: [email-masked]
> 
> 
> emacs -Q ~ -eval "(require 'dired-x)"
> C-u * . el RET
> ;; signal error:
> Wrong type argument: char-or-string-p, (4)
> 
> Because the interactive specification read MARKER-CHAR using 'P'.
> That would be sensical if prefix argument has the meaning of unmark
> files.  That behaviour is found elsewhere in Dired, for instance,
> `dired-mark-executables', `dired-mark-directories',
> `dired-mark-files-regexp'.
> 
> In following patch, `dired-mark-extension' with a prefix argument
> unmark files:

This loses the feature whereby the user could also specify the
character to use as the marker.  Try "C-u 65 * . el RET" to see what
that does.

While using the numeric code of a character sounds like a kludge, the
current implementation seems to do that deliberately.  It might make
sense to use 'c' instead of 'P' there, I think, but your patch totally
changes the semantics of the prefix argument, so I'm not sure I can
endorse such a change.

Thanks.