diff options
author | smihica <smihica@gmail.com> | 2013-05-15 01:29:00 +0900 |
---|---|---|
committer | smihica <smihica@gmail.com> | 2013-05-15 01:29:00 +0900 |
commit | ad1f8f3d0347d81756921214e4611cfdad9a1327 (patch) | |
tree | a46ca99b934f732bb2afb27f73437baaf527718c /zencoding-mode.el | |
parent | a93996e0bf718d79d50b0becdf0469b1715d998b (diff) | |
download | emmet-mode-ad1f8f3d0347d81756921214e4611cfdad9a1327.tar.lz emmet-mode-ad1f8f3d0347d81756921214e4611cfdad9a1327.tar.xz emmet-mode-ad1f8f3d0347d81756921214e4611cfdad9a1327.zip |
Fixed a bug that CSS snipets @xxx is not working.
Diffstat (limited to 'zencoding-mode.el')
-rw-r--r-- | zencoding-mode.el | 32 |
1 files changed, 18 insertions, 14 deletions
diff --git a/zencoding-mode.el b/zencoding-mode.el index 5fee90a..a27af0b 100644 --- a/zencoding-mode.el +++ b/zencoding-mode.el @@ -3109,7 +3109,13 @@ tbl)) "\\):.*$")) (defun zencoding-css-instantiate-lambda (str) - (flet ((split-string-to-body + (flet ((insert-space-between-name-and-body + (str) + (if (string-match "^\\([a-z-]+:\\)\\(.+\\)$" str) + (zencoding-join-string + (mapcar (lambda (ref) (match-string ref str)) '(1 2)) " ") + str)) + (split-string-to-body (str args-sym) (let ((rt '(concat)) (idx-max 0)) (loop for i from 0 to 255 do @@ -3128,7 +3134,8 @@ tbl)) (setf str (substring str (+ it (length mat))))) ;; don't use nreverse. cause bug in emacs-lisp. (return (cons idx-max (reverse (cons str rt))))))))) - (let ((args (gensym))) + (let ((args (gensym)) + (str (insert-space-between-name-and-body str))) (destructuring-bind (idx-max . body) (split-string-to-body str args) (eval `(lambda (&rest ,args) @@ -3193,23 +3200,20 @@ tbl)) (apply #'concat arg)) arg)) (cdddr expr)))) - (concat (car expr) ":" + (concat (car expr) ": " (zencoding-join-string (mapcar #'(lambda (arg) (if (listp arg) (apply #'concat arg) arg)) (cdddr expr)) " ") ";")))) - (let* ((separator-pos (position ?: basement)) - (basement (concat (subseq basement 0 (1+ separator-pos)) " " - (subseq basement (1+ separator-pos))))) - (let ((line - (if (caddr expr) - (concat (subseq basement 0 -1) " !important;") - basement))) - (zencoding-aif - (cadr expr) - (zencoding-css-transform-vendor-prefixes line it) - line))))) + (let ((line + (if (caddr expr) + (concat (subseq basement 0 -1) " !important;") + basement))) + (zencoding-aif + (cadr expr) + (zencoding-css-transform-vendor-prefixes line it) + line)))) exprs) "\n")) |