在Vim中,有没有办法用同一组参数重新运行最新的:make
命令?类似于Emacs中的重新编译命令。
答案 0 :(得分:2)
型
:make
然后按↑将把你的last:make命令放在命令行中。这对你好吗?
如果你不想每次都输入:make
,你可以将make命令绑定/映射到某个键,然后你只需按下键即可执行命令。
P.S。有谁知道如何让“向上箭头”看起来像一个带有降价标记的键盘键? <kbd>??</kbd>
C-V <up>
无法在此处使用。 :)
答案 1 :(得分:1)
当它仍然是最后执行的Ex命令时,一个简单的@:
就可以了。如果您不确定,建议的:make
后跟↑会更好。您可能也喜欢我的redocommand plugin,它允许通过:R :make
(或任何较短的唯一标识字符串)进行召回。
答案 2 :(得分:0)
我有以下设置,映射,命令和功能:
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
。