[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[elpa] externals/cape d3e4d152ac 024/146: Add cape-symbol
From: |
ELPA Syncer |
Subject: |
[elpa] externals/cape d3e4d152ac 024/146: Add cape-symbol |
Date: |
Sun, 9 Jan 2022 20:57:39 -0500 (EST) |
branch: externals/cape
commit d3e4d152ac1081e227c4cc827c1a4be823af04cb
Author: Daniel Mendler <mail@daniel-mendler.de>
Commit: Daniel Mendler <mail@daniel-mendler.de>
Add cape-symbol
---
README.org | 3 ++-
cape.el | 21 +++++++++++++++++++++
2 files changed, 23 insertions(+), 1 deletion(-)
diff --git a/README.org b/README.org
index d611033ce0..6960abb67d 100644
--- a/README.org
+++ b/README.org
@@ -46,8 +46,9 @@ this package should be upstreamed into Emacs itself.
("C-c p t" . complete-tag) ;; etags
("C-c p f" . cape-file)
("C-c p k" . cape-keyword)
+ ("C-c p s" . cape-symbol)
("C-c p a" . cape-abbrev)
- ("C-c p s" . cape-ispell)
+ ("C-c p i" . cape-ispell)
("C-c p w" . cape-dict))
:init
;; Add `completion-at-point-functions', used by `completion-at-point'.
diff --git a/cape.el b/cape.el
index f19889ef49..066df7dbd8 100644
--- a/cape.el
+++ b/cape.el
@@ -321,6 +321,27 @@
(interactive)
(cape--complete-in-region 'filename #'read-file-name-internal
cape--file-properties))
+(defvar cape--symbol-properties
+ (list :annotation-function (lambda (_) " Symbol")
+ :company-kind #'cape--symbol-kind))
+
+(defun cape--symbol-kind (sym)
+ "Return kind of SYM."
+ (setq sym (intern-soft sym))
+ (cond
+ ((or (macrop sym) (special-form-p sym)) 'keyword)
+ ((fboundp sym) 'function)
+ ((boundp sym) 'variable)
+ ((featurep sym) 'module)
+ ((facep sym) 'color)
+ (t 'text)))
+
+;;;###autoload
+(defun cape-symbol ()
+ "Complete symbol at point."
+ (interactive)
+ (cape--complete-in-region 'symbol obarray cape--symbol-properties))
+
(defvar cape--dabbrev-properties
(list :annotation-function (lambda (_) " Dabbrev")
:company-kind (lambda (_) 'text)))
- [elpa] externals/cape 8643892a6d 066/146: Minor refactoring, (continued)
- [elpa] externals/cape 8643892a6d 066/146: Minor refactoring, ELPA Syncer, 2022/01/09
- [elpa] externals/cape 0fdbf4f5c3 073/146: cape-line: Implement capf, ELPA Syncer, 2022/01/09
- [elpa] externals/cape 16ef21309b 076/146: Improve cape-dabbrev, ELPA Syncer, 2022/01/09
- [elpa] externals/cape edb2be3b71 092/146: Version 0.3, ELPA Syncer, 2022/01/09
- [elpa] externals/cape 08877dbf75 096/146: Improve comments, ELPA Syncer, 2022/01/09
- [elpa] externals/cape b5485b8878 031/146: cape-ispell-capf: Compute candidates later, ELPA Syncer, 2022/01/09
- [elpa] externals/cape dc26e9f7ab 049/146: cape-dict-capf: Load the dict lazily, ELPA Syncer, 2022/01/09
- [elpa] externals/cape 2bcdd7bfe5 052/146: cape-file-capf: Require directory as prefix (Fix #9), ELPA Syncer, 2022/01/09
- [elpa] externals/cape 673b086dae 056/146: Annotate abbreviations with expansion, ELPA Syncer, 2022/01/09
- [elpa] externals/cape 6ff72e5253 067/146: Unify cape-ispell and cape-ispell-capf, ELPA Syncer, 2022/01/09
- [elpa] externals/cape d3e4d152ac 024/146: Add cape-symbol,
ELPA Syncer <=
- [elpa] externals/cape 8036636a0f 026/146: Add comment, ELPA Syncer, 2022/01/09
- [elpa] externals/cape 9bd7bed258 029/146: cape-company-capf: Call the backend later in the completion process, ELPA Syncer, 2022/01/09
- [elpa] externals/cape 67c3b75e2a 039/146: Refactor dabbrev, simplify, ELPA Syncer, 2022/01/09
- [elpa] externals/cape 6e525cdfdd 040/146: Rework cape-company-to-capf, ELPA Syncer, 2022/01/09
- [elpa] externals/cape 6deb7d7a8b 044/146: Add docstrings, ELPA Syncer, 2022/01/09
- [elpa] externals/cape 3ad6aa105e 045/146: cape-company-to-capf: Simplify, ELPA Syncer, 2022/01/09
- [elpa] externals/cape 4a1f19af23 057/146: Fix super capf, ELPA Syncer, 2022/01/09
- [elpa] externals/cape 26401bfa6a 069/146: Unify cape-abbrev and cape-abbrev-capf, ELPA Syncer, 2022/01/09
- [elpa] externals/cape d265a03e7f 074/146: cape-dabbrev: Make interactive, ELPA Syncer, 2022/01/09
- [elpa] externals/cape 3eb7efc2d4 050/146: README: Expand reasoning, ELPA Syncer, 2022/01/09