]> git.eshelyaron.com Git - emacs.git/commitdiff
Allow specifying the project to switch to programmatically
authorDmitry Gutov <dgutov@yandex.ru>
Wed, 9 Dec 2020 20:56:12 +0000 (22:56 +0200)
committerDmitry Gutov <dgutov@yandex.ru>
Wed, 9 Dec 2020 20:56:48 +0000 (22:56 +0200)
* lisp/progmodes/project.el (project-switch-project):
Allow specifying the project to switch to programmatically
(bug#45134).

lisp/progmodes/project.el

index 449eadc3de73bf1396e7db8626583e4b5460fe3d..98ad41487a1adc6482b54e9c9e838a3189c8b16a 100644 (file)
@@ -1275,13 +1275,15 @@ the menu entries in the dispatch menu.")
    "  "))
 
 ;;;###autoload
-(defun project-switch-project ()
+(defun project-switch-project (dir)
   "\"Switch\" to another project by running an Emacs command.
 The available commands are presented as a dispatch menu
-made from `project-switch-commands'."
-  (interactive)
-  (let ((dir (project-prompt-project-dir))
-        (choice nil))
+made from `project-switch-commands'.
+
+When called in a program, it will use the project corresponding
+to directory DIR."
+  (interactive (list (project-prompt-project-dir)))
+  (let ((choice nil))
     (while (not choice)
       (setq choice (assq (read-event (project--keymap-prompt))
                          project-switch-commands)))