gpt4 book ai didi

linux - 在终端 bash 中列出 vim 中打开的缓冲区

转载 作者:太空宇宙 更新时间:2023-11-04 09:17:05 25 4
gpt4 key购买 nike

我打开了两个终端窗口,比如 A 和 B。

我在终端 A 中打开了 vim。我想转到终端 B 并获取当前在终端 A 中的 vim 中的缓冲区列表。

最佳答案

你需要知道另一个 vim session 的服务器名(它需要你的 vim 风格用正确的选项编译),从那里你应该可以问任何你想问的。

要知道每个实例中的服务器名称,请键入 :echo v:servername。您还可以使用 :echo serverlist() 获取所有 vim 服务器的列表。

当我读到 :h x11-clientserver 时,正如您所说的终端,这意味着您需要使用 --servername 选项显式运行 vim -- 我总是尽可能使用 gvim,所以我不确定你的用例中的每个细节。这意味着,您已经必须知道其他服务器名称。

假设您在终端 B 中使用 $> vim --servername=termb whateverotheroptions 启动了 vim

因为打开的缓冲区列表(不是窗口)可以用

:echo filter(map(range(1, bufnr('$')), 'bufname(v:val)'), '!empty(v:val)')

在终端 A 的 Vim 中,你可以这样执行:

:echo remote_expr('termB', "filter(map(range(1, bufnr('$')), 'bufname(v:val)'), '!empty(v:val)')")

关于linux - 在终端 bash 中列出 vim 中打开的缓冲区,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46122821/

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