summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--CHANGELOG.org4
-rw-r--r--README.org4
-rw-r--r--cape.el44
3 files changed, 24 insertions, 28 deletions
diff --git a/CHANGELOG.org b/CHANGELOG.org
index 10b6109..a770afa 100644
--- a/CHANGELOG.org
+++ b/CHANGELOG.org
@@ -2,6 +2,10 @@
#+author: Daniel Mendler
#+language: en
+* Development
+
+- Require Emacs 28.1.
+
* Version 1.7 (2024-08-26)
- ~cape-elisp-symbol~: Add wrappers only if not yet there.
diff --git a/README.org b/README.org
index 5d918f9..7d79c75 100644
--- a/README.org
+++ b/README.org
@@ -257,8 +257,8 @@ personal configuration.
#+begin_src emacs-lisp
;; Example 1: Sanitize the `pcomplete-completions-at-point' Capf. The Capf has
-;; undesired side effects on Emacs 28 and earlier. These advices are not needed
-;; on Emacs 29 and newer.
+;; undesired side effects on Emacs 28. These advices are not needed on Emacs 29
+;; and newer.
(when (< emacs-major-version 29)
(advice-add 'pcomplete-completions-at-point :around #'cape-wrap-silent)
(advice-add 'pcomplete-completions-at-point :around #'cape-wrap-purify))
diff --git a/cape.el b/cape.el
index c4efa29..18afd19 100644
--- a/cape.el
+++ b/cape.el
@@ -6,7 +6,7 @@
;; Maintainer: Daniel Mendler <mail@daniel-mendler.de>
;; Created: 2021
;; Version: 1.7
-;; Package-Requires: ((emacs "27.1") (compat "30"))
+;; Package-Requires: ((emacs "28.1") (compat "30"))
;; Homepage: https://github.com/minad/cape
;; Keywords: abbrev, convenience, matching, completion, text
@@ -445,21 +445,20 @@ If INTERACTIVE is nil the function acts like a Capf."
;;;;; cape-elisp-symbol
+(autoload 'elisp--company-kind "elisp-mode")
+(autoload 'elisp--company-doc-buffer "elisp-mode")
+(autoload 'elisp--company-doc-string "elisp-mode")
+(autoload 'elisp--company-location "elisp-mode")
+
(defvar cape--symbol-properties
- (append
- (list :annotation-function #'cape--symbol-annotation
- :exit-function #'cape--symbol-exit
- :predicate #'cape--symbol-predicate
- :exclusive 'no)
- (when (eval-when-compile (>= emacs-major-version 28))
- (autoload 'elisp--company-kind "elisp-mode")
- (autoload 'elisp--company-doc-buffer "elisp-mode")
- (autoload 'elisp--company-doc-string "elisp-mode")
- (autoload 'elisp--company-location "elisp-mode")
- (list :company-kind 'elisp--company-kind
- :company-doc-buffer 'elisp--company-doc-buffer
- :company-docsig 'elisp--company-doc-string
- :company-location 'elisp--company-location)))
+ (list :annotation-function #'cape--symbol-annotation
+ :exit-function #'cape--symbol-exit
+ :predicate #'cape--symbol-predicate
+ :company-kind #'elisp--company-kind
+ :company-doc-buffer #'elisp--company-doc-buffer
+ :company-docsig #'elisp--company-doc-string
+ :company-location #'elisp--company-location
+ :exclusive 'no)
"Completion extra properties for `cape-elisp-symbol'.")
(defun cape--symbol-predicate (sym)
@@ -682,17 +681,10 @@ INTERACTIVE is nil the function acts like a Capf."
;;;;; cape-abbrev
-(defun cape--abbrev-tables ()
- "Return list of all active abbrev tables, including parents."
- ;; Emacs 28: See abbrev--suggest-get-active-tables-including-parents.
- (let ((tables (abbrev--active-tables)))
- (append tables (cl-loop for table in tables
- append (abbrev-table-get table :parents)))))
-
(defun cape--abbrev-list ()
"Abbreviation list."
- (delete "" (cl-loop for table in (cape--abbrev-tables)
- nconc (all-completions "" table))))
+ (delete "" (cl-loop for x in (abbrev--suggest-get-active-tables-including-parents)
+ nconc (all-completions "" x))))
(defun cape--abbrev-annotation (abbrev)
"Annotate ABBREV with expansion."
@@ -701,8 +693,8 @@ INTERACTIVE is nil the function acts like a Capf."
(format
"%s"
(symbol-value
- (cl-loop for table in (cape--abbrev-tables)
- thereis (abbrev--symbol abbrev table))))
+ (cl-loop for x in (abbrev--suggest-get-active-tables-including-parents)
+ thereis (abbrev--symbol abbrev x))))
30 0 nil t)))
(defun cape--abbrev-exit (_str status)