如何在vim执行ruby之间保存变量?

时间:2013-06-19 10:38:19

标签: ruby vim vim-plugin

使用1.9之前版本的Ruby,我可以在Vim中执行以下操作。

:ruby foo = "bar"
:ruby print foo

现在这给了我一个NameError,因为foo没有定义。

如何在:ruby的执行之间“保存”变量?特别是我希望能够从Vim插件中使用此功能并存储对象(而不是像字符串或数字这样的原始值,可以通过将其存储在Vim变量中来实现)。

2 个答案:

答案 0 :(得分:2)

您始终可以将值存储在 Vim 变量中:

:ruby VIM::command('let foo = "bar"')
:ruby print VIM::evaluate('foo')

答案 1 :(得分:1)

快速而肮脏的方法是在变量名前加上$,这将使其像全局变量一样。

:ruby $foo = "bar"
:ruby print $foo