Subject: Re: bug#63648: 29.0.90; project.el: with switch-use-entire-map, switch-project errors on non-project commands

From: Dmitry Gutov <[email-masked]>
Date: Thu, 2 Nov 2023 23:33:54 +0200

On 02/11/2023 19:20, Juri Linkov wrote:
>> How about this, then?
>>
>> project-switch-use-global-map is obsoleted, all variations are accessible
>> through customizing project-switch-commands. Should have better
>> discoverability for project-prefix-or-any-command than simply having it
>> included.
> 
> I don't know, it's extra trouble for users to migrate
> from the obsoleted project-switch-use-entire-map.
> But maybe ok.

I couldn't find a better alternative to keep the behavior compatible.

Either we have the user customize an existing var (this was the option 
where they'd set project-switch-commands to 
`project-prefix-or-any-command', which you didn't like), or we would add 
a yet another custom var which would, conceptually, conflict with the 
two existing ones.

Unifying all three alternatives in one option seems like the logical choice.

>> I don't like having a prompt that requires prior knowledge to use, but fair
>> enough, let's just use [executing in ...] for now. Perhaps someone will
>> suggest an alternative later.
>>
>> The new revision is attached, have a look.
> 
> Thanks, tried, it works nicely.
> 
> One minor question is why project-prefix-or-any-command
> is a command.  Would anyone want to bind it in project-prefix-map,
> like project-any-command that makes sense to run commands in root.

It's done this way basically for the ease and brevity of implementation.

But someone could also advise it, or copy and do their own alternative, 
e.g. changing the prompt. Hopefully having this piece of behavior so 
localized will make it easier to grok for future contributors as well.