gpt4 book ai didi

lua - 我的 if-then-else-end 语句在 Lua 中失败了;我该如何修复它?

转载 作者:行者123 更新时间:2023-12-01 22:52:43 25 4
gpt4 key购买 nike

我正在尝试改进我的 rc.lua Awesome window manager 。默认的 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 }

但是当我重新加载文件时,我得到“if 附近的意外符号”。我该如何解决这个问题,是什么原因导致的?

最佳答案

试试这个:

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

a and b or c 就像 C 表达式 a ? b : c,前提是 b 不为 false

关于lua - 我的 if-then-else-end 语句在 Lua 中失败了;我该如何修复它?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17626855/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com