vim 脚本:如何在 vim 函数中执行命令
为什么会发生以下情况:
let s:colorschemes = ['synic', 'ir_black']
let s:colorscheme_idx = 0
function! RotateColorscheme()
let s:colorscheme_idx += 1
let s:name = s:colorschemes[s:colorscheme_idx]
echo s:name
colorscheme s:name
endfunction
不执行colorscheme
? Vim 抱怨以下错误“找不到 colorchem s:name”。我如何告诉它我希望它取消引用该变量而不是将其逐字应用于:colorscheme?
Why does the following:
let s:colorschemes = ['synic', 'ir_black']
let s:colorscheme_idx = 0
function! RotateColorscheme()
let s:colorscheme_idx += 1
let s:name = s:colorschemes[s:colorscheme_idx]
echo s:name
colorscheme s:name
endfunction
not execute the colorscheme
? Vim complains with the following error 'cannot find colorschem s:name'. How do I tell it that I want it to derefence that variable and not apply it literally to :colorscheme?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
看看 vim.wikia.com 中的这个脚本,它几乎可以满足您的要求。
关键行似乎是这样的:
Have a look at this script from vim.wikia.com which does pretty much what you are asking for.
Key-line seems to be this one: