Correctly complete the selection when pressing jk

This commit is contained in:
syl20bnr 2015-04-30 00:34:55 -04:00
parent 5091f79d4d
commit 8a6bcacb09

View file

@ -81,10 +81,13 @@
;; allow to complete selection with `jk' ;; allow to complete selection with `jk'
(defvar spacemacs--company-complete-time nil) (defvar spacemacs--company-complete-time nil)
(defvar spacemacs--company-complete-last-candidate nil)
(defun spacemacs//company-complete-start () (defun spacemacs//company-complete-start ()
"Get time of last `j' when company is active." "Get time of last `j' when company is active."
(interactive) (interactive)
(self-insert-command 1) (self-insert-command 1)
(setq spacemacs--company-complete-last-candidate
(nth company-selection company-candidates))
(setq spacemacs--company-complete-time (current-time))) (setq spacemacs--company-complete-time (current-time)))
(defun spacemacs//company-complete-end () (defun spacemacs//company-complete-end ()
"Check time since last `j' inserted when company was active." "Check time since last `j' inserted when company was active."
@ -98,7 +101,7 @@
(delete-char -1)) (delete-char -1))
(let ((company-idle-delay)) (let ((company-idle-delay))
(company-auto-begin) (company-auto-begin)
(company-complete-selection))) (company-finish spacemacs--company-complete-last-candidate)))
(setq spacemacs--company-complete-time nil)) (setq spacemacs--company-complete-time nil))
;; key bindings ;; key bindings