【问题标题】:How to correctly use vim.eval() in gVim?如何在 gVim 中正确使用 vim.eval()?
【发布时间】:2021-01-30 16:17:53
【问题描述】:

gVim 允许编写可以通过调用vim.eval() 与 gVim 交互的 Python 代码。它适用于简单的情况,例如:

:py import vim; print(vim.eval("2 + 2"))

但是如果我尝试一些更有用的东西,例如,改变一个选项的值,像这样:

:py import vim; vim.eval("set runtimepath=~/.vim")

它总是因“E121: Undefined variable: set”错误而失败。

我的代码有问题还是vim.eval() 根本不打算在基本的“2+2”评估之外使用?

【问题讨论】:

    标签: vim


    【解决方案1】:

    vim.eval() 方法将给定参数计算为 Vim 表达式。至 执行 Vim 命令,调用vim.command() 方法,

    :py import vim; vim.command("set runtimepath=~/.vim")
    

    请参阅 :help python-eval 和 :help python-command。

    【讨论】:

      猜你喜欢
      • 2014-04-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-12-20
      • 2015-04-15
      • 1970-01-01
      • 2014-08-05
      • 2016-09-19
      相关资源
      最近更新 更多