i3wm плавающие окна (новый выпуск)

Я даже не уверен, что это возможно, но мне любопытно, потому что это было бы полезно.

У меня есть привязка i3 по умолчанию mod+enter который открывает мой терминал. Я хотел бы создать привязку, которая откроет плавающий терминал.

Другими словами, мне нужно выполнить терминатор 2 разными способами, стандартным и плавающим. Я просмотрел документы и просмотрел множество различных конфигов, но я не могу найти никого, кто делает это (и сам не могу понять это).

Какие-либо предложения?

1 ответ

Решение

Добавьте что-то вроде этого в свой ~/.i3/config (или же ~/.config/i3/config):

bindsym Mod+Shift+Enter exec terminator --role=floating
for_window [window_role="^floating$"] floating enable

Первая строка связывает комбинацию клавиш Mod + Shift + Enter, чтобы начать termite с WM_WINDOW_ROLE свойство установлено на "плавающий". По умолчанию WM_WINDOW_ROLE не устанавливается terminator, так что это может быть использовано в качестве критерия для различения нормальных и плавающих окон. Вторая строка скажет i3 включить плавающий режим в любом окне, которое имеет WM_WINDOW_ROLE установить (точно) "плавающий".


Это работает также для некоторых (всех?) Других терминалов на базе vte3, например gnome-terminal или же termite, Другие инструменты могут предоставлять аналогичные параметры командной строки для изменения роли.

Иногда WM_CLASS также можно изменить. В таком случае class придется использовать вместо window_role в конфигурации i3.

Другие вопросы по тегам