Subject: 25.2; Not possible to use -prune with find-dired
From: Allen Li <[email-masked]>
To: [email-masked]
Date: Thu, 22 Jun 2017 23:00:48 -0700
List-Id: <debbugs-submit.debbugs.gnu.org>

It is not possible to effectively use the -prune action with find-dired.

With plain find, -prune would be used like:

    find . -name "foo*" -prune -o -name "*.el" -ls

However, find-dired wraps everything:

    (find-dired "." "-name \\"foo*\\" -prune -o -name \\"*.el\\" -ls")

results in the equivalent call:

    find . \( -name "foo*" -prune -o -name "*.el" -ls \) -ls

Notably, this will list files matching foo*

Unfortunately, I'm not sure if there are any easy remedies.  Perhaps
find-dired should refrain from appending -ls if ARGS already contains
-ls.

In GNU Emacs 25.2.1 (x86_64-unknown-linux-gnu, GTK+ Version 3.22.10)