From 467aded542e8428b90549727dafbb4d6bcb07cd4 Mon Sep 17 00:00:00 2001 From: "Diogo F. S. Ramos" Date: Fri, 28 Feb 2014 17:43:35 -0300 Subject: 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) -- cgit v1.2.3