profile
viewpoint

Ask questionsUnable to completing-read CMake preset the second time

Expected behavior

projectile-configure-project, when run second time in a project, has some way (a prefix arg?) to select a (different) CMake preset again.

Actual behavior

Configure command: cmake . --preset <previously-selected-preset> prompt in minibuffer without completion for presets.

Steps to reproduce the problem

  • Have a CMake project with at least two configure presets
  • s-p C, select one of the presets
  • s-p C again, wishing to select the other preset

Environment & Version information

CMake 3.20.4

Projectile version information

Projectile 2.4.0

With a workaround for https://github.com/bbatsov/projectile/issues/1673 applied:

(defun dotfiles--projectile--cmake-all-command-presets (command-type)
  "Get CMake user and system COMMAND-TYPE presets."
  (projectile-flatten
   (mapcar (lambda (filename)
             (projectile--cmake-command-presets filename command-type))
           '("CMakeUserPresets.json" "CMakePresets.json"))))
(advice-add #'projectile--cmake-all-command-presets :override
            #'dotfiles--projectile--cmake-all-command-presets)

Emacs version

27.2

Operating system

macOS 11.4

bbatsov/projectile

Answer questions jehelset

i think this is simply how the project-type-agnosticprojectile-configure-command works (https://github.com/bbatsov/projectile/blob/master/projectile.el#L4337). it will prefer to use the cached command. to get the behaviour you want, one would have to be able to disable caching of configuration commands. not sure if this is possible currently. it would be useful.

useful!
source:https://uonfu.com/
Github User Rank List