diff --git a/autoload/zencoding.vim b/autoload/zencoding.vim index e15ec7b..282d1d4 100644 --- a/autoload/zencoding.vim +++ b/autoload/zencoding.vim @@ -1,7 +1,7 @@ "============================================================================= " zencoding.vim " Author: Yasuhiro Matsumoto -" Last Change: 23-Jul-2012. +" Last Change: 24-Jul-2012. let s:save_cpo = &cpo set cpo&vim @@ -322,6 +322,7 @@ function! zencoding#expandAbbr(mode, abbr) range endif endfor let expand = substitute(expand, '\$line\d*\$', '', 'g') + let expand = substitute(expand, '\$column\$', '', 'g') let content = join(getline(a:firstline, a:lastline), "\n") if stridx(expand, '$#') < len(expand)-2 let expand = substitute(expand, '^\(.*\)\$#\s*$', '\1', '') diff --git a/autoload/zencoding/lang/css.vim b/autoload/zencoding/lang/css.vim index bc52daa..aa391a2 100644 --- a/autoload/zencoding/lang/css.vim +++ b/autoload/zencoding/lang/css.vim @@ -37,7 +37,7 @@ function! zencoding#lang#css#parseIntoTree(abbr, type) let snippet = substitute(snippet, '|', '${cursor}', 'g') endif let lines = split(snippet, "\n") - call map(lines, 'substitute(v:val, "\\( \\|\\t\\)", indent, "g")') + call map(lines, 'substitute(v:val, "\\( \\|\\t\\)", escape(indent, "\\\\"), "g")') let current.snippet = join(lines, "\n") let current.name = '' endif diff --git a/autoload/zencoding/lang/haml.vim b/autoload/zencoding/lang/haml.vim index bb88bbf..b9c9c22 100644 --- a/autoload/zencoding/lang/haml.vim +++ b/autoload/zencoding/lang/haml.vim @@ -88,8 +88,8 @@ function! zencoding#lang#haml#toString(settings, current, type, inline, filters, for child in current.child let inner .= zencoding#toString(child, type, inline, filters, itemno) endfor - let inner = substitute(inner, "\n", "\n" . indent, 'g') - let inner = substitute(inner, "\n" . indent . "$", "", 'g') + let inner = substitute(inner, "\n", "\n" . escape(indent, '\'), 'g') + let inner = substitute(inner, "\n" . escape(indent, '\') . "$", "", 'g') let str .= "\n" . indent . inner endif else diff --git a/autoload/zencoding/lang/html.vim b/autoload/zencoding/lang/html.vim index a097397..fddd26d 100644 --- a/autoload/zencoding/lang/html.vim +++ b/autoload/zencoding/lang/html.vim @@ -113,7 +113,7 @@ function! zencoding#lang#html#parseIntoTree(abbr, type) let snippet = substitute(snippet, '|', '${cursor}', 'g') endif let lines = split(snippet, "\n") - call map(lines, 'substitute(v:val, "\\( \\|\\t\\)", indent, "g")') + call map(lines, 'substitute(v:val, "\\( \\|\\t\\)", escape(indent, "\\\\"), "g")') let current.snippet = join(lines, "\n") let current.name = '' endif @@ -361,8 +361,8 @@ function! zencoding#lang#html#toString(settings, current, type, inline, filters, endif let inner = zencoding#toString(child, type, 0, filters, itemno) let inner = substitute(inner, "^\n", "", 'g') - let inner = substitute(inner, "\n", "\n" . indent, 'g') - let inner = substitute(inner, "\n" . indent . '$', '', 'g') + let inner = substitute(inner, "\n", "\n" . escape(indent, '\'), 'g') + let inner = substitute(inner, "\n" . escape(indent, '\') . '$', '', 'g') let str .= inner endfor else diff --git a/autoload/zencoding/lang/scss.vim b/autoload/zencoding/lang/scss.vim index ffa1f1f..c361866 100644 --- a/autoload/zencoding/lang/scss.vim +++ b/autoload/zencoding/lang/scss.vim @@ -52,8 +52,8 @@ function! zencoding#lang#scss#toString(settings, current, type, inline, filters, for child in current.child let inner .= zencoding#toString(child, type, inline, filters, itemno) endfor - let inner = substitute(inner, "\n", "\n" . indent, 'g') - let inner = substitute(inner, "\n" . indent . "$", "", 'g') + let inner = substitute(inner, "\n", "\n" . escape(indent, '\'), 'g') + let inner = substitute(inner, "\n" . escape(indent, '\') . "$", "", 'g') let str .= indent . inner . "\n}\n" else return zencoding#lang#css#toString(settings, current, type, inline, filters, itemno, indent) diff --git a/autoload/zencoding/lang/slim.vim b/autoload/zencoding/lang/slim.vim index beea0c7..3ad97ed 100644 --- a/autoload/zencoding/lang/slim.vim +++ b/autoload/zencoding/lang/slim.vim @@ -64,8 +64,8 @@ function! zencoding#lang#slim#toString(settings, current, type, inline, filters, for child in current.child let inner .= zencoding#toString(child, type, inline, filters, itemno) endfor - let inner = substitute(inner, "\n", "\n" . indent, 'g') - let inner = substitute(inner, "\n" . indent . "$", "", 'g') + let inner = substitute(inner, "\n", "\n" . escape(indent, '\'), 'g') + let inner = substitute(inner, "\n" . escape(indent, '\') . "$", "", 'g') let str .= "\n" . indent . inner endif else