luakit + awesome wm: YouTube をフルスクリーンで表示する

luakit + awesome wm: YouTube をフルスクリーンで表示する

私は自分のマシンで Arch Linux を実行しています。タイル型のウィンドウ マネージャでありながら、フローティング ウィンドウも使用できる素晴らしいウィンドウ マネージャを使用しています。

ArchWikiの素晴らしいエントリrc.luaYouTube をデフォルトでフルスクリーン フローティングにするには、次の内容を awesome に記述するように指示されています。

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

しかし、これはうまく機能していないようです。chromiumブラウザに提案されたルールを試してみたところ、うまくいきました。このことから、このアプローチが正しいと信じるようになりました。

"plugin-container"は私が使用しているブラウザの正しい指定子ではないと思われます:luakit

では、質問です。YouTube動画をルールに従って認識させるinstanceための正しい指定子は何でしょうか?luakitawesome

答え1

ちょっと難しいですね:

そうですね、"plugin-container"Firefox によく似ていますね。

"instance"残念ながら、新しく生成された yt-clientは単なる空の文字列であるため、必要な数よりも多くのクライアントに一致するため、区別できません。

私は別の方法を見つけました:"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()関数は非推奨となり、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()

関連情報