我经常做类似
的事情 !r git diff .
我已将此输入的刷新简化为:
:call feedkeys('ggdG:r! git diff .')
但仍需要至少:: <UP> <UP> <CR> <CR> <CR> gg
重复并向上移动到第一行进行检查。
如何以较少的步骤刷新内容?在刷新之前记住第一行的奖励积分。
我知道git特定命令有fugitive,但我想将其概括为运行任何shell命令。
答案 0 :(得分:3)
这种映射怎么样:
nnoremap <F10> :%d<bar>r! YOURCMD<cr>gg
然后你可以按<F10>
清除当前缓冲区并读取YOURCMD
的输出,最后将光标移动到第一行。
E.g。将进程信息加载到vim:
nnoremap <F10> :%d<bar>r! ps -ef<cr>gg
答案 1 :(得分:3)
史蒂夫·洛什的Clam是一种通用而简单的方法来做你所做的事情:
将外部命令的输出显示到新的垂直窗口
:Clam git diff .
刷新
\r
转到第一行
gg