在 Vim 中,有没有办法:make
用相同的参数集重新运行最新的命令?类似于 Emacs 中的重新编译命令。
问问题
422 次
3 回答
2
键入
:make
然后按↑将把你的最后一个 :make 命令放在你的命令行中。你可以吗?
如果您讨厌:make
每次都键入,您可以将您的 make 命令绑定/映射到某个键,然后您只需按下该键即可执行您的命令。
PS有人知道如何使“向上箭头”看起来像带有SO降价的键盘键吗?<kbd>??</kbd>
C-V <up>
在这里肯定行不通。:)
谢谢英戈·卡卡特!! ↑ ↑ ↑ ↑ ↑
于 2013-02-15T10:50:28.907 回答
1
当它仍然是最后执行的 Ex 命令时,一个简单的@:
就可以了。如果您不确定,建议:make
后面的↑更好。您可能还喜欢我的redocommand 插件,它允许通过:R :make
(或任何较短的唯一标识字符串)进行调用。
于 2013-02-15T10:57:28.770 回答
1
我有以下设置、映射、命令和函数:
command! -nargs=* Make write | let g:make_args="<args>" | make <args> | cwindow 6
function! Make2()
if !exists("g:make_args")
let g:make_args = ""
endif
wall
exec "silent! make " . g:make_args
cwindow 6
redraw
endfunction
inoremap <F2> <ESC>:call Make2()<CR><C-L>
noremap <F2> :call Make2()<CR><C-L>
您需要显式调用:Make myprog
一次。之后,您只需键入<F2>
并且它使用您用于最后一个:Make
命令的最后一个参数。如果您想制作其他东西,请再次:Make new_prog
明确使用。
于 2013-02-16T00:39:53.173 回答