X-Loop: help-debbugs@HIDDEN Subject: bug#32668: 26.1; Give find-dired prefix argument behaviour equivalent to that of rgrep Resent-From: Phil Sainty <psainty@HIDDEN> Original-Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> Resent-CC: bug-gnu-emacs@HIDDEN Resent-Date: Sun, 09 Sep 2018 09:35:02 +0000 Resent-Message-ID: <handler.32668.B.153648566811310 <at> debbugs.gnu.org> Resent-Sender: help-debbugs@HIDDEN X-GNU-PR-Message: report 32668 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: 32668 <at> debbugs.gnu.org X-Debbugs-Original-To: bug-gnu-emacs@HIDDEN Received: via spool by submit <at> debbugs.gnu.org id=B.153648566811310 (code B ref -1); Sun, 09 Sep 2018 09:35:02 +0000 Received: (at submit) by debbugs.gnu.org; 9 Sep 2018 09:34:28 +0000 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 From: Phil Sainty <psainty@HIDDEN> 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-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))
Content-Disposition: inline Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-Mailer: MIME-tools 5.505 (Entity 5.505) Content-Type: text/plain; charset=utf-8 X-Loop: help-debbugs@HIDDEN From: help-debbugs@HIDDEN (GNU bug Tracking System) To: Phil Sainty <psainty@HIDDEN> Subject: bug#32668: Acknowledgement (26.1; Give find-dired prefix argument behaviour equivalent to that of rgrep) Message-ID: <handler.32668.B.153648566811310.ack <at> debbugs.gnu.org> References: <c9898a38-3cad-9e61-9be0-7df7c0b544cb@HIDDEN> X-Gnu-PR-Message: ack 32668 X-Gnu-PR-Package: emacs Reply-To: 32668 <at> debbugs.gnu.org Date: Sun, 09 Sep 2018 09:35:04 +0000 Thank you for filing a new bug report with debbugs.gnu.org. This is an automatically generated reply to let you know your message has been received. Your message is being forwarded to the package maintainers and other interested parties for their attention; they will reply in due course. Your message has been sent to the package maintainer(s): bug-gnu-emacs@HIDDEN If you wish to submit further information on this problem, please send it to 32668 <at> debbugs.gnu.org. Please do not send mail to help-debbugs@HIDDEN unless you wish to report a problem with the Bug-tracking system. --=20 32668: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=3D32668 GNU Bug Tracking System Contact help-debbugs@HIDDEN with problems
X-Loop: help-debbugs@HIDDEN Subject: bug#32668: bug#27456: 25.2; Not possible to use -prune with find-dired Resent-From: Drew Adams <drew.adams@HIDDEN> Original-Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> Resent-CC: bug-gnu-emacs@HIDDEN Resent-Date: Sun, 09 Sep 2018 14:05:02 +0000 Resent-Message-ID: <handler.32668.B32668.153650188414409 <at> debbugs.gnu.org> Resent-Sender: help-debbugs@HIDDEN X-GNU-PR-Message: followup 32668 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Phil Sainty <psainty@HIDDEN>, Michael Heerdegen <michael_heerdegen@HIDDEN> Cc: 27456 <at> debbugs.gnu.org, 32668 <at> debbugs.gnu.org, darkfeline@HIDDEN Received: via spool by 32668-submit <at> debbugs.gnu.org id=B32668.153650188414409 (code B ref 32668); Sun, 09 Sep 2018 14:05:02 +0000 Received: (at 32668) by debbugs.gnu.org; 9 Sep 2018 14:04:44 +0000 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> 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-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
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997 nCipher Corporation Ltd,
1994-97 Ian Jackson.