From ff1aaf88a9c04d53fd23501cae2cdfc914631022 Mon Sep 17 00:00:00 2001 From: mattn Date: Mon, 14 Apr 2014 09:38:12 +0900 Subject: [PATCH] Fixes behavior of removeTag --- autoload/emmet/lang/html.vim | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/autoload/emmet/lang/html.vim b/autoload/emmet/lang/html.vim index 06e44d3..e536de0 100644 --- a/autoload/emmet/lang/html.vim +++ b/autoload/emmet/lang/html.vim @@ -788,10 +788,10 @@ endfunction function! emmet#lang#html#removeTag() let curpos = emmet#util#getcurpos() while 1 - let mx = '<\(/\{0,1}[a-zA-Z][a-zA-Z0-9:_\-]*\)[^>]*>' + let mx = '<\(/\{0,1}[a-zA-Z][a-zA-Z0-9:_\-]*\)[^>]*' let pos1 = searchpos(mx, 'bcnW') let content = matchstr(getline(pos1[0])[pos1[1]-1:], mx) - let tag_name = substitute(content, '^<\(/\{0,1}[a-zA-Z0-9:_\-]*\).*$', '\1', '') + let tag_name = matchstr(content, '^<\zs/\{0,1}[a-zA-Z0-9:_\-]*') let block = [pos1, [pos1[0], pos1[1] + len(content) - 1]] if content[-2:] == '/>' && emmet#util#cursorInRegion(block) call emmet#util#setContent(block, '') @@ -807,7 +807,7 @@ function! emmet#lang#html#removeTag() endif let block = [pos1, pos2] let content = emmet#util#getContent(block) - if emmet#util#pointInRegion(curpos[1:2], block) && content[1:] !~ '<' . tag_name . '[^a-zA-Z0-9]*[^>]*>' + if emmet#util#pointInRegion(curpos[1:2], block) && content[1:] !~ '^<' . tag_name . '[^a-zA-Z0-9]' call emmet#util#setContent(block, '') call setpos('.', [0, block[0][0], block[0][1], 0]) return