luakit + Awesome wm:使 youtube 全屏工作

luakit + Awesome wm:使 youtube 全屏工作

我在我的机器上运行 Arch Linux。我使用很棒的窗口管理器,它是一个平铺 WM,但也允许浮动窗口。

建筑维基百科的惊人的入口告诉我将以下内容放入我的 Awesome 中rc.lua,以使 YouTube 默认情况下全屏浮动:

{ rule = { instance = "plugin-container" },
  properties = { floating = true } },

但这似乎不起作用。我已经尝试了他们为浏览器建议的规则chromium,这很有效,这也让我相信这种方法是正确的。

我猜这"plugin-container"不是我正在使用的浏览器的正确说明符:luakit

那么问题来了:instanceluakitYouTube 视频被规则识别的正确说明符是什么awesome

答案1

这有点棘手:

你说得对,"plugin-container"看起来很像火狐。

不幸的是,您无法区分新生成的 yt-client,因为"instance"它只是一个空字符串,它匹配的客户端数量比您想要的要多。

我找到了另一种方法:"class"该客户端的属性"Luakit"代替了"luakit"普通的 luakit 客户端。因此相应的规则可能如下所示:

{ rule = { class = "Luakit" },
   properties = { floating = true } },

但这种区别未来似乎可能会改变。

您可以通过将以下代码添加到您的rc.lua

mytimer=timer{timeout=2}
mytimer:add_signal("timeout",
        function () for i,c in ipairs(client.get(mouse.screen)) do
                        if c:tags()[mouse.screen]== awful.tag.selected(mouse.screen) then
                                naughty.notify({title=c.class,text=c.role})
                                naughty.notify({title=c.class,text=c.instance})
                                end
                    end
        end)
mytimer:start()

答案2

从 Awesome 3.5 开始,add_signal()function 已被弃用并被 function 取代connect_signal()(请参阅很棒的 3.4 到 3.5 - 信号)。

对@Tyrannodogg 代码的轻微修改将起作用:

mytimer=timer{timeout=2}
mytimer:connect_signal("timeout",
    function () for i,c in ipairs(client.get(mouse.screen)) do
        if c:tags()[mouse.screen] == awful.tag.selected(mouse.screen) then
            naughty.notify({title=c.class,text=c.role})
            naughty.notify({title=c.class,text=c.instance})
        end
    end
end)
mytimer:start()

相关内容