關(guān)于vimrc的函數(shù)使用能不能分享一下經(jīng)驗
答主,我是bilibili來的,之前就問過你問題,哈哈!
我描述一下我遇到的問題,我在寫php文件的時候經(jīng)常會用到中括號;在不同的情境下我希望自動補(bǔ)全的格式有所不同,比如說:
$data['key']?=?'value';//這種情況只需要敲擊"["自動映射成"[]"就可以了,這個.vimcr寫成?imap?[?[]<ESC>i $data?=?[ ???? ];//這種情況.vimrc需要使用函數(shù)吧(猜測)
這是我寫的vimrc
imap?[?[]<ESC>i<c-r>=Demo('?')<CR>
function!?Demo(char)
????if?getline('.')[col('.')?-?3]?==?a:char
????????return?'ab'
????else
????????return?'cd'
????endif
endfunction這種情況會向中括號內(nèi)添加字符串,當(dāng)光標(biāo)左側(cè)第一個字符的是空格的時候會填寫[ab],反之填寫[cd];
我想把a(bǔ)b換成<CR>,可是報錯,我都想法是把'ab'替換成插入模式的中的回車,這個要怎么寫?3Q!
備注,我也不懂vim的語法配置,上面的配置文件是借鑒別人寫的,自己揣摩的。。。
2020-09-06
揣摩得很好,又學(xué)到了,