mirror of
https://github.com/Raimondi/delimitMate.git
synced 2025-12-15 17:07:07 +08:00
Split Init() and simplify the set-up process.
This commit is contained in:
@@ -103,10 +103,12 @@ function! delimitMate#Init() "{{{
|
|||||||
|
|
||||||
let b:delimitMate_buffer = []
|
let b:delimitMate_buffer = []
|
||||||
|
|
||||||
" }}}
|
let b:loaded_delimitMate = 1
|
||||||
|
|
||||||
" Set mappings: {{{
|
endfunction "}}} Init()
|
||||||
call delimitMate#UnMap()
|
|
||||||
|
function! delimitMate#Map() "{{{
|
||||||
|
" Set mappings:
|
||||||
try
|
try
|
||||||
let save_cpo = &cpo
|
let save_cpo = &cpo
|
||||||
let save_keymap = &keymap
|
let save_keymap = &keymap
|
||||||
@@ -124,11 +126,9 @@ function! delimitMate#Init() "{{{
|
|||||||
let &keymap = save_keymap
|
let &keymap = save_keymap
|
||||||
endtry
|
endtry
|
||||||
|
|
||||||
let b:loaded_delimitMate = 1
|
|
||||||
let b:delimitMate_enabled = 1
|
let b:delimitMate_enabled = 1
|
||||||
" }}}
|
|
||||||
|
|
||||||
endfunction "}}} Init()
|
endfunction "}}} Map()
|
||||||
|
|
||||||
function! delimitMate#ShouldJump() "{{{
|
function! delimitMate#ShouldJump() "{{{
|
||||||
" Returns 1 if the next character is a closing delimiter.
|
" Returns 1 if the next character is a closing delimiter.
|
||||||
|
|||||||
@@ -43,6 +43,8 @@ function! s:TestMappingsDo() "{{{
|
|||||||
for a in [0,1]
|
for a in [0,1]
|
||||||
let b:delimitMate_autoclose = a
|
let b:delimitMate_autoclose = a
|
||||||
call delimitMate#Init()
|
call delimitMate#Init()
|
||||||
|
call delimitMate#UnMap()
|
||||||
|
call delimitMate#Map()
|
||||||
call delimitMate#TestMappings()
|
call delimitMate#TestMappings()
|
||||||
exec "normal i\<CR>"
|
exec "normal i\<CR>"
|
||||||
endfor
|
endfor
|
||||||
@@ -56,28 +58,41 @@ function! s:TestMappingsDo() "{{{
|
|||||||
endfunction "}}}
|
endfunction "}}}
|
||||||
|
|
||||||
function! s:DelimitMateDo(...) "{{{
|
function! s:DelimitMateDo(...) "{{{
|
||||||
if exists("g:delimitMate_excluded_ft")
|
" Initialize settings:
|
||||||
" Check if this file type is excluded:
|
|
||||||
if index(split(g:delimitMate_excluded_ft, ','), &filetype, 0, 1) >= 0
|
|
||||||
if !exists('b:delimitMate_enabled')
|
|
||||||
call delimitMate#Init()
|
|
||||||
endif
|
|
||||||
call delimitMate#UnMap()
|
|
||||||
return 1
|
|
||||||
endif
|
|
||||||
endif
|
|
||||||
call delimitMate#Init()
|
call delimitMate#Init()
|
||||||
|
|
||||||
|
" Check if this file type is excluded:
|
||||||
|
if exists("g:delimitMate_excluded_ft") &&
|
||||||
|
\ index(split(g:delimitMate_excluded_ft, ','), &filetype, 0, 1) >= 0
|
||||||
|
|
||||||
|
" Remove any magic:
|
||||||
|
call delimitMate#UnMap()
|
||||||
|
|
||||||
|
" Finish here:
|
||||||
|
return 1
|
||||||
|
endif
|
||||||
|
|
||||||
|
" First, remove all magic, if needed:
|
||||||
|
if exists("b:delimitMate_enabled") && b:delimitMate_enabled == 1
|
||||||
|
call delimitMate#UnMap()
|
||||||
|
endif
|
||||||
|
|
||||||
|
" Now, add magic:
|
||||||
|
call delimitMate#Map()
|
||||||
|
|
||||||
if a:0 > 0
|
if a:0 > 0
|
||||||
echo "delimitMate has been reset."
|
echo "delimitMate has been reset."
|
||||||
endif
|
endif
|
||||||
endfunction "}}}
|
endfunction "}}}
|
||||||
|
|
||||||
function! s:DelimitMateSwitch() "{{{
|
function! s:DelimitMateSwitch() "{{{
|
||||||
if b:delimitMate_enabled
|
call delimitMate#Init()
|
||||||
|
if exists("b:delimitMate_enabled") && b:delimitMate_enabled
|
||||||
call delimitMate#UnMap()
|
call delimitMate#UnMap()
|
||||||
echo "delimitMate has been disabled."
|
echo "delimitMate has been disabled."
|
||||||
else
|
else
|
||||||
call delimitMate#Init()
|
call delimitMate#UnMap()
|
||||||
|
call delimitMate#Map()
|
||||||
echo "delimitMate has been enabled."
|
echo "delimitMate has been enabled."
|
||||||
endif
|
endif
|
||||||
endfunction "}}}
|
endfunction "}}}
|
||||||
|
|||||||
Reference in New Issue
Block a user