branch: elpa/swift-mode commit 53f90428e9258dd649e6550bf5b0451ea1b2a2bc Author: ap4y <l...@pisem.net> Commit: ap4y <l...@pisem.net>
Rename swift-mode--font-lock-defaults to swift-font-lock-keywords and compose list using list quote --- swift-mode.el | 64 +++++++++++++++++++++++++++++------------------------------ 1 file changed, 32 insertions(+), 32 deletions(-) diff --git a/swift-mode.el b/swift-mode.el index d0b4caf..e3e49a4 100644 --- a/swift-mode.el +++ b/swift-mode.el @@ -261,71 +261,70 @@ (defvar swift-mode--constants '("true" "false" "nil")) -(defvar swift-mode--font-lock-defaults - (list - (list - +(defvar swift-font-lock-keywords + `( ;; Keywords ;; ;; Swift allows reserved words to be used as identifiers when enclosed ;; with backticks, in which case they should be highlighted as ;; identifiers, not keywords. - (cons (rx-to-string - `(and (or bol (not (any "`"))) bow - (group (or ,@swift-mode--keywords)) - eow) - t) - 1) + (,(rx-to-string + `(and (or bol (not (any "`"))) bow + (group (or ,@swift-mode--keywords)) + eow) + t) + 1 font-lock-keyword-face) ;; Types ;; ;; Any token beginning with an uppercase character is highlighted as a ;; type. - (cons (rx bow upper (* word) eow) - font-lock-type-face) + (,(rx bow upper (* word) eow) + 0 font-lock-type-face) ;; Function names ;; ;; Any token beginning after `func' is highlighted as a function name. - (cons (rx bow "func" eow (+ space) (group bow (+ word) eow)) - (list 1 font-lock-function-name-face)) + (,(rx bow "func" eow (+ space) (group bow (+ word) eow)) + 1 font-lock-function-name-face) ;; Value bindings ;; ;; Any token beginning after `let' or `var' is highlighted as an ;; identifier. - (cons (rx-to-string `(and bow - (or ,@swift-mode--val-decl-keywords) - eow - (+ space) - (? "(") - (group (+ (or (+ (? ?`) word (? ?`)) ?, space))) - (? ")")) - t) - (list 1 font-lock-variable-name-face)) + (,(rx-to-string `(and bow + (or ,@swift-mode--val-decl-keywords) + eow + (+ space) + (? "(") + (group (+ (or (+ (? ?`) word (? ?`)) ?, space))) + (? ")")) + t) + 1 font-lock-variable-name-face) ;; Use high-visibility face for pattern match wildcards. - (cons (rx (not (any word digit)) (group "_") (or eol (not (any word digit)))) - (list 1 font-lock-negation-char-face)) + (,(rx (not (any word digit)) (group "_") (or eol (not (any word digit)))) + 1 font-lock-negation-char-face) ;; Constants ;; ;; Highlight nil and boolean literals. - (cons (rx-to-string `(and bow (or ,@swift-mode--constants) eow)) - font-lock-constant-face) + (,(rx-to-string `(and bow (or ,@swift-mode--constants) eow)) + 0 font-lock-constant-face) ;; Attributes ;; ;; Use string face for attribute name. - (cons (rx (or bol space)(group "@" (+ word)) eow) - (list 1 font-lock-string-face)) + (,(rx (or bol space)(group "@" (+ word)) eow) + 1 font-lock-string-face) ;; Imported modules ;; ;; Highlight the names of imported modules. Use `font-lock-string-face' for ;; consistency with C modes. - (cons (rx bow "import" eow (+ space) (group (+ word))) - (list 1 font-lock-string-face))))) + (,(rx bow "import" eow (+ space) (group (+ word))) + 1 font-lock-string-face) + )) ;;; Imenu @@ -495,7 +494,8 @@ You can send text to the REPL process from other buffers containing source. \\<swift-mode-map>" :group 'swift :syntax-table swift-mode-syntax-table - (setq-local font-lock-defaults swift-mode--font-lock-defaults) + (setq font-lock-defaults '((swift-font-lock-keywords) nil nil)) + (setq-local imenu-generic-expression swift-mode--imenu-generic-expression) (setq-local comment-start "// ")