b2科目四模拟试题多少题驾考考爆了怎么补救
b2科目四模拟试题多少题 驾考考爆了怎么补救

自动补全_securecrt自动补全_devc自动补全(2)

电脑杂谈  发布时间:2016-12-19 04:00:38  来源:网络整理

30 ' 用退格键删除一个左括号时同时删除对应的右括号

31 inoremap :call RemovePairs()a

这样就比较完美了。不过在非括号时其实还有个小问题(比如“<行首>a<光标>bcde”这样的情况下,按了退格键后,“a”虽然被删除了,但光标不是移到行首,而是移到b 的后面),但应该不会对使用造成太大影响。

另外,在自动补全了右括号之后,如果用户再输入右括号会怎么样呢?一般来说,比较合理的做法似乎是忽略掉这个后输入的多余的右括号,直接将光标向右移到一格。代码如下:

01 ' 输入一个字符时,如果下一个字符也是括号,则删除它,避免出现重复字符

02 function! RemoveNextDoubleChar(char)

03 let l:line = getline('.')

04 let l:next_char = l:line[col('.')] ' 取得当前光标后一个字符

05

06 if a:char == l:next_char

07 execute 'normal! l'

08 else

09 execute 'normal! i' . a:char . ''

10 end

11 endfunction

12 inoremap ) :call RemoveNextDoubleChar(')')a

13 inoremap ] :call RemoveNextDoubleChar(']')a

14 inoremap } :call RemoveNextDoubleChar('}')a

这样,在 VIM 中输入或删除括号就方便多了!


本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/jisuanjixue/article-23051-2.html

相关阅读
    发表评论  请自觉遵守互联网相关的政策法规,严禁发布、暴力、反动的言论

    热点图片
    拼命载入中...