unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
* Re: master d879c40f68c: * etc/NEWS: Mention it.
       [not found] ` <20240906161755.0CEECC2BC7A@vcs2.savannah.gnu.org>
@ 2024-09-09  8:42   ` Eshel Yaron
  2024-09-09 11:40     ` Dmitry Gutov
  0 siblings, 1 reply; 4+ messages in thread
From: Eshel Yaron @ 2024-09-09  8:42 UTC (permalink / raw)
  To: emacs-devel; +Cc: Spencer Baugh, Dmitry Gutov

Hi,

Dmitry Gutov <dgutov@yandex.ru> writes:

> branch: master
> commit d879c40f68c078bdba15122e4e886a2052fbddf4

[...]

> +;;;###autoload
> +(defun project-find-file-in-root ()
> +  "..."
> +  (interactive)
> +  (let* ((pr (project-current t))
> +         (default-directory (project-root pr)))
> +    (call-interactively #'find-file)))

Nice addition, thanks!

Nitpick: I find the use of call-interactively with a constant argument
slightly awkward.  What do y'all think about a revision along the
following lines?

--8<---------------cut here---------------start------------->8---
;;;###autoload
(defun project-find-file-in-root (filename)
  "Edit file FILENAME.
Interactively, prompt for FILENAME, defaulting to the root directory of
the current project."
  (declare (interactive-only find-file))
  (interactive
   (list (read-file-name "Find project file: "
                         (project-root (project-current t)) nil
                         (confirm-nonexistent-file-or-buffer))))
  (find-file filename t))
--8<---------------cut here---------------end--------------->8---




^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: master d879c40f68c: * etc/NEWS: Mention it.
  2024-09-09  8:42   ` master d879c40f68c: * etc/NEWS: Mention it Eshel Yaron
@ 2024-09-09 11:40     ` Dmitry Gutov
  2024-09-09 16:03       ` Spencer Baugh
  0 siblings, 1 reply; 4+ messages in thread
From: Dmitry Gutov @ 2024-09-09 11:40 UTC (permalink / raw)
  To: Eshel Yaron, emacs-devel; +Cc: Spencer Baugh

On 09/09/2024 11:42, Eshel Yaron wrote:
> Nitpick: I find the use of call-interactively with a constant argument
> slightly awkward.  What do y'all think about a revision along the
> following lines?

Yeah, I think that works too (the only real duplication is the call to 
confirm-nonexistent-file-or-buffer, that's minor).

> --8<---------------cut here---------------start------------->8---
> ;;;###autoload
> (defun project-find-file-in-root (filename)
>    "Edit file FILENAME.
> Interactively, prompt for FILENAME, defaulting to the root directory of
> the current project."
>    (declare (interactive-only find-file))
>    (interactive
>     (list (read-file-name "Find project file: "

Maybe "Find in root: "? The command variant doesn't necessarily show all 
project files, or only project files.

>                           (project-root (project-current t)) nil
>                           (confirm-nonexistent-file-or-buffer))))
>    (find-file filename t))




^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: master d879c40f68c: * etc/NEWS: Mention it.
  2024-09-09 11:40     ` Dmitry Gutov
@ 2024-09-09 16:03       ` Spencer Baugh
  2024-09-09 17:52         ` Eshel Yaron
  0 siblings, 1 reply; 4+ messages in thread
From: Spencer Baugh @ 2024-09-09 16:03 UTC (permalink / raw)
  To: Dmitry Gutov; +Cc: Eshel Yaron, emacs-devel

[-- Attachment #1: Type: text/plain, Size: 1211 bytes --]

I'm fine with this change.  "Find file in root: " seems like it would be a
decent prompt.

On Mon, Sep 9, 2024 at 7:40 AM Dmitry Gutov <dmitry@gutov.dev> wrote:

> On 09/09/2024 11:42, Eshel Yaron wrote:
> > Nitpick: I find the use of call-interactively with a constant argument
> > slightly awkward.  What do y'all think about a revision along the
> > following lines?
>
> Yeah, I think that works too (the only real duplication is the call to
> confirm-nonexistent-file-or-buffer, that's minor).
>
> > --8<---------------cut here---------------start------------->8---
> > ;;;###autoload
> > (defun project-find-file-in-root (filename)
> >    "Edit file FILENAME.
> > Interactively, prompt for FILENAME, defaulting to the root directory of
> > the current project."
> >    (declare (interactive-only find-file))
> >    (interactive
> >     (list (read-file-name "Find project file: "
>
> Maybe "Find in root: "? The command variant doesn't necessarily show all
> project files, or only project files.
>
> >                           (project-root (project-current t)) nil
> >                           (confirm-nonexistent-file-or-buffer))))
> >    (find-file filename t))
>
>

[-- Attachment #2: Type: text/html, Size: 1684 bytes --]

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: master d879c40f68c: * etc/NEWS: Mention it.
  2024-09-09 16:03       ` Spencer Baugh
@ 2024-09-09 17:52         ` Eshel Yaron
  0 siblings, 0 replies; 4+ messages in thread
From: Eshel Yaron @ 2024-09-09 17:52 UTC (permalink / raw)
  To: Spencer Baugh; +Cc: Dmitry Gutov, emacs-devel

Spencer Baugh <sbaugh@janestreet.com> writes:

> I'm fine with this change.  "Find file in root: " seems like it would be a decent prompt.
>
> On Mon, Sep 9, 2024 at 7:40 AM Dmitry Gutov <dmitry@gutov.dev> wrote:
>
>  On 09/09/2024 11:42, Eshel Yaron wrote:
>  > Nitpick: I find the use of call-interactively with a constant argument
>  > slightly awkward.  What do y'all think about a revision along the
>  > following lines?
>
>  Yeah, I think that works too (the only real duplication is the call to 
>  confirm-nonexistent-file-or-buffer, that's minor).
>
>  > --8<---------------cut here---------------start------------->8---
>  > ;;;###autoload
>  > (defun project-find-file-in-root (filename)
>  >    "Edit file FILENAME.
>  > Interactively, prompt for FILENAME, defaulting to the root directory of
>  > the current project."
>  >    (declare (interactive-only find-file))
>  >    (interactive
>  >     (list (read-file-name "Find project file: "
>
>  Maybe "Find in root: "? The command variant doesn't necessarily show all 
>  project files, or only project files.
>
>  >                           (project-root (project-current t)) nil
>  >                           (confirm-nonexistent-file-or-buffer))))
>  >    (find-file filename t))

Great, now done in 466db358772.


Thanks,

Eshel



^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2024-09-09 17:52 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
     [not found] <172563947472.4957.18260024928108489506@vcs2.savannah.gnu.org>
     [not found] ` <20240906161755.0CEECC2BC7A@vcs2.savannah.gnu.org>
2024-09-09  8:42   ` master d879c40f68c: * etc/NEWS: Mention it Eshel Yaron
2024-09-09 11:40     ` Dmitry Gutov
2024-09-09 16:03       ` Spencer Baugh
2024-09-09 17:52         ` Eshel Yaron

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).