这是我的映射:
autocmd FileType java inoremap <F5> <ESC>:upd\|!javac %<CR>:!java %:r<CR>
它一次完成三件事:保存,编译和运行java文件。它按预期工作,但我想要更多。
实际上,当运行.class
文件并按任意键进入编辑器窗口时,我仍然处于正常模式,这是我不想做的。我想在按任意键后立即进入插入模式。
我尝试将i
附加到映射:
autocmd FileType java inoremap <F5> <ESC>:upd\|!javac %<CR>:!java %:r<CR>i
但是这甚至没有时间来查看.class
文件的输出(即它保存,编译,执行并进入插入模式而不会暂停)。
我想做我的第一个映射正在做的所有事情,以及在按任意键后更改为插入模式。
答案 0 :(得分:1)
您可以通过getchar()
等待按键。在映射中附加以下内容:
:call getchar()<CR>
或者,带有消息:
:echo "Press any key"<Bar>call getchar()<CR>
之后,您可以通过i
或:startinsert
:echo "Press any key"<Bar>call getchar()<Bar>startinsert<CR>
答案 1 :(得分:0)
最后尝试使用:start<cr>
或:norm i<cr>
。