0

在 Vim 中编辑 Git 提交时,我想自动拆分打开的窗口,以便我可以在顶部窗格中编辑提交消息,同时将提交更改列表保留在底部面板中。

我有一个带有 gitcommit.vim 文件的 ftplugin,用于设置其他一些特定于 Git 提交的选项,但是当我添加split到它时,我得到了 3 个窗格(大概是因为第二个窗格分裂了,然后有什么东西阻止了进一步递归到无穷大? )。

我还希望它切换到第二个面板并将显示的行移动# Changes to be committed:到缓冲区的顶部,以便在我进行提交修改并且消息已经很长时。然后,我希望它移回顶部缓冲区。我知道要输入什么来做到这一点,但如果可能的话,我希望它自动发生。

4

1 回答 1

1

这是放入~/.vim/ftplugin/gitcommit.vim文件的命令:

command! -buffer -nargs=0 Changes :execute "normal! \<c-w>s\<c-w>jgg"<bar>call search('^# Changes')<bar>execute "normal! zt\<c-w>p"

这提供:Changes了您想要的命令。我犹豫是否要立即启动它,因为对于大多数提交,我怀疑您是否需要此功能。

我也同意@mMontu 的观点,您应该查看Fugitive以及这个Vimcasts帖子:The Fugitive Series - a retrospective

于 2014-10-06T17:18:40.727 回答