2014-10-06 33 views
0

在Vim中编辑Git提交时,我想在打开时自动分割窗口,以便我可以在顶部窗格中编辑提交消息,同时在底部面板中保留提交更改列表。Vim:默认分割特定文件类型

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

我也希望它切换到第二个面板,并将# Changes to be committed:的行移动到缓冲区的顶部,因为当我执行commit-ands并且消息已经很长时。然后,我希望它回到顶层缓冲区。我知道该怎么做,但如果可能的话,我希望它自动发生。

+3

你是否检查[逃逸插件?](https://github.com/tpope/vim-fugitive) – mMontu 2014-10-06 15:44:50

+0

我是否正确理解这一点?你想拆分提交窗口(' s'),通过' j'进入新的拆分,然后搜索'/ ^#Changes ',将该行滚动到顶部('zt'),然后切换回顶部分割' k'? – 2014-10-06 15:51:18

+0

@PeterRincker:是的,但是如何从Git提交的ftplugin.vim配置发送这些命令? – Inductiveload 2014-10-06 15:53:01

回答

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

相关问题