public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-commits] proj/company-ebuild:master commit in: /
@ 2022-08-17  0:37 Maciej Barć
  0 siblings, 0 replies; 37+ messages in thread
From: Maciej Barć @ 2022-08-17  0:37 UTC (permalink / raw
  To: gentoo-commits

commit:     f241b57b1bdc5e9d6f7671c7b8d24cb8c6e75b6a
Author:     Maciej Barć <xgqt <AT> gentoo <DOT> org>
AuthorDate: Wed Aug 17 00:37:30 2022 +0000
Commit:     Maciej Barć <xgqt <AT> gentoo <DOT> org>
CommitDate: Wed Aug 17 00:37:30 2022 +0000
URL:        https://gitweb.gentoo.org/proj/company-ebuild.git/commit/?id=f241b57b

Cask: add

Signed-off-by: Maciej Barć <xgqt <AT> gentoo.org>

 Cask | 8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/Cask b/Cask
new file mode 100644
index 0000000..cfb3215
--- /dev/null
+++ b/Cask
@@ -0,0 +1,8 @@
+(source melpa)
+
+(package-file "company-ebuild.el")
+
+(files "company-ebuild-keywords.el"
+       "company-ebuild.el")
+
+(development (depends-on "company"))


^ permalink raw reply related	[flat|nested] 37+ messages in thread
* [gentoo-commits] proj/company-ebuild:master commit in: /
@ 2023-06-18 20:22 Maciej Barć
  0 siblings, 0 replies; 37+ messages in thread
From: Maciej Barć @ 2023-06-18 20:22 UTC (permalink / raw
  To: gentoo-commits

commit:     fde7705da2a478f47a52302ee483c40f34ef669a
Author:     Maciej Barć <xgqt <AT> gentoo <DOT> org>
AuthorDate: Sun Jun 18 20:21:37 2023 +0000
Commit:     Maciej Barć <xgqt <AT> gentoo <DOT> org>
CommitDate: Sun Jun 18 20:21:37 2023 +0000
URL:        https://gitweb.gentoo.org/proj/company-ebuild.git/commit/?id=fde7705d

company-ebuild.el: bump to 0.1.4

Signed-off-by: Maciej Barć <xgqt <AT> gentoo.org>

 company-ebuild.el | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/company-ebuild.el b/company-ebuild.el
index f4ea97d..a46e076 100644
--- a/company-ebuild.el
+++ b/company-ebuild.el
@@ -21,7 +21,7 @@
 
 ;; Authors: Maciej Barć <xgqt@gentoo.org>
 ;; Created: 16 Aug 2022
-;; Version: 0.1.3
+;; Version: 0.1.4
 ;; Keywords: languages
 ;; Homepage: https://gitweb.gentoo.org/proj/company-ebuild.git
 ;; Package-Requires: ((emacs "26.2"))
@@ -48,7 +48,7 @@
 (require 'company-ebuild-keywords)
 
 
-(defconst company-ebuild-version "0.1.3"
+(defconst company-ebuild-version "0.1.4"
   "Company-Ebuild version.")
 
 


^ permalink raw reply related	[flat|nested] 37+ messages in thread
* [gentoo-commits] proj/company-ebuild:master commit in: /
@ 2023-06-18 20:19 Maciej Barć
  0 siblings, 0 replies; 37+ messages in thread
From: Maciej Barć @ 2023-06-18 20:19 UTC (permalink / raw
  To: gentoo-commits

commit:     1945108143cac5a1379aa45843e8b5bb1590ae56
Author:     Maciej Barć <xgqt <AT> gentoo <DOT> org>
AuthorDate: Sun Jun 18 20:18:58 2023 +0000
Commit:     Maciej Barć <xgqt <AT> gentoo <DOT> org>
CommitDate: Sun Jun 18 20:18:58 2023 +0000
URL:        https://gitweb.gentoo.org/proj/company-ebuild.git/commit/?id=19451081

company-ebuild.el: keywords-doc -> keywords-eclassdoc

Signed-off-by: Maciej Barć <xgqt <AT> gentoo.org>

 company-ebuild.el | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/company-ebuild.el b/company-ebuild.el
index 1490251..f4ea97d 100644
--- a/company-ebuild.el
+++ b/company-ebuild.el
@@ -63,7 +63,7 @@
     '(" phase" . function))
    ((member candidate company-ebuild--constant-keywords-sandbox)
     '(" sandbox" . function))
-   ((member candidate company-ebuild--constant-keywords-doc)
+   ((member candidate company-ebuild--constant-keywords-eclassdoc)
     '(" doc" . variable))
    ((member candidate company-ebuild--constant-keywords-variables-predefined)
     '(" variable (predefined)" . variable))


^ permalink raw reply related	[flat|nested] 37+ messages in thread
* [gentoo-commits] proj/company-ebuild:master commit in: /
@ 2023-06-18 20:15 Maciej Barć
  0 siblings, 0 replies; 37+ messages in thread
From: Maciej Barć @ 2023-06-18 20:15 UTC (permalink / raw
  To: gentoo-commits

commit:     4f11cb95c6130d7839e9274f98582fee015bb8b9
Author:     Maciej Barć <xgqt <AT> gentoo <DOT> org>
AuthorDate: Sun Jun 18 20:14:58 2023 +0000
Commit:     Maciej Barć <xgqt <AT> gentoo <DOT> org>
CommitDate: Sun Jun 18 20:14:58 2023 +0000
URL:        https://gitweb.gentoo.org/proj/company-ebuild.git/commit/?id=4f11cb95

company-ebuild-keywords.el: eclass-documentation -> eclassdoc

Signed-off-by: Maciej Barć <xgqt <AT> gentoo.org>

 company-ebuild-keywords.el | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/company-ebuild-keywords.el b/company-ebuild-keywords.el
index 12f23c9..e560f81 100644
--- a/company-ebuild-keywords.el
+++ b/company-ebuild-keywords.el
@@ -51,8 +51,8 @@
 (defconst company-ebuild--constant-keywords-sandbox
   (car ebuild-mode-keywords-sandbox))
 
-(defconst company-ebuild--constant-keywords-doc
-  (append (car ebuild-mode-keywords-eclass-documentation)
+(defconst company-ebuild--constant-keywords-eclassdoc
+  (append (car ebuild-mode-keywords-eclassdoc)
           (car ebuild-mode-keywords-eclassdoc-warn)))
 
 (defconst company-ebuild--constant-keywords-functions
@@ -134,7 +134,7 @@
           company-ebuild--constant-keywords-restrict
           company-ebuild--constant-keywords-phases
           company-ebuild--constant-keywords-sandbox
-          company-ebuild--constant-keywords-doc
+          company-ebuild--constant-keywords-eclassdoc
           company-ebuild--constant-keywords-functions
           company-ebuild--constant-keywords-variables-predefined
           company-ebuild--constant-keywords-variables-ebuild-defined


^ permalink raw reply related	[flat|nested] 37+ messages in thread
* [gentoo-commits] proj/company-ebuild:master commit in: /
@ 2023-04-25 19:48 Maciej Barć
  0 siblings, 0 replies; 37+ messages in thread
From: Maciej Barć @ 2023-04-25 19:48 UTC (permalink / raw
  To: gentoo-commits

commit:     5cce948406548db916e7fc40edf8c2c4fd6b0d3f
Author:     Maciej Barć <xgqt <AT> gentoo <DOT> org>
AuthorDate: Tue Apr 25 19:48:44 2023 +0000
Commit:     Maciej Barć <xgqt <AT> gentoo <DOT> org>
CommitDate: Tue Apr 25 19:48:44 2023 +0000
URL:        https://gitweb.gentoo.org/proj/company-ebuild.git/commit/?id=5cce9484

Eldev: add autoloads plugin

Signed-off-by: Maciej Barć <xgqt <AT> gentoo.org>

 Eldev | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/Eldev b/Eldev
index 9f5af3d..6ce754a 100644
--- a/Eldev
+++ b/Eldev
@@ -2,4 +2,6 @@
 
 (eldev-use-package-archive 'melpa)
 
+(eldev-use-plugin 'autoloads)
+
 (setf eldev-project-main-file "company-ebuild.el")


^ permalink raw reply related	[flat|nested] 37+ messages in thread
* [gentoo-commits] proj/company-ebuild:master commit in: /
@ 2023-04-25 19:38 Maciej Barć
  0 siblings, 0 replies; 37+ messages in thread
From: Maciej Barć @ 2023-04-25 19:38 UTC (permalink / raw
  To: gentoo-commits

commit:     9d2c105927a1118aefc7fdde68e058d3696cf247
Author:     Maciej Barć <xgqt <AT> gentoo <DOT> org>
AuthorDate: Tue Apr 25 19:37:58 2023 +0000
Commit:     Maciej Barć <xgqt <AT> gentoo <DOT> org>
CommitDate: Tue Apr 25 19:37:58 2023 +0000
URL:        https://gitweb.gentoo.org/proj/company-ebuild.git/commit/?id=9d2c1059

add Eldev

Signed-off-by: Maciej Barć <xgqt <AT> gentoo.org>

 Eldev | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/Eldev b/Eldev
new file mode 100644
index 0000000..9f5af3d
--- /dev/null
+++ b/Eldev
@@ -0,0 +1,5 @@
+;; -*- mode: emacs-lisp; lexical-binding: t; -*-
+
+(eldev-use-package-archive 'melpa)
+
+(setf eldev-project-main-file "company-ebuild.el")


^ permalink raw reply related	[flat|nested] 37+ messages in thread
* [gentoo-commits] proj/company-ebuild:master commit in: /
@ 2023-03-11  8:17 Maciej Barć
  0 siblings, 0 replies; 37+ messages in thread
From: Maciej Barć @ 2023-03-11  8:17 UTC (permalink / raw
  To: gentoo-commits

commit:     8303406342e2ac06e332bce75de51ed80563eee5
Author:     Maciej Barć <xgqt <AT> gentoo <DOT> org>
AuthorDate: Sat Mar 11 08:17:07 2023 +0000
Commit:     Maciej Barć <xgqt <AT> gentoo <DOT> org>
CommitDate: Sat Mar 11 08:17:07 2023 +0000
URL:        https://gitweb.gentoo.org/proj/company-ebuild.git/commit/?id=83034063

company-ebuild-keywords.el: add IDEPEND

Closes: https://bugs.gentoo.org/900745
Signed-off-by: Maciej Barć <xgqt <AT> gentoo.org>

 company-ebuild-keywords.el | 1 +
 1 file changed, 1 insertion(+)

diff --git a/company-ebuild-keywords.el b/company-ebuild-keywords.el
index e7999f7..12f23c9 100644
--- a/company-ebuild-keywords.el
+++ b/company-ebuild-keywords.el
@@ -107,6 +107,7 @@
   '("DEPEND"
     "BDEPEND"
     "RDEPEND"
+    "IDEPEND"
     "PDEPEND"))
 
 (defconst company-ebuild--constant-keywords-variables-user-environment


^ permalink raw reply related	[flat|nested] 37+ messages in thread
* [gentoo-commits] proj/company-ebuild:master commit in: /
@ 2023-02-03 13:50 Maciej Barć
  0 siblings, 0 replies; 37+ messages in thread
From: Maciej Barć @ 2023-02-03 13:50 UTC (permalink / raw
  To: gentoo-commits

commit:     99c6e9b8d5b523c6ad43a4fc72e97ef5155a28ef
Author:     Maciej Barć <xgqt <AT> gentoo <DOT> org>
AuthorDate: Fri Feb  3 13:49:40 2023 +0000
Commit:     Maciej Barć <xgqt <AT> gentoo <DOT> org>
CommitDate: Fri Feb  3 13:49:40 2023 +0000
URL:        https://gitweb.gentoo.org/proj/company-ebuild.git/commit/?id=99c6e9b8

Makefile: bugfix - FIND -> RM

Signed-off-by: Maciej Barć <xgqt <AT> gentoo.org>

 Makefile | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/Makefile b/Makefile
index ecb9ff5..040ef89 100644
--- a/Makefile
+++ b/Makefile
@@ -4,7 +4,7 @@ ELS          = $(wildcard $(PWD)/*.el)
 ELCS         = $(ELS:.el=.elc)
 
 EMACS       := emacs
-FIND        := rm -f
+RM          := rm -f
 
 EMACFLAGS   := --batch -q --no-site-file -L $(PWD)
 EMACSCMD     = $(EMACS) $(EMACFLAGS)


^ permalink raw reply related	[flat|nested] 37+ messages in thread
* [gentoo-commits] proj/company-ebuild:master commit in: /
@ 2023-01-29 20:26 Maciej Barć
  0 siblings, 0 replies; 37+ messages in thread
From: Maciej Barć @ 2023-01-29 20:26 UTC (permalink / raw
  To: gentoo-commits

commit:     db96be1a96c04823a3c3a0be3d14b85905ad8ee5
Author:     Maciej Barć <xgqt <AT> gentoo <DOT> org>
AuthorDate: Sun Jan 29 20:25:17 2023 +0000
Commit:     Maciej Barć <xgqt <AT> gentoo <DOT> org>
CommitDate: Sun Jan 29 20:25:17 2023 +0000
URL:        https://gitweb.gentoo.org/proj/company-ebuild.git/commit/?id=db96be1a

company-ebuild-keywords.el: add arch variations

-, ~, and -*

Signed-off-by: Maciej Barć <xgqt <AT> gentoo.org>

 company-ebuild-keywords.el | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/company-ebuild-keywords.el b/company-ebuild-keywords.el
index 3a1a33f..e7999f7 100644
--- a/company-ebuild-keywords.el
+++ b/company-ebuild-keywords.el
@@ -37,7 +37,10 @@
 ;; Keywords from ebuild-mode font lock.
 
 (defconst company-ebuild--constant-keywords-architectures
-  ebuild-mode-arch-list)
+  (append '("-*")
+          (mapcar (lambda (s) (concat "-" s)) ebuild-mode-arch-list)
+          (mapcar (lambda (s) (concat "~" s)) ebuild-mode-arch-list)
+          ebuild-mode-arch-list))
 
 (defconst company-ebuild--constant-keywords-restrict
   ebuild-mode-restrict-list)


^ permalink raw reply related	[flat|nested] 37+ messages in thread
* [gentoo-commits] proj/company-ebuild:master commit in: /
@ 2022-12-13 10:44 Maciej Barć
  0 siblings, 0 replies; 37+ messages in thread
From: Maciej Barć @ 2022-12-13 10:44 UTC (permalink / raw
  To: gentoo-commits

commit:     f0e4de1afc2183db941fc1b65c2af80ceff50021
Author:     Maciej Barć <xgqt <AT> gentoo <DOT> org>
AuthorDate: Tue Dec 13 10:44:43 2022 +0000
Commit:     Maciej Barć <xgqt <AT> gentoo <DOT> org>
CommitDate: Tue Dec 13 10:44:43 2022 +0000
URL:        https://gitweb.gentoo.org/proj/company-ebuild.git/commit/?id=f0e4de1a

Makefile: update

Signed-off-by: Maciej Barć <xgqt <AT> gentoo.org>

 Makefile | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/Makefile b/Makefile
index 606ff5d..ecb9ff5 100644
--- a/Makefile
+++ b/Makefile
@@ -1,7 +1,10 @@
 PWD         ?= $(shell pwd)
 
+ELS          = $(wildcard $(PWD)/*.el)
+ELCS         = $(ELS:.el=.elc)
+
 EMACS       := emacs
-FIND        := find
+FIND        := rm -f
 
 EMACFLAGS   := --batch -q --no-site-file -L $(PWD)
 EMACSCMD     = $(EMACS) $(EMACFLAGS)
@@ -10,18 +13,15 @@ EMACSCMD     = $(EMACS) $(EMACFLAGS)
 .PHONY: all
 all: clean compile
 
-
 .PHONY: clean
 clean:
-	$(FIND) $(PWD) -iname "*.elc" -delete
-
+	$(RM) $(ELCS)
 
 %.elc:
 	$(EMACSCMD) --eval "(byte-compile-file \"$(*).el\" 0)"
 
 .PHONY: compile
-compile: company-ebuild-custom.elc company-ebuild-keywords.elc company-ebuild.elc
-
+compile: $(ELCS)
 
 .PHONY: install
 install: compile


^ permalink raw reply related	[flat|nested] 37+ messages in thread
* [gentoo-commits] proj/company-ebuild:master commit in: /
@ 2022-12-02  0:40 Maciej Barć
  0 siblings, 0 replies; 37+ messages in thread
From: Maciej Barć @ 2022-12-02  0:40 UTC (permalink / raw
  To: gentoo-commits

commit:     8e7bc5ca65db6f8f26b7a6731994048c3433ec71
Author:     Maciej Barć <xgqt <AT> gentoo <DOT> org>
AuthorDate: Fri Dec  2 00:39:45 2022 +0000
Commit:     Maciej Barć <xgqt <AT> gentoo <DOT> org>
CommitDate: Fri Dec  2 00:39:45 2022 +0000
URL:        https://gitweb.gentoo.org/proj/company-ebuild.git/commit/?id=8e7bc5ca

company-ebuild.el: bump to 0.1.3

Signed-off-by: Maciej Barć <xgqt <AT> gentoo.org>

 company-ebuild.el | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/company-ebuild.el b/company-ebuild.el
index 555350a..1490251 100644
--- a/company-ebuild.el
+++ b/company-ebuild.el
@@ -21,7 +21,7 @@
 
 ;; Authors: Maciej Barć <xgqt@gentoo.org>
 ;; Created: 16 Aug 2022
-;; Version: 0.1.2
+;; Version: 0.1.3
 ;; Keywords: languages
 ;; Homepage: https://gitweb.gentoo.org/proj/company-ebuild.git
 ;; Package-Requires: ((emacs "26.2"))
@@ -48,7 +48,7 @@
 (require 'company-ebuild-keywords)
 
 
-(defconst company-ebuild-version "0.1.2"
+(defconst company-ebuild-version "0.1.3"
   "Company-Ebuild version.")
 
 


^ permalink raw reply related	[flat|nested] 37+ messages in thread
* [gentoo-commits] proj/company-ebuild:master commit in: /
@ 2022-12-02  0:38 Maciej Barć
  0 siblings, 0 replies; 37+ messages in thread
From: Maciej Barć @ 2022-12-02  0:38 UTC (permalink / raw
  To: gentoo-commits

commit:     476c510efefbdf1f042adfbcef7202825ceb3f07
Author:     Maciej Barć <xgqt <AT> gentoo <DOT> org>
AuthorDate: Fri Dec  2 00:37:56 2022 +0000
Commit:     Maciej Barć <xgqt <AT> gentoo <DOT> org>
CommitDate: Fri Dec  2 00:37:56 2022 +0000
URL:        https://gitweb.gentoo.org/proj/company-ebuild.git/commit/?id=476c510e

company-ebuild-keywords.el: update for new ebuild-mode release

remove additional car accessor

Signed-off-by: Maciej Barć <xgqt <AT> gentoo.org>

 company-ebuild-keywords.el | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/company-ebuild-keywords.el b/company-ebuild-keywords.el
index 10f34c9..3a1a33f 100644
--- a/company-ebuild-keywords.el
+++ b/company-ebuild-keywords.el
@@ -53,7 +53,7 @@
           (car ebuild-mode-keywords-eclassdoc-warn)))
 
 (defconst company-ebuild--constant-keywords-functions
-  (append (car (car ebuild-mode-keywords-eclass))
+  (append (car ebuild-mode-keywords-eclass)
           (car ebuild-mode-keywords-0)))
 
 ;; See: https://devmanual.gentoo.org/ebuild-writing/variables/


^ permalink raw reply related	[flat|nested] 37+ messages in thread
* [gentoo-commits] proj/company-ebuild:master commit in: /
@ 2022-08-30 22:22 Maciej Barć
  0 siblings, 0 replies; 37+ messages in thread
From: Maciej Barć @ 2022-08-30 22:22 UTC (permalink / raw
  To: gentoo-commits

commit:     726011aeeecdc46be3098ae0899023bd63ab0fc4
Author:     Maciej Barć <xgqt <AT> gentoo <DOT> org>
AuthorDate: Tue Aug 30 22:22:04 2022 +0000
Commit:     Maciej Barć <xgqt <AT> gentoo <DOT> org>
CommitDate: Tue Aug 30 22:22:04 2022 +0000
URL:        https://gitweb.gentoo.org/proj/company-ebuild.git/commit/?id=726011ae

company-ebuild.el: bump to 0.1.2

Signed-off-by: Maciej Barć <xgqt <AT> gentoo.org>

 company-ebuild.el | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/company-ebuild.el b/company-ebuild.el
index bcee8f5..555350a 100644
--- a/company-ebuild.el
+++ b/company-ebuild.el
@@ -21,7 +21,7 @@
 
 ;; Authors: Maciej Barć <xgqt@gentoo.org>
 ;; Created: 16 Aug 2022
-;; Version: 0.1.1
+;; Version: 0.1.2
 ;; Keywords: languages
 ;; Homepage: https://gitweb.gentoo.org/proj/company-ebuild.git
 ;; Package-Requires: ((emacs "26.2"))
@@ -48,7 +48,7 @@
 (require 'company-ebuild-keywords)
 
 
-(defconst company-ebuild-version "0.1.1"
+(defconst company-ebuild-version "0.1.2"
   "Company-Ebuild version.")
 
 


^ permalink raw reply related	[flat|nested] 37+ messages in thread
* [gentoo-commits] proj/company-ebuild:master commit in: /
@ 2022-08-30 18:22 Maciej Barć
  0 siblings, 0 replies; 37+ messages in thread
From: Maciej Barć @ 2022-08-30 18:22 UTC (permalink / raw
  To: gentoo-commits

commit:     bfb0fac0258f2fb2e561e7066378ecf88e84d413
Author:     Maciej Barć <xgqt <AT> gentoo <DOT> org>
AuthorDate: Tue Aug 30 18:21:31 2022 +0000
Commit:     Maciej Barć <xgqt <AT> gentoo <DOT> org>
CommitDate: Tue Aug 30 18:21:31 2022 +0000
URL:        https://gitweb.gentoo.org/proj/company-ebuild.git/commit/?id=bfb0fac0

company-ebuild.el: cache eclasses

Signed-off-by: Maciej Barć <xgqt <AT> gentoo.org>

 company-ebuild.el | 54 ++++++++++++++++++++++++++++++++++++++----------------
 1 file changed, 38 insertions(+), 16 deletions(-)

diff --git a/company-ebuild.el b/company-ebuild.el
index 5c2272a..bcee8f5 100644
--- a/company-ebuild.el
+++ b/company-ebuild.el
@@ -24,7 +24,7 @@
 ;; Version: 0.1.1
 ;; Keywords: languages
 ;; Homepage: https://gitweb.gentoo.org/proj/company-ebuild.git
-;; Package-Requires: ((emacs "25.1"))
+;; Package-Requires: ((emacs "26.2"))
 ;; SPDX-License-Identifier: GPL-2.0-or-later
 
 
@@ -150,26 +150,48 @@ REPO-ROOT is the location from which we start searching for Eclass files."
       (when (file-exists-p repo-eclass)
         (directory-files repo-eclass t ".*\\.eclass" t)))))
 
+(defvar company-ebuild--eclass-mtimes '()
+  "Cache to prevent accessing eclasses multiple times.
+
+This is a global value holding a list of pairs.
+The key is an eclass path and the value is it's last modification time.
+This variable primarily is used in
+`company-ebuild--regenerate-dynamic-keywords-eclass'.")
+
+(defun company-ebuild--mtime (file-path)
+  "Return the modification time of a file at FILE-PATH."
+  (file-attribute-modification-time (file-attributes file-path)))
+
 (defun company-ebuild--regenerate-dynamic-keywords-eclass ()
   "Set new content of the ‘company-ebuild--dynamic-keywords’ Eclass variables."
   (let ((repo-root
          (company-ebuild--find-repo-root buffer-file-name)))
     (when repo-root
-      (let ((eclass-files
-             (company-ebuild--find-eclass-files repo-root)))
-        (mapc
-         (lambda (eclass-file)
-           (mapc (lambda (str)
-                   (add-to-list 'company-ebuild--dynamic-keywords-eclasses
-                                (replace-regexp-in-string "\\.eclass" "" str)))
-                 (company-ebuild--get-tags eclass-file "ECLASS"))
-           (mapc (lambda (str)
-                   (add-to-list 'company-ebuild--dynamic-keywords-variables str))
-                 (company-ebuild--get-tags eclass-file "ECLASS_VARIABLE"))
-           (mapc (lambda (str)
-                   (add-to-list 'company-ebuild--dynamic-keywords-functions str))
-                 (company-ebuild--get-tags eclass-file "FUNCTION")))
-         eclass-files)))))
+      (mapc
+       (lambda (eclass-file)
+         (let ((eclass-file-mtime
+                (company-ebuild--mtime eclass-file)))
+           (unless (equal (cdr (assoc eclass-file
+                                      company-ebuild--eclass-mtimes))
+                          eclass-file-mtime)
+             (assoc-delete-all eclass-file company-ebuild--eclass-mtimes)
+             (push `(,eclass-file . ,eclass-file-mtime)
+                   company-ebuild--eclass-mtimes)
+             (mapc (lambda (str)
+                     (add-to-list 'company-ebuild--dynamic-keywords-eclasses
+                                  (replace-regexp-in-string "\\.eclass"
+                                                            ""
+                                                            str)))
+                   (company-ebuild--get-tags eclass-file "ECLASS"))
+             (mapc (lambda (str)
+                     (add-to-list 'company-ebuild--dynamic-keywords-variables
+                                  str))
+                   (company-ebuild--get-tags eclass-file "ECLASS_VARIABLE"))
+             (mapc (lambda (str)
+                     (add-to-list 'company-ebuild--dynamic-keywords-functions
+                                  str))
+                   (company-ebuild--get-tags eclass-file "FUNCTION")))))
+       (company-ebuild--find-eclass-files repo-root)))))
 
 (defun company-ebuild--regenerate-dynamic-keywords-use-flags ()
   "Set new content of the ‘company-ebuild--dynamic-keywords-use-flags’ variable."


^ permalink raw reply related	[flat|nested] 37+ messages in thread
* [gentoo-commits] proj/company-ebuild:master commit in: /
@ 2022-08-30 18:22 Maciej Barć
  0 siblings, 0 replies; 37+ messages in thread
From: Maciej Barć @ 2022-08-30 18:22 UTC (permalink / raw
  To: gentoo-commits

commit:     197298962b056b420d6ac29d34a1dcb751b83ccb
Author:     Maciej Barć <xgqt <AT> gentoo <DOT> org>
AuthorDate: Tue Aug 30 18:20:51 2022 +0000
Commit:     Maciej Barć <xgqt <AT> gentoo <DOT> org>
CommitDate: Tue Aug 30 18:20:51 2022 +0000
URL:        https://gitweb.gentoo.org/proj/company-ebuild.git/commit/?id=19729896

company-ebuild-keywords.el: revert to global

Signed-off-by: Maciej Barć <xgqt <AT> gentoo.org>

 company-ebuild-keywords.el | 6 ------
 1 file changed, 6 deletions(-)

diff --git a/company-ebuild-keywords.el b/company-ebuild-keywords.el
index c126f7a..10f34c9 100644
--- a/company-ebuild-keywords.el
+++ b/company-ebuild-keywords.el
@@ -141,22 +141,16 @@
 ;; Dynamically collected keywords.
 
 (defvar company-ebuild--dynamic-keywords-eclasses nil)
-(make-variable-buffer-local 'company-ebuild--dynamic-keywords-eclasses)
 
 (defvar company-ebuild--dynamic-keywords-functions nil)
-(make-variable-buffer-local 'company-ebuild--dynamic-keywords-functions)
 
 (defvar company-ebuild--dynamic-keywords-licenses nil)
-(make-variable-buffer-local 'company-ebuild--dynamic-keywords-licenses)
 
 (defvar company-ebuild--dynamic-keywords-packages nil)
-;; ‘company-ebuild--dynamic-keywords-packages’ is left global.
 
 (defvar company-ebuild--dynamic-keywords-use-flags nil)
-(make-variable-buffer-local 'company-ebuild--dynamic-keywords-use-flags)
 
 (defvar company-ebuild--dynamic-keywords-variables nil)
-(make-variable-buffer-local 'company-ebuild--dynamic-keywords-variables)
 
 
 (defun company-ebuild--dynamic-keywords ()


^ permalink raw reply related	[flat|nested] 37+ messages in thread
* [gentoo-commits] proj/company-ebuild:master commit in: /
@ 2022-08-30 18:22 Maciej Barć
  0 siblings, 0 replies; 37+ messages in thread
From: Maciej Barć @ 2022-08-30 18:22 UTC (permalink / raw
  To: gentoo-commits

commit:     d5a28f061fff8a8e70d2729770b5dd9f0b40eef2
Author:     Maciej Barć <xgqt <AT> gentoo <DOT> org>
AuthorDate: Tue Aug 30 15:10:37 2022 +0000
Commit:     Maciej Barć <xgqt <AT> gentoo <DOT> org>
CommitDate: Tue Aug 30 15:10:37 2022 +0000
URL:        https://gitweb.gentoo.org/proj/company-ebuild.git/commit/?id=d5a28f06

company-ebuild.el: remove pkg format with repo

almost never used

Signed-off-by: Maciej Barć <xgqt <AT> gentoo.org>

 company-ebuild.el | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/company-ebuild.el b/company-ebuild.el
index f53126e..5c2272a 100644
--- a/company-ebuild.el
+++ b/company-ebuild.el
@@ -98,8 +98,7 @@ Uses the \"qsearch\" tool to get the packages."
   (let ((qsearch-formats
          '("%{CATEGORY}/%{PN}"
            "%{CATEGORY}/%{PN}-%{PV}"
-           "%{CATEGORY}/%{PN}-%{PV}:%{SLOT}"
-           "%{CATEGORY}/%{PN}-%{PV}:%{SLOT}::%{REPO}")))
+           "%{CATEGORY}/%{PN}-%{PV}:%{SLOT}")))
     (cond
      (company-ebuild-qsearch-executable
       (mapcan (lambda (qsearch-format)


^ permalink raw reply related	[flat|nested] 37+ messages in thread
* [gentoo-commits] proj/company-ebuild:master commit in: /
@ 2022-08-25 23:17 Maciej Barć
  0 siblings, 0 replies; 37+ messages in thread
From: Maciej Barć @ 2022-08-25 23:17 UTC (permalink / raw
  To: gentoo-commits

commit:     087acc05a41b72db2625101b4bd3aca824deb7d8
Author:     Maciej Barć <xgqt <AT> gentoo <DOT> org>
AuthorDate: Thu Aug 25 23:16:57 2022 +0000
Commit:     Maciej Barć <xgqt <AT> gentoo <DOT> org>
CommitDate: Thu Aug 25 23:16:57 2022 +0000
URL:        https://gitweb.gentoo.org/proj/company-ebuild.git/commit/?id=087acc05

company-ebuild.el: do not modify company-minimum-prefix-length

Signed-off-by: Maciej Barć <xgqt <AT> gentoo.org>

 company-ebuild.el | 2 --
 1 file changed, 2 deletions(-)

diff --git a/company-ebuild.el b/company-ebuild.el
index f67a63e..f53126e 100644
--- a/company-ebuild.el
+++ b/company-ebuild.el
@@ -277,8 +277,6 @@ or `require' Company-Ebuild:
                     (t
                      '())))
                 ,@company-backends))
-  ;; Because some completions have length 1:
-  (setq-local company-minimum-prefix-length 1)
   (setq-local company-require-match nil))
 
 ;;;###autoload


^ permalink raw reply related	[flat|nested] 37+ messages in thread
* [gentoo-commits] proj/company-ebuild:master commit in: /
@ 2022-08-25 23:00 Maciej Barć
  0 siblings, 0 replies; 37+ messages in thread
From: Maciej Barć @ 2022-08-25 23:00 UTC (permalink / raw
  To: gentoo-commits

commit:     322ae5cabfecb244dc3c398395ad5dd1e58c5493
Author:     Maciej Barć <xgqt <AT> gentoo <DOT> org>
AuthorDate: Thu Aug 25 22:51:33 2022 +0000
Commit:     Maciej Barć <xgqt <AT> gentoo <DOT> org>
CommitDate: Thu Aug 25 22:51:33 2022 +0000
URL:        https://gitweb.gentoo.org/proj/company-ebuild.git/commit/?id=322ae5ca

company-ebuild.el: fix regeneration of eclasses and licenses

Signed-off-by: Maciej Barć <xgqt <AT> gentoo.org>

 company-ebuild.el | 15 ++++++++++-----
 1 file changed, 10 insertions(+), 5 deletions(-)

diff --git a/company-ebuild.el b/company-ebuild.el
index 30f564a..f67a63e 100644
--- a/company-ebuild.el
+++ b/company-ebuild.el
@@ -145,9 +145,11 @@ FILE-PATH is the location from which we start searching for repository root."
   "Return found Eclass files.
 
 REPO-ROOT is the location from which we start searching for Eclass files."
-  (and repo-root
-       (directory-files
-        (expand-file-name "eclass" repo-root) t ".*\\.eclass" t)))
+  (when repo-root
+    (let ((repo-eclass
+           (expand-file-name "eclass" repo-root)))
+      (when (file-exists-p repo-eclass)
+        (directory-files repo-eclass t ".*\\.eclass" t)))))
 
 (defun company-ebuild--regenerate-dynamic-keywords-eclass ()
   "Set new content of the ‘company-ebuild--dynamic-keywords’ Eclass variables."
@@ -199,8 +201,11 @@ REPO-ROOT is the location from which we start searching for Eclass files."
   (let ((repo-root
          (company-ebuild--find-repo-root buffer-file-name)))
     (when repo-root
-      (setq company-ebuild--dynamic-keywords-licenses
-            (directory-files (expand-file-name "licenses" repo-root))))))
+      (let ((repo-licenses
+             (expand-file-name "licenses" repo-root)))
+        (when (file-exists-p repo-licenses)
+          (setq company-ebuild--dynamic-keywords-licenses
+                (directory-files repo-licenses)))))))
 
 (defun company-ebuild--regenerate-dynamic-keywords ()
   "Regenerate dynamic keywords."


^ permalink raw reply related	[flat|nested] 37+ messages in thread
* [gentoo-commits] proj/company-ebuild:master commit in: /
@ 2022-08-25 23:00 Maciej Barć
  0 siblings, 0 replies; 37+ messages in thread
From: Maciej Barć @ 2022-08-25 23:00 UTC (permalink / raw
  To: gentoo-commits

commit:     00d36cb2aca7777193d8ffffea4e85a4e000fdca
Author:     Maciej Barć <xgqt <AT> gentoo <DOT> org>
AuthorDate: Thu Aug 25 22:32:56 2022 +0000
Commit:     Maciej Barć <xgqt <AT> gentoo <DOT> org>
CommitDate: Thu Aug 25 22:32:56 2022 +0000
URL:        https://gitweb.gentoo.org/proj/company-ebuild.git/commit/?id=00d36cb2

company-ebuild-keywords.el: make most of dynamic vars buffer-local

Signed-off-by: Maciej Barć <xgqt <AT> gentoo.org>

 company-ebuild-keywords.el | 14 ++++++++++----
 1 file changed, 10 insertions(+), 4 deletions(-)

diff --git a/company-ebuild-keywords.el b/company-ebuild-keywords.el
index 3a4f516..c126f7a 100644
--- a/company-ebuild-keywords.el
+++ b/company-ebuild-keywords.el
@@ -141,16 +141,22 @@
 ;; Dynamically collected keywords.
 
 (defvar company-ebuild--dynamic-keywords-eclasses nil)
+(make-variable-buffer-local 'company-ebuild--dynamic-keywords-eclasses)
 
 (defvar company-ebuild--dynamic-keywords-functions nil)
+(make-variable-buffer-local 'company-ebuild--dynamic-keywords-functions)
 
-(defvar company-ebuild--dynamic-keywords-variables nil)
-
-(defvar company-ebuild--dynamic-keywords-use-flags nil)
+(defvar company-ebuild--dynamic-keywords-licenses nil)
+(make-variable-buffer-local 'company-ebuild--dynamic-keywords-licenses)
 
 (defvar company-ebuild--dynamic-keywords-packages nil)
+;; ‘company-ebuild--dynamic-keywords-packages’ is left global.
 
-(defvar company-ebuild--dynamic-keywords-licenses nil)
+(defvar company-ebuild--dynamic-keywords-use-flags nil)
+(make-variable-buffer-local 'company-ebuild--dynamic-keywords-use-flags)
+
+(defvar company-ebuild--dynamic-keywords-variables nil)
+(make-variable-buffer-local 'company-ebuild--dynamic-keywords-variables)
 
 
 (defun company-ebuild--dynamic-keywords ()


^ permalink raw reply related	[flat|nested] 37+ messages in thread
* [gentoo-commits] proj/company-ebuild:master commit in: /
@ 2022-08-20 13:06 Maciej Barć
  0 siblings, 0 replies; 37+ messages in thread
From: Maciej Barć @ 2022-08-20 13:06 UTC (permalink / raw
  To: gentoo-commits

commit:     39424f5d9ff5a79b69e0bf0b5ed2b94e51a90340
Author:     Maciej Barć <xgqt <AT> gentoo <DOT> org>
AuthorDate: Sat Aug 20 13:05:16 2022 +0000
Commit:     Maciej Barć <xgqt <AT> gentoo <DOT> org>
CommitDate: Sat Aug 20 13:05:16 2022 +0000
URL:        https://gitweb.gentoo.org/proj/company-ebuild.git/commit/?id=39424f5d

company-ebuild-custom.el: add; enable customization of some features from company-ebuild.el

Signed-off-by: Maciej Barć <xgqt <AT> gentoo.org>

 Cask                     |  3 ++-
 Makefile                 |  2 +-
 company-ebuild-custom.el | 70 ++++++++++++++++++++++++++++++++++++++++++++++++
 company-ebuild.el        | 23 +++++++++-------
 4 files changed, 86 insertions(+), 12 deletions(-)

diff --git a/Cask b/Cask
index 250f6e3..90b5586 100644
--- a/Cask
+++ b/Cask
@@ -2,7 +2,8 @@
 
 (package-file "company-ebuild.el")
 
-(files "company-ebuild-keywords.el"
+(files "company-ebuild-custom.el"
+       "company-ebuild-keywords.el"
        "company-ebuild.el")
 
 (development (depends-on "company")

diff --git a/Makefile b/Makefile
index c89fa82..606ff5d 100644
--- a/Makefile
+++ b/Makefile
@@ -20,7 +20,7 @@ clean:
 	$(EMACSCMD) --eval "(byte-compile-file \"$(*).el\" 0)"
 
 .PHONY: compile
-compile: company-ebuild-keywords.elc company-ebuild.elc
+compile: company-ebuild-custom.elc company-ebuild-keywords.elc company-ebuild.elc
 
 
 .PHONY: install

diff --git a/company-ebuild-custom.el b/company-ebuild-custom.el
new file mode 100644
index 0000000..3df3e03
--- /dev/null
+++ b/company-ebuild-custom.el
@@ -0,0 +1,70 @@
+;;; company-ebuild-custom.el --- Company-Ebuild customization -*- lexical-binding: t -*-
+
+
+
+;; Copyright 2022 Gentoo Authors
+
+
+;; This file is free software: you can redistribute it and/or modify
+;; it under the terms of the GNU General Public License as published by
+;; the Free Software Foundation, either version 2 of the License, or
+;; (at your option) any later version.
+
+;; This file is distributed in the hope that it will be useful,
+;; but WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+;; GNU General Public License for more details.
+
+;; You should have received a copy of the GNU General Public License
+;; along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.
+
+
+
+;;; Commentary:
+
+
+;; Company-Ebuild customization.
+
+
+
+;;; Code:
+
+
+(defgroup company-ebuild nil
+  "Company backend for editing Ebuild files."
+  :group 'company
+  :group 'ebuild)
+
+
+(defcustom company-ebuild-qsearch-executable (executable-find "qsearch")
+  "Path to the \"qsearch\" executable binary."
+  :safe 'stringp
+  :type 'file
+  :group 'company-ebuild)
+
+(defcustom company-ebuild--regenerate-dynamic-keywords-eclass t
+  "Whether to regenerate ‘company-ebuild--dynamic-keywords-eclass’."
+  :type 'boolean
+  :group 'company-ebuild)
+
+(defcustom company-ebuild--regenerate-dynamic-keywords-use-flags t
+  "Whether to regenerate ‘company-ebuild--dynamic-keywords-use-flags’."
+  :type 'boolean
+  :group 'company-ebuild)
+
+(defcustom company-ebuild--regenerate-dynamic-keywords-packages t
+  "Whether to regenerate ‘company-ebuild--dynamic-keywords-packages’."
+  :type 'boolean
+  :group 'company-ebuild)
+
+(defcustom company-ebuild--regenerate-dynamic-keywords-licenses t
+  "Whether to regenerate ‘company-ebuild--dynamic-keywords-licenses’."
+  :type 'boolean
+  :group 'company-ebuild)
+
+
+(provide 'company-ebuild-custom)
+
+
+
+;;; company-ebuild-custom.el ends here

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'."


^ permalink raw reply related	[flat|nested] 37+ messages in thread
* [gentoo-commits] proj/company-ebuild:master commit in: /
@ 2022-08-17 15:23 Maciej Barć
  0 siblings, 0 replies; 37+ messages in thread
From: Maciej Barć @ 2022-08-17 15:23 UTC (permalink / raw
  To: gentoo-commits

commit:     3c4d2b7b470e8c4ebe0f004c4317ca3a0d366559
Author:     Maciej Barć <xgqt <AT> gentoo <DOT> org>
AuthorDate: Wed Aug 17 15:23:09 2022 +0000
Commit:     Maciej Barć <xgqt <AT> gentoo <DOT> org>
CommitDate: Wed Aug 17 15:23:09 2022 +0000
URL:        https://gitweb.gentoo.org/proj/company-ebuild.git/commit/?id=3c4d2b7b

company-ebuild.el: rename company-ebuild--regenerate-dynamic-keywords-eclasses -> company-ebuild--regenerate-dynamic-keywords-eclas

Signed-off-by: Maciej Barć <xgqt <AT> gentoo.org>

 company-ebuild.el | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/company-ebuild.el b/company-ebuild.el
index 8cc9d83..d01160f 100644
--- a/company-ebuild.el
+++ b/company-ebuild.el
@@ -150,7 +150,7 @@ REPO-ROOT is the location from which we start searching for Eclass files."
        (directory-files
         (expand-file-name "eclass" repo-root) t ".*\\.eclass" t)))
 
-(defun company-ebuild--regenerate-dynamic-keywords-eclasses ()
+(defun company-ebuild--regenerate-dynamic-keywords-eclass ()
   "Set new content of the ‘company-ebuild--dynamic-keywords’ Eclass variables."
   (let ((repo-root
          (company-ebuild--find-repo-root buffer-file-name)))
@@ -205,7 +205,7 @@ 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-eclasses)
+  (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))


^ permalink raw reply related	[flat|nested] 37+ messages in thread
* [gentoo-commits] proj/company-ebuild:master commit in: /
@ 2022-08-17 15:21 Maciej Barć
  0 siblings, 0 replies; 37+ messages in thread
From: Maciej Barć @ 2022-08-17 15:21 UTC (permalink / raw
  To: gentoo-commits

commit:     0cb4439eb104cecfa7648373e7e46e2146978fae
Author:     Maciej Barć <xgqt <AT> gentoo <DOT> org>
AuthorDate: Wed Aug 17 15:21:15 2022 +0000
Commit:     Maciej Barć <xgqt <AT> gentoo <DOT> org>
CommitDate: Wed Aug 17 15:21:15 2022 +0000
URL:        https://gitweb.gentoo.org/proj/company-ebuild.git/commit/?id=0cb4439e

.dir-locals.el: add

Signed-off-by: Maciej Barć <xgqt <AT> gentoo.org>

 .dir-locals.el | 12 ++++++++++++
 1 file changed, 12 insertions(+)

diff --git a/.dir-locals.el b/.dir-locals.el
new file mode 100644
index 0000000..4a6b820
--- /dev/null
+++ b/.dir-locals.el
@@ -0,0 +1,12 @@
+;; -*- no-byte-compile: t -*-
+
+;; Directory Local Variables
+;; For more information see (info "(emacs) Directory Variables")
+
+
+((nil . ((projectile-project-type . make)))
+ (find-file . ((indent-tabs-mode . nil)
+               (require-final-newline . t)
+               (show-trailing-whitespace . t)
+               (tab-width . 4)))
+ (makefile-mode . ((indent-tabs-mode . t))))


^ permalink raw reply related	[flat|nested] 37+ messages in thread
* [gentoo-commits] proj/company-ebuild:master commit in: /
@ 2022-08-17 15:19 Maciej Barć
  0 siblings, 0 replies; 37+ messages in thread
From: Maciej Barć @ 2022-08-17 15:19 UTC (permalink / raw
  To: gentoo-commits

commit:     1eae6f34f926d4983b660bc0fe111e293b94718c
Author:     Maciej Barć <xgqt <AT> gentoo <DOT> org>
AuthorDate: Wed Aug 17 15:12:54 2022 +0000
Commit:     Maciej Barć <xgqt <AT> gentoo <DOT> org>
CommitDate: Wed Aug 17 15:16:45 2022 +0000
URL:        https://gitweb.gentoo.org/proj/company-ebuild.git/commit/?id=1eae6f34

company-ebuild.el: company-ebuild--regenerate-dynamic-keywords-eclasses - add-to-list

Signed-off-by: Maciej Barć <xgqt <AT> gentoo.org>

 company-ebuild.el | 32 +++++++++++++-------------------
 1 file changed, 13 insertions(+), 19 deletions(-)

diff --git a/company-ebuild.el b/company-ebuild.el
index 7a1b51a..15224af 100644
--- a/company-ebuild.el
+++ b/company-ebuild.el
@@ -157,25 +157,19 @@ REPO-ROOT is the location from which we start searching for Eclass files."
     (when repo-root
       (let ((eclass-files
              (company-ebuild--find-eclass-files repo-root)))
-        (setq company-ebuild--dynamic-keywords-eclasses
-              (apply #'append
-                     (mapcar (lambda (f)
-                               (mapcar (lambda (s)
-                                         (replace-regexp-in-string "\\.eclass"
-                                                                   ""
-                                                                   s))
-                                       (company-ebuild--get-tags f "ECLASS")))
-                             eclass-files)))
-        (setq company-ebuild--dynamic-keywords-variables
-              (apply #'append
-                     (mapcar (lambda (f)
-                               (company-ebuild--get-tags f "ECLASS_VARIABLE"))
-                             eclass-files)))
-        (setq company-ebuild--dynamic-keywords-functions
-              (apply #'append
-                     (mapcar (lambda (f)
-                               (company-ebuild--get-tags f "FUNCTION"))
-                             eclass-files)))))))
+        (mapc
+         (lambda (eclass-file)
+           (mapc (lambda (str)
+                   (add-to-list 'company-ebuild--dynamic-keywords-eclasses
+                                (replace-regexp-in-string "\\.eclass" "" str)))
+                 (company-ebuild--get-tags eclass-file "ECLASS"))
+           (mapc (lambda (str)
+                   (add-to-list 'company-ebuild--dynamic-keywords-variables str))
+                 (company-ebuild--get-tags eclass-file "ECLASS_VARIABLE"))
+           (mapc (lambda (str)
+                   (add-to-list 'company-ebuild--dynamic-keywords-functions str))
+                 (company-ebuild--get-tags eclass-file "FUNCTION")))
+         eclass-files)))))
 
 (defun company-ebuild--regenerate-dynamic-keywords-use-flags ()
   "Set new content of the ‘company-ebuild--dynamic-keywords-use-flags’ variable."


^ permalink raw reply related	[flat|nested] 37+ messages in thread
* [gentoo-commits] proj/company-ebuild:master commit in: /
@ 2022-08-17 15:19 Maciej Barć
  0 siblings, 0 replies; 37+ messages in thread
From: Maciej Barć @ 2022-08-17 15:19 UTC (permalink / raw
  To: gentoo-commits

commit:     303356daec48d7c7ea25541439cbb79cbfa281ff
Author:     Maciej Barć <xgqt <AT> gentoo <DOT> org>
AuthorDate: Wed Aug 17 15:01:59 2022 +0000
Commit:     Maciej Barć <xgqt <AT> gentoo <DOT> org>
CommitDate: Wed Aug 17 15:14:41 2022 +0000
URL:        https://gitweb.gentoo.org/proj/company-ebuild.git/commit/?id=303356da

company-ebuild.el: company-ebuild--find-eclass-files - remove redundant check

Signed-off-by: Maciej Barć <xgqt <AT> gentoo.org>

 company-ebuild.el | 12 +++++-------
 1 file changed, 5 insertions(+), 7 deletions(-)

diff --git a/company-ebuild.el b/company-ebuild.el
index 9c857e2..7a1b51a 100644
--- a/company-ebuild.el
+++ b/company-ebuild.el
@@ -142,15 +142,13 @@ FILE-PATH is the location from which we start searching for repository root."
        (file-exists-p file-path)
        (locate-dominating-file file-path "profiles/repo_name")))
 
-(defun company-ebuild--find-eclass-files (file-path)
+(defun company-ebuild--find-eclass-files (repo-root)
   "Return found Eclass files.
 
-FILE-PATH is the location from which we start searching for Eclass files."
-  (let ((repo-root
-         (company-ebuild--find-repo-root file-path)))
-    (and repo-root
-         (directory-files
-          (expand-file-name "eclass" repo-root) t ".*\\.eclass" t))))
+REPO-ROOT is the location from which we start searching for Eclass files."
+  (and repo-root
+       (directory-files
+        (expand-file-name "eclass" repo-root) t ".*\\.eclass" t)))
 
 (defun company-ebuild--regenerate-dynamic-keywords-eclasses ()
   "Set new content of the ‘company-ebuild--dynamic-keywords’ Eclass variables."


^ permalink raw reply related	[flat|nested] 37+ messages in thread
* [gentoo-commits] proj/company-ebuild:master commit in: /
@ 2022-08-17 15:19 Maciej Barć
  0 siblings, 0 replies; 37+ messages in thread
From: Maciej Barć @ 2022-08-17 15:19 UTC (permalink / raw
  To: gentoo-commits

commit:     95fe51b2f4069d5ba8aa5c46c505399490eac71e
Author:     Maciej Barć <xgqt <AT> gentoo <DOT> org>
AuthorDate: Wed Aug 17 15:18:55 2022 +0000
Commit:     Maciej Barć <xgqt <AT> gentoo <DOT> org>
CommitDate: Wed Aug 17 15:18:55 2022 +0000
URL:        https://gitweb.gentoo.org/proj/company-ebuild.git/commit/?id=95fe51b2

company-ebuild.el: bump to 0.1.1

Signed-off-by: Maciej Barć <xgqt <AT> gentoo.org>

 company-ebuild.el | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/company-ebuild.el b/company-ebuild.el
index 15224af..8cc9d83 100644
--- a/company-ebuild.el
+++ b/company-ebuild.el
@@ -21,7 +21,7 @@
 
 ;; Authors: Maciej Barć <xgqt@gentoo.org>
 ;; Created: 16 Aug 2022
-;; Version: 0.1.0
+;; Version: 0.1.1
 ;; Keywords: languages
 ;; Homepage: https://gitweb.gentoo.org/proj/company-ebuild.git
 ;; Package-Requires: ((emacs "25.1"))
@@ -47,7 +47,7 @@
 (require 'company-ebuild-keywords)
 
 
-(defconst company-ebuild-version "0.1.0"
+(defconst company-ebuild-version "0.1.1"
   "Company-Ebuild version.")
 
 


^ permalink raw reply related	[flat|nested] 37+ messages in thread
* [gentoo-commits] proj/company-ebuild:master commit in: /
@ 2022-08-17  1:54 Maciej Barć
  0 siblings, 0 replies; 37+ messages in thread
From: Maciej Barć @ 2022-08-17  1:54 UTC (permalink / raw
  To: gentoo-commits

commit:     ca546788555cbd09b7540c34a550d445d96977b0
Author:     Maciej Barć <xgqt <AT> gentoo <DOT> org>
AuthorDate: Wed Aug 17 01:52:53 2022 +0000
Commit:     Maciej Barć <xgqt <AT> gentoo <DOT> org>
CommitDate: Wed Aug 17 01:52:53 2022 +0000
URL:        https://gitweb.gentoo.org/proj/company-ebuild.git/commit/?id=ca546788

company-ebuild.el: add to local backends; add capf

Signed-off-by: Maciej Barć <xgqt <AT> gentoo.org>

 company-ebuild.el | 15 +++++++++------
 1 file changed, 9 insertions(+), 6 deletions(-)

diff --git a/company-ebuild.el b/company-ebuild.el
index b50900a..9c857e2 100644
--- a/company-ebuild.el
+++ b/company-ebuild.el
@@ -239,7 +239,6 @@ ARG is the completion argument for annotation and candidates."
     (annotation
      (car (company-ebuild--annotation-and-kind arg)))
     (candidates
-     ;; TODO: Complete any string that already appears in current buffer.
      (cl-remove-if-not (lambda (candidate)
                          (string-prefix-p arg candidate t))
                        (append company-ebuild--constant-keywords
@@ -269,11 +268,15 @@ or `require' Company-Ebuild:
   ;; Regenerate dynamic keywords.
   (company-ebuild--regenerate-dynamic-keywords)
   ;; Add the `company-ebuild' backend.
-  (cond
-   ((fboundp 'company-yasnippet)
-    (add-to-list 'company-backends '(company-ebuild company-yasnippet)))
-   (t
-    (add-to-list 'company-backends 'company-ebuild)))
+  (setq-local company-backends
+              `((company-ebuild
+                 company-capf  ; standard fallback
+                 ,@(cond
+                    ((fboundp 'company-yasnippet)  ; YAS for easier setup
+                     '(company-yasnippet))
+                    (t
+                     '())))
+                ,@company-backends))
   ;; Because some completions have length 1:
   (setq-local company-minimum-prefix-length 1)
   (setq-local company-require-match nil))


^ permalink raw reply related	[flat|nested] 37+ messages in thread
* [gentoo-commits] proj/company-ebuild:master commit in: /
@ 2022-08-17  1:54 Maciej Barć
  0 siblings, 0 replies; 37+ messages in thread
From: Maciej Barć @ 2022-08-17  1:54 UTC (permalink / raw
  To: gentoo-commits

commit:     68efc4e5a9bc8d5a4f4f0e9e4e765d5025d93637
Author:     Maciej Barć <xgqt <AT> gentoo <DOT> org>
AuthorDate: Wed Aug 17 01:54:07 2022 +0000
Commit:     Maciej Barć <xgqt <AT> gentoo <DOT> org>
CommitDate: Wed Aug 17 01:54:07 2022 +0000
URL:        https://gitweb.gentoo.org/proj/company-ebuild.git/commit/?id=68efc4e5

Cask: add yas

Signed-off-by: Maciej Barć <xgqt <AT> gentoo.org>

 Cask | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/Cask b/Cask
index cfb3215..250f6e3 100644
--- a/Cask
+++ b/Cask
@@ -5,4 +5,5 @@
 (files "company-ebuild-keywords.el"
        "company-ebuild.el")
 
-(development (depends-on "company"))
+(development (depends-on "company")
+             (depends-on "yasnippet"))


^ permalink raw reply related	[flat|nested] 37+ messages in thread
* [gentoo-commits] proj/company-ebuild:master commit in: /
@ 2022-08-17  0:31 Maciej Barć
  0 siblings, 0 replies; 37+ messages in thread
From: Maciej Barć @ 2022-08-17  0:31 UTC (permalink / raw
  To: gentoo-commits

commit:     04dc62243b36c185e426df1eb80eadcbb482afb0
Author:     Maciej Barć <xgqt <AT> gentoo <DOT> org>
AuthorDate: Wed Aug 17 00:31:00 2022 +0000
Commit:     Maciej Barć <xgqt <AT> gentoo <DOT> org>
CommitDate: Wed Aug 17 00:31:00 2022 +0000
URL:        https://gitweb.gentoo.org/proj/company-ebuild.git/commit/?id=04dc6224

company-ebuild.el: change character syntax-table temporarily

Signed-off-by: Maciej Barć <xgqt <AT> gentoo.org>

 company-ebuild.el | 14 +++++++++-----
 1 file changed, 9 insertions(+), 5 deletions(-)

diff --git a/company-ebuild.el b/company-ebuild.el
index ef4096b..b50900a 100644
--- a/company-ebuild.el
+++ b/company-ebuild.el
@@ -218,6 +218,14 @@ FILE-PATH is the location from which we start searching for Eclass files."
   (company-ebuild--regenerate-dynamic-keywords-packages)
   (company-ebuild--regenerate-dynamic-keywords-licenses))
 
+(defun company-ebuild--grab-symbol ()
+  "Workaround wrapper for `company-grab-symbol'."
+  ;; TODO: (Hard mode) write a proper `company-grab-symbol' replacement.
+  (with-syntax-table (copy-syntax-table (syntax-table))
+    (modify-syntax-entry ?/ "w")
+    (modify-syntax-entry ?@ "w")  ; To make Eclass tags work.
+    (company-grab-symbol)))
+
 
 ;;;###autoload
 (defun company-ebuild (command &optional arg &rest ignored)
@@ -242,7 +250,7 @@ ARG is the completion argument for annotation and candidates."
     (kind
      (cdr (company-ebuild--annotation-and-kind arg)))
     (prefix
-     (and (eq major-mode 'ebuild-mode) (company-grab-symbol)))
+     (and (eq major-mode 'ebuild-mode) (company-ebuild--grab-symbol)))
     (require-match
      nil)))
 
@@ -255,10 +263,6 @@ in your config:
 \(add-hook 'ebuild-mode-hook 'company-ebuild-setup)
 or `require' Company-Ebuild:
 \(require 'company-ebuild)"
-  ;; HACK: Modify syntax to treat "/" as a word constituent.
-  ;; TODO: (Hard mode) write a proper `company-grab-symbol' replacement.
-  (modify-syntax-entry ?/ "w")
-  (modify-syntax-entry ?@ "w")  ; To make Eclass tags work.
   ;; Force-enable `company-mode'.
   (when (null company-mode)
     (company-mode +1))


^ permalink raw reply related	[flat|nested] 37+ messages in thread
* [gentoo-commits] proj/company-ebuild:master commit in: /
@ 2022-08-16 23:50 Maciej Barć
  0 siblings, 0 replies; 37+ messages in thread
From: Maciej Barć @ 2022-08-16 23:50 UTC (permalink / raw
  To: gentoo-commits

commit:     f40b7d38a472395dac81808ab3ff57a0119c5ebc
Author:     Maciej Barć <xgqt <AT> gentoo <DOT> org>
AuthorDate: Tue Aug 16 22:16:33 2022 +0000
Commit:     Maciej Barć <xgqt <AT> gentoo <DOT> org>
CommitDate: Tue Aug 16 22:16:33 2022 +0000
URL:        https://gitweb.gentoo.org/proj/company-ebuild.git/commit/?id=f40b7d38

company-ebuild.el: do not require a match

Signed-off-by: Maciej Barć <xgqt <AT> gentoo.org>

 company-ebuild.el | 15 +++++++++------
 1 file changed, 9 insertions(+), 6 deletions(-)

diff --git a/company-ebuild.el b/company-ebuild.el
index 8ef299d..65c5aef 100644
--- a/company-ebuild.el
+++ b/company-ebuild.el
@@ -228,10 +228,6 @@ COMMAND is matched with `cl-case'.
 ARG is the completion argument for annotation and candidates."
   (interactive (list 'interactive))
   (cl-case command
-    (interactive
-     (company-begin-backend 'company-ebuild))
-    (prefix
-     (and (eq major-mode 'ebuild-mode) (company-grab-symbol)))
     (annotation
      (company-ebuild--annotation arg))
     (candidates
@@ -240,7 +236,13 @@ ARG is the completion argument for annotation and candidates."
                          (string-prefix-p arg candidate t))
                        (append company-ebuild--constant-keywords
                                (company-ebuild--dynamic-keywords)
-                               (company-ebuild--executables arg))))))
+                               (company-ebuild--executables arg))))
+    (interactive
+     (company-begin-backend 'company-ebuild))
+    (prefix
+     (and (eq major-mode 'ebuild-mode) (company-grab-symbol)))
+    (require-match
+     nil)))
 
 ;;;###autoload
 (defun company-ebuild-setup ()
@@ -266,7 +268,8 @@ or `require' Company-Ebuild:
    (t
     (add-to-list 'company-backends 'company-ebuild)))
   ;; Because some completions have length 1:
-  (setq-local company-minimum-prefix-length 1))
+  (setq-local company-minimum-prefix-length 1)
+  (setq-local company-require-match nil))
 
 ;;;###autoload
 (add-hook 'ebuild-mode-hook 'company-ebuild-setup)


^ permalink raw reply related	[flat|nested] 37+ messages in thread
* [gentoo-commits] proj/company-ebuild:master commit in: /
@ 2022-08-16 23:50 Maciej Barć
  0 siblings, 0 replies; 37+ messages in thread
From: Maciej Barć @ 2022-08-16 23:50 UTC (permalink / raw
  To: gentoo-commits

commit:     a270b8f0813babda3f8a6d451cf3da5f3b0bc03a
Author:     Maciej Barć <xgqt <AT> gentoo <DOT> org>
AuthorDate: Tue Aug 16 22:07:52 2022 +0000
Commit:     Maciej Barć <xgqt <AT> gentoo <DOT> org>
CommitDate: Tue Aug 16 22:07:52 2022 +0000
URL:        https://gitweb.gentoo.org/proj/company-ebuild.git/commit/?id=a270b8f0

company-ebuild.el: / hack

Signed-off-by: Maciej Barć <xgqt <AT> gentoo.org>

 company-ebuild.el | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/company-ebuild.el b/company-ebuild.el
index 2a4cf39..8ef299d 100644
--- a/company-ebuild.el
+++ b/company-ebuild.el
@@ -235,7 +235,6 @@ ARG is the completion argument for annotation and candidates."
     (annotation
      (company-ebuild--annotation arg))
     (candidates
-     ;; FIXME: Can not insert the "/" character.
      ;; TODO: Complete any string that already appears in current buffer.
      (cl-remove-if-not (lambda (candidate)
                          (string-prefix-p arg candidate t))
@@ -252,6 +251,9 @@ in your config:
 \(add-hook 'ebuild-mode-hook 'company-ebuild-setup)
 or `require' Company-Ebuild:
 \(require 'company-ebuild)"
+  ;; HACK: Modify syntax to treat "/" as a word constituent.
+  ;; TODO: (Hard mode) write a proper `company-grab-symbol' replacement.
+  (modify-syntax-entry ?/ "w")
   ;; Force-enable `company-mode'.
   (when (null company-mode)
     (company-mode +1))


^ permalink raw reply related	[flat|nested] 37+ messages in thread
* [gentoo-commits] proj/company-ebuild:master commit in: /
@ 2022-08-16 23:50 Maciej Barć
  0 siblings, 0 replies; 37+ messages in thread
From: Maciej Barć @ 2022-08-16 23:50 UTC (permalink / raw
  To: gentoo-commits

commit:     dec99c179e3a934cba6a77c76996102b9fcb9bda
Author:     Maciej Barć <xgqt <AT> gentoo <DOT> org>
AuthorDate: Tue Aug 16 22:36:25 2022 +0000
Commit:     Maciej Barć <xgqt <AT> gentoo <DOT> org>
CommitDate: Tue Aug 16 22:36:25 2022 +0000
URL:        https://gitweb.gentoo.org/proj/company-ebuild.git/commit/?id=dec99c17

company-ebuild.el: completion kinds

Signed-off-by: Maciej Barć <xgqt <AT> gentoo.org>

 company-ebuild.el | 41 ++++++++++++++++++++++-------------------
 1 file changed, 22 insertions(+), 19 deletions(-)

diff --git a/company-ebuild.el b/company-ebuild.el
index 65c5aef..e8916b7 100644
--- a/company-ebuild.el
+++ b/company-ebuild.el
@@ -51,44 +51,44 @@
   "Company-Ebuild version.")
 
 
-(defun company-ebuild--annotation (candidate)
+(defun company-ebuild--annotation-and-kind (candidate)
   "Return annotation for CANDIDATE."
   (cond
    ((member candidate company-ebuild--constant-keywords-architectures)
-    " architecture")
+    '(" architecture" . value))
    ((member candidate company-ebuild--constant-keywords-restrict)
-    " restrict")
+    '(" restrict" . value))
    ((member candidate company-ebuild--constant-keywords-phases)
-    " phase")
+    '(" phase" . function))
    ((member candidate company-ebuild--constant-keywords-sandbox)
-    " sandbox")
+    '(" sandbox" . function))
    ((member candidate company-ebuild--constant-keywords-doc)
-    " doc")
+    '(" doc" . variable))
    ((member candidate company-ebuild--constant-keywords-variables-predefined)
-    " variable (predefined)")
+    '(" variable (predefined)" . variable))
    ((member candidate company-ebuild--constant-keywords-variables-ebuild-defined)
-    " variable (ebuild-defined)")
+    '(" variable (ebuild-defined)" . variable))
    ((member candidate company-ebuild--constant-keywords-variables-dependencies)
-    " variable (dependencies)")
+    '(" variable (dependencies)" . variable))
    ((member candidate company-ebuild--constant-keywords-variables-user-environment)
-    " variable (user-environment)")
+    '(" variable (user-environment)" . variable))
    ((member candidate company-ebuild--dynamic-keywords-eclasses)
-    " eclass")
+    '(" eclass" . module))
    ((or (member candidate company-ebuild--constant-keywords-functions)
         (member candidate company-ebuild--dynamic-keywords-functions))
-    " function")
+    '(" function" . function))
    ((member candidate company-ebuild--dynamic-keywords-variables)
-    " variable (eclass)")
+    '(" variable (eclass)" . variable))
    ((member candidate company-ebuild--dynamic-keywords-use-flags)
-    " USE flag")
+    '(" USE flag" . value))
    ((member candidate company-ebuild--dynamic-keywords-packages)
-    " package")
+    '(" package" . value))
    ((member candidate company-ebuild--dynamic-keywords-licenses)
-    " license")
+    '(" license" . value))
    ((executable-find candidate)
-    " executable")
+    '(" executable" . file))
    (t
-    "")))
+    '("" . t))))
 
 (defun company-ebuild--packages ()
   "Return a list of all available packages.
@@ -229,7 +229,7 @@ ARG is the completion argument for annotation and candidates."
   (interactive (list 'interactive))
   (cl-case command
     (annotation
-     (company-ebuild--annotation arg))
+     (car (company-ebuild--annotation-and-kind arg)))
     (candidates
      ;; TODO: Complete any string that already appears in current buffer.
      (cl-remove-if-not (lambda (candidate)
@@ -239,6 +239,8 @@ ARG is the completion argument for annotation and candidates."
                                (company-ebuild--executables arg))))
     (interactive
      (company-begin-backend 'company-ebuild))
+    (kind
+     (cdr (company-ebuild--annotation-and-kind arg)))
     (prefix
      (and (eq major-mode 'ebuild-mode) (company-grab-symbol)))
     (require-match
@@ -256,6 +258,7 @@ or `require' Company-Ebuild:
   ;; HACK: Modify syntax to treat "/" as a word constituent.
   ;; TODO: (Hard mode) write a proper `company-grab-symbol' replacement.
   (modify-syntax-entry ?/ "w")
+  (modify-syntax-entry ?@ "w")  ; To make Eclass tags work.
   ;; Force-enable `company-mode'.
   (when (null company-mode)
     (company-mode +1))


^ permalink raw reply related	[flat|nested] 37+ messages in thread
* [gentoo-commits] proj/company-ebuild:master commit in: /
@ 2022-08-16 23:50 Maciej Barć
  0 siblings, 0 replies; 37+ messages in thread
From: Maciej Barć @ 2022-08-16 23:50 UTC (permalink / raw
  To: gentoo-commits

commit:     aebf6168e37e943a5524f33c8bf510c5b0495a9c
Author:     Maciej Barć <xgqt <AT> gentoo <DOT> org>
AuthorDate: Tue Aug 16 22:39:42 2022 +0000
Commit:     Maciej Barć <xgqt <AT> gentoo <DOT> org>
CommitDate: Tue Aug 16 22:39:42 2022 +0000
URL:        https://gitweb.gentoo.org/proj/company-ebuild.git/commit/?id=aebf6168

company-ebuild.el: bump to 0.1.0

Signed-off-by: Maciej Barć <xgqt <AT> gentoo.org>

 company-ebuild.el | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/company-ebuild.el b/company-ebuild.el
index e8916b7..ef4096b 100644
--- a/company-ebuild.el
+++ b/company-ebuild.el
@@ -21,7 +21,7 @@
 
 ;; Authors: Maciej Barć <xgqt@gentoo.org>
 ;; Created: 16 Aug 2022
-;; Version: 0.0.0
+;; Version: 0.1.0
 ;; Keywords: languages
 ;; Homepage: https://gitweb.gentoo.org/proj/company-ebuild.git
 ;; Package-Requires: ((emacs "25.1"))
@@ -47,7 +47,7 @@
 (require 'company-ebuild-keywords)
 
 
-(defconst company-ebuild-version "0.0.0"
+(defconst company-ebuild-version "0.1.0"
   "Company-Ebuild version.")
 
 


^ permalink raw reply related	[flat|nested] 37+ messages in thread
* [gentoo-commits] proj/company-ebuild:master commit in: /
@ 2022-08-16 23:50 Maciej Barć
  0 siblings, 0 replies; 37+ messages in thread
From: Maciej Barć @ 2022-08-16 23:50 UTC (permalink / raw
  To: gentoo-commits

commit:     f902309ee838fcbf863d95620dabe2d2732c2c10
Author:     Maciej Barć <xgqt <AT> gentoo <DOT> org>
AuthorDate: Tue Aug 16 21:29:14 2022 +0000
Commit:     Maciej Barć <xgqt <AT> gentoo <DOT> org>
CommitDate: Tue Aug 16 21:29:14 2022 +0000
URL:        https://gitweb.gentoo.org/proj/company-ebuild.git/commit/?id=f902309e

company-ebuild.el: set company-minimum-prefix-length to 1

Signed-off-by: Maciej Barć <xgqt <AT> gentoo.org>

 company-ebuild.el | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/company-ebuild.el b/company-ebuild.el
index 3f4cceb..0eb20f6 100644
--- a/company-ebuild.el
+++ b/company-ebuild.el
@@ -87,7 +87,6 @@
     " license")
    ((executable-find candidate)
     " executable")
-   ;; TODO: Complete any string that already appears in current buffer.
    (t
     "")))
 
@@ -237,6 +236,7 @@ ARG is the completion argument for annotation and candidates."
      (company-ebuild--annotation arg))
     (candidates
      ;; FIXME: Can not insert the "/" character.
+     ;; TODO: Complete any string that already appears in current buffer.
      (cl-remove-if-not (lambda (candidate)
                          (string-prefix-p arg candidate t))
                        (append company-ebuild--constant-keywords
@@ -262,7 +262,9 @@ or `require' Company-Ebuild:
    ((fboundp 'company-yasnippet)
     (add-to-list 'company-backends '(company-ebuild :with company-yasnippet)))
    (t
-    (add-to-list 'company-backends 'company-ebuild))))
+    (add-to-list 'company-backends 'company-ebuild)))
+  ;; Because some completions have length 1:
+  (setq-local company-minimum-prefix-length 1))
 
 ;;;###autoload
 (add-hook 'ebuild-mode-hook 'company-ebuild-setup)


^ permalink raw reply related	[flat|nested] 37+ messages in thread
* [gentoo-commits] proj/company-ebuild:master commit in: /
@ 2022-08-16 23:50 Maciej Barć
  0 siblings, 0 replies; 37+ messages in thread
From: Maciej Barć @ 2022-08-16 23:50 UTC (permalink / raw
  To: gentoo-commits

commit:     647b85de24f6de25695e52191c0b70390c6f6910
Author:     Maciej Barć <xgqt <AT> gentoo <DOT> org>
AuthorDate: Tue Aug 16 21:31:07 2022 +0000
Commit:     Maciej Barć <xgqt <AT> gentoo <DOT> org>
CommitDate: Tue Aug 16 21:31:07 2022 +0000
URL:        https://gitweb.gentoo.org/proj/company-ebuild.git/commit/?id=647b85de

company-ebuild.el: no need for :with

Signed-off-by: Maciej Barć <xgqt <AT> gentoo.org>

 company-ebuild.el | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/company-ebuild.el b/company-ebuild.el
index 0eb20f6..2a4cf39 100644
--- a/company-ebuild.el
+++ b/company-ebuild.el
@@ -260,7 +260,7 @@ or `require' Company-Ebuild:
   ;; Add the `company-ebuild' backend.
   (cond
    ((fboundp 'company-yasnippet)
-    (add-to-list 'company-backends '(company-ebuild :with company-yasnippet)))
+    (add-to-list 'company-backends '(company-ebuild company-yasnippet)))
    (t
     (add-to-list 'company-backends 'company-ebuild)))
   ;; Because some completions have length 1:


^ permalink raw reply related	[flat|nested] 37+ messages in thread
* [gentoo-commits] proj/company-ebuild:master commit in: /
@ 2022-08-16 20:31 Maciej Barć
  0 siblings, 0 replies; 37+ messages in thread
From: Maciej Barć @ 2022-08-16 20:31 UTC (permalink / raw
  To: gentoo-commits

commit:     6089a42b8903932a06cb3150eaaad7cae59b4a73
Author:     Maciej Barć <xgqt <AT> gentoo <DOT> org>
AuthorDate: Tue Aug 16 20:31:32 2022 +0000
Commit:     Maciej Barć <xgqt <AT> gentoo <DOT> org>
CommitDate: Tue Aug 16 20:31:32 2022 +0000
URL:        https://gitweb.gentoo.org/proj/company-ebuild.git/commit/?id=6089a42b

company-ebuild.el: extend company-ebuild-setup commentary

Signed-off-by: Maciej Barć <xgqt <AT> gentoo.org>

 company-ebuild.el | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

diff --git a/company-ebuild.el b/company-ebuild.el
index 022a058..3f4cceb 100644
--- a/company-ebuild.el
+++ b/company-ebuild.el
@@ -245,7 +245,13 @@ ARG is the completion argument for annotation and candidates."
 
 ;;;###autoload
 (defun company-ebuild-setup ()
-  "Setup for Company-Ebuild."
+  "Setup for Company-Ebuild.
+
+To setup the integration correctly, add this function to ‘ebuild-mode-hook’
+in your config:
+\(add-hook 'ebuild-mode-hook 'company-ebuild-setup)
+or `require' Company-Ebuild:
+\(require 'company-ebuild)"
   ;; Force-enable `company-mode'.
   (when (null company-mode)
     (company-mode +1))


^ permalink raw reply related	[flat|nested] 37+ messages in thread
* [gentoo-commits] proj/company-ebuild:master commit in: /
@ 2022-08-16 20:28 Maciej Barć
  0 siblings, 0 replies; 37+ messages in thread
From: Maciej Barć @ 2022-08-16 20:28 UTC (permalink / raw
  To: gentoo-commits

commit:     1e1b5295567856865edc8b56859cc5c756f6296a
Author:     Maciej Barć <xgqt <AT> gentoo <DOT> org>
AuthorDate: Tue Aug 16 20:27:49 2022 +0000
Commit:     Maciej Barć <xgqt <AT> gentoo <DOT> org>
CommitDate: Tue Aug 16 20:27:49 2022 +0000
URL:        https://gitweb.gentoo.org/proj/company-ebuild.git/commit/?id=1e1b5295

company-ebuild.el: company-ebuild--find-repo-root guards

Signed-off-by: Maciej Barć <xgqt <AT> gentoo.org>

 company-ebuild.el | 13 ++++++-------
 1 file changed, 6 insertions(+), 7 deletions(-)

diff --git a/company-ebuild.el b/company-ebuild.el
index e2c34df..022a058 100644
--- a/company-ebuild.el
+++ b/company-ebuild.el
@@ -139,7 +139,9 @@ For example:
   "Return the root directory of current Ebuild repository.
 
 FILE-PATH is the location from which we start searching for repository root."
-  (locate-dominating-file file-path "profiles/repo_name"))
+  (and (not (null file-path))
+       (file-exists-p file-path)
+       (locate-dominating-file file-path "profiles/repo_name")))
 
 (defun company-ebuild--find-eclass-files (file-path)
   "Return found Eclass files.
@@ -154,8 +156,7 @@ FILE-PATH is the location from which we start searching for Eclass files."
 (defun company-ebuild--regenerate-dynamic-keywords-eclasses ()
   "Set new content of the ‘company-ebuild--dynamic-keywords’ Eclass variables."
   (let ((repo-root
-         (and buffer-file-name
-              (company-ebuild--find-repo-root buffer-file-name))))
+         (company-ebuild--find-repo-root buffer-file-name)))
     (when repo-root
       (let ((eclass-files
              (company-ebuild--find-eclass-files repo-root)))
@@ -182,8 +183,7 @@ FILE-PATH is the location from which we start searching for Eclass files."
 (defun company-ebuild--regenerate-dynamic-keywords-use-flags ()
   "Set new content of the ‘company-ebuild--dynamic-keywords-use-flags’ variable."
   (let ((repo-root
-         (and buffer-file-name
-              (company-ebuild--find-repo-root buffer-file-name)))
+         (company-ebuild--find-repo-root buffer-file-name))
         (awk-format
          "awk -F - '{ print $1 }' %s/profiles/use.desc"))
     (when (and repo-root
@@ -207,8 +207,7 @@ FILE-PATH is the location from which we start searching for Eclass files."
 (defun company-ebuild--regenerate-dynamic-keywords-licenses ()
   "Set new content of the ‘company-ebuild--dynamic-keywords-licenses’ variable."
   (let ((repo-root
-         (and buffer-file-name
-              (company-ebuild--find-repo-root buffer-file-name))))
+         (company-ebuild--find-repo-root buffer-file-name)))
     (when repo-root
       (setq company-ebuild--dynamic-keywords-licenses
             (directory-files (expand-file-name "licenses" repo-root))))))


^ permalink raw reply related	[flat|nested] 37+ messages in thread
* [gentoo-commits] proj/company-ebuild:master commit in: /
@ 2022-08-16 20:28 Maciej Barć
  0 siblings, 0 replies; 37+ messages in thread
From: Maciej Barć @ 2022-08-16 20:28 UTC (permalink / raw
  To: gentoo-commits

commit:     d6db09c32455767d6216cb8fb7f2697f5f49ec4a
Author:     Maciej Barć <xgqt <AT> gentoo <DOT> org>
AuthorDate: Tue Aug 16 20:22:12 2022 +0000
Commit:     Maciej Barć <xgqt <AT> gentoo <DOT> org>
CommitDate: Tue Aug 16 20:22:12 2022 +0000
URL:        https://gitweb.gentoo.org/proj/company-ebuild.git/commit/?id=d6db09c3

company-ebuild.el: check if profiles/use.desc exists

Signed-off-by: Maciej Barć <xgqt <AT> gentoo.org>

 company-ebuild.el | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/company-ebuild.el b/company-ebuild.el
index 2fbfedc..e2c34df 100644
--- a/company-ebuild.el
+++ b/company-ebuild.el
@@ -186,7 +186,8 @@ FILE-PATH is the location from which we start searching for Eclass files."
               (company-ebuild--find-repo-root buffer-file-name)))
         (awk-format
          "awk -F - '{ print $1 }' %s/profiles/use.desc"))
-    (when repo-root
+    (when (and repo-root
+               (file-exists-p (expand-file-name "profiles/use.desc" repo-root)))
       (setq company-ebuild--dynamic-keywords-use-flags
             (let ((awk-result
                    (shell-command-to-string (format awk-format repo-root))))


^ permalink raw reply related	[flat|nested] 37+ messages in thread

end of thread, other threads:[~2023-06-18 20:22 UTC | newest]

Thread overview: 37+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2022-08-17  0:37 [gentoo-commits] proj/company-ebuild:master commit in: / Maciej Barć
  -- strict thread matches above, loose matches on Subject: below --
2023-06-18 20:22 Maciej Barć
2023-06-18 20:19 Maciej Barć
2023-06-18 20:15 Maciej Barć
2023-04-25 19:48 Maciej Barć
2023-04-25 19:38 Maciej Barć
2023-03-11  8:17 Maciej Barć
2023-02-03 13:50 Maciej Barć
2023-01-29 20:26 Maciej Barć
2022-12-13 10:44 Maciej Barć
2022-12-02  0:40 Maciej Barć
2022-12-02  0:38 Maciej Barć
2022-08-30 22:22 Maciej Barć
2022-08-30 18:22 Maciej Barć
2022-08-30 18:22 Maciej Barć
2022-08-30 18:22 Maciej Barć
2022-08-25 23:17 Maciej Barć
2022-08-25 23:00 Maciej Barć
2022-08-25 23:00 Maciej Barć
2022-08-20 13:06 Maciej Barć
2022-08-17 15:23 Maciej Barć
2022-08-17 15:21 Maciej Barć
2022-08-17 15:19 Maciej Barć
2022-08-17 15:19 Maciej Barć
2022-08-17 15:19 Maciej Barć
2022-08-17  1:54 Maciej Barć
2022-08-17  1:54 Maciej Barć
2022-08-17  0:31 Maciej Barć
2022-08-16 23:50 Maciej Barć
2022-08-16 23:50 Maciej Barć
2022-08-16 23:50 Maciej Barć
2022-08-16 23:50 Maciej Barć
2022-08-16 23:50 Maciej Barć
2022-08-16 23:50 Maciej Barć
2022-08-16 20:31 Maciej Barć
2022-08-16 20:28 Maciej Barć
2022-08-16 20:28 Maciej Barć

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox