diff options
| -rw-r--r-- | CHANGELOG.org | 4 | ||||
| -rw-r--r-- | README.org | 27 | ||||
| -rw-r--r-- | cape.el | 24 |
3 files changed, 36 insertions, 19 deletions
diff --git a/CHANGELOG.org b/CHANGELOG.org index 16da753..fd8c0c1 100644 --- a/CHANGELOG.org +++ b/CHANGELOG.org @@ -2,6 +2,10 @@ #+author: Daniel Mendler #+language: en +* Development + +- Add ~cape-prefix-map~ for simplified configuration. + * Version 1.5 (2024-04-12) - ~cape-file-prefix~: New variable to customize file name completion prefix. If @@ -84,25 +84,14 @@ information. ;; Add extensions (use-package cape - ;; Bind dedicated completion commands - ;; Alternative prefix keys: C-c p, M-p, M-+, ... - :bind (("C-c p p" . completion-at-point) ;; capf - ("C-c p t" . complete-tag) ;; etags - ("C-c p d" . cape-dabbrev) ;; or dabbrev-completion - ("C-c p h" . cape-history) - ("C-c p f" . cape-file) - ("C-c p k" . cape-keyword) - ("C-c p s" . cape-elisp-symbol) - ("C-c p e" . cape-elisp-block) - ("C-c p a" . cape-abbrev) - ("C-c p l" . cape-line) - ("C-c p w" . cape-dict) - ("C-c p :" . cape-emoji) - ("C-c p \\" . cape-tex) - ("C-c p _" . cape-tex) - ("C-c p ^" . cape-tex) - ("C-c p &" . cape-sgml) - ("C-c p r" . cape-rfc1345)) + ;; Bind prefix keymap providing all Cape commands under a mnemonic key. + ;; Press C-c p ? for help. + :bind ("C-c p" . cape-prefix-map) ;; Alternative keys: M-p, M-+, ... + ;; Alternatively bind Cape commands individually. + ;; :bind (("C-c p d" . cape-dabbrev) + ;; ("C-c p h" . cape-history) + ;; ("C-c p f" . cape-file) + ;; ...) :init ;; Add to the global default value of `completion-at-point-functions' which is ;; used by `completion-at-point'. The order of the functions matters, the @@ -1271,5 +1271,29 @@ This function can be used as an advice around an existing Capf." (format "Create a %s Capf from CAPF. The Capf calls `%s' with CAPF and ARGS as arguments." name wrapper)))) +(defvar-keymap cape-prefix-map + :doc "Keymap used as completion entry point. +The keymap should be installed globally under a prefix." + "p" #'completion-at-point + "t" #'complete-tag + "d" #'cape-dabbrev + "h" #'cape-history + "f" #'cape-file + "s" #'cape-elisp-symbol + "e" #'cape-elisp-block + "a" #'cape-abbrev + "l" #'cape-line + "w" #'cape-dict + "k" 'cape-keyword + ":" 'cape-emoji + "\\" 'cape-tex + "_" 'cape-tex + "^" 'cape-tex + "&" 'cape-sgml + "r" 'cape-rfc1345) + +;;;###autoload (autoload 'cape-prefix-map "cape" nil t 'keymap) +(defalias 'cape-prefix-map cape-prefix-map) + (provide 'cape) ;;; cape.el ends here |
