[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[elpa] externals/corfu 6081a68db6: Require the compat library
From: |
ELPA Syncer |
Subject: |
[elpa] externals/corfu 6081a68db6: Require the compat library |
Date: |
Fri, 13 Jan 2023 05:57:35 -0500 (EST) |
branch: externals/corfu
commit 6081a68db6f74a493431d647942fc294964910aa
Author: Daniel Mendler <mail@daniel-mendler.de>
Commit: Daniel Mendler <mail@daniel-mendler.de>
Require the compat library
---
corfu.el | 56 +++++++++++++++++++++----------------------
extensions/corfu-indexed.el | 2 +-
extensions/corfu-popupinfo.el | 20 +++++++---------
3 files changed, 37 insertions(+), 41 deletions(-)
diff --git a/corfu.el b/corfu.el
index 4a3579ef7f..f4f8000353 100644
--- a/corfu.el
+++ b/corfu.el
@@ -6,7 +6,7 @@
;; Maintainer: Daniel Mendler <mail@daniel-mendler.de>
;; Created: 2021
;; Version: 0.34
-;; Package-Requires: ((emacs "27.1"))
+;; Package-Requires: ((emacs "27.1") (compat "29.1.1.0"))
;; Homepage: https://github.com/minad/corfu
;; This file is part of GNU Emacs.
@@ -33,6 +33,7 @@
;;; Code:
+(require 'compat)
(require 'seq)
(eval-when-compile
(require 'cl-lib)
@@ -213,31 +214,29 @@ The completion backend can override this with
'((t :inherit shadow :strike-through t))
"Face used for deprecated candidates.")
-(defvar corfu-map
- (let ((map (make-sparse-keymap)))
- (define-key map [remap beginning-of-buffer] #'corfu-first)
- (define-key map [remap end-of-buffer] #'corfu-last)
- (define-key map [remap scroll-down-command] #'corfu-scroll-down)
- (define-key map [remap scroll-up-command] #'corfu-scroll-up)
- (define-key map [remap next-line] #'corfu-next)
- (define-key map [remap previous-line] #'corfu-previous)
- (define-key map [remap completion-at-point] #'corfu-complete)
- (define-key map [down] #'corfu-next)
- (define-key map [up] #'corfu-previous)
- (define-key map [remap keyboard-escape-quit] #'corfu-reset)
- ;; XXX [tab] is bound because of org-mode
- ;; The binding should be removed from org-mode-map.
- (define-key map [tab] #'corfu-complete)
- (define-key map "\M-n" #'corfu-next)
- (define-key map "\M-p" #'corfu-previous)
- (define-key map "\C-g" #'corfu-quit)
- (define-key map "\r" #'corfu-insert)
- (define-key map "\t" #'corfu-complete)
- (define-key map "\M-g" 'corfu-info-location)
- (define-key map "\M-h" 'corfu-info-documentation)
- (define-key map "\M- " #'corfu-insert-separator)
- map)
- "Corfu keymap used when popup is shown.")
+(defvar-keymap corfu-map
+ :doc "Corfu keymap used when popup is shown."
+ "<remap> <beginning-of-buffer>" #'corfu-first
+ "<remap> <end-of-buffer>" #'corfu-last
+ "<remap> <scroll-down-command>" #'corfu-scroll-down
+ "<remap> <scroll-up-command>" #'corfu-scroll-up
+ "<remap> <next-line>" #'corfu-next
+ "<remap> <previous-line>" #'corfu-previous
+ "<remap> <completion-at-point>" #'corfu-complete
+ "<remap> <keyboard-escape-quit>" #'corfu-reset
+ "<down>" #'corfu-next
+ "<up>" #'corfu-previous
+ ;; XXX [tab] is bound because of org-mode
+ ;; The binding should be removed from org-mode-map.
+ "<tab>" #'corfu-complete
+ "M-n" #'corfu-next
+ "M-p" #'corfu-previous
+ "C-g" #'corfu-quit
+ "RET" #'corfu-insert
+ "TAB" #'corfu-complete
+ "M-g" 'corfu-info-location
+ "M-h" 'corfu-info-documentation
+ "M-SPC" #'corfu-insert-separator)
(defvar corfu--auto-timer nil
"Auto completion timer.")
@@ -887,8 +886,7 @@ See `corfu-separator' for more details."
(<= beg pt end)
(save-excursion
(goto-char beg)
- (let ((inhibit-field-text-motion t))
- (<= (line-beginning-position) pt (line-end-position))))
+ (<= (pos-bol) pt (pos-eol)))
(or
;; We keep Corfu alive if a `overriding-terminal-local-map' is
;; installed, e.g., the `universal-argument-map'. It would be good to
@@ -1082,7 +1080,7 @@ Quit if no candidate is selected."
(exit (plist-get completion-extra-properties :exit-function))
(threshold (completion--cycle-threshold metadata))
(completion-in-region-mode-predicate
- (or completion-in-region-mode-predicate (lambda () t))))
+ (or completion-in-region-mode-predicate #'always)))
(pcase (completion-try-completion str table pred pt metadata)
('nil (corfu--message "No match") nil)
('t (goto-char end)
diff --git a/extensions/corfu-indexed.el b/extensions/corfu-indexed.el
index 7de296b751..c090a9707a 100644
--- a/extensions/corfu-indexed.el
+++ b/extensions/corfu-indexed.el
@@ -60,7 +60,7 @@
"Advice for `corfu--affixate' which prefixes the CANDS with an index."
(setq cands (cdr cands))
(let* ((space #(" " 0 1 (face (:height 0.5 :inherit corfu-indexed))))
- (width (if (> (+ corfu-indexed-start (length cands)) 10) 2 1))
+ (width (if (length> cands (- 10 corfu-indexed-start)) 2 1))
(fmt (concat space
(propertize (format "%%%ds" width)
'face 'corfu-indexed)
diff --git a/extensions/corfu-popupinfo.el b/extensions/corfu-popupinfo.el
index 48e1294572..60cb0b5361 100644
--- a/extensions/corfu-popupinfo.el
+++ b/extensions/corfu-popupinfo.el
@@ -112,17 +112,15 @@ popup can be requested manually via
`corfu-popupinfo-toggle',
(const force-vertical)))
:group 'corfu)
-(defvar corfu-popupinfo-map
- (let ((map (make-sparse-keymap)))
- (define-key map "\M-d" #'corfu-popupinfo-documentation)
- (define-key map "\M-l" #'corfu-popupinfo-location)
- (define-key map "\M-t" #'corfu-popupinfo-toggle)
- (define-key map [remap scroll-other-window] #'corfu-popupinfo-scroll-up)
- (define-key map [remap scroll-other-window-down]
#'corfu-popupinfo-scroll-down)
- (define-key map [remap end-of-buffer-other-window] #'corfu-popupinfo-end)
- (define-key map [remap beginning-of-buffer-other-window]
#'corfu-popupinfo-beginning)
- map)
- "Additional keymap activated in popupinfo mode.")
+(defvar-keymap corfu-popupinfo-map
+ :doc "Additional keymap activated in popupinfo mode."
+ "M-d" #'corfu-popupinfo-documentation
+ "M-l" #'corfu-popupinfo-location
+ "M-t" #'corfu-popupinfo-toggle
+ "<remap> <scroll-other-window>" #'corfu-popupinfo-scroll-up
+ "<remap> <scroll-other-window-down>" #'corfu-popupinfo-scroll-down
+ "<remap> <end-of-buffer-other-window>" #'corfu-popupinfo-end
+ "<remap> <beginning-of-buffer-other-window>" #'corfu-popupinfo-beginning)
(defvar corfu-popupinfo--buffer-parameters
'((truncate-partial-width-windows . nil)
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [elpa] externals/corfu 6081a68db6: Require the compat library,
ELPA Syncer <=