summaryrefslogtreecommitdiff
path: root/utils/emacs/llvm-mode.el
diff options
context:
space:
mode:
authorRamkumar Ramachandra <artagnon@gmail.com>2015-01-23 19:45:35 +0000
committerRamkumar Ramachandra <artagnon@gmail.com>2015-01-23 19:45:35 +0000
commitae597a058ae4d12cae9dc61500855ea885aa7930 (patch)
treecc704da3c3db6f43aba28c680768730e418933fe /utils/emacs/llvm-mode.el
parent66e2ddc87074b4d2199126f7c3904b45141e917b (diff)
[emacs] llvm-mode: fix parens, font-lock i*
In llvm-mode, with electric-pair-mode turned on, typing a literal '[' would print out '[[', and '(' would print a '(('. This was a very annoying bug caused by overzealous syntax-table entries: the parens are already part of the '(' and ')' class by default. Fix this. While at it, notice that i32, i64, i1 etc. are not font-locked despite a clear intent to do so. The issue is that regexp-opt doesn't accept regular expressions. So, spell out the common literal integers with different widths. Differential Revision: http://reviews.llvm.org/D7036 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@226931 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'utils/emacs/llvm-mode.el')
-rw-r--r--utils/emacs/llvm-mode.el13
1 files changed, 3 insertions, 10 deletions
diff --git a/utils/emacs/llvm-mode.el b/utils/emacs/llvm-mode.el
index 6d8395cc111..890d0a3e189 100644
--- a/utils/emacs/llvm-mode.el
+++ b/utils/emacs/llvm-mode.el
@@ -23,7 +23,7 @@
;; Unnamed variable slots
'("%[-]?[0-9]+" . font-lock-variable-name-face)
;; Types
- `(,(regexp-opt '("void" "i[0-9]+" "float" "double" "type" "label" "opaque") 'words) . font-lock-type-face)
+ `(,(regexp-opt '("void" "i1" "i8" "i16" "i32" "i64" "i128" "float" "double" "type" "label" "opaque") 'words) . font-lock-type-face)
;; Integer literals
'("\\b[-]?[0-9]+\\b" . font-lock-preprocessor-face)
;; Floating point constants
@@ -83,7 +83,7 @@
;; word constituents (`w')
;;[?< "w"]
;;[?> "w"]
- [?\% "w"]
+ [?% "w"]
;;[?_ "w "]
;; comments
[?\; "< "]
@@ -93,16 +93,9 @@
;; symbol constituents (`_')
;; punctuation (`.')
;; open paren (`(')
- [?\( "("]
- [?\[ "("]
- [?\{ "("]
;; close paren (`)')
- [?\) ")"]
- [?\] ")"]
- [?\} ")"]
;; string quote ('"')
- [?\" "\""]
- ))))
+ [?\" "\""]))))
;; --------------------- Abbrev table -----------------------------