我使用 vim 的时间已经数不胜数了,但我从来没有真正学好 vimscript。我现在正在尝试。
无论如何,我想将可变的时间传递给 sleep 功能。我还想在传递它之前操纵该值。这是一个简单的例子。
function! wait(mil)
let timetowait = mil . "m"
sleep timetowait
endfunction
即使我尝试在 timetowait 前加上 l: 前缀,它也会显示“无效参数:l:timetowait”。
将变量的值传递给 sleep 的正确方法是什么?
最佳答案
有几个问题:
- 您的方法应以大写名称开头
- 您需要使用
a:
访问您的论点
- 你必须在 sleep 时间和
m
之间留出一段距离
- 您必须使用
execute
间接执行 sleep
这是一个如何做到这一点的示例:
function! Wait(mil)
let timetowait = a:mil . " m"
exe 'sleep '.timetowait
endfunction
关于vim - 在 vimscript 中传递一个变量以休眠,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14778789/