(list "\\(\\s.\\|\\s(\\|\\s)\\|\\s\\\\|\\s/\\)"
'(0 mdw-punct-face))))))
+(define-derived-mode sod-mode c-mode "Sod"
+ "Major mode for editing Sod code.")
+(push '("\\.sod$" . sod-mode) auto-mode-alist)
+
;;;--------------------------------------------------------------------------
;;; AP calc mode.
(list
;; Handle the keywords defined above.
- (list (concat "\\<\\(" rust-keywords "\\)\\>")
+ (list (concat "\\_<\\(" rust-keywords "\\)\\_>")
'(0 font-lock-keyword-face))
- (list (concat "\\<\\(" rust-builtins "\\)\\>")
+ (list (concat "\\_<\\(" rust-builtins "\\)\\_>")
'(0 font-lock-variable-name-face))
;; Handle numbers too.
- (list (concat "\\<\\("
+ (list (concat "\\_<\\("
"[0-9][0-9_]*"
"\\(" "\\(\\.[0-9_]+\\)?[eE][-+]?[0-9_]+"
"\\|" "\\.[0-9_]+"
"\\|" "0b[01_]+"
"\\)"
"\\([ui]\\(8\\|16\\|32\\|64\\|s\\|size\\)\\)?"
- "\\)\\>")
+ "\\)\\_>")
'(0 mdw-number-face))
;; And anything else is punctuation.
(defun mdw-fontify-pyrex ()
(mdw-fontify-pythonic
(mdw-regexps "and" "as" "assert" "break" "cdef" "class" "continue"
- "ctypedef" "def" "del" "elif" "else" "except" "exec"
+ "ctypedef" "def" "del" "elif" "else" "enum" "except" "exec"
"extern" "finally" "for" "from" "global" "if"
"import" "in" "is" "lambda" "not" "or" "pass" "print"
- "raise" "return" "struct" "try" "while" "with"
+ "property" "raise" "return" "struct" "try" "while" "with"
"yield")))
;;;--------------------------------------------------------------------------
(local-set-key [?$] 'self-insert-command)
;; Make `tab' be useful, given that tab stops in TeX don't work well.
- (local-set-key "\C-i" 'indent-relative)
+ (local-set-key "\C-\M-i" 'indent-relative)
(setq indent-tabs-mode nil)
;; Set fill prefix.
"\\([ \t]*\\([>#|:] ?\\)*[ \t]*\\)" 3)
(auto-fill-mode 1))
+(eval-after-load "flyspell"
+ '(define-key flyspell-mode-map "\C-\M-i" nil))
+
;;;--------------------------------------------------------------------------
;;; Outline and hide/show modes.
;;;--------------------------------------------------------------------------
;;; MPC configuration.
+(eval-when-compile (trap (require 'mpc)))
+
(setq mpc-browser-tags '(Artist|Composer|Performer Album|Playlist))
(defun mdw-mpc-now-playing ()