luakit + awesome wm: YouTube im Vollbildmodus nutzen

luakit + awesome wm: YouTube im Vollbildmodus nutzen

Auf meinem Rechner läuft Arch Linux. Ich verwende den tollen Fenstermanager, der ein Kachel-WM ist, aber auch schwebende Fenster zulässt.

DerArchWikisEindrucksvollEintragsagt mir, dass ich Folgendes in mein Awesome einfügen soll rc.lua, um YouTube standardmäßig im Vollbildmodus schweben zu lassen:

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

Das scheint jedoch nicht zu funktionieren. Ich habe die von ihnen für den chromiumBrowser vorgeschlagene Regel ausprobiert und das hat funktioniert, was mich ebenfalls glauben lässt, dass der Ansatz richtig ist.

Ich vermute, dass dies "plugin-container"nicht der richtige Spezifizierer für den von mir verwendeten Browser ist:luakit.

Hier ist also die Frage: Was ist der richtige instanceSpezifizierer, damit luakitYouTube-Videos von den Regeln erkannt werden awesome?

Antwort1

Es ist ein bisschen knifflig:

Du hast Recht, "plugin-container"sieht ziemlich nach Firefox aus.

Leider können Sie den neu erstellten yt-Client nicht daran erkennen, "instance"da es sich lediglich um eine leere Zeichenfolge handelt, die auf mehr Clients zutrifft, als Sie möchten.

Ich habe einen anderen Weg gefunden: Die "class"Eigenschaft dieses Clients ist "Luakit"statt "luakit"für normale Luakit-Clients. Eine entsprechende Regel könnte also so aussehen:

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

Es ist jedoch wahrscheinlich, dass sich diese Unterscheidung in Zukunft ändern wird.

Sie können mehr über die Eigenschaften der Clients erfahren, indem Sie den folgenden Code zu Ihremrc.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()

Antwort2

Seit Awesome 3.5 add_signal()ist die Funktion veraltet und wurde durch die connect_signal()Funktion ersetzt (sieheFantastisch 3,4 bis 3,5 - Signale).

Diese kleine Änderung am Code von @Tyrannodogg funktioniert:

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()

verwandte Informationen