Subject: Re: bug#77500: project-find-sibling-file

From: Visuwesh <[email-masked]>
Date: Fri, 04 Apr 2025 14:34:36 +0530

[வெள்ளி ஏப்ரல் 04, 2025] Juri Linkov wrote:

>>> I need to spend time reading project.el to find the name of the new command,
>>> because it has a name different from the global command 'find-sibling-file'.
>>> Therefore, I propose to rename 'project-find-matching-file' to
>>> 'project-find-sibling-file'.
>>
>> But is 'find-sibling-name' its proper counterpart? That one looks for files
>> named similarly but not exactly same, residing in the same directory, or
>> nearby directories. Often with different contents.
>>
>> Whereas the current project-find-matching-file looks for files with equal
>> relative names (and usually similar contents) that reside in two distinct
>> directory trees. In a sense, this might be the opposite from
>> 'find-sibling-name'.
>
> From the docstring of 'find-sibling-rules':
>
>   In this example, if you’re in "src/emacs/emacs-27/lisp/abbrev.el",
>   and a "src/emacs/emacs-28/lisp/abbrev.el" file exists, it’s now
>   defined as a sibling.
>
> Looks very similar to the project command.

It doesn't always have to be something like that though.  My sibling
rule maps

    XXX/something.com

to
    XXX/log/something.log, and XXX/something.log.

If I found a project-find-sibling-file command, I would expect it to
return the siblings of XXX/something.com that reside in the same project
as XXX/something.com, whereas project-find-matching-file does something
else entirely.