On Mon, Jun 30, 2025 at 8:58 PM Eli Zaretskii wrote: > > > From: Liu Hui > > Date: Mon, 30 Jun 2025 17:54:31 +0800 > > > > When using ffap in remote files, I find the guess of filename at point > > in the prompt, which is mainly determined by ffap-file-at-point, is > > not suitable or at least inconsistent. > > > > Case 1: > > > > 1. emacs -Q > > 2. Open a remote file: > > C-x C-f /ssh:server:~/test_file > > 3. type a filename that exists in localhost (e.g. /etc/hosts), and M-x ffap > > > > ffap finds the local file /etc/hosts instead of the remote one. The > > reason is that ffap-file-at-point always checks the local file first. > > ffap-file-at-point only tries to find remote file if there is no > > existing local file. > > > > However, it is more reasonable to first check (or only check) remote > > file and always prompt remote filename (i.e. /ssh:server:/etc/hosts) > > in remote cases. > > I don't think I agree. However, perhaps a user option or a prefix > argument could be used to control which behavior is preferred. The attached patch adds an option 'ffap-prefer-remote-file', which defaults to nil. A non-nil value means ffap always finds remote files for absolute filenames in remote case, instead of finding local files first.