如何编写一个钩子函数,在打开文件时将光标放在文件的末尾。
在elisp中,它看起来大致如此,
(add-hook 'open-buffer-hook
(lambda () (end-of-buffer)))
在vim中,我可以打开一个文件然后按:$
结束,但我很想通过钩子进行操作。
答案 0 :(得分:1)
使用autocmd
,您可以挂钩BufReadPost
并在正常模式下执行类似G$
的内容,以前进到最后一行和最后一个字符。
autocmd BufReadPost * :normal G$
我使用BufReadPost
使该命令在文件完全读入缓冲区后运行。 *
将此规则应用于所有缓冲区类型,但您可以将其限制为FileType
或文件名模式。有关详细信息,请参阅:help autocmd
。
答案 1 :(得分:1)
自动命令对我来说似乎太过分了。
在你的shell中,
$ vim file +$
在Vim中打开file
并跳转到最后一行。
在Vim,
:edit +$ file
打开file
并跳转到最后一行。
这适用于其他相关命令,例如:vsplit
或:tabedit
。