branch: elpa/rust-mode
commit 061e6d8a3a9104570144f1eacb729e3211cb03cd
Merge: b874bbe 339afba
Author: Micah Chalmer <[email protected]>
Commit: Micah Chalmer <[email protected]>
Merge pull request #109 from mrBliss/highlight-unsafe
Highlight the unsafe keyword
---
rust-mode.el | 10 +++++++++-
1 file changed, 9 insertions(+), 1 deletion(-)
diff --git a/rust-mode.el b/rust-mode.el
index a2c81f7..8049273 100644
--- a/rust-mode.el
+++ b/rust-mode.el
@@ -180,6 +180,11 @@ function or trait. When nil, where will be aligned with
fn or trait."
:safe #'booleanp
:group 'rust-mode)
+(defface rust-unsafe-face
+ '((t :inherit font-lock-warning-face))
+ "Face for the `unsafe' keyword."
+ :group 'rust-mode)
+
(defun rust-paren-level () (nth 0 (syntax-ppss)))
(defun rust-in-str-or-cmnt () (nth 8 (syntax-ppss)))
(defun rust-rewind-past-str-cmnt () (goto-char (nth 8 (syntax-ppss))))
@@ -488,7 +493,7 @@ function or trait. When nil, where will be aligned with fn
or trait."
"ref" "return"
"self" "static" "struct" "super"
"true" "trait" "type"
- "unsafe" "use"
+ "use"
"virtual"
"where" "while"))
@@ -529,6 +534,9 @@ function or trait. When nil, where will be aligned with fn
or trait."
;; Special types
(,(regexp-opt-symbols rust-special-types) . font-lock-type-face)
+ ;; The unsafe keyword
+ ("\\_<unsafe\\_>" . 'rust-unsafe-face)
+
;; Attributes like `#[bar(baz)]` or `#![bar(baz)]` or `#[bar = "baz"]`
(,(rust-re-grab (concat "#\\!?\\[" rust-re-ident "[^]]*\\]"))
1 font-lock-preprocessor-face keep)