내 상자에서 Arch Linux를 실행하고 있습니다. 나는 타일링 WM인 멋진 창 관리자를 사용하지만 부동 창도 허용합니다.
그만큼ArchWiki의엄청난기입rc.lua
기본적으로 YouTube의 전체 화면을 부동 상태로 만들려면 my awesome에 다음을 입력하라고 지시합니다 .
{ rule = { instance = "plugin-container" },
properties = { floating = true } },
그러나 이것은 작동하지 않는 것 같습니다. 나는 그들이 브라우저에 대해 제안한 규칙을 시도해 보았고 chromium
이것이 효과가 있었고 그 접근 방식이 옳다고 믿게 되었습니다.
"plugin-container"
나는 내가 사용하고 있는 브라우저에 대한 올바른 지정자가 아닌 것 같아요 :luakit
.
따라서 질문은 다음과 같습니다. YouTube 동영상이 규칙에 의해 인식되도록 instance
하는 올바른 지정자는 무엇입니까 ?luakit
awesome
답변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()