luakit + awesome wm: YouTube 전체 화면 작동

luakit + awesome wm: YouTube 전체 화면 작동

내 상자에서 Arch Linux를 실행하고 있습니다. 나는 타일링 WM인 멋진 창 관리자를 사용하지만 부동 창도 허용합니다.

그만큼ArchWiki의엄청난기입rc.lua기본적으로 YouTube의 전체 화면을 부동 상태로 만들려면 my awesome에 다음을 입력하라고 지시합니다 .

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

그러나 이것은 작동하지 않는 것 같습니다. 나는 그들이 브라우저에 대해 제안한 규칙을 시도해 보았고 chromium이것이 효과가 있었고 그 접근 방식이 옳다고 믿게 되었습니다.

"plugin-container"나는 내가 사용하고 있는 브라우저에 대한 올바른 지정자가 아닌 것 같아요 :luakit.

따라서 질문은 다음과 같습니다. YouTube 동영상이 규칙에 의해 인식되도록 instance하는 올바른 지정자는 무엇입니까 ?luakitawesome

답변1

조금 까다롭습니다.

네 말이 맞아, "plugin-container"파이어폭스와 꽤 비슷해 보여.

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

관련 정보