如何在awesomeWM v3.5.6中为任务列表设置任何客户端的自定义图标?

时间:2015-05-20 18:05:05

标签: lua awesome-wm

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 } },

然后我找到另一种在awful.rules中使用属性图标的方法,但它有效,但没有更改图标,而是禁用了该客户端的图标。

2 个答案:

答案 0 :(得分:1)

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

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

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

答案 1 :(得分: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