2
if (c.class == "Google-chrome") then
     c.icon = capi.image ( "/home/art-attack/.config/awesome/icons/chrome.png" )
end

我试过了,但总是出错,即尝试调用字段“图像”(零值)

{ rule = { class = "Google-chrome" },
  properties = { icon = beautiful.icon_chrome } },

然后我找到了另一种在可怕的规则中使用属性图标的方法,它可以工作,但没有更改图标,而是禁用了该客户端的图标。

4

2 回答 2

3

要修复您的第一次尝试,请尝试以下操作:

if c.class == "Google-chrome" then
    local icon = gears.surface("path/to/chrome.png")
    c.icon = icon._native
    icon:finish()
end

icon:finish()不是必需的,但它的存在是为了确保您不优化此代码。那里有一些你不想知道的黑暗垃圾收集避免魔法,但简短的故事是:_native除非你已经将表面本身保存在变量中,否则永远不要使用。

于 2015-05-21T16:50:14.780 回答
0
if c.class == "Google-chrome" then
    local icon = gears.surface("path/to/chrome.png")
    return text, bg, bg_image, icon
end

在此之前添加此代码

if capi.client.focus == c then
于 2015-06-08T08:40:02.827 回答