我对此错误感到困惑。我正在为mocp编写一个lua脚本来显示conky中的信息。当我在“/ media / Stuff / old-music”中播放音乐文件时,一切正常但我在“/ home / tony / Music”中播放音乐文件时出错。我的脚本中没有任何目录是硬编码的。该错误表示变量返回为nil。我检查并且音乐文件包含所需信息。为什么我会收到此错误?
误差..
Conky:llua_do_call:函数conky_main执行失败:/home/tony/.conky/lua-test/albumart.lua:68:尝试连接全局'专辑'(零值)
...代码
....
totaltime,totaltimesecs,song,artist,album,albumart=newsong(update_num)
....
function newsong()
local f = io.popen("mocp -Q %album")
album= f:read("*a")
f:close()
album=string.gsub(album,"[\n]","")
local f = io.popen("mocp -Q %artist")
artist= f:read("*a")
f:close()
artist=string.gsub(artist,"[\n]","")
local f = io.popen("mocp -Q %song")
song= f:read("*a")
f:close()
song=string.gsub(song,"[\n]","")
local f = io.popen("mocp -Q %tt")
totaltime= f:read("*a")
f:close()
totaltime=string.gsub(totaltime,"[\n]","")
local f = io.popen("mocp -Q %ts")
totaltimesecs= f:read("*a")
f:close()
totaltime=string.gsub(totaltime,"[\n]","")
return totaltime,totaltimesecs,song,artist,album,albumart
答案 0 :(得分:1)
您编写的代码似乎与实际的错误代码无关。错误代码专门描述了此问题:
.../albumart.lua:68: attempt to concatenate global 'album' (a nil value)
这意味着您尝试使用连接运算符album
连接..
变量,并且它的值恰好为nil。
您编写的代码表明情况并非如此(即使您可能想尝试在函数local
中创建所有变量)。请查看文件中的第68行以查找问题。