GNU bug report logs - #32668
26.1; Give find-dired prefix argument behaviour equivalent to that of rgrep

Please note: This is a static page, with minimal formatting, updated once a day.
Click here to see this page with the latest information and nicer formatting.

Package: emacs; Severity: wishlist; Reported by: Phil Sainty <psainty@HIDDEN>; dated Sun, 9 Sep 2018 09:35:02 UTC; Maintainer for emacs is bug-gnu-emacs@HIDDEN.

Message received at 32668 <at> debbugs.gnu.org:


Received: (at 32668) by debbugs.gnu.org; 9 Sep 2018 14:04:44 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sun Sep 09 10:04:44 2018
Received: from localhost ([127.0.0.1]:51401 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1fz0KS-0003kJ-3S
	for submit <at> debbugs.gnu.org; Sun, 09 Sep 2018 10:04:44 -0400
Received: from userp2120.oracle.com ([156.151.31.85]:51352)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <drew.adams@HIDDEN>)
 id 1fz0KQ-0003k2-Fu; Sun, 09 Sep 2018 10:04:42 -0400
Received: from pps.filterd (userp2120.oracle.com [127.0.0.1])
 by userp2120.oracle.com (8.16.0.22/8.16.0.22) with SMTP id w89E3c6X115792;
 Sun, 9 Sep 2018 14:04:35 GMT
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com;
 h=mime-version :
 message-id : date : from : sender : to : cc : subject : references :
 in-reply-to : content-type : content-transfer-encoding; s=corp-2018-07-02;
 bh=a2sjsKrvEZVaQch4AkUbEA8lx0V9eeSAWRfS58zrMJU=;
 b=a+EeJWfg6RhhAqO1iHe1RYodeS3j5t8oYWQydzMfJwEqOi9JMFRVox3gyBv89YwCuPZh
 JppTsV5uuxwqYZVnFhtcmX2au3YlaDXXbZ91SRI1OG9LlWSgG+hgWZorCNITWSYU29vY
 QmNeA/y5J4stoY/YQr4zF7VuxaBVKLf9irA8HulxIMdJnTG5CYc+ygJa+LmV7Qn+a7H9
 jflTCyR44uCYBOHocFlq/UAjhWcPSomQ2pIsNE7FReckJjGEWzvzO+UcvHfMz0M9YQ3A
 +FcjHdUx2MtqlOuya2enmQhSYCoArsAASXEbSJaJ01PU+hf1hP+qJPdXIi3pS09QvIKM 3Q== 
Received: from userv0021.oracle.com (userv0021.oracle.com [156.151.31.71])
 by userp2120.oracle.com with ESMTP id 2mc72qae0x-1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK);
 Sun, 09 Sep 2018 14:04:34 +0000
Received: from userv0121.oracle.com (userv0121.oracle.com [156.151.31.72])
 by userv0021.oracle.com (8.14.4/8.14.4) with ESMTP id w89E4TKt031275
 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK);
 Sun, 9 Sep 2018 14:04:29 GMT
Received: from abhmp0005.oracle.com (abhmp0005.oracle.com [141.146.116.11])
 by userv0121.oracle.com (8.14.4/8.13.8) with ESMTP id w89E4R7k000604;
 Sun, 9 Sep 2018 14:04:27 GMT
MIME-Version: 1.0
Message-ID: <0b2d5d16-846e-4711-b1c4-0030a6871b7e@default>
Date: Sun, 9 Sep 2018 07:04:26 -0700 (PDT)
From: Drew Adams <drew.adams@HIDDEN>
To: Phil Sainty <psainty@HIDDEN>, Michael Heerdegen
 <michael_heerdegen@HIDDEN>
Subject: RE: bug#27456: 25.2; Not possible to use -prune with find-dired
References: <87k243qm3z.fsf@HIDDEN>
 <CADbSrJyXNwuW5hnftUugznxCsMKUzuDw3k61eoQfM63uieuh-A@HIDDEN>
 <87lg8bz96e.fsf@HIDDEN> <4a51546f-d4b6-739e-5cc2-55c5f5694b33@HIDDEN>
 <87in3fi6cc.fsf@HIDDEN> <e19aeea2-4705-d887-f3b4-e4708555a361@HIDDEN>
In-Reply-To: <e19aeea2-4705-d887-f3b4-e4708555a361@HIDDEN>
X-Priority: 3
X-Mailer: Oracle Beehive Extensions for Outlook 2.0.1.9.1  (1003210) [OL
 16.0.4735.0 (x86)]
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
X-Proofpoint-Virus-Version: vendor=nai engine=5900 definitions=9010
 signatures=668708
