X-Loop: help-debbugs@HIDDEN Subject: bug#78926: 30.1; find-file-read-only require-match inconsistency Resent-From: Thierry Volpiatto <thievol@HIDDEN> Original-Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> Resent-CC: bug-gnu-emacs@HIDDEN Resent-Date: Mon, 30 Jun 2025 10:38:02 +0000 Resent-Message-ID: <handler.78926.B.175127982925692 <at> debbugs.gnu.org> Resent-Sender: help-debbugs@HIDDEN X-GNU-PR-Message: report 78926 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: 78926 <at> debbugs.gnu.org X-Debbugs-Original-To: bug-gnu-emacs@HIDDEN Received: via spool by submit <at> debbugs.gnu.org id=B.175127982925692 (code B ref -1); Mon, 30 Jun 2025 10:38:02 +0000 Received: (at submit) by debbugs.gnu.org; 30 Jun 2025 10:37:09 +0000 Received: from localhost ([127.0.0.1]:40698 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1uWBsq-0006gD-2U for submit <at> debbugs.gnu.org; Mon, 30 Jun 2025 06:37:08 -0400 Received: from lists.gnu.org ([2001:470:142::17]:51512) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from <thievol@HIDDEN>) id 1uWBsl-0006es-Se for submit <at> debbugs.gnu.org; Mon, 30 Jun 2025 06:37:04 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from <thievol@HIDDEN>) id 1uWBsf-0007ml-Mv for bug-gnu-emacs@HIDDEN; Mon, 30 Jun 2025 06:36:58 -0400 Received: from mout01.posteo.de ([185.67.36.65]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from <thievol@HIDDEN>) id 1uWBsW-00044T-FP for bug-gnu-emacs@HIDDEN; Mon, 30 Jun 2025 06:36:57 -0400 Received: from submission (posteo.de [185.67.36.169]) by mout01.posteo.de (Postfix) with ESMTPS id 1B40E240042 for <bug-gnu-emacs@HIDDEN>; Mon, 30 Jun 2025 12:36:34 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=posteo.net; s=1984.ea087b; t=1751279794; bh=Xk3vLC1MvWUxrVyvWxkQXYzWHa7oa1rdilqMVTSMrGs=; h=From:To:Subject:Date:Message-ID:MIME-Version:Content-Type: Content-Transfer-Encoding:Autocrypt:OpenPGP:From; b=G7mhjUiBcbBIXXk9Wk0EnUi2/9f9WT/ZI1ImBxe+ApnAf01dsQyFrU6VrKV731UxU ffRKeyUc9jXfsp2yAKmga5MDK7mPu28m1gSiMRLOlbcqBoqFys7LNiDRzgFlsH2dTJ Q3+8aD7EeUghjrM9BtullWqZxh6awpQmlEs/UD8uuOrXhxY021awtPpp5/ebBROSSR zsWYcRYI8B2HmpePS64cYuwtCIywFEOdWNWbPYIZV1vLU1UP4hRoRVtQhts+bdtRaO xC5Rp0pW7WWR0TtC3IVu01O9QISg2/E8ezQbOYAXLB6SY1r0o1gEHs9pRMTjRhQ0Nc pVU6UobWOGBjXGmLn/eLhsIeXgDglajdg5SGtziTLwX0PXHP1z2vpMxy2hevLs11LR ZjPXox64FV5cxZ/+b0Z2jJ3TkuDU75WLBl/C/eEtDb9T23U8pOSn9L6a68rPMQ8ca4 rUsEdm6LRYdbV9vefdH+agLE3WExDKcJEjlGUeBlKnxAuey0dqM Received: from customer (localhost [127.0.0.1]) by submission (posteo.de) with ESMTPSA id 4bW2dY1d7qz9rxT; Mon, 30 Jun 2025 12:36:33 +0200 (CEST) From: Thierry Volpiatto <thievol@HIDDEN> Date: Mon, 30 Jun 2025 10:36:29 +0000 Message-ID: <87o6u58qj6.fsf@HIDDEN> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Autocrypt: addr=thievol@HIDDEN; prefer-encrypt=mutual; keydata=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 TgUq5UmBc7YZ0JYWQgPTbQ== OpenPGP: url=https://posteo.de/keys/thievol@HIDDEN; preference=encrypt Received-SPF: pass client-ip=185.67.36.65; envelope-from=thievol@HIDDEN; helo=mout01.posteo.de X-Spam_score_int: -43 X-Spam_score: -4.4 X-Spam_bar: ---- X-Spam_report: (-4.4 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_MED=-2.3, RCVD_IN_MSPIKE_H5=0.001, RCVD_IN_MSPIKE_WL=0.001, RCVD_IN_VALIDITY_RPBL_BLOCKED=0.001, RCVD_IN_VALIDITY_SAFE_BLOCKED=0.001, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-Spam-Score: 1.0 (+) 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: -0.0 (/) Hello, find-file-read-only is allowing confirmation to exit with a non existing file with `confirm-nonexistent-file-or-buffer`, but when the filename is selected it calls `find-file--read-only` which itself prevent exiting with a non existing file. Did I miss something or is it a bug? Thanks. In GNU Emacs 30.1 (build 6, x86_64-pc-linux-gnu, X toolkit, cairo version 1.16.0, Xaw3d scroll bars) of 2025-05-29 built on IPad-S340 Windowing system distributor 'The X.Org Foundation', version 11.0.12101004 System Description: Linux Mint 21.3 Configured using: 'configure CFLAGS=3D-O8 --bindir=3D/usr/local/sbin/emacs-30.1 --with-cairo --with-x-toolkit=3Dlucid --with-modules --without-tree-sitter --without-native-compilation --disable-gc-mark-trace' Configured features: ACL CAIRO DBUS FREETYPE GIF GLIB GMP GNUTLS GPM GSETTINGS HARFBUZZ JPEG LCMS2 LIBOTF LIBSELINUX LIBSYSTEMD LIBXML2 M17N_FLT MODULES NOTIFY INOTIFY PDUMPER PNG RSVG SECCOMP SOUND SQLITE3 THREADS TIFF TOOLKIT_SCROLL_BARS X11 XAW3D XDBE XIM XINPUT2 XPM LUCID ZLIB Important settings: value of $LANG: fr_FR.UTF-8 locale-coding-system: utf-8-unix Major mode: =EE=A4=A6 Minor modes in effect: bug-reference-prog-mode: t server-mode: t psession-mode: t psession-savehist-mode: t global-git-gutter-mode: t git-gutter-mode: t display-time-mode: t winner-mode: t tv-save-place-mode: t helm-epa-mode: t helm-descbinds-mode: t helm-top-poll-mode: t helm-adaptive-mode: t helm-mode: t helm-minibuffer-history-mode: t helm-ff-icon-mode: t helm-popup-tip-mode: t dired-async-mode: t minibuffer-depth-indicate-mode: t gcmh-mode: t tooltip-mode: t global-eldoc-mode: t eldoc-mode: t show-paren-mode: t mouse-wheel-mode: t file-name-shadow-mode: t global-font-lock-mode: t font-lock-mode: t minibuffer-regexp-mode: t column-number-mode: t line-number-mode: t transient-mark-mode: t auto-composition-mode: t auto-encryption-mode: t auto-compression-mode: t Load-path shadows: None found. Features: (shadow sort epa-mail mail-extr gnus-msg emacsbug tramp-sh shortdoc comp-common char-fold tramp-archive tramp-gvfs tramp-cache time-stamp zeroconf helm-command helm-elisp helm-eval edebug debug backtrace helm-info helm-ls-git vc-git vc vc-dispatcher cc-mode cc-fonts cc-guess cc-menus cc-cmds cc-styles cc-align cc-engine cc-vars cc-defs make-mode markdown-mode color oc-basic cl-extra org-element org-persist org-id org-refile org-element-ast inline avl-tree generator ol-eww eww url-queue mm-url ol-rmail ol-mhe ol-irc ol-info ol-gnus nnselect gnus-art mm-uu mml2015 mm-view mml-smime smime gnutls dig gnus-sum shr pixel-fill kinsoku url-file svg dom gnus-group gnus-undo gnus-start gnus-dbus dbus xml gnus-cloud nnimap nnmail mail-source utf7 nnoo gnus-spec gnus-int gnus-range gnus-win gnus nnheader range ol-docview doc-view ol-bibtex bibtex ol-bbdb ol-w3m ol-doi org-link-doi org-config ob-gnuplot org-crypt org-protocol org ob ob-tangle ob-ref ob-lob ob-table ob-exp org-macro org-src ob-comint org-pcomplete org-list org-footnote org-faces org-entities noutline outline org-version ob-emacs-lisp ob-core ob-eval org-cycle org-table ol org-fold org-fold-core org-keys oc org-loaddefs org-compat org-macs flycheck find-func sh-script smie treesit executable jka-compr bug-reference thingatpt cus-start naquadah-tv-theme view mule-util solar cal-dst holidays holiday-loaddefs appt diary-lib diary-loaddefs cal-menu calendar cal-loaddefs server imenu tv-utils psession frameset mail-config gnus-patch diff-mode track-changes addressbook-bookmark message sendmail yank-media puny rfc822 mml mml-sec gnus-util mm-decode mm-bodies mm-encode mail-parse rfc2231 rfc2047 rfc2045 mm-util ietf-drums mail-prsvr mailabbrev mail-utils gmm-utils mailheader bookmark git-gutter pcase avoid dired-extension time winner describe-variable help-fns radix-tree tv-save-place.el init-helm epa derived epg rfc6068 epg-config helm-epa helm-descbinds cus-edit pp cus-load wid-edit helm-sys helm-adaptive helm-mode helm-misc helm-files image-dired image-dired-tags image-dired-external image-dired-util image-mode exif filenotify tramp rx trampver tramp-integration files-x tramp-message help-mode tramp-compat xdg shell pcomplete parse-time iso8601 time-date tramp-loaddefs helm-buffers helm-x-icons all-the-icons all-the-icons-faces data-material data-weathericons data-octicons data-fileicons data-faicons data-alltheicons helm-occur helm-tags helm-locate helm-grep wgrep-helm wgrep grep compile text-property-search comint ansi-osc ring helm-regexp format-spec ansi-color helm-utils helm-help helm-types helm-extensions-autoloads helm-autoloads helm helm-global-bindings helm-easymenu edmacro kmacro helm-core helm-source helm-multi-match helm-lib dired-async async dired-aux dired dired-loaddefs isl-autoloads mb-depth gcmh easy-mmode all-the-icons-autoloads bash-completion-autoloads emms-autoloads flycheck-autoloads info ledger-mode-autoloads markdown-mode-autoloads nerd-icons-autoloads w3m-load w3m-autoloads package browse-url url url-proxy url-privacy url-expand url-methods url-history url-cookie generate-lisp-file url-domsuf url-util mailcap url-handlers url-parse auth-source cl-seq eieio eieio-core cl-macs icons password-cache json subr-x map byte-opt gv bytecomp byte-compile url-vars cl-loaddefs cl-lib rmc iso-transl tooltip cconv eldoc paren electric uniquify ediff-hook vc-hooks lisp-float-type elisp-mode mwheel term/x-win x-win term/common-win x-dnd touch-screen tool-bar dnd fontset image regexp-opt fringe tabulated-list replace newcomment text-mode lisp-mode prog-mode register page tab-bar menu-bar rfn-eshadow isearch easymenu timer select scroll-bar mouse jit-lock font-lock syntax font-core term/tty-colors frame minibuffer nadvice seq simple cl-generic indonesian philippine 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 emoji-zwj charscript charprop case-table epa-hook jka-cmpr-hook help abbrev obarray oclosure cl-preloaded button loaddefs theme-loaddefs faces cus-face macroexp files window text-properties overlay sha1 md5 base64 format env code-pages mule custom widget keymap hashtable-print-readable backquote threads dbusbind inotify lcms2 dynamic-setting system-font-setting font-render-setting cairo x-toolkit xinput2 x multi-tty move-toolbar make-network-process emacs) Memory information: ((conses 16 689730 616604) (symbols 48 37339 2) (strings 32 197873 47275) (string-bytes 1 5419858) (vectors 16 73920) (vector-slots 8 1155980 212667) (floats 8 3119 1134) (intervals 56 14099 2420) (buffers 984 127)) --=20 Thierry
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: Thierry Volpiatto <thievol@HIDDEN> Subject: bug#78926: Acknowledgement (30.1; find-file-read-only require-match inconsistency) Message-ID: <handler.78926.B.175127982925692.ack <at> debbugs.gnu.org> References: <87o6u58qj6.fsf@HIDDEN> X-Gnu-PR-Message: ack 78926 X-Gnu-PR-Package: emacs Reply-To: 78926 <at> debbugs.gnu.org Date: Mon, 30 Jun 2025 10:38:02 +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 78926 <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 78926: https://debbugs.gnu.org/cgi/bugreport.cgi?bug=3D78926 GNU Bug Tracking System Contact help-debbugs@HIDDEN with problems
X-Loop: help-debbugs@HIDDEN Subject: bug#78926: 30.1; find-file-read-only require-match inconsistency Resent-From: Eli Zaretskii <eliz@HIDDEN> Original-Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> Resent-CC: bug-gnu-emacs@HIDDEN Resent-Date: Tue, 01 Jul 2025 11:13:02 +0000 Resent-Message-ID: <handler.78926.B78926.1751368324669 <at> debbugs.gnu.org> Resent-Sender: help-debbugs@HIDDEN X-GNU-PR-Message: followup 78926 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Thierry Volpiatto <thievol@HIDDEN> Cc: 78926 <at> debbugs.gnu.org Received: via spool by 78926-submit <at> debbugs.gnu.org id=B78926.1751368324669 (code B ref 78926); Tue, 01 Jul 2025 11:13:02 +0000 Received: (at 78926) by debbugs.gnu.org; 1 Jul 2025 11:12:04 +0000 Received: from localhost ([127.0.0.1]:55312 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1uWYu9-0000AN-MB for submit <at> debbugs.gnu.org; Tue, 01 Jul 2025 07:12:03 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:49488) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from <eliz@HIDDEN>) id 1uWYu2-00008E-Az for 78926 <at> debbugs.gnu.org; Tue, 01 Jul 2025 07:11:58 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from <eliz@HIDDEN>) id 1uWYtv-0000g3-Im; Tue, 01 Jul 2025 07:11:47 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date: mime-version; bh=5EnnvednLSZxolxoKcz02KqwKhk+RXxQMBQHKYKZn4E=; b=QcsLo/0x2iA+ OXbiI0lfCvnSAwLk/X27UjwVyP7+Y5ugKrXdQUtL+VeELOu8Ap0i4+OaAupDLe9eZXdAjiJ0uhoPz yj+EhwATdZ5NraLo/+zizcIv/XL42W4alpdiyc5amLKp0sc4IhYMmxpPVPmsJHgXydpLw00UstVbk Roiqw3kDExISLf6BcyED7N2u9wi86JVmGB14Ff67mZ/Tkv3t7qJ0Je/KR88m5P2qFyy/WcJH5Ucm2 PDLuN1o2ixM+r3xDPk+8kOCnsSS+O07nf2fctU6HG9A/IFjPiSWVK9H3XboU8O7PFBlQuIFngBwnc CEE6LboMhzwIQx+qttyfUQ==; Date: Tue, 01 Jul 2025 14:11:45 +0300 Message-Id: <86o6u42mj2.fsf@HIDDEN> From: Eli Zaretskii <eliz@HIDDEN> In-Reply-To: <87o6u58qj6.fsf@HIDDEN> (message from Thierry Volpiatto on Mon, 30 Jun 2025 10:36:29 +0000) References: <87o6u58qj6.fsf@HIDDEN> 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 (---) > From: Thierry Volpiatto <thievol@HIDDEN> > Date: Mon, 30 Jun 2025 10:36:29 +0000 > > find-file-read-only is allowing confirmation to exit with a non existing > file with `confirm-nonexistent-file-or-buffer`, but when the > filename is selected it calls `find-file--read-only` which itself prevent > exiting with a non existing file. > > Did I miss something or is it a bug? Sorry, could you please elaborate? What exactly did you do and what did you see? I tried: emacs -Q M-x set-variable RET confirm-nonexistent-file-or-buffer RET nil RET M-x find-file-read-only RET foobar RET and Emacs signaled an error saying that the file does not exist. Sounds like Emacs does behave reasonably.
X-Loop: help-debbugs@HIDDEN Subject: bug#78926: 30.1; find-file-read-only require-match inconsistency Resent-From: Thierry Volpiatto <thievol@HIDDEN> Original-Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> Resent-CC: bug-gnu-emacs@HIDDEN Resent-Date: Tue, 01 Jul 2025 12:39:04 +0000 Resent-Message-ID: <handler.78926.B78926.175137352630586 <at> debbugs.gnu.org> Resent-Sender: help-debbugs@HIDDEN X-GNU-PR-Message: followup 78926 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Eli Zaretskii <eliz@HIDDEN> Cc: Thierry Volpiatto <thievol@HIDDEN>, 78926 <at> debbugs.gnu.org Received: via spool by 78926-submit <at> debbugs.gnu.org id=B78926.175137352630586 (code B ref 78926); Tue, 01 Jul 2025 12:39:04 +0000 Received: (at 78926) by debbugs.gnu.org; 1 Jul 2025 12:38:46 +0000 Received: from localhost ([127.0.0.1]:55549 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1uWaG3-0007x5-Jy for submit <at> debbugs.gnu.org; Tue, 01 Jul 2025 08:38:45 -0400 Received: from mout02.posteo.de ([185.67.36.66]:42541) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from <thievol@HIDDEN>) id 1uWaFl-0007uy-0Y for 78926 <at> debbugs.gnu.org; Tue, 01 Jul 2025 08:38:37 -0400 Received: from submission (posteo.de [185.67.36.169]) by mout02.posteo.de (Postfix) with ESMTPS id 5E4F3240103 for <78926 <at> debbugs.gnu.org>; Tue, 1 Jul 2025 14:38:17 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=posteo.net; s=1984.ea087b; t=1751373497; bh=JOKBdnyQFpbT9VfcFHU2txaO7D/CjTL6tmaHhRhalhs=; h=From:To:Cc:Subject:Date:Message-ID:MIME-Version:Content-Type: Autocrypt:OpenPGP:From; b=VycD2KvaCnVdkN7dlji+UoxO0E/WgmN5qNI8Rp4FODI6Q+qv7Fz3Aq57y8vPNpfHP k9e6/wYy/0f58hvv+AW8BmaEJk06Ro3+lVA8/CoEIetxk9HFy2wkDbLN9PhR0pIe61 Nq6b9KRx0Y7PriEqOGFchNRU74gRa+w/IymQJrsD1UquOQgxvsrG8+IQ7gzN23UULH gQnMQWjVVYhEYlxFfsT39lhZCrg0aY+WOCxda/cI1WtwcRQ55vwMawrcoFW6dLUPw7 XCEufYjMb5HddpUqg4LNxdwiqvddiSkElgI0wOfgr66qHdn/lqpwgjKpvDcKlsQntm 2271pkYDrJCyfarniz9ErCbzcm0dP7UBQ8/i5WnHgeaV8fty3xDJARWUQUomY613e6 /lNSMDnf5aoqnHquaNQwRajNa3Fei2RBf9GnJuv1QWeCdVz8oxeyDrFENhBYgaUajo Rpvtycx/EF9FrxXuNMWSuINsiM3wIek7Y0hlLQLNvmxV2Zv48dq Received: from customer (localhost [127.0.0.1]) by submission (posteo.de) with ESMTPSA id 4bWjHW66RNz6tx8; Tue, 1 Jul 2025 14:38:15 +0200 (CEST) From: Thierry Volpiatto <thievol@HIDDEN> In-Reply-To: <86o6u42mj2.fsf@HIDDEN> (Eli Zaretskii's message of "Tue, 01 Jul 2025 14:11:45 +0300") References: <87o6u58qj6.fsf@HIDDEN> <86o6u42mj2.fsf@HIDDEN> Date: Tue, 01 Jul 2025 12:38:12 +0000 Message-ID: <87wm8srsqz.fsf@HIDDEN> MIME-Version: 1.0 Content-Type: text/plain Autocrypt: addr=thievol@HIDDEN; prefer-encrypt=mutual; keydata=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 TgUq5UmBc7YZ0JYWQgPTbQ== OpenPGP: url=https://posteo.de/keys/thievol@HIDDEN; preference=encrypt X-Spam-Score: -2.1 (--) 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.1 (---) Eli Zaretskii <eliz@HIDDEN> writes: >> From: Thierry Volpiatto <thievol@HIDDEN> >> Date: Mon, 30 Jun 2025 10:36:29 +0000 >> >> find-file-read-only is allowing confirmation to exit with a non existing >> file with `confirm-nonexistent-file-or-buffer`, but when the >> filename is selected it calls `find-file--read-only` which itself prevent >> exiting with a non existing file. >> >> Did I miss something or is it a bug? > > Sorry, could you please elaborate? What exactly did you do and what > did you see? > > I tried: > > emacs -Q > M-x set-variable RET confirm-nonexistent-file-or-buffer RET nil RET > M-x find-file-read-only RET foobar RET > and Emacs signaled an error saying that the file does not exist. I meant with the default value of confirm-nonexistent-file-or-buffer. It's surprizing that after pressing RET I have a minibuffer-message saying [confirm] and then when I hit RET again I have the error you mentioned. It would be better to use a [no match] message preventing exiting minibuffer in such case, however if you do this (i.e. require-match == t) you prevent exiting with a wildcard. I tried this patch that work as I expect (which is maybe not what you or others expect): index 04a212b9bca..8cb93c90351 100644 --- a/lisp/files.el +++ b/lisp/files.el @@ -2072,23 +2072,28 @@ file names with wildcards." (current-buffer))) (defun find-file--read-only (fun filename wildcards) - (unless (or (and wildcards find-file-wildcards - (not (file-name-quoted-p filename)) - (string-match "[[*?]" filename)) - (file-exists-p filename)) - (error "%s does not exist" filename)) + ;; On interactive calls WILDCARDS is always non nil. + (let ((find-file-wildcards (and wildcards find-file-wildcards))) + (unless (find-file--read-only-require-match filename) + (error "%s does not exist" filename))) (let ((value (funcall fun filename wildcards))) (mapc (lambda (b) (with-current-buffer b (read-only-mode 1))) (if (listp value) value (list value))) value)) +(defun find-file--read-only-require-match (input) + (or (and find-file-wildcards + (not (file-name-quoted-p input)) + (string-match "[[*?]" input)) + (file-exists-p input))) + (defun find-file-read-only (filename &optional wildcards) "Edit file FILENAME but don't allow changes. Like \\[find-file], but marks buffer as read-only. Use \\[read-only-mode] to permit editing." (interactive (find-file-read-args "Find file read-only: " - (confirm-nonexistent-file-or-buffer))) + #'find-file--read-only-require-match)) (find-file--read-only #'find-file filename wildcards)) (defun find-file-read-only-other-window (filename &optional wildcards) The problem is that this patch doesn't ask anymore for confirmation when input is a wildcard, perhaps a new feature would be to enhance the behavior of require-match used as a function. Currently the function can either return nil or t, it could return in addition 'confirm and in this case send a minibuffer message [confirm], on next RET hit it would exit. -- Thierry
X-Loop: help-debbugs@HIDDEN Subject: bug#78926: 30.1; find-file-read-only require-match inconsistency Resent-From: Eli Zaretskii <eliz@HIDDEN> Original-Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> Resent-CC: bug-gnu-emacs@HIDDEN Resent-Date: Tue, 01 Jul 2025 13:50:03 +0000 Resent-Message-ID: <handler.78926.B78926.17513777936664 <at> debbugs.gnu.org> Resent-Sender: help-debbugs@HIDDEN X-GNU-PR-Message: followup 78926 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Thierry Volpiatto <thievol@HIDDEN> Cc: 78926 <at> debbugs.gnu.org Received: via spool by 78926-submit <at> debbugs.gnu.org id=B78926.17513777936664 (code B ref 78926); Tue, 01 Jul 2025 13:50:03 +0000 Received: (at 78926) by debbugs.gnu.org; 1 Jul 2025 13:49:53 +0000 Received: from localhost ([127.0.0.1]:55768 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1uWbMt-0001jA-K9 for submit <at> debbugs.gnu.org; Tue, 01 Jul 2025 09:49:53 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:49956) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from <eliz@HIDDEN>) id 1uWbMp-0001hf-O0 for 78926 <at> debbugs.gnu.org; Tue, 01 Jul 2025 09:49:49 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from <eliz@HIDDEN>) id 1uWbMk-0000ZM-3v; Tue, 01 Jul 2025 09:49:42 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date: mime-version; bh=CulxSCHkRVu8KgEGzt9QgNwqIJrJG5JoDDoDSkOkpFg=; b=bax2bOLSNkDn azRVjFQYNC3+QyRwpKuvXWt1mNrsE+WkefFblPt/+R5FrNQbxXQ+HP9PSAi3PgmYFzUtZ/5lSt6nL vYfpKPOQM67Xts1pn5jJG1Mkiy0U/VMUkxATca3wJOh/6v7czXALGE/9+CORRpJJBenteuDuYu8Qe UYDEsUSlHlFErBoQWw/qvdgheJtgG68mULWhh+WCfnPAeb/da9BFO6iE27D308BQtMZZh8goRauBU SU3tt17UgitlBjRsc18E3gCy9E1cLM7XeMt1ZPcPjUl0vkiAPFCe8bkOiwMZdoYtu5h5dL/EVAnbo TZkdWTYlbzWk64JzwTxejQ==; Date: Tue, 01 Jul 2025 16:49:39 +0300 Message-Id: <86bjq42f7w.fsf@HIDDEN> From: Eli Zaretskii <eliz@HIDDEN> In-Reply-To: <87wm8srsqz.fsf@HIDDEN> (message from Thierry Volpiatto on Tue, 01 Jul 2025 12:38:12 +0000) References: <87o6u58qj6.fsf@HIDDEN> <86o6u42mj2.fsf@HIDDEN> <87wm8srsqz.fsf@HIDDEN> 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 (---) > From: Thierry Volpiatto <thievol@HIDDEN> > Cc: Thierry Volpiatto <thievol@HIDDEN>, 78926 <at> debbugs.gnu.org > Date: Tue, 01 Jul 2025 12:38:12 +0000 > > Eli Zaretskii <eliz@HIDDEN> writes: > > >> From: Thierry Volpiatto <thievol@HIDDEN> > >> Date: Mon, 30 Jun 2025 10:36:29 +0000 > >> > >> find-file-read-only is allowing confirmation to exit with a non existing > >> file with `confirm-nonexistent-file-or-buffer`, but when the > >> filename is selected it calls `find-file--read-only` which itself prevent > >> exiting with a non existing file. > >> > >> Did I miss something or is it a bug? > > > > Sorry, could you please elaborate? What exactly did you do and what > > did you see? > > > > I tried: > > > > emacs -Q > > M-x set-variable RET confirm-nonexistent-file-or-buffer RET nil RET > > M-x find-file-read-only RET foobar RET > > > and Emacs signaled an error saying that the file does not exist. > > I meant with the default value of confirm-nonexistent-file-or-buffer. I see the same with the default value as well. > It's surprizing that after pressing RET I have a minibuffer-message > saying [confirm] and then when I hit RET again I have the error you > mentioned. I don't see any [confirm] when invoking find-file-read-only. When I press RET, I see an error message: /some/file/name does not exist So I guess something is still missing, which is why I asked for detailed instructions. I suspect we still do something differently.
X-Loop: help-debbugs@HIDDEN Subject: bug#78926: 30.1; find-file-read-only require-match inconsistency Resent-From: Thierry Volpiatto <thievol@HIDDEN> Original-Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> Resent-CC: bug-gnu-emacs@HIDDEN Resent-Date: Tue, 01 Jul 2025 14:18:02 +0000 Resent-Message-ID: <handler.78926.B78926.175137943224176 <at> debbugs.gnu.org> Resent-Sender: help-debbugs@HIDDEN X-GNU-PR-Message: followup 78926 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Eli Zaretskii <eliz@HIDDEN> Cc: Thierry Volpiatto <thievol@HIDDEN>, 78926 <at> debbugs.gnu.org Received: via spool by 78926-submit <at> debbugs.gnu.org id=B78926.175137943224176 (code B ref 78926); Tue, 01 Jul 2025 14:18:02 +0000 Received: (at 78926) by debbugs.gnu.org; 1 Jul 2025 14:17:12 +0000 Received: from localhost ([127.0.0.1]:57467 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1uWbnL-0006Hn-Vz for submit <at> debbugs.gnu.org; Tue, 01 Jul 2025 10:17:12 -0400 Received: from mout01.posteo.de ([185.67.36.65]:51307) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from <thievol@HIDDEN>) id 1uWbnH-0006Fg-U8 for 78926 <at> debbugs.gnu.org; Tue, 01 Jul 2025 10:17:08 -0400 Received: from submission (posteo.de [185.67.36.169]) by mout01.posteo.de (Postfix) with ESMTPS id 60A4B240027 for <78926 <at> debbugs.gnu.org>; Tue, 1 Jul 2025 16:16:58 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=posteo.net; s=1984.ea087b; t=1751379418; bh=DNHlWhUHwPuFHwscRn8Kmq8qiIRd+5LCIIYLNSYfrB4=; h=From:To:Cc:Subject:Date:Message-ID:MIME-Version:Content-Type: Autocrypt:OpenPGP:From; b=TKXUMcNWj5aMJ0zgPuXrM2TfzAXobA7M6AfC08MqJSsrVuFyKLCTjsckalxFKC0WL goYENLRmcj50R5XfkLS0/Zr8sdpBlcKbt69Vdb39SV6YSjiBgUIiUq5SPGNtZUTUYL An32cpzJDYYdqeggb2qrZhdmm48HbYZo46fEquI0YkFG6pqHXr9EiL6z6O4I8J+h04 gyLAB+nqh6yUTimcXyM8MTckAFSGpW9PQiWINtlMdskKkdvjHRD7eBMKYRohQ17Nka H3g+aggt4D2AoNbeeflTkumS8KMRXVCWGA15IaTIrsZw6K2kbaBEpqRVV0NC2s7yfn TzGt4BoZwwu4HOSwK1VezV0BgNGfCeI6vlLbPuy7OJPEdwQTlvwYakDvbvstXT51nq ZHT4x091tplR2iQiG3Hla19/3FA5m6dB5s370xR1SCk1HDc4+SmtSk16mI5BbrfTg2 7hcT437ugzxATUKcX07lSo1ZMeb7OwA2AxwBS217RMQjk+qjHdo Received: from customer (localhost [127.0.0.1]) by submission (posteo.de) with ESMTPSA id 4bWlTP1HLzz6tsb; Tue, 1 Jul 2025 16:16:57 +0200 (CEST) From: Thierry Volpiatto <thievol@HIDDEN> In-Reply-To: <86bjq42f7w.fsf@HIDDEN> (Eli Zaretskii's message of "Tue, 01 Jul 2025 16:49:39 +0300") References: <87o6u58qj6.fsf@HIDDEN> <86o6u42mj2.fsf@HIDDEN> <87wm8srsqz.fsf@HIDDEN> <86bjq42f7w.fsf@HIDDEN> Date: Tue, 01 Jul 2025 14:16:53 +0000 Message-ID: <87sejgro6i.fsf@HIDDEN> MIME-Version: 1.0 Content-Type: text/plain Autocrypt: addr=thievol@HIDDEN; prefer-encrypt=mutual; keydata=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 TgUq5UmBc7YZ0JYWQgPTbQ== OpenPGP: url=https://posteo.de/keys/thievol@HIDDEN; preference=encrypt 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 (---) Eli Zaretskii <eliz@HIDDEN> writes: >> From: Thierry Volpiatto <thievol@HIDDEN> >> Cc: Thierry Volpiatto <thievol@HIDDEN>, 78926 <at> debbugs.gnu.org >> Date: Tue, 01 Jul 2025 12:38:12 +0000 >> >> Eli Zaretskii <eliz@HIDDEN> writes: >> >> >> From: Thierry Volpiatto <thievol@HIDDEN> >> >> Date: Mon, 30 Jun 2025 10:36:29 +0000 >> >> >> >> find-file-read-only is allowing confirmation to exit with a non existing >> >> file with `confirm-nonexistent-file-or-buffer`, but when the >> >> filename is selected it calls `find-file--read-only` which itself prevent >> >> exiting with a non existing file. >> >> >> >> Did I miss something or is it a bug? >> > >> > Sorry, could you please elaborate? What exactly did you do and what >> > did you see? >> > >> > I tried: >> > >> > emacs -Q >> > M-x set-variable RET confirm-nonexistent-file-or-buffer RET nil RET >> > M-x find-file-read-only RET foobar RET >> >> > and Emacs signaled an error saying that the file does not exist. >> >> I meant with the default value of confirm-nonexistent-file-or-buffer. > > I see the same with the default value as well. > >> It's surprizing that after pressing RET I have a minibuffer-message >> saying [confirm] and then when I hit RET again I have the error you >> mentioned. > > I don't see any [confirm] when invoking find-file-read-only. When I > press RET, I see an error message: > > /some/file/name does not exist > > So I guess something is still missing, which is why I asked for > detailed instructions. I suspect we still do something differently. The require-match used there is 'confirm-after-completion so perhaps you have to try to complete on something before RET? With Helm such require-match is always transformed in 'confirm. Note that the behavior of 'confirm-after-completion is difficult to understand because you have to try to complete on something that doesn't exist to after exit with it, confusing. Please try with the patch applied and without to see the difference and perhaps what I mean. Thanks. -- Thierry
X-Loop: help-debbugs@HIDDEN Subject: bug#78926: 30.1; find-file-read-only require-match inconsistency Resent-From: Eli Zaretskii <eliz@HIDDEN> Original-Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> Resent-CC: bug-gnu-emacs@HIDDEN Resent-Date: Tue, 01 Jul 2025 15:02:02 +0000 Resent-Message-ID: <handler.78926.B78926.175138209718365 <at> debbugs.gnu.org> Resent-Sender: help-debbugs@HIDDEN X-GNU-PR-Message: followup 78926 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Thierry Volpiatto <thievol@HIDDEN> Cc: 78926 <at> debbugs.gnu.org Received: via spool by 78926-submit <at> debbugs.gnu.org id=B78926.175138209718365 (code B ref 78926); Tue, 01 Jul 2025 15:02:02 +0000 Received: (at 78926) by debbugs.gnu.org; 1 Jul 2025 15:01:37 +0000 Received: from localhost ([127.0.0.1]:57663 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1uWcUK-0004m5-JW for submit <at> debbugs.gnu.org; Tue, 01 Jul 2025 11:01:37 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:51402) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from <eliz@HIDDEN>) id 1uWcUG-0004kV-MT for 78926 <at> debbugs.gnu.org; Tue, 01 Jul 2025 11:01:33 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from <eliz@HIDDEN>) id 1uWcUB-00014z-4g; Tue, 01 Jul 2025 11:01:27 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date: mime-version; bh=oQI2mnrOHd4lXaarmpkA2nKcLvbvvHnbgBry/NoO9f8=; b=W1jeP2GaH1/i ryh8bL1Ebf6ZW++Y1ovv8/XLYQbGR0qpNioaIeZVGygp+kmkCJZh0YY32lX6PdZPvYwKqaTvQxa+f Euh16Ol6i+t9jObMIqY9OwDLXTEjfMx3wDPE9NIVZ18hR8V89U18Q9b/0RDi0SrmdPB7T2mmlXBiW GFe224FpadwNaazAgWVsCXBMYglVw36EpLuWI+iPEegjao2X8J8dLN5kkkNWaOyop9uhu7j+4GGNa LfmAapMFJabTZxEr4VeuQvTXyoAzQUeB/sMvgHFSfFkw7lti5ElPnX0dp+sMaE6UZ/JV5u9+16rAa Lvyv2Ra0mEp9+ZoowB2/xQ==; Date: Tue, 01 Jul 2025 18:01:24 +0300 Message-Id: <867c0s2bwb.fsf@HIDDEN> From: Eli Zaretskii <eliz@HIDDEN> In-Reply-To: <87sejgro6i.fsf@HIDDEN> (message from Thierry Volpiatto on Tue, 01 Jul 2025 14:16:53 +0000) References: <87o6u58qj6.fsf@HIDDEN> <86o6u42mj2.fsf@HIDDEN> <87wm8srsqz.fsf@HIDDEN> <86bjq42f7w.fsf@HIDDEN> <87sejgro6i.fsf@HIDDEN> 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 (---) > From: Thierry Volpiatto <thievol@HIDDEN> > Cc: Thierry Volpiatto <thievol@HIDDEN>, 78926 <at> debbugs.gnu.org > Date: Tue, 01 Jul 2025 14:16:53 +0000 > > Eli Zaretskii <eliz@HIDDEN> writes: > > >> > emacs -Q > >> > M-x set-variable RET confirm-nonexistent-file-or-buffer RET nil RET > >> > M-x find-file-read-only RET foobar RET > >> > >> > and Emacs signaled an error saying that the file does not exist. > >> > >> I meant with the default value of confirm-nonexistent-file-or-buffer. > > > > I see the same with the default value as well. > > > >> It's surprizing that after pressing RET I have a minibuffer-message > >> saying [confirm] and then when I hit RET again I have the error you > >> mentioned. > > > > I don't see any [confirm] when invoking find-file-read-only. When I > > press RET, I see an error message: > > > > /some/file/name does not exist > > > > So I guess something is still missing, which is why I asked for > > detailed instructions. I suspect we still do something differently. > > The require-match used there is 'confirm-after-completion so perhaps you > have to try to complete on something before RET? I didn't try to complete at all. I just typed a name of a non-existent file and pressed RET. > With Helm such require-match is always transformed in 'confirm. So you are not doing this in "emacs -Q", but after activating Helm? > Please try with the patch applied and without to see the difference and > perhaps what I mean. Sorry, I don't understand why I need to patch Emacs in order to see some behavior it has by default.
X-Loop: help-debbugs@HIDDEN Subject: bug#78926: 30.1; find-file-read-only require-match inconsistency Resent-From: Thierry Volpiatto <thievol@HIDDEN> Original-Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> Resent-CC: bug-gnu-emacs@HIDDEN Resent-Date: Tue, 01 Jul 2025 15:15:02 +0000 Resent-Message-ID: <handler.78926.B78926.175138285126323 <at> debbugs.gnu.org> Resent-Sender: help-debbugs@HIDDEN X-GNU-PR-Message: followup 78926 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Eli Zaretskii <eliz@HIDDEN> Cc: Thierry Volpiatto <thievol@HIDDEN>, 78926 <at> debbugs.gnu.org Received: via spool by 78926-submit <at> debbugs.gnu.org id=B78926.175138285126323 (code B ref 78926); Tue, 01 Jul 2025 15:15:02 +0000 Received: (at 78926) by debbugs.gnu.org; 1 Jul 2025 15:14:11 +0000 Received: from localhost ([127.0.0.1]:57724 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1uWcgT-0006qF-47 for submit <at> debbugs.gnu.org; Tue, 01 Jul 2025 11:14:10 -0400 Received: from mout01.posteo.de ([185.67.36.65]:56101) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from <thievol@HIDDEN>) id 1uWcgO-0006o9-Da for 78926 <at> debbugs.gnu.org; Tue, 01 Jul 2025 11:14:06 -0400 Received: from submission (posteo.de [185.67.36.169]) by mout01.posteo.de (Postfix) with ESMTPS id 8C9C2240027 for <78926 <at> debbugs.gnu.org>; Tue, 1 Jul 2025 17:13:56 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=posteo.net; s=1984.ea087b; t=1751382836; bh=QB6/BE1o85nCxBGffbYDCWbnQYX/TOOhDg4c8AnzBdw=; h=From:To:Cc:Subject:Date:Message-ID:MIME-Version:Content-Type: Autocrypt:OpenPGP:From; b=Pn4l31POgyc0gkw/lFSqbSpeCh5KAgFOGtXn5J39+eYr2krEDGAOrrguoo8HrtACn 3cxkdZQLHJM90c981je5Y/vRoZBGe30MMsH1XmNVSeQwC7Mvjy3SA0RpN10v8P3/is M9O6oRV/YNoJksDeslaLuCCGD0AAOSFXkuZ5xH/SxskpZfKKQO8BIcAOpBmqkN658C i4idrJQznqKk61A9B4Dk9LEY2iCac0sZLAd/2bYUd11j39srieOfSrdd46qbeuYERt wlS8v26UE21anN4xISJi8EjgWEEFLu08QOl6cd+RP3UMVnnbt1AgI7Y3TAtkoyV/SY fyTd03bdYEEvB0i2880f/oiS0YeOWQdy0Pk7Mp/8gcAZcID51KYKwKxlDad8+U1PkM l3MUPN2fO43voIFOR+kFDtD25rotZXV59ubQDKpGvMAoCJH+yVKBr6mmzvVmF9pU1A fIDvY7tAQFPzgvPqZRR/oz4LG36Dz4CLoBB1K+dSrevohvqh1yV Received: from customer (localhost [127.0.0.1]) by submission (posteo.de) with ESMTPSA id 4bWml44Fdfz9rxK; Tue, 1 Jul 2025 17:13:52 +0200 (CEST) From: Thierry Volpiatto <thievol@HIDDEN> In-Reply-To: <86o6u42mj2.fsf@HIDDEN> (Eli Zaretskii's message of "Tue, 01 Jul 2025 14:11:45 +0300") References: <87o6u58qj6.fsf@HIDDEN> <86o6u42mj2.fsf@HIDDEN> Date: Tue, 01 Jul 2025 15:13:48 +0000 Message-ID: <87ldp8rljn.fsf@HIDDEN> MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" Autocrypt: addr=thievol@HIDDEN; prefer-encrypt=mutual; keydata=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 TgUq5UmBc7YZ0JYWQgPTbQ== OpenPGP: url=https://posteo.de/keys/thievol@HIDDEN; preference=encrypt 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 (---) --=-=-= Content-Type: text/plain I modified `completion--complete-and-exit` so that the REQUIRE-MATCH argument used with a function as value allows this function to exit with 'confirm in addition of nil/non-nil. I then modified find-file-read-only so that it takes advantage of this: - If you enter a wilcard you are now asked for confirm. - If you enter a non existing filename you can't exit ([nomatch]. Note: Of course the current behavior of find-file-read-only is fine, maybe a little confusing but it's ok, this patch is just a proof of concept for REQUIRE-MATCH used as a function with this new behavior. The patches need to be reworked, didn't fully test the non interactive usage and nothing is documented, particularly REQUIRE-MATCH in completing-read, need also you commentaries because I guess not all the corner cases are completed. Thanks. -- Thierry --=-=-= Content-Type: text/x-diff Content-Disposition: attachment; filename=0001-Allow-require-match-as-a-function-to-return-confirm.patch From efcf6cd7280910b8aaa486af75bec293cd234d21 Mon Sep 17 00:00:00 2001 From: Thierry Volpiatto <thievol@HIDDEN> Date: Tue, 1 Jul 2025 16:48:56 +0200 Subject: [PATCH 1/2] Allow require-match as a function to return 'confirm --- lisp/minibuffer.el | 17 +++++++++++------ 1 file changed, 11 insertions(+), 6 deletions(-) diff --git a/lisp/minibuffer.el b/lisp/minibuffer.el index 122459be062..6861c099bb7 100644 --- a/lisp/minibuffer.el +++ b/lisp/minibuffer.el @@ -2007,12 +2007,17 @@ appear to be a match." ((= beg end) (funcall exit-function)) ;; The CONFIRM argument is a predicate. ((functionp minibuffer-completion-confirm) - (if (funcall minibuffer-completion-confirm - (buffer-substring beg end)) - (funcall exit-function) - (unless completion-fail-discreetly - (ding) - (completion--message "No match")))) + (pcase (funcall minibuffer-completion-confirm + (buffer-substring beg end)) + ('confirm + (setq minibuffer-completion-confirm 'confirm) + (completion--complete-and-exit + beg end exit-function completion-function)) + ((pred (eq nil)) + (unless completion-fail-discreetly + (ding) + (completion--message "No match"))) + (_ (funcall exit-function)))) ;; See if we have a completion from the table. ((test-completion (buffer-substring beg end) minibuffer-completion-table -- 2.34.1 --=-=-= Content-Type: text/x-diff Content-Disposition: attachment; filename=0002-Make-find-file-read-only-ask-for-confirmation-or.patch From dad76851b4124b0b7aec2e8576e4527bf06acc65 Mon Sep 17 00:00:00 2001 From: Thierry Volpiatto <thievol@HIDDEN> Date: Tue, 1 Jul 2025 16:51:31 +0200 Subject: [PATCH 2/2] Make find-file-read-only ask for confirmation or prevent exiting when file doesn't exists. --- lisp/files.el | 18 ++++++++++++------ 1 file changed, 12 insertions(+), 6 deletions(-) diff --git a/lisp/files.el b/lisp/files.el index 04a212b9bca..8aa426ad073 100644 --- a/lisp/files.el +++ b/lisp/files.el @@ -2072,23 +2072,29 @@ file names with wildcards." (current-buffer))) (defun find-file--read-only (fun filename wildcards) - (unless (or (and wildcards find-file-wildcards - (not (file-name-quoted-p filename)) - (string-match "[[*?]" filename)) - (file-exists-p filename)) - (error "%s does not exist" filename)) + ;; On interactive calls WILDCARDS is always non nil. + (let ((find-file-wildcards (and wildcards find-file-wildcards))) + (unless (find-file--read-only-require-match filename) + (error "%s does not exist" filename))) (let ((value (funcall fun filename wildcards))) (mapc (lambda (b) (with-current-buffer b (read-only-mode 1))) (if (listp value) value (list value))) value)) +(defun find-file--read-only-require-match (input) + (cond ((and find-file-wildcards + (not (file-name-quoted-p input)) + (string-match "[[*?]" input)) + 'confirm) + (t (file-exists-p input)))) + (defun find-file-read-only (filename &optional wildcards) "Edit file FILENAME but don't allow changes. Like \\[find-file], but marks buffer as read-only. Use \\[read-only-mode] to permit editing." (interactive (find-file-read-args "Find file read-only: " - (confirm-nonexistent-file-or-buffer))) + #'find-file--read-only-require-match)) (find-file--read-only #'find-file filename wildcards)) (defun find-file-read-only-other-window (filename &optional wildcards) -- 2.34.1 --=-=-=--
X-Loop: help-debbugs@HIDDEN Subject: bug#78926: 30.1; find-file-read-only require-match inconsistency Resent-From: Thierry Volpiatto <thievol@HIDDEN> Original-Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> Resent-CC: bug-gnu-emacs@HIDDEN Resent-Date: Tue, 01 Jul 2025 15:28:02 +0000 Resent-Message-ID: <handler.78926.B78926.17513836552449 <at> debbugs.gnu.org> Resent-Sender: help-debbugs@HIDDEN X-GNU-PR-Message: followup 78926 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Eli Zaretskii <eliz@HIDDEN> Cc: Thierry Volpiatto <thievol@HIDDEN>, 78926 <at> debbugs.gnu.org Received: via spool by 78926-submit <at> debbugs.gnu.org id=B78926.17513836552449 (code B ref 78926); Tue, 01 Jul 2025 15:28:02 +0000 Received: (at 78926) by debbugs.gnu.org; 1 Jul 2025 15:27:35 +0000 Received: from localhost ([127.0.0.1]:57781 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1uWctS-0000dO-QM for submit <at> debbugs.gnu.org; Tue, 01 Jul 2025 11:27:35 -0400 Received: from mout02.posteo.de ([185.67.36.66]:48035) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from <thievol@HIDDEN>) id 1uWctP-0000c7-Ky for 78926 <at> debbugs.gnu.org; Tue, 01 Jul 2025 11:27:32 -0400 Received: from submission (posteo.de [185.67.36.169]) by mout02.posteo.de (Postfix) with ESMTPS id 16406240103 for <78926 <at> debbugs.gnu.org>; Tue, 1 Jul 2025 17:27:23 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=posteo.net; s=1984.ea087b; t=1751383644; bh=GxwN6kcjo70pkmx2Tfjq01Ty2b4IPY+iWZUzjwYr47c=; h=From:To:Cc:Subject:Date:Message-ID:MIME-Version:Content-Type: Autocrypt:OpenPGP:From; b=WIjd2OT5yZCGaRx7SMig51EcG8FtolrgSNZh1Ixv1OZoRHQgzwF5aUQjGCvFlny9F Hus/9G2AXtGaIdE5VoeNWNTDVNr5QzkydI7kGU08homhbaWHDpqHG/gmILvlnAv+P0 3yzFfMNsemwJLTrv4NfkiSx1nTHkXL861w6yaR/qBLCkVTQDowm7/zVRYCis3MEKuR +eEMaqsjv9MK7x7/M2Cu1CX34Xozt9ttF44jzJrdZe01vvPYDrtstrZgTLZkWxhf/+ djaqnSqUDVjqH3s7ajOpTco2id0yFu7Kksj7Muq7a2PHCDCSkEGHVugSe1QdSpC9Z1 xQ9sfJ+xmwb5yko9iMwFtFH13kgrIjTa0oZll5UYmNbOEsFLdrmUZ2PUpUgvpR/LVi 2EVoZzrDRp+vTAuJxODl6E+cB7GP5HoZP6KlxU0eWKxZwHPu9XMaK5NMBtm+O9G3vY RFHk1SNn8G1saLmIBsDhCXmJQGf3so/NKSDfWJ/yDwbss/3SMyX Received: from customer (localhost [127.0.0.1]) by submission (posteo.de) with ESMTPSA id 4bWn2f4SVHz6tvZ; Tue, 1 Jul 2025 17:27:22 +0200 (CEST) From: Thierry Volpiatto <thievol@HIDDEN> In-Reply-To: <867c0s2bwb.fsf@HIDDEN> (Eli Zaretskii's message of "Tue, 01 Jul 2025 18:01:24 +0300") References: <87o6u58qj6.fsf@HIDDEN> <86o6u42mj2.fsf@HIDDEN> <87wm8srsqz.fsf@HIDDEN> <86bjq42f7w.fsf@HIDDEN> <87sejgro6i.fsf@HIDDEN> <867c0s2bwb.fsf@HIDDEN> Date: Tue, 01 Jul 2025 15:27:19 +0000 Message-ID: <87h5zwrkx4.fsf@HIDDEN> MIME-Version: 1.0 Content-Type: text/plain Autocrypt: addr=thievol@HIDDEN; prefer-encrypt=mutual; keydata=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 TgUq5UmBc7YZ0JYWQgPTbQ== OpenPGP: url=https://posteo.de/keys/thievol@HIDDEN; preference=encrypt 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 (---) Eli Zaretskii <eliz@HIDDEN> writes: >> From: Thierry Volpiatto <thievol@HIDDEN> >> Cc: Thierry Volpiatto <thievol@HIDDEN>, 78926 <at> debbugs.gnu.org >> Date: Tue, 01 Jul 2025 14:16:53 +0000 >> >> Eli Zaretskii <eliz@HIDDEN> writes: >> >> >> > emacs -Q >> >> > M-x set-variable RET confirm-nonexistent-file-or-buffer RET nil RET >> >> > M-x find-file-read-only RET foobar RET >> >> >> >> > and Emacs signaled an error saying that the file does not exist. >> >> >> >> I meant with the default value of confirm-nonexistent-file-or-buffer. >> > >> > I see the same with the default value as well. >> > >> >> It's surprizing that after pressing RET I have a minibuffer-message >> >> saying [confirm] and then when I hit RET again I have the error you >> >> mentioned. >> > >> > I don't see any [confirm] when invoking find-file-read-only. When I >> > press RET, I see an error message: >> > >> > /some/file/name does not exist >> > >> > So I guess something is still missing, which is why I asked for >> > detailed instructions. I suspect we still do something differently. >> >> The require-match used there is 'confirm-after-completion so perhaps you >> have to try to complete on something before RET? > > I didn't try to complete at all. I just typed a name of a > non-existent file and pressed RET. >> With Helm such require-match is always transformed in 'confirm. > > So you are not doing this in "emacs -Q", but after activating Helm? Did both. >> Please try with the patch applied and without to see the difference and >> perhaps what I mean. > > Sorry, I don't understand why I need to patch Emacs in order to see > some behavior it has by default. To better understand my poor explanations :-) But emacs doesn't have this behavior by default. -- Thierry
X-Loop: help-debbugs@HIDDEN Subject: bug#78926: 30.1; find-file-read-only require-match inconsistency Resent-From: Eli Zaretskii <eliz@HIDDEN> Original-Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> Resent-CC: bug-gnu-emacs@HIDDEN Resent-Date: Tue, 01 Jul 2025 15:42:02 +0000 Resent-Message-ID: <handler.78926.B78926.175138448911246 <at> debbugs.gnu.org> Resent-Sender: help-debbugs@HIDDEN X-GNU-PR-Message: followup 78926 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Thierry Volpiatto <thievol@HIDDEN> Cc: 78926 <at> debbugs.gnu.org Received: via spool by 78926-submit <at> debbugs.gnu.org id=B78926.175138448911246 (code B ref 78926); Tue, 01 Jul 2025 15:42:02 +0000 Received: (at 78926) by debbugs.gnu.org; 1 Jul 2025 15:41:29 +0000 Received: from localhost ([127.0.0.1]:57858 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1uWd6u-0002vA-3U for submit <at> debbugs.gnu.org; Tue, 01 Jul 2025 11:41:29 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:38312) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from <eliz@HIDDEN>) id 1uWd6q-0002te-H9 for 78926 <at> debbugs.gnu.org; Tue, 01 Jul 2025 11:41:25 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from <eliz@HIDDEN>) id 1uWd6k-0008PF-N3; Tue, 01 Jul 2025 11:41:18 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date: mime-version; bh=l3UrFGgtGF5opy5Unxf7KnPsXNF8J8+Fn/J5ZhTW3+U=; b=W6shKB81mpzW zOoS2JetituDdIDSbY5+l2YGyyswi7iNgbWKRt2vf+MyiZIQorian9MDR0MhPSFvrM5YnZQcT3Q4E 2VpdKuGCbIx0JzeBcLF7Vo39wxIWETTnR+4pzJyHCUlYV2+5eZdowJUn0FpAQRVA+HVDDXOhkiFAp SoSrZ0okWfR6n50iLhugvYjbUCKEOdknJZiUhLBgRKZp3aa9GkeJca/zex4wj9xMEgV3Zm6vpHydP NVOuWO4zwBHhzUKQvWH5zMlSOpeZl1223kCsFHkfZJ53DF1y+2YJgga2HTYIHXG3gnhlKPGlWArF7 MQoHL/bhgR5p5J5a83pBgA==; Date: Tue, 01 Jul 2025 18:41:16 +0300 Message-Id: <861pqz3omb.fsf@HIDDEN> From: Eli Zaretskii <eliz@HIDDEN> In-Reply-To: <87h5zwrkx4.fsf@HIDDEN> (message from Thierry Volpiatto on Tue, 01 Jul 2025 15:27:19 +0000) References: <87o6u58qj6.fsf@HIDDEN> <86o6u42mj2.fsf@HIDDEN> <87wm8srsqz.fsf@HIDDEN> <86bjq42f7w.fsf@HIDDEN> <87sejgro6i.fsf@HIDDEN> <867c0s2bwb.fsf@HIDDEN> <87h5zwrkx4.fsf@HIDDEN> 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 (---) > From: Thierry Volpiatto <thievol@HIDDEN> > Cc: Thierry Volpiatto <thievol@HIDDEN>, 78926 <at> debbugs.gnu.org > Date: Tue, 01 Jul 2025 15:27:19 +0000 > > Eli Zaretskii <eliz@HIDDEN> writes: > > > Sorry, I don't understand why I need to patch Emacs in order to see > > some behavior it has by default. > > To better understand my poor explanations :-) > > But emacs doesn't have this behavior by default. Now I'm completely confused. Let me step back and start over. You started this discussion by describing some behavior of find-file-read-only that you thought was a bug, correct? If so, this discussion should lead to investigating why Emacs behaves like it does, and then to a decision whether and how to fix this behavior. Do you agree? Or did I misunderstand your report and your rationale for starting this discussion? If I understood you correctly, then I must see the problematic behavior in order to reason about it, let alone try to find out its reasons. And I so far failed to see what you describe. So I'm stuck trying to reproduce the problematic behavior you described, and would like to find a way of reproducing it before I could contribute something useful to this discussion. Sorry for being so dense.
X-Loop: help-debbugs@HIDDEN Subject: bug#78926: 30.1; find-file-read-only require-match inconsistency Resent-From: Thierry Volpiatto <thievol@HIDDEN> Original-Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> Resent-CC: bug-gnu-emacs@HIDDEN Resent-Date: Tue, 01 Jul 2025 17:34:02 +0000 Resent-Message-ID: <handler.78926.B78926.175139119215734 <at> debbugs.gnu.org> Resent-Sender: help-debbugs@HIDDEN X-GNU-PR-Message: followup 78926 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Eli Zaretskii <eliz@HIDDEN> Cc: Thierry Volpiatto <thievol@HIDDEN>, 78926 <at> debbugs.gnu.org Received: via spool by 78926-submit <at> debbugs.gnu.org id=B78926.175139119215734 (code B ref 78926); Tue, 01 Jul 2025 17:34:02 +0000 Received: (at 78926) by debbugs.gnu.org; 1 Jul 2025 17:33:12 +0000 Received: from localhost ([127.0.0.1]:58382 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1uWer1-00045c-Ly for submit <at> debbugs.gnu.org; Tue, 01 Jul 2025 13:33:12 -0400 Received: from mout02.posteo.de ([185.67.36.66]:52841) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from <thievol@HIDDEN>) id 1uWeqx-00043j-EP for 78926 <at> debbugs.gnu.org; Tue, 01 Jul 2025 13:33:08 -0400 Received: from submission (posteo.de [185.67.36.169]) by mout02.posteo.de (Postfix) with ESMTPS id D5C0F240101 for <78926 <at> debbugs.gnu.org>; Tue, 1 Jul 2025 19:33:00 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=posteo.net; s=1984.ea087b; t=1751391180; bh=EJzIUhneK65QjAvv14l2gcgeQZFpZD7yMNIFF6fgjZQ=; h=From:To:Cc:Subject:Date:Message-ID:MIME-Version:Content-Type: Autocrypt:OpenPGP:From; b=iEukX7IRULJ/be57FYr54PNgr9yvsvjuGbCXKCj+6X0AY3Niol9BrrPSc2UKDrjHc GmcS6Z2qtOJXLjpebvMP91OBM1YNhn9Nosf+pXGQ5kT+Eb3V020U6XNtEOtIdQlzgA eboXEvl5YfDJQlyAFPLXZRRiYkYyiP+m645C0DAfpWMv1Ynq8yS0FowHv/33wUmu8D zz3FW6pQmXULg93cfgWpe5ZujNaoqIMLZWbDBiLeavML9KqaWd9260/X5Z+DsREK8b hWoRVgFYBaqUflGFgb5kODvVBB1xZ2lEkoFHq0Ajy5yLbez0GAZ/c/q8x4CjWDkaQf mIwtNVF5QpppyBXyiJvoUijjrNxeodtO5SJyVDmazbbyhXMmQcP1T7+CQcOhVrPjwy z48w8XCTzMPdyiL2Jep4YeW38Z+9NNBKL5R3NzK6N3ByFrf/0VeiEsBwMJ/QEdOUPl MlPDHiQMr+igYEiLip99Ub+Ttp1uZbG8GE+SvsHRkVmuI6an2GK Received: from customer (localhost [127.0.0.1]) by submission (posteo.de) with ESMTPSA id 4bWqqb2rp1z6tyH; Tue, 1 Jul 2025 19:32:59 +0200 (CEST) From: Thierry Volpiatto <thievol@HIDDEN> In-Reply-To: <861pqz3omb.fsf@HIDDEN> (Eli Zaretskii's message of "Tue, 01 Jul 2025 18:41:16 +0300") References: <87o6u58qj6.fsf@HIDDEN> <86o6u42mj2.fsf@HIDDEN> <87wm8srsqz.fsf@HIDDEN> <86bjq42f7w.fsf@HIDDEN> <87sejgro6i.fsf@HIDDEN> <867c0s2bwb.fsf@HIDDEN> <87h5zwrkx4.fsf@HIDDEN> <861pqz3omb.fsf@HIDDEN> Date: Tue, 01 Jul 2025 17:32:55 +0000 Message-ID: <87cyajsto8.fsf@HIDDEN> MIME-Version: 1.0 Content-Type: text/plain Autocrypt: addr=thievol@HIDDEN; prefer-encrypt=mutual; keydata=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 TgUq5UmBc7YZ0JYWQgPTbQ== OpenPGP: url=https://posteo.de/keys/thievol@HIDDEN; preference=encrypt 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 (---) Eli Zaretskii <eliz@HIDDEN> writes: >> From: Thierry Volpiatto <thievol@HIDDEN> >> Cc: Thierry Volpiatto <thievol@HIDDEN>, 78926 <at> debbugs.gnu.org >> Date: Tue, 01 Jul 2025 15:27:19 +0000 >> >> Eli Zaretskii <eliz@HIDDEN> writes: >> >> > Sorry, I don't understand why I need to patch Emacs in order to see >> > some behavior it has by default. >> >> To better understand my poor explanations :-) >> >> But emacs doesn't have this behavior by default. > > Now I'm completely confused. Let me step back and start over. Sorry for the confusion. > You started this discussion by describing some behavior of > find-file-read-only that you thought was a bug, correct? Not really a bug, but something unexpected I would say. > If so, this discussion should lead to investigating why Emacs behaves > like it does, and then to a decision whether and how to fix this > behavior. > > Do you agree? Yes. > Or did I misunderstand your report and your rationale for starting > this discussion? Yes you misunderstood because I was not clear. > If I understood you correctly, then I must see the problematic > behavior in order to reason about it, let alone try to find out its > reasons. And I so far failed to see what you describe. So I'm stuck > trying to reproduce the problematic behavior you described, and would > like to find a way of reproducing it before I could contribute > something useful to this discussion. Ok. Start emacs -Q, say you have a directory ~/tmp/ containing foo.txt and bar.txt. 1) C-x C-r ~/tmp/test.txt RET => find-file--read-only: ~/tmp/foo.txt does not exist 2) C-x C-r ~/tmp/*.txt RET => Two buffer are opened foo.txt and bar.txt. That's fine for 1) but I would prefer a [no match] preventing exiting the minibuffer. For 2) I had expected a [confirm] before maybe blocking emacs by opening too many buffers. Now (setq confirm-nonexistent-file-or-buffer 'confirm) And repeat 1) and 2). As you can see in both case we have a minibuffer-message [confirm]. In 1) I think it is confusing, I had expected instead a [no match]. In 2) [confirm] is nice because it may prevent opening hundred of buffer and blocking emacs. So what I think would be the best is having [no match] in 1) and [confirm] in 2), however with the tools we have under hand you can't implement this, this is why find-file-read-only allow to have [confirm] in 2) but must use some code exiting with error in 1), you can't implement both, it is one or the other. By patching completion--complete-and-exit (see the two patches I sent) you can allow the REQUIRE-MATCH arg of completing read using a function that can exit with three option: nil, non-nil or confirm whereas with the current code you can exit with nil or non-nil only. And then you can make find-file-read-only prevent exiting with a non existing file in 1), And confirm a wildcard in 2). Is this more clear? Note: As you can see this is an enhancement there is no bug, the current behavior is not so nice but it is ok, we can live with it. Thanks for reading and sorry for beeing unclear, it is not easy to explain non trivial things in english. -- Thierry
X-Loop: help-debbugs@HIDDEN Subject: bug#78926: 30.1; find-file-read-only require-match inconsistency Resent-From: Eli Zaretskii <eliz@HIDDEN> Original-Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> Resent-CC: bug-gnu-emacs@HIDDEN Resent-Date: Wed, 02 Jul 2025 11:13:01 +0000 Resent-Message-ID: <handler.78926.B78926.175145474414060 <at> debbugs.gnu.org> Resent-Sender: help-debbugs@HIDDEN X-GNU-PR-Message: followup 78926 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Thierry Volpiatto <thievol@HIDDEN> Cc: 78926 <at> debbugs.gnu.org Received: via spool by 78926-submit <at> debbugs.gnu.org id=B78926.175145474414060 (code B ref 78926); Wed, 02 Jul 2025 11:13:01 +0000 Received: (at 78926) by debbugs.gnu.org; 2 Jul 2025 11:12:24 +0000 Received: from localhost ([127.0.0.1]:35886 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1uWvO4-0003ef-3M for submit <at> debbugs.gnu.org; Wed, 02 Jul 2025 07:12:24 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:57242) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from <eliz@HIDDEN>) id 1uWvNz-0003dZ-DS; Wed, 02 Jul 2025 07:12:20 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from <eliz@HIDDEN>) id 1uWvNr-0000AB-SV; Wed, 02 Jul 2025 07:12:12 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date: mime-version; bh=e9Z2MCF1RN69Ibapf6DG/Y+Pzi/OO945jsd0ob4cXbA=; b=Bdpu8nXBYtRA zsOQVH7s76C84+B8ufrjoGEZxf22CCsT8l9Vf5U9N9P6BiSUigcVjRDb1tw5WdF4R/IiXyLaTCu+c 3kK7Sqqs6kYs8+ignGD8fgz+uH3gAEU46FcXu8cQsmQ6KpP53RQ44nt+XjVUIDoKjG/Y/Vys4C0cA Hadqghllhr/vRsmelPWAYRXupmPmtdveF38Kpz9aAiIoa/yoFW+VefI4etQeBGEQcObkE5f/56BXF aqIwiVsuw4Vx8nKM4o+J99wuu7ZdIHYmlHmGYnkxrqfMAsVWDgHz5H8PHyfAQ6cEXqO+jd/IIdZZt 2hrF/RsO1Lw/6nMRogSGcg==; Date: Wed, 02 Jul 2025 14:12:08 +0300 Message-Id: <86v7oa26ev.fsf@HIDDEN> From: Eli Zaretskii <eliz@HIDDEN> In-Reply-To: <87cyajsto8.fsf@HIDDEN> (message from Thierry Volpiatto on Tue, 01 Jul 2025 17:32:55 +0000) References: <87o6u58qj6.fsf@HIDDEN> <86o6u42mj2.fsf@HIDDEN> <87wm8srsqz.fsf@HIDDEN> <86bjq42f7w.fsf@HIDDEN> <87sejgro6i.fsf@HIDDEN> <867c0s2bwb.fsf@HIDDEN> <87h5zwrkx4.fsf@HIDDEN> <861pqz3omb.fsf@HIDDEN> <87cyajsto8.fsf@HIDDEN> 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 (---) severity 78926 wishlist thanks > From: Thierry Volpiatto <thievol@HIDDEN> > Cc: Thierry Volpiatto <thievol@HIDDEN>, 78926 <at> debbugs.gnu.org > Date: Tue, 01 Jul 2025 17:32:55 +0000 > > Start emacs -Q, say you have a directory ~/tmp/ containing foo.txt and > bar.txt. > > 1) C-x C-r ~/tmp/test.txt RET > => find-file--read-only: ~/tmp/foo.txt does not exist > > 2) C-x C-r ~/tmp/*.txt RET > => Two buffer are opened foo.txt and bar.txt. > > That's fine for 1) but I would prefer a [no match] preventing exiting the > minibuffer. find-file and friends are specially programmed not to do that, because otherwise creating new files, a very frequent operation, would be too annoying. So I think this is a reasonable behavior. > For 2) I had expected a [confirm] before maybe blocking emacs by opening > too many buffers. We have find-file-wildcards to control this. AFAIU, you would like to extend that variable to accept an integer value, which means visit only up to that number of files, otherwise ask for confirmation. Patches welcome. > Now (setq confirm-nonexistent-file-or-buffer 'confirm) > > And repeat 1) and 2). > As you can see in both case we have a minibuffer-message [confirm]. > > In 1) I think it is confusing, I had expected instead a [no match]. Not sure why. "No match" comes from completion, whereas "confirm" comes from the coder that is controlled by the variable you customized. Not sure why you prefer "no match", since it's much more general and therefore potentially confusing, especially for non-native English speakers. > In 2) [confirm] is nice because it may prevent opening hundred of buffer > and blocking emacs. I'd argue that it might be a bug. Why ask for confirmation in this case? > So what I think would be the best is having [no match] in 1) and > [confirm] in 2), however with the tools we have under hand you can't > implement this, this is why find-file-read-only allow to have [confirm] > in 2) but must use some code exiting with error in 1), you can't > implement both, it is one or the other. > > By patching completion--complete-and-exit (see the two patches I sent) > you can allow the REQUIRE-MATCH arg of completing read using a function > that can exit with three option: nil, non-nil or confirm whereas with > the current code you can exit with nil or non-nil only. > > And then you can make find-file-read-only prevent exiting with a non > existing file in 1), And confirm a wildcard in 2). > > Is this more clear? Yes, thanks. > Note: > As you can see this is an enhancement there is no bug, the current > behavior is not so nice but it is ok, we can live with it. Agree. > Thanks for reading and sorry for beeing unclear, it is not easy to > explain non trivial things in english. No need to be sorry, and thanks.
Received: (at control) by debbugs.gnu.org; 2 Jul 2025 11:12:28 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Wed Jul 02 07:12:28 2025 Received: from localhost ([127.0.0.1]:35888 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1uWvO7-0003f2-Oq for submit <at> debbugs.gnu.org; Wed, 02 Jul 2025 07:12:28 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:57242) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from <eliz@HIDDEN>) id 1uWvNz-0003dZ-DS; Wed, 02 Jul 2025 07:12:20 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from <eliz@HIDDEN>) id 1uWvNr-0000AB-SV; Wed, 02 Jul 2025 07:12:12 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date: mime-version; bh=e9Z2MCF1RN69Ibapf6DG/Y+Pzi/OO945jsd0ob4cXbA=; b=Bdpu8nXBYtRA zsOQVH7s76C84+B8ufrjoGEZxf22CCsT8l9Vf5U9N9P6BiSUigcVjRDb1tw5WdF4R/IiXyLaTCu+c 3kK7Sqqs6kYs8+ignGD8fgz+uH3gAEU46FcXu8cQsmQ6KpP53RQ44nt+XjVUIDoKjG/Y/Vys4C0cA Hadqghllhr/vRsmelPWAYRXupmPmtdveF38Kpz9aAiIoa/yoFW+VefI4etQeBGEQcObkE5f/56BXF aqIwiVsuw4Vx8nKM4o+J99wuu7ZdIHYmlHmGYnkxrqfMAsVWDgHz5H8PHyfAQ6cEXqO+jd/IIdZZt 2hrF/RsO1Lw/6nMRogSGcg==; Date: Wed, 02 Jul 2025 14:12:08 +0300 Message-Id: <86v7oa26ev.fsf@HIDDEN> From: Eli Zaretskii <eliz@HIDDEN> To: Thierry Volpiatto <thievol@HIDDEN> In-Reply-To: <87cyajsto8.fsf@HIDDEN> (message from Thierry Volpiatto on Tue, 01 Jul 2025 17:32:55 +0000) Subject: Re: bug#78926: 30.1; find-file-read-only require-match inconsistency References: <87o6u58qj6.fsf@HIDDEN> <86o6u42mj2.fsf@HIDDEN> <87wm8srsqz.fsf@HIDDEN> <86bjq42f7w.fsf@HIDDEN> <87sejgro6i.fsf@HIDDEN> <867c0s2bwb.fsf@HIDDEN> <87h5zwrkx4.fsf@HIDDEN> <861pqz3omb.fsf@HIDDEN> <87cyajsto8.fsf@HIDDEN> X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: control Cc: 78926 <at> debbugs.gnu.org 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 (---) severity 78926 wishlist thanks > From: Thierry Volpiatto <thievol@HIDDEN> > Cc: Thierry Volpiatto <thievol@HIDDEN>, 78926 <at> debbugs.gnu.org > Date: Tue, 01 Jul 2025 17:32:55 +0000 > > Start emacs -Q, say you have a directory ~/tmp/ containing foo.txt and > bar.txt. > > 1) C-x C-r ~/tmp/test.txt RET > => find-file--read-only: ~/tmp/foo.txt does not exist > > 2) C-x C-r ~/tmp/*.txt RET > => Two buffer are opened foo.txt and bar.txt. > > That's fine for 1) but I would prefer a [no match] preventing exiting the > minibuffer. find-file and friends are specially programmed not to do that, because otherwise creating new files, a very frequent operation, would be too annoying. So I think this is a reasonable behavior. > For 2) I had expected a [confirm] before maybe blocking emacs by opening > too many buffers. We have find-file-wildcards to control this. AFAIU, you would like to extend that variable to accept an integer value, which means visit only up to that number of files, otherwise ask for confirmation. Patches welcome. > Now (setq confirm-nonexistent-file-or-buffer 'confirm) > > And repeat 1) and 2). > As you can see in both case we have a minibuffer-message [confirm]. > > In 1) I think it is confusing, I had expected instead a [no match]. Not sure why. "No match" comes from completion, whereas "confirm" comes from the coder that is controlled by the variable you customized. Not sure why you prefer "no match", since it's much more general and therefore potentially confusing, especially for non-native English speakers. > In 2) [confirm] is nice because it may prevent opening hundred of buffer > and blocking emacs. I'd argue that it might be a bug. Why ask for confirmation in this case? > So what I think would be the best is having [no match] in 1) and > [confirm] in 2), however with the tools we have under hand you can't > implement this, this is why find-file-read-only allow to have [confirm] > in 2) but must use some code exiting with error in 1), you can't > implement both, it is one or the other. > > By patching completion--complete-and-exit (see the two patches I sent) > you can allow the REQUIRE-MATCH arg of completing read using a function > that can exit with three option: nil, non-nil or confirm whereas with > the current code you can exit with nil or non-nil only. > > And then you can make find-file-read-only prevent exiting with a non > existing file in 1), And confirm a wildcard in 2). > > Is this more clear? Yes, thanks. > Note: > As you can see this is an enhancement there is no bug, the current > behavior is not so nice but it is ok, we can live with it. Agree. > Thanks for reading and sorry for beeing unclear, it is not easy to > explain non trivial things in english. No need to be sorry, and thanks.
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997 nCipher Corporation Ltd,
1994-97 Ian Jackson.