Thanks! Committed.
- Nathan
Dmitry Galinsky wrote:
> updated
>
> Index: haml-mode.el
> ===================================================================
> --- haml-mode.el (revision 480)
> +++ haml-mode.el (working copy)
> @@ -62,16 +62,46 @@
> (concat "^\\(" (string-* " " haml-indent-offset) "\\)*" str))
>
> ;; Font lock
> +
> (defconst haml-font-lock-keywords-1
> (list
> - '("^[ \t]*/.*" . font-lock-comment-face)
> - '("^ *%\\w+\/?" . font-lock-function-name-face)
> - '("#\\w+" . font-lock-keyword-face)
> - '("\\.\\w+" . font-lock-keyword-face)
> - '(":\\w+" . font-lock-constant-face)
> - '("'[^']*'" . font-lock-string-face)
> - '("{[^}]*}" . font-lock-variable-name-face)
> - '("^!!!.*" . font-lock-constant-face)))
> + ;; instruct
> + '("^!!!.*" 0 font-lock-constant-face)
> + ;; strings
> + '("\\('[^']*'\\)" 1 font-lock-string-face append)
> + '("\\(\"[^\"]*\"\\)" 1 font-lock-string-face append)
> + ;; symbol
> + '("&?:\\w+" 0 font-lock-constant-face append)
> + ;; ruby varible
> + '("@[a-z0-9_]+" 0 font-lock-variable-name-face
> append)
> + ;; pipe
> + '("| *$" 0 font-lock-string-face)
> + ;; comment
> + '("^[ \t]*\\(/.*\\)$" 1 font-lock-comment-face append)
> + ;; id
> + '("^ *\\(#[a-z0-9_]+\/?\\)" 1 font-lock-keyword-face)
> + ;; class
> + '("^ *\\(\\.[a-z0-9_]+\/?\\)" 1 font-lock-type-face)
> + ;; tag
> + '("^ *\\(%[a-z0-9_]+\/?\\)" 1 font-lock-function-name-face )
> + ;; class after id
> + '("^ *\\(#[a-z0-9_]+\/?\\)" (1 font-lock-keyword-face) ("\\.[a-
> z0-9_]+" nil nil (0 font-lock-type-face)))
> + ;; class after class
> + '("^ *\\(\\.[a-z0-9_]+\/?\\)" (1 font-lock-type-face) ("\\.[a-
> z0-9_]+" nil nil (0 font-lock-type-face)))
> + ;; id after class
> + '("^ *\\(\\.[a-z0-9_]+\/?\\)" (1 font-lock-type-face) ("\\#[a-
> z0-9_]+" nil nil (0 font-lock-keyword-face)))
> + ;; class after tag
> + '("^ *\\(%[a-z0-9_]+\/?\\)" (1 font-lock-function-name-face) ("\
> \.[a-z0-9_]+" nil nil (0 font-lock-type-face)))
> + ;; id after tag
> + '("^ *\\(%[a-z0-9_]+\/?\\)" (1 font-lock-function-name-face) ("\
> \#[a-z0-9_]+" nil nil (0 font-lock-keyword-face)))
> + ;; embeded ruby: beggin of line
> + '("^ *\\([~=-] .*\\)" 1 font-lock-preprocessor-face
> prepend)
> + ;; embeded ruby: after tag,class,id
> + '("^ *[\\.#%a-z0-9_]+\\([~=-] .*\\)" 1 font-lock-preprocessor-
> face prepend)
> + ;; embeded ruby: attributes
> + '("^ *[\\.#%a-z0-9_]+\\({[^}]+}\\)" 1 font-lock-preprocessor-
> face prepend)
> + ;; embeded ruby: square
> + '("^ *[\\.#%a-z0-9_]+\\(\\[[^]]+\\]\\)" 1 font-lock-preprocessor-
> face prepend)))
>
> ;; Constants
>
> @@ -109,13 +139,14 @@
>
> ;; Mode setup
>
> -(defvar haml-mode-syntax-table nil
> +(defvar haml-mode-syntax-table
> + (let ((table (make-syntax-table)))
> + (modify-syntax-entry ?: "." table)
> + (modify-syntax-entry ?_ "w" table)
> + table)
> "Syntax table in use in haml-mode buffers.")
> -(unless haml-mode-syntax-table
> - (setq haml-mode-syntax-table (make-syntax-table))
> - (modify-syntax-entry ?: "." haml-mode-syntax-table)
> - (modify-syntax-entry ?_ "w" haml-mode-syntax-table))
>
> +
> (defvar haml-mode-map ()
> "Keymap used in `haml-mode' buffers.")
> (if haml-mode-map
>
>
>
> >
>
>
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups
"Haml" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at http://groups.google.com/group/haml?hl=en
-~----------~----~----~----~------~----~------~--~---