[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
03/03: emacs: devel: Highlight Guix keywords.
From: |
Alex Kost |
Subject: |
03/03: emacs: devel: Highlight Guix keywords. |
Date: |
Sat, 17 Oct 2015 16:00:58 +0000 |
alezost pushed a commit to branch master
in repository guix.
commit 5d86684ddfe7ed27b37fa4b29c602b45756cc5be
Author: Alex Kost <address@hidden>
Date: Fri Oct 16 23:38:38 2015 +0300
emacs: devel: Highlight Guix keywords.
* emacs/guix-devel.el (guix-devel-keywords): New constant.
(guix-devel-font-lock-keywords): Use it.
---
emacs/guix-devel.el | 43 +++++++++++++++++++++++++++++++++++++++++++
1 files changed, 43 insertions(+), 0 deletions(-)
diff --git a/emacs/guix-devel.el b/emacs/guix-devel.el
index c8bfbb0..f3ad4b9 100644
--- a/emacs/guix-devel.el
+++ b/emacs/guix-devel.el
@@ -178,9 +178,52 @@ to find 'modify-phases' keywords."
(ignore-errors (forward-sexp))
(save-excursion (up-list) (point)))))
+(defconst guix-devel-keywords
+ '("call-with-compressed-output-port"
+ "call-with-container"
+ "call-with-decompressed-port"
+ "call-with-derivation-narinfo"
+ "call-with-derivation-substitute"
+ "call-with-error-handling"
+ "call-with-temporary-directory"
+ "call-with-temporary-output-file"
+ "define-enumerate-type"
+ "define-gexp-compiler"
+ "define-lift"
+ "define-monad"
+ "define-operation"
+ "define-record-type*"
+ "emacs-substitute-sexps"
+ "emacs-substitute-variables"
+ "mbegin"
+ "mlet"
+ "mlet*"
+ "munless"
+ "mwhen"
+ "run-with-state"
+ "run-with-store"
+ "signature-case"
+ "substitute*"
+ "substitute-keyword-arguments"
+ "test-assertm"
+ "use-package-modules"
+ "use-service-modules"
+ "use-system-modules"
+ "with-atomic-file-output"
+ "with-atomic-file-replacement"
+ "with-derivation-narinfo"
+ "with-derivation-substitute"
+ "with-directory-excursion"
+ "with-error-handling"
+ "with-monad"
+ "with-mutex"
+ "with-store"))
+
(defvar guix-devel-font-lock-keywords
`((,(rx (or "#~" "#$" "#$@" "#+" "#+@")) .
'guix-devel-gexp-symbol)
+ (,(guix-guile-keyword-regexp (regexp-opt guix-devel-keywords))
+ (1 'font-lock-keyword-face))
(,(guix-guile-keyword-regexp "modify-phases")
(1 'font-lock-keyword-face)
(guix-devel-modify-phases-font-lock-matcher