diff options
| author | Dato Simó <dato@net.com.org.es> | 2019-01-21 04:08:23 -0300 |
|---|---|---|
| committer | Nathan Moreau <nathan.moreau@m4x.org> | 2019-10-23 11:18:35 +0200 |
| commit | 7960c74d4f575fec7b0b435a86f8f07594f24f9f (patch) | |
| tree | 4e8f61457ae531496f0fcc4bcfea6964510dc56c /rust-mode.el | |
| parent | 1d42d6981877100bff4e643f6374cee0a15e733f (diff) | |
| download | rust-mode-7960c74d4f575fec7b0b435a86f8f07594f24f9f.tar.gz | |
Do not allow subword-match when detecting built-in formatting macros
Before this change, a user-created macro like ‘cprintln!’ would see the
‘println’ subword highlighted as a built-in macro, and the leading ‘c’
left without color.
After this commit, only full words will be recognized as built-ins, and
‘cprintln!’ is highlighted as a regular macro in full, not as a built-in.
In addition, this commit fixes the same issue for the write! macro.
Diffstat (limited to 'rust-mode.el')
| -rw-r--r-- | rust-mode.el | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/rust-mode.el b/rust-mode.el index b912140..b361749 100644 --- a/rust-mode.el +++ b/rust-mode.el @@ -676,7 +676,7 @@ Returns nil if the point is not within a Rust string." 1 font-lock-preprocessor-face keep) ;; Builtin formatting macros - (,(concat (rust-re-grab (concat (regexp-opt rust-builtin-formatting-macros) "!")) (concat rust-formatting-macro-opening-re "\\(?:" rust-start-of-string-re) "\\)?") + (,(concat (rust-re-grab (concat (rust-re-word (regexp-opt rust-builtin-formatting-macros)) "!")) (concat rust-formatting-macro-opening-re "\\(?:" rust-start-of-string-re) "\\)?") (1 'rust-builtin-formatting-macro-face) (rust-string-interpolation-matcher (rust-end-of-string) @@ -684,7 +684,7 @@ Returns nil if the point is not within a Rust string." (0 'rust-string-interpolation-face t nil))) ;; write! macro - (,(concat (rust-re-grab "write\\(ln\\)?!") (concat rust-formatting-macro-opening-re "[[:space:]]*[^\"]+,[[:space:]]*" rust-start-of-string-re)) + (,(concat (rust-re-grab (concat (rust-re-word "write\\(ln\\)?") "!")) (concat rust-formatting-macro-opening-re "[[:space:]]*[^\"]+,[[:space:]]*" rust-start-of-string-re)) (1 'rust-builtin-formatting-macro-face) (rust-string-interpolation-matcher (rust-end-of-string) |