X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 suspectscore=0
 malwarescore=0
 phishscore=0 bulkscore=0 spamscore=0 mlxscore=0 mlxlogscore=999
 adultscore=0 classifier=spam adjust=0 reason=mlx scancount=1
 engine=8.0.1-1807170000 definitions=main-1809090155
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: 32668
Cc: 27456 <at> debbugs.gnu.org, 32668 <at> debbugs.gnu.org, darkfeline@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

> For now I have raised this as bug#32668: 26.1; Give find-dired prefix
> argument behaviour equivalent to that of rgrep

FWIW, in my library `find-dired+.el', which adds to `find-dired.el',
`find-dired' acts as follows (`C-h f find-dired'):

------8<---------------
find-dired is an interactive Lisp function in =E2=80=98find-dired+.el=E2=80=
=99.=20

(find-dired DIR ARGS &optional DEPTH-LIMITS EXCLUDED-PATHS)

Run =E2=80=98find=E2=80=99 and put its output in a buffer in Dired Mode.
Then run =E2=80=98find-dired-hook=E2=80=99 and =E2=80=98dired-after-readin-=
hook=E2=80=99.
The =E2=80=98find=E2=80=99 command run (after changing into DIR) is essenti=
ally this,
where LS-SWITCHES is =E2=80=98(car find-ls-option)=E2=80=99:

  find . \( ARGS \) LS-SWITCHES

Optional args:

* DEPTH-LIMITS:   Minimum and maximum depths: (MIN-DEPTH MAX-DEPTH).
* EXCLUDED-PATHS: Strings matching paths to be excluded.
                  Uses =E2=80=98find=E2=80=99 switch =E2=80=98-path=E2=80=
=99.

When both optional args are non-nil, the =E2=80=98find=E2=80=99 command run=
 is this:

  find . -mindepth MIN-DEPTH -maxdepth MAX-DEPTH
         \( -path EXCLUDE1 -o -path EXCLUDE2 ... \)
         -prune -o \( ARGS \) LS-SWITCHES

where EXCLUDE1, EXCLUDE2... are the EXCLUDED-PATHS, but shell-quoted.
------8<---------------

The same is true for `find-name-dired' and `find-grep-dired' - they make th=
e same use of `-prune', as does the new command `find-time-dired' (`C-h f')=
:

------8<---------------
find-time-dired is an interactive Lisp function in =E2=80=98find-dired+.el=
=E2=80=99.
=20
(find-time-dired DIR MIN-TIME MAX-TIME &optional DEPTH-LIMITS
EXCLUDED-PATHS)

Find files in directory DIR newer or older than a timestamp.
The output is shown in a Dired buffer.

MIN-TIME is a format-time string parsable by =E2=80=98parse-time-string=E2=
=80=99, such
 as "2014-12-25 23:59:00".  Only files newer than this are shown.
 If MIN-TIME is nil or a string matching regexp "^\s-*$", there is
 no lower time limit.

MAX-TIME is also a format-time string parsable by =E2=80=98parse-time-strin=
g=E2=80=99.
 Only files older than this time are shown.
 If MAX-TIME is nil or a string matching regexp "^\s-*$", the upper
 time limit is the current system time.

Optional arg DEPTH-LIMITS is a list (MIN-DEPTH MAX-DEPTH) of the
 minimum and maximum depths.  If nil, search directory tree under DIR.

Optional arg EXCLUDED-PATHS is a list of strings that match paths to
 exclude from the search.  If nil, search all directories.

If args DEPTH-LIMITS and EXCLUDED-PATHS are both non-nil then the
command run is essentially the following:

    find . -mindepth MIN-DEPTH -maxdepth MAX-DEPTH
           \( -path EXCLUDE1 -o -path EXCLUDE2 ... \)
           -prune -o \( -TIME-SWITCH -SINCE-MIN -TIME-SWITCH +SINCE-MAX \)
           LS-SWITCHES

where:

* EXCLUDE1, EXCLUDE2... are the EXCLUDED-PATHS, but shell-quoted.
* TIME-SWITCH is =E2=80=98find-diredp-time-prefix=E2=80=99 concatenated wit=
h "min".
* SINCE-MIN is the elapsed time since MIN-TIME in minutes.
* SINCE-MAX is the elapsed time since MAX-TIME in minutes.
* LS-SWITCHES is =E2=80=98(car find-ls-option)=E2=80=99.
------8<---------------

