summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'company-ebuild.el')
-rw-r--r--company-ebuild.el23
1 files changed, 13 insertions, 10 deletions
diff --git a/company-ebuild.el b/company-ebuild.el
index d01160f..30f564a 100644
--- a/company-ebuild.el
+++ b/company-ebuild.el
@@ -44,6 +44,7 @@
(require 'company)
(require 'ebuild-mode)
+(require 'company-ebuild-custom)
(require 'company-ebuild-keywords)
@@ -94,25 +95,23 @@
"Return a list of all available packages.
Uses the \"qsearch\" tool to get the packages."
- (let ((qsearch
- (executable-find "qsearch"))
- (qsearch-formats
+ (let ((qsearch-formats
'("%{CATEGORY}/%{PN}"
"%{CATEGORY}/%{PN}-%{PV}"
"%{CATEGORY}/%{PN}-%{PV}:%{SLOT}"
"%{CATEGORY}/%{PN}-%{PV}:%{SLOT}::%{REPO}")))
(cond
- (qsearch
+ (company-ebuild-qsearch-executable
(mapcan (lambda (qsearch-format)
(let ((qlist-result
(shell-command-to-string
(format "%s --all --format \"%s\" --name-only --nocolor"
- qsearch
+ company-ebuild-qsearch-executable
qsearch-format))))
(split-string qlist-result "\n" t)))
qsearch-formats))
(t
- nil))))
+ '()))))
(defun company-ebuild--get-tags (file-path tag-name)
"Return all tags with TAG-NAME from file at FILE-PATH.
@@ -205,10 +204,14 @@ REPO-ROOT is the location from which we start searching for Eclass files."
(defun company-ebuild--regenerate-dynamic-keywords ()
"Regenerate dynamic keywords."
- (company-ebuild--regenerate-dynamic-keywords-eclass)
- (company-ebuild--regenerate-dynamic-keywords-use-flags)
- (company-ebuild--regenerate-dynamic-keywords-packages)
- (company-ebuild--regenerate-dynamic-keywords-licenses))
+ (when company-ebuild--regenerate-dynamic-keywords-eclass
+ (company-ebuild--regenerate-dynamic-keywords-eclass))
+ (when company-ebuild--regenerate-dynamic-keywords-use-flags
+ (company-ebuild--regenerate-dynamic-keywords-use-flags))
+ (when company-ebuild--regenerate-dynamic-keywords-use-flags
+ (company-ebuild--regenerate-dynamic-keywords-packages))
+ (when company-ebuild--regenerate-dynamic-keywords-licenses
+ (company-ebuild--regenerate-dynamic-keywords-licenses)))
(defun company-ebuild--grab-symbol ()
"Workaround wrapper for `company-grab-symbol'."