gpt4 book ai didi

Vim --remote-silent 总是为第一个文件打开 [No Name] 缓冲区

转载 作者:行者123 更新时间:2023-12-04 15:13:57 25 4
gpt4 key购买 nike

我希望能够使用相同的实例打开文件,所以我添加了 --remote-silent打开文件时。但是第一次加载时,Vim 将打开一个空缓冲区,然后是我的文件。所以现在我有 2 个缓冲区。

经过进一步调查,我注意到设置 nohidden将解决这个问题。但是,这不仅不符合我的喜好,还会导致第一个缓冲区没有语法突出显示。

没有 --remote-silent 就不会发生这种情况选项。

任何帮助表示赞赏。谢谢!

最佳答案

$ vim --servername FOO --remote[-silent] filename在没有实例运行的情况下,首先启动一个新实例然后打开文件:它不像 $vim filename .您必须找到一种方法来完全删除第一个空缓冲区。

从我有限的测试中,添加 set bufhidden=wipe给您的 ~/.vimrc可能会解决问题。
set bufhidden=wipe是缓冲区的局部变量,仅应用于第一个空缓冲区并在之后重置。

:h bufhidden .

但是,当您正常运行 Vim 时,这肯定会导致一些问题。

编辑

是的,set bufhidden=wipe导致明显的问题。当“正常”启动时(使用 $vim file1 ),当您编辑不是您想要的第二个文件时,第一个缓冲区将被删除。

对缓冲区名称的简单检查可解决该问题:

if bufname('%') == ''
set bufhidden=wipe
endif

在这里,语法高亮适用于任何情况。你能把你的 ~/.vim/的内容发上来吗?和 ~/.vimrc某处?

关于Vim --remote-silent 总是为第一个文件打开 [No Name] 缓冲区,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12328277/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com