This code was improved by Tino Calancha. Without having studied
the bug threads of #27456 or #32668, this sounds relevant. If it
helps I can offer this code, as a patch or as is. The code is here:

https://www.emacswiki.org/emacs/download/find-dired%2b.el




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#32668; Package emacs. Full text available.

Message received at submit <at> debbugs.gnu.org:


Received: (at submit) by debbugs.gnu.org; 9 Sep 2018 09:34:28 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sun Sep 09 05:34:28 2018
Received: from localhost ([127.0.0.1]:50824 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1fyw6t-0002wL-Ol
	for submit <at> debbugs.gnu.org; Sun, 09 Sep 2018 05:34:28 -0400
Received: from eggs.gnu.org ([208.118.235.92]:55504)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <psainty@HIDDEN>) id 1fyw6r-0002w7-BX
 for submit <at> debbugs.gnu.org; Sun, 09 Sep 2018 05:34:26 -0400
Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71)
 (envelope-from <psainty@HIDDEN>) id 1fyw6k-0003p2-WD
 for submit <at> debbugs.gnu.org; Sun, 09 Sep 2018 05:34:19 -0400
X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org
X-Spam-Level: 
X-Spam-Status: No, score=0.8 required=5.0 tests=BAYES_50,FREEMAIL_FROM
 autolearn=disabled version=3.3.2
Received: from lists.gnu.org ([2001:4830:134:3::11]:53320)
 by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_256_CBC_SHA1:32)
 (Exim 4.71) (envelope-from <psainty@HIDDEN>)
 id 1fyw6k-0003ou-SS
 for submit <at> debbugs.gnu.org; Sun, 09 Sep 2018 05:34:18 -0400
Received: from eggs.gnu.org ([2001:4830:134:3::10]:48249)
 by lists.gnu.org with esmtp (Exim 4.71)
 (envelope-from <psainty@HIDDEN>) id 1fyw6j-0002gY-Q4
 for bug-gnu-emacs@HIDDEN; Sun, 09 Sep 2018 05:34:18 -0400
Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71)
 (envelope-from <psainty@HIDDEN>) id 1fyw6f-0003k9-Q2
 for bug-gnu-emacs@HIDDEN; Sun, 09 Sep 2018 05:34:17 -0400
Received: from smtp-3.orcon.net.nz ([60.234.4.44]:54206)
 by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16)
 (Exim 4.71) (envelope-from <psainty@HIDDEN>)
 id 1fyw6f-0003hV-FC
 for bug-gnu-emacs@HIDDEN; Sun, 09 Sep 2018 05:34:13 -0400
Received: from [150.107.172.19] (port=13738 helo=[192.168.20.103])
 by smtp-3.orcon.net.nz with esmtpa (Exim 4.86_2)
 (envelope-from <psainty@HIDDEN>) id 1fyw6b-0001Ki-8O
 for bug-gnu-emacs@HIDDEN; Sun, 09 Sep 2018 21:34:10 +1200
To: bug-gnu-emacs@HIDDEN
From: Phil Sainty <psainty@HIDDEN>
Subject: 26.1; Give find-dired prefix argument behaviour equivalent to that of
 rgrep
Message-ID: <c9898a38-3cad-9e61-9be0-7df7c0b544cb@HIDDEN>
Date: Sun, 9 Sep 2018 21:34:08 +1200
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101
 Thunderbird/52.9.1
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Language: en-GB
Content-Transfer-Encoding: 7bit
X-GeoIP: NZ
X-Spam_score: -2.9
X-Spam_score_int: -28
X-Spam_bar: --
X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic]
X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6.x
X-Received-From: 2001:4830:134:3::11
X-Spam-Score: -4.3 (----)
X-Debbugs-Envelope-To: submit
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -5.3 (-----)

In bug#27456 "Not possible to use -prune with find-dired", workarounds
were provided for the issue that, due to the way that `find-dired'
constructs its find command, some common usage patterns for the `find'
command can't be used with `find-dired'.

I think it would be useful and consistent for `find-dired' to acquire
the prefix argument behaviour of `rgrep', which does the following:

> With C-u prefix, you can edit the constructed shell command line
> before it is executed.
> With two C-u prefixes, directly edit and run [the find command].

Giving the user access to edit the final command before it is executed
would allow users to massage otherwise-unusable syntax into a working
command.

This would give users an alternative solution to the kind of problem
presented in the aforementioned bug report, and would be especially
useful for those who are unfamiliar with the particular find options
needed to work around the problem at present.






In GNU Emacs 26.1 (build 1, x86_64-pc-linux-gnu, X toolkit, Xaw3d scroll
bars)
 of 2018-06-19 built on shodan
Windowing system distributor 'The X.Org Foundation', version 11.0.11906000
System Description:	Ubuntu 18.04.1 LTS

Recent messages:
For information about GNU Emacs and the GNU system, type C-h C-a.
funcall-interactively: End of buffer

Configured using:
 'configure --prefix=/home/phil/emacs/26.1/usr/local
 --with-x-toolkit=lucid --without-sound'

Configured features:
XAW3D XPM JPEG TIFF GIF PNG RSVG IMAGEMAGICK DBUS GSETTINGS NOTIFY
GNUTLS LIBXML2 FREETYPE XFT ZLIB TOOLKIT_SCROLL_BARS LUCID X11 THREADS
LCMS2

Important settings:
  value of $LANG: en_NZ.UTF-8
  locale-coding-system: utf-8

Major mode: Dired by name

Minor modes in effect:
  show-paren-mode: t
  minibuffer-depth-indicate-mode: t
  winner-mode: t
  global-hl-line-mode: t
  tooltip-mode: t
  global-eldoc-mode: t
  electric-indent-mode: t
  mouse-wheel-mode: t
  menu-bar-mode: t
  file-name-shadow-mode: t
  global-font-lock-mode: t
  font-lock-mode: t
  auto-composition-mode: t
  auto-encryption-mode: t
  auto-compression-mode: t
  buffer-read-only: t
  line-number-mode: t
  transient-mark-mode: t

Load-path shadows:
None found.

Features:
(shadow sort mail-extr emacsbug message rmc puny seq byte-opt gv
bytecomp byte-compile cconv cl-loaddefs cl-lib format-spec rfc822 mml
mml-sec password-cache epa derived epg epg-config gnus-util rmail
rmail-loaddefs mm-decode mm-bodies mm-encode mail-parse rfc2231
mailabbrev gmm-utils mailheader sendmail rfc2047 rfc2045 ietf-drums
mm-util mail-prsvr mail-utils dired-x easymenu paren mb-depth winner
ring hl-line dired dired-loaddefs advice elec-pair time-date mule-util
tooltip eldoc electric uniquify ediff-hook vc-hooks lisp-float-type
mwheel term/x-win x-win term/common-win x-dnd tool-bar dnd fontset image
regexp-opt fringe tabulated-list replace newcomment text-mode elisp-mode
lisp-mode prog-mode register page menu-bar rfn-eshadow isearch timer
select scroll-bar mouse jit-lock font-lock syntax facemenu font-core
term/tty-colors frame cl-generic cham georgian utf-8-lang misc-lang
vietnamese tibetan thai tai-viet lao korean japanese eucjp-ms cp51932
hebrew greek romanian slovak czech european ethiopic indian cyrillic
chinese composite charscript charprop case-table epa-hook jka-cmpr-hook
help simple abbrev obarray minibuffer cl-preloaded nadvice loaddefs
button faces cus-face macroexp files text-properties overlay sha1 md5
base64 format env code-pages mule custom widget hashtable-print-readable
backquote dbusbind inotify lcms2 dynamic-setting system-font-setting
font-render-setting x-toolkit x multi-tty make-network-process emacs)

Memory information:
((conses 16 101384 15323)
 (symbols 48 20776 1)
 (miscs 40 108 168)
 (strings 32 30269 886)
 (string-bytes 1 789963)
 (vectors 16 15400)
 (vector-slots 8 503524 6466)
 (floats 8 58 59)
 (intervals 56 268 0)
 (buffers 992 13))




Acknowledgement sent to Phil Sainty <psainty@HIDDEN>:
New bug report received and forwarded. Copy sent to bug-gnu-emacs@HIDDEN. Full text available.
Report forwarded to bug-gnu-emacs@HIDDEN:
bug#32668; Package emacs. Full text available.
Please note: This is a static page, with minimal formatting, updated once a day.
Click here to see this page with the latest information and nicer formatting.
Last modified: Mon, 25 Nov 2019 12:00:02 UTC

GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997 nCipher Corporation Ltd, 1994-97 Ian Jackson.