gpt4 book ai didi

python - 在 Vim 嵌入式 python 脚本中打开一个新窗口

转载 作者:太空宇宙 更新时间:2023-11-04 01:42:26 28 4
gpt4 key购买 nike

我刚刚开始研究 vim+python 脚本(没有使用原生 vim 脚本的经验)。

如何打开一个新窗口以包含来自后台进程的标准输出?

目前,在阅读了一些 :help python 之后,我看到的唯一选项是这样的:

cmd = ":bel new"
vim.command(cmd)

最佳答案

因为 vim.command 可以执行大多数(如果不是全部?)ex 命令,你可以简单地从里面调用 :new +read!ls

:new 拆分当前窗口并将新的(空的,无名称)缓冲区放入上层窗口。它需要一个参数 +[cmd],我们用它来执行 read!cmd,它在 bang 之后将 cmd 的标准输出读取到缓冲区中。请注意,您需要使用 \

转义命令中的空格

总而言之,你得到 vim.command("new +read!cmd")

:python vim.command("new +read!ls")

将当前目录的内容读入一个 n cichew 水平分割窗口中的新缓冲区。

如果要处理特殊字符的转义,请考虑使用 python 的 re.escape():

:py import re;vim.command("new +read!"+re.escape("ls Dire*"))

这对于大多数情况应该足够了。如有疑问,请查看其文档并将其与您的 shell 的文档进行比较。

关于python - 在 Vim 嵌入式 python 脚本中打开一个新窗口,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3546952/

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