我想让我的vim在读取完c++的模板后把光标自动往上跳两行

关键的部分大概是这样,但是行不通,为什么啊?

autocmd BufNewFile *.cpp exec ":call SetHeader()"    
func! SetHeader() 
if expand("%:e") == 'cpp'
    read .\skeleton\skeleton.cpp
    echo ""
    normal 2k
endif
阅读 1.9k
1 个回答

因为读完模板之后你的光标依然在 0:0 位置。

解决方法:

normal G2k

更新(题主追加提问):

现在我是不管加不加normal这条指令,指令里写啥,创建新文件后光标都会出现在最后一行

以后提问问题最好把问题描述清楚

针对这个问题,我能想到的是你的配置文件中有其他冲突配置。你看看你的 vimrc 里面有没有类似 autocmd BufNewFile * normal G 这样的指令。

如果不是配置冲突,因为你使用的是 Windows,我就无能为力了。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
宣传栏