Vim:用于在默认vim中打开当前文件的函数

时间:2013-12-26 17:34:53

标签: vim

我知道您可以执行以下操作来获取默认的vim。

:!vim -u NONE %:p 

我想执行上面的命令,但是在退出我的旧自定义vim会话时,保留我以前在我的自定义vim中的行号。这可能吗?

编辑
以下显示您可以使用当前vim会话中的line(".")In Vim, is there a way to copy the current line number into a buffer?

然后你可以做类似

的事情
:!vim -u NONE +line(".") %:p 

注意:上面的内容仍有问题。旧的vim会话也在继续运行。

2 个答案:

答案 0 :(得分:2)

我不知道为什么你需要这样做,但这可能是一种方式:

在你的“全功能”vim中:

:let n=line('.')|let p=expand('%:p')|bd|exec '!vim -u NONE +'. n .' '. p

这将做你想要的,并从你的自定义vim关闭当前文件(缓冲区)。但是,这两个vims是嵌套的。

答案 1 :(得分:2)

如果你对Vim这么大的文件感到困扰以阻碍编辑,那么启动一个全新的文件有点苛刻。相反,请检查LargeFile - Edit large files quickly插件是否已经有所帮助。

如果这还不够,我会调查:autocmd s(尤其是CursorMoved[I])和:syntax off,然后自定义命令:HandleLargeFile关闭这些选项和插件。