summaryrefslogtreecommitdiff
path: root/elisp/geiser-syntax.el
diff options
context:
space:
mode:
authorAlex Kost <alezost@gmail.com>2015-09-16 21:34:24 +0300
committerAlex Kost <alezost@gmail.com>2015-09-27 12:23:01 +0300
commit2b7e3aa00afebe454bea26f54d31847e178c3c33 (patch)
tree32be32ddfcce36341da14b81bbc041aceea8b60b /elisp/geiser-syntax.el
parent59f140f19b36ce273e3a0f955597469d5192c209 (diff)
downloadgeiser-guile-2b7e3aa00afebe454bea26f54d31847e178c3c33.tar.gz
geiser-guile-2b7e3aa00afebe454bea26f54d31847e178c3c33.tar.bz2
Add 'geiser-syntax--simple-keywords'
Use this function instead of repeating the same code in each implementation.
Diffstat (limited to 'elisp/geiser-syntax.el')
-rw-r--r--elisp/geiser-syntax.el6
1 files changed, 6 insertions, 0 deletions
diff --git a/elisp/geiser-syntax.el b/elisp/geiser-syntax.el
index 9557f5e..bc110d9 100644
--- a/elisp/geiser-syntax.el
+++ b/elisp/geiser-syntax.el
@@ -60,6 +60,12 @@
(2 font-lock-function-name-face nil t))
(,(rx "(" (group "when") eow) . 1)))
+(defun geiser-syntax--simple-keywords (keywords)
+ "Return `font-lock-keywords' to highlight scheme KEYWORDS.
+KEYWORDS should be a list of strings."
+ (when keywords
+ `((,(format "[[(]%s\\>" (regexp-opt keywords 1)) . 1))))
+
(font-lock-add-keywords 'scheme-mode geiser-syntax--keywords)
(geiser-impl--define-caller geiser-syntax--impl-kws keywords ()