Vim:用先前的参数重新运行make命令

时间:2013-02-15 10:40:19

标签: vim

在Vim中,有没有办法用同一组参数重新运行最新的:make命令?类似于Emacs中的重新编译命令。

3 个答案:

答案 0 :(得分:2)

:make然后按将把你的last:make命令放在命令行中。这对你好吗?

如果你不想每次都输入:make,你可以将make命令绑定/映射到某个键,然后你只需按下键即可执行命令。

P.S。有谁知道如何让“向上箭头”看起来像一个带有降价标记的键盘键? <kbd>??</kbd> C-V <up>无法在此处使用。 :)

谢谢Ingo Karkat !!

答案 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