Awesome Window Manager - Открытые инструменты разработчика Chromium на разных экранах, чем Chromium

1117
AustinMatherne

У меня три экрана. Один предназначен для URxvt и VIM, другой - для Chromium, Firefox и Opera, а третий - для инструментов разработчика Chromium. Ниже приведены правила, которые я создал в своем rc.lua, пытаясь создать такое поведение. Это работает, если у меня уже открыты окна, и я перезапускаю классно, но правило Инструменты разработчика не применяется, когда я нажимаю Ctrl + Shift + I в Chromium, чтобы открыть окно Инструменты разработчика. Вместо этого оно обрабатывается так же, как и любое другое новое окно Chromium, и помещается на первый экран. Даже если я закомментирую правило Chromium, окно инструментов разработчика все равно не будет изменено правилом, которое я для него установил, если только я не перезапущу классно.

awful.rules.rules = { { rule = { }, properties = { border_width = beautiful.border_width, border_color = beautiful.border_normal, focus = awful.client.focus.filter, keys = clientkeys, buttons = clientbuttons } }, { rule = { class = "URxvt" }, properties = { tag = tags[2][1], size_hints_honor = false } }, { rule = { class = "Chromium" }, properties = { tag = tags[1][1] } }, { rule = { class = "Firefox" }, properties = { tag = tags[1][1] } }, { rule = { class = "Opera" }, properties = { tag = tags[1][1] } }, { rule = { name = "Developer Tools" }, properties = { tag = tags[3][1] } }, } 
2
В моем случае, что происходит, когда клиент впервые создается (с помощью ~ `chrome superuser.com`), его WM_NAME (от xprop) называется« Без названия - Google Chrome », а не то, что мне соответствует (скажем, «Суперпользователь - Google Chrome»), так что правило несколько справедливо не применяется, и через секунду, когда имя в порядке, приложение удивительных правил уже готово. Я подозреваю, что это тоже ваша проблема. Nikana Reklawyks 7 лет назад 0

1 ответ на вопрос

1
AustinMatherne

I managed to work around the issue by targeting the windows role instead of the name. I also made the rules more succinct by using rule_any for the identical browser rules.

awful.rules.rules = { { rule = { }, properties = { border_width = beautiful.border_width, border_color = beautiful.border_normal, focus = awful.client.focus.filter, keys = clientkeys, buttons = clientbuttons } }, { rule = { class = "URxvt" }, properties = { tag = tags[2][1], size_hints_honor = false } }, { rule_any = { class = { "Chromium-browser", "Firefox", "Opera" } }, properties = { tag = tags[1][1] } }, { rule = { class = "Chromium-browser", role = "pop-up" }, properties = { tag = tags[3][1] } } }