我修改了我的prepare-commit-msg
挂钩,以在我的提交消息开头包含分支名称(例如[JCH-234] -
)。但是,当我运行git commit
时,光标位于编辑器Vim
的开头。我正在寻找一种方法来启动光标在我的分支名称后面的位置。
我知道移动光标只需要几个额外的击键,但我相信注意细节,并希望尽可能实现这一点。
答案 0 :(得分:4)
IMO,这是git配置的东西,我们不应该为它添加特殊的vim脚本/配置。
您可以将GIT_EDITOR
变量设置为:
GIT_EDITOR="vim -c'startinsert|norm! ggA'"
这会让你每次git commit,git会挂钩你的pre-commit-msg,然后打开vim,把光标放在第一行的末尾,在你的情况下,在你的分支名称之后,也切换到插入模式。 / p>
答案 1 :(得分:0)
您可以使用以下内容:
augroup git_commit
autocmd!
autocmd BufReadPost *
\ if &filetype == 'gitcommit'
\| execute 'normal $'
\| endif
augroup end
加载缓冲区的内容后会触发BufReadPost
自动命令。如果filetype
为gitcommit
,我们可以运行任何动作来移动光标。
在这里,我使用$
移至行尾,但您也可以使用f-
或其他适合您的内容。
答案 2 :(得分:0)
当您使用vim作为编辑时,请使用" A" (大写A)命令在行尾输入插入模式。