Merge pull request #456 from mattn/fix-balance

Fix balance tag
This commit is contained in:
mattn
2019-05-19 23:28:37 +09:00
committed by GitHub
2 changed files with 6 additions and 14 deletions

View File

@@ -810,11 +810,7 @@ endfunction
function! emmet#lang#html#balanceTag(flag) range abort function! emmet#lang#html#balanceTag(flag) range abort
let vblock = emmet#util#getVisualBlock() let vblock = emmet#util#getVisualBlock()
if a:flag == -2 || a:flag == 2 let curpos = emmet#util#getcurpos()
let curpos = [0, line("'<"), col("'<"), 0]
else
let curpos = emmet#util#getcurpos()
endif
let settings = emmet#getSettings() let settings = emmet#getSettings()
if a:flag > 0 if a:flag > 0
@@ -846,8 +842,8 @@ function! emmet#lang#html#balanceTag(flag) range abort
let mx = '<\([a-zA-Z][a-zA-Z0-9:_\-]*\)[^>]*>' let mx = '<\([a-zA-Z][a-zA-Z0-9:_\-]*\)[^>]*>'
while 1 while 1
let pos1 = searchpos(mx, 'W') let pos1 = searchpos(mx, 'W')
if pos1 == curpos[1:2] if pos1 == [0, 0] || pos1 == curpos[1:2]
let pos1 = searchpos(mx . '\zs', 'W') let pos1 = searchpos('>\zs', 'W')
let pos2 = searchpos('.\ze<', 'W') let pos2 = searchpos('.\ze<', 'W')
let block = [pos1, pos2] let block = [pos1, pos2]
if emmet#util#regionIsValid(block) if emmet#util#regionIsValid(block)
@@ -872,11 +868,7 @@ function! emmet#lang#html#balanceTag(flag) range abort
endif endif
endwhile endwhile
endif endif
if a:flag == -2 || a:flag == 2 call setpos('.', curpos)
silent! exe 'normal! gv'
else
call setpos('.', curpos)
endif
endfunction endfunction
function! emmet#lang#html#moveNextPrevItem(flag) abort function! emmet#lang#html#moveNextPrevItem(flag) abort

View File

@@ -106,10 +106,10 @@ function! s:install_plugin(mode, buffer)
\ {'mode': 'n', 'var': 'user_emmet_update_tag', 'key': 'u', 'plug': 'emmet-update-tag', 'func': ':call emmet#updateTag()<cr>'}, \ {'mode': 'n', 'var': 'user_emmet_update_tag', 'key': 'u', 'plug': 'emmet-update-tag', 'func': ':call emmet#updateTag()<cr>'},
\ {'mode': 'i', 'var': 'user_emmet_balancetaginward_key', 'key': 'd', 'plug': 'emmet-balance-tag-inward', 'func': '<esc>:call emmet#balanceTag(1)<cr>'}, \ {'mode': 'i', 'var': 'user_emmet_balancetaginward_key', 'key': 'd', 'plug': 'emmet-balance-tag-inward', 'func': '<esc>:call emmet#balanceTag(1)<cr>'},
\ {'mode': 'n', 'var': 'user_emmet_balancetaginward_key', 'key': 'd', 'plug': 'emmet-balance-tag-inward', 'func': ':call emmet#balanceTag(1)<cr>'}, \ {'mode': 'n', 'var': 'user_emmet_balancetaginward_key', 'key': 'd', 'plug': 'emmet-balance-tag-inward', 'func': ':call emmet#balanceTag(1)<cr>'},
\ {'mode': 'v', 'var': 'user_emmet_balancetaginward_key', 'key': 'd', 'plug': 'emmet-balance-tag-inward', 'func': ':call emmet#balanceTag(2)<cr>'}, \ {'mode': 'v', 'var': 'user_emmet_balancetaginward_key', 'key': 'd', 'plug': 'emmet-balance-tag-inward', 'func': '<esc>:call emmet#balanceTag(1)<cr>'},
\ {'mode': 'i', 'var': 'user_emmet_balancetagoutward_key', 'key': 'D', 'plug': 'emmet-balance-tag-outword', 'func': '<esc>:call emmet#balanceTag(-1)<cr>'}, \ {'mode': 'i', 'var': 'user_emmet_balancetagoutward_key', 'key': 'D', 'plug': 'emmet-balance-tag-outword', 'func': '<esc>:call emmet#balanceTag(-1)<cr>'},
\ {'mode': 'n', 'var': 'user_emmet_balancetagoutward_key', 'key': 'D', 'plug': 'emmet-balance-tag-outword', 'func': ':call emmet#balanceTag(-1)<cr>'}, \ {'mode': 'n', 'var': 'user_emmet_balancetagoutward_key', 'key': 'D', 'plug': 'emmet-balance-tag-outword', 'func': ':call emmet#balanceTag(-1)<cr>'},
\ {'mode': 'v', 'var': 'user_emmet_balancetagoutward_key', 'key': 'D', 'plug': 'emmet-balance-tag-outword', 'func': ':call emmet#balanceTag(-2)<cr>'}, \ {'mode': 'v', 'var': 'user_emmet_balancetagoutward_key', 'key': 'D', 'plug': 'emmet-balance-tag-outword', 'func': '<esc>:call emmet#balanceTag(-1)<cr>'},
\ {'mode': 'i', 'var': 'user_emmet_next_key', 'key': 'n', 'plug': 'emmet-move-next', 'func': '<esc>:call emmet#moveNextPrev(0)<cr>'}, \ {'mode': 'i', 'var': 'user_emmet_next_key', 'key': 'n', 'plug': 'emmet-move-next', 'func': '<esc>:call emmet#moveNextPrev(0)<cr>'},
\ {'mode': 'n', 'var': 'user_emmet_next_key', 'key': 'n', 'plug': 'emmet-move-next', 'func': ':call emmet#moveNextPrev(0)<cr>'}, \ {'mode': 'n', 'var': 'user_emmet_next_key', 'key': 'n', 'plug': 'emmet-move-next', 'func': ':call emmet#moveNextPrev(0)<cr>'},
\ {'mode': 'i', 'var': 'user_emmet_prev_key', 'key': 'N', 'plug': 'emmet-move-prev', 'func': '<esc>:call emmet#moveNextPrev(1)<cr>'}, \ {'mode': 'i', 'var': 'user_emmet_prev_key', 'key': 'N', 'plug': 'emmet-move-prev', 'func': '<esc>:call emmet#moveNextPrev(1)<cr>'},