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

From: Juri Linkov <[email-masked]>
Date: Fri, 04 Apr 2025 19:05:20 +0300

close 77500 31.0.50
thanks

>>>> 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.

I agree that the sibling rules might differ significantly.
In case when the rule matches its sibling in another project,
it's like the project command, in other cases not.
Ok, I can add an alias in the init file.
So now closing this.