有类似的答案,但单行更多。我只是想在JavaScript中自动添加一个分号,如(pipe == cursor):
func(function(){|})
然后我按回车键进入
func(function(){
|})
我可以在该行的末尾添加;
来获取:
func(function(){
|});
自动?
答案 0 :(得分:1)
几年前我写了一个插件,endline.vim。默认映射主要用于GVim,但它很容易被覆盖,以便在终端vim中有用。它构造了一些键映射(默认情况下为<S-CR>
)确实添加了一行(如果还没有),它会将你移动到下一行。在正常模式下,添加字符,但光标不移动。这个插件对C风格的语言和Python特别有用,使分号/冒号的繁琐更容易处理,特别是当你使用像autoclose.vim那样插入密切引号,parens等的脚本时。
答案 1 :(得分:1)
你应该试试cosco.vim:https://github.com/lfilho/cosco.vim
答案 2 :(得分:0)
不完全确定我完全理解你的问题,但......
:1$s/|/^v^m/g
^表示在键入下一个字母时按住控制键。但你不能同时附加分号。
:1,$s/)$/);/g
答案 3 :(得分:0)
我在点击{}
时使用以下映射打开<C-Return>
“正确”(TextMate方式):
inoremap <C-Return> <CR><CR><C-o>k<Tab>
您可以修改它以添加分号:
inoremap <C-Return> <C-o>m`<C-o>A;<C-o>``<CR><CR><C-o>k<Tab>