[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[elpa] 38/52: Indicate current candidate's backend when it's in a group
From: |
Dmitry Gutov |
Subject: |
[elpa] 38/52: Indicate current candidate's backend when it's in a group |
Date: |
Tue, 01 Jul 2014 11:53:27 +0000 |
dgutov pushed a commit to branch master
in repository elpa.
commit 8783c6ffacdf85bf921b8fb013de5839e3f47d16
Author: Dmitry Gutov <address@hidden>
Date: Sun Jun 15 07:03:52 2014 +0300
Indicate current candidate's backend when it's in a group
Closes #109
---
NEWS.md | 2 ++
company.el | 15 +++++++++++++--
2 files changed, 15 insertions(+), 2 deletions(-)
diff --git a/NEWS.md b/NEWS.md
index ac0361f..4c2ffe1 100644
--- a/NEWS.md
+++ b/NEWS.md
@@ -2,6 +2,8 @@
## Next
+* When grouped back-ends are used, the back-end of the current candidate is
+ indicated in the mode-line, enclosed in angle brackets.
* New user option `company-gtags-insert-arguments`, t by default.
* `company-css` knows about CSS3.
* `company-gtags` supports `meta` and `annotation`.
diff --git a/company.el b/company.el
index c810100..b61bda6 100644
--- a/company.el
+++ b/company.el
@@ -1037,10 +1037,20 @@ can retrieve meta-data for them."
(mod selection company-candidates-length)
(max 0 (min (1- company-candidates-length) selection))))
(when (or force-update (not (equal selection company-selection)))
+ (company-update-group-lighter (nth selection company-candidates))
(setq company-selection selection
company-selection-changed t)
(company-call-frontends 'update)))
+(defun company-update-group-lighter (candidate)
+ (when (listp company-backend)
+ (let ((backend (or (get-text-property 0 'company-backend candidate)
+ (car company-backend))))
+ (when (and backend (symbolp backend))
+ (let ((name (replace-regexp-in-string "company-\\|-company" ""
+ (symbol-name backend))))
+ (setq company-lighter (format " company-<%s>" name)))))))
+
(defun company-apply-predicate (candidates predicate)
(let (new)
(dolist (c candidates)
@@ -1375,8 +1385,9 @@ Keywords and function definition names are ignored."
(message "No completion found"))
(when company--manual-action
(setq company--manual-prefix prefix))
- (when (symbolp backend)
- (setq company-lighter (concat " " (symbol-name backend))))
+ (if (symbolp backend)
+ (setq company-lighter (concat " " (symbol-name backend)))
+ (company-update-group-lighter (car c)))
(company-update-candidates c)
(run-hook-with-args 'company-completion-started-hook
(company-explicit-action-p))
- [elpa] 30/52: Merge pull request #129 from bbatsov/c-h, (continued)
- [elpa] 30/52: Merge pull request #129 from bbatsov/c-h, Dmitry Gutov, 2014/07/01
- [elpa] 22/52: Update NEWS, Dmitry Gutov, 2014/07/01
- [elpa] 26/52: Backport defvar-local from Emacs 24.2, Dmitry Gutov, 2014/07/01
- [elpa] 28/52: Add package-version property to vars after in 0.7.0, Dmitry Gutov, 2014/07/01
- [elpa] 29/52: Bind company-show-doc-buffer to C-h, Dmitry Gutov, 2014/07/01
- [elpa] 31/52: company-css-value-classes: fix border-width infloop, Dmitry Gutov, 2014/07/01
- [elpa] 32/52: company-css-property-values: port to lexical-binding, Dmitry Gutov, 2014/07/01
- [elpa] 33/52: company-css: add a bunch of CSS3 properties, Dmitry Gutov, 2014/07/01
- [elpa] 36/52: company-css-property-alist: remove reference to font-variant in value for font, Dmitry Gutov, 2014/07/01
- [elpa] 34/52: company-gtags: add arguments insertion, Dmitry Gutov, 2014/07/01
- [elpa] 38/52: Indicate current candidate's backend when it's in a group,
Dmitry Gutov <=
- [elpa] 39/52: company-update-group-lighter: privatize, Dmitry Gutov, 2014/07/01
- [elpa] 41/52: Improve comment wording, Dmitry Gutov, 2014/07/01
- [elpa] 37/52: company-pseudo-tooltip-edit: update company-width, Dmitry Gutov, 2014/07/01
- [elpa] 44/52: company-keywords-alist: ass js-mode -> javascript-mode alias, Dmitry Gutov, 2014/07/01
- [elpa] 43/52: company--should-idle-begin: use a more careful check, Dmitry Gutov, 2014/07/01
- [elpa] 42/52: Don't assign to company-point in company-abort and company-finish, Dmitry Gutov, 2014/07/01
- [elpa] 46/52: Never delete the "added newline" twice, Dmitry Gutov, 2014/07/01
- [elpa] 47/52: Don't call post-completion methods and hook in continue-failed case, Dmitry Gutov, 2014/07/01
- [elpa] 45/52: Bring back this-command check when company-idle-delay is t, Dmitry Gutov, 2014/07/01
- [elpa] 40/52: Define company-sort-by-backend-importance, Dmitry Gutov, 2014/07/01