加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

我的if-then-else-end声明在Lua失败了;我该怎么解决?

发布时间:2020-12-15 00:26:29 所属栏目:大数据 来源:网络整理
导读:我正在尝试为 Awesome window manager改进我的rc.lua.默认rc.lua使用以下代码设置菜单: myawesomemenu = { { "manual",terminal .. " -e man awesome" },{ "edit config",editor_cmd .. " " .. awesome.conffile },{ "restart",awesome.restart },{ "quit",
我正在尝试为 Awesome window manager改进我的rc.lua.默认rc.lua使用以下代码设置菜单:
myawesomemenu = {
   { "manual",terminal .. " -e man awesome" },{ "edit config",editor_cmd .. " " .. awesome.conffile },{ "restart",awesome.restart },{ "quit",awesome.quit }
}

我使用Awesome作为GNOME桌面环境的窗口管理器,所以我想让Awesome使用gnome-session-quit程序而不是awesome.quit,但前提是环境变量“DE”设置为“gnome”.因此,我用第五行替换了

{ "quit",if os.getenv("DE") == "gnome" then os.execute("/usr/bin/gnome-session-quit") else awesome.quit end }

但是当我重新加载文件时,我会得到“附近的意外符号”.我该如何解决这个问题,以及是什么原因造成的?

解决方法

试试这个:
{ "quit",(os.getenv("DE") == "gnome") and function() os.execute("/usr/bin/gnome-session-quit") end or awesome.quit}

a和b或c就像C表达式a? b:c,前提是b不是假的.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读