branch: elpa/geiser-guile
commit 467aded542e8428b90549727dafbb4d6bcb07cd4
Author: Diogo F. S. Ramos <[email protected]>
Commit: Jose Antonio Ortega Ruiz <[email protected]>
Highlight `define-once'
Guile's `define-once' allows defining a variable only once, but its
syntax is different from `define', so its highlight is different.
---
elisp/geiser-guile.el | 10 +++++++---
1 file changed, 7 insertions(+), 3 deletions(-)
diff --git a/elisp/geiser-guile.el b/elisp/geiser-guile.el
index bc96973..5bfff4d 100644
--- a/elisp/geiser-guile.el
+++ b/elisp/geiser-guile.el
@@ -248,9 +248,13 @@ This function uses `geiser-guile-init-file' if it exists."
;;; Keywords and syntax
(defun geiser-guile--keywords ()
- (when geiser-guile-extra-keywords
- `((,(format "[[(]%s\\>" (regexp-opt geiser-guile-extra-keywords 1))
- . 1))))
+ (append
+ (when geiser-guile-extra-keywords
+ `((,(format "[[(]%s\\>" (regexp-opt geiser-guile-extra-keywords 1))
+ . 1)))
+ `((,(rx "(" (group "define-once") eow (* space) (? (group (+ word))))
+ (1 font-lock-keyword-face)
+ (2 font-lock-variable-name-face nil t)))))
(geiser-syntax--scheme-indent
(c-declare 0)