* [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: /
@ 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: 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-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-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: 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-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-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: 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: 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: 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: 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 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 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: /
@ 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: 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: 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: 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 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 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: 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
* [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
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-16 23:50 [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:37 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 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