On 28/10/2023 19:56, Juri Linkov wrote: >>>>>> + ;; Variation: could be a separate command, or an option. >>>>>> + ;; (command (let ((overriding-local-map project-prefix-map)) >>>>>> + ;; (key-binding (read-key-sequence >>>>>> + ;; (format "[execute in %s]:" (project-root pr))) >>>>>> + ;; t))) >>>>> Thanks, it works nicely. >>>>> Any reason not to use this by default? >>>> >>>> Nothing critical, but it might not fit the expectations without additional >>>> instructions in the prompt, or it can be unnecessary if the user had >>>> reached this command through 'C-x p o'. >>> Indeed, this is needed only for 'C-x p p' that supports the global map. >>> >>>> In the latter case there is also a small chance that the user had set up >>>> some advanced sub-maps inside project-prefix-map which would shadow some >>>> global bindings. So maybe a separate command is best. Please see how you >>>> like the attached new version together with >>>> >>>> (setq project-switch-commands #'project-prefix-or-any-command) >>> A separate command that is not used anywhere looks strange. >>> Why not a simple option like 'project-switch-use-entire-map'? >> >> You would still need to change project-switch-commands, right? Or what >> would the option be called? > > I expected 'project-switch-use-global-map' to be used > by 'project--switch-project-command' without the need > to customize 'project-switch-commands'. 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'm not sure about project-prefix-or-any-command's prompt, though (phrasing >>>> feels awkward). Improvements welcome. >>> I'm not a fan of the long prompt especially that wraps to the second >>> line. >> >> It didn't wrap for me. > > Because the length depends on the deepness of the project root. > >> But if it's too long, how would you like it changed? >> Remove everything? Just keep [executing in ...]? > > I'd prefer keeping only [executing in ...] because it's useful > to confirm in which directory the command will be executed. > But all available keys are usually useless except in such modes > as help-quick for novices. 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.