aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDmitry Gutov2025-09-10 01:54:36 +0300
committerDmitry Gutov2025-09-10 02:26:31 +0300
commita060bdec820b2ec20d62b77df6d55b54b91cd81b (patch)
treef6d1d4d5e5991e52f8a37a825571446deb265362
parent0e9cee2bf5d97a23c47d99ffc47396dcd3bd50ee (diff)
downloademacs-a060bdec820b2ec20d62b77df6d55b54b91cd81b.tar.gz
emacs-a060bdec820b2ec20d62b77df6d55b54b91cd81b.zip
Better 'project-buffer' completion category defaults in Emacs <= 30
* lisp/progmodes/project.el: Fall back to adding 'project-buffer' to 'completion-category-defaults' if 'define-completion-category' is not available (bug#79409).
-rw-r--r--lisp/progmodes/project.el8
1 files changed, 5 insertions, 3 deletions
diff --git a/lisp/progmodes/project.el b/lisp/progmodes/project.el
index c15148110a6..cb018a870a6 100644
--- a/lisp/progmodes/project.el
+++ b/lisp/progmodes/project.el
@@ -1718,9 +1718,11 @@ Return non-nil if PROJECT is not a remote project."
1718 (t 1718 (t
1719 (complete-with-action action buffers string pred))))) 1719 (complete-with-action action buffers string pred)))))
1720 1720
1721(when (fboundp 'define-completion-category) ; Introduced in Emacs 31. 1721(if (fboundp 'define-completion-category) ; Introduced in Emacs 31.
1722 (define-completion-category 'project-buffer '(buffer) 1722 (define-completion-category 'project-buffer '(buffer)
1723 "Completion category for buffers in a given project.")) 1723 "Completion category for buffers in a given project.")
1724 (add-to-list 'completion-category-defaults
1725 '(project-buffer (styles . (basic substring)))))
1724 1726
1725(defun project--read-project-buffer () 1727(defun project--read-project-buffer ()
1726 (let* ((pr (project-current t)) 1728 (let* ((pr (project-current t))