LINUX.ORG.RU

awesome - настроить тайлинг

 , ,


0

1

Очень нравится режим fullscreen, например для браузера. Хочется, чтобы когда по super-enter открываешь терминал, он бы сразу тайлился с браузером - допустим и браузер и терминал сразу по пол-экрана становились бы. Сейчас хоть общёлкай режимы тайлинга, пока руками не убёрешь с окна браузера fullscreen, оно про тайлинг забывает. В какую сторону крутить? Или я вообще хочу странного и эту задачу надо как-то иначе решать?

★★★★

Запускать все изначально в тайле, а на браузере жать mod + f это не то?

Попробуй еще с браузера снять признак floating. Ctrl + Mod + Space по дефолту, либо в конфиге настроить.

frunobulax ★★
()
Последнее исправление: frunobulax (всего исправлений: 1)

Можно, нужно писать правило. Ты можешь менять layout при нахождении определенного окна в определенном теге. Либо ты можешь при смене layout, запускать терминал в этом теге. https://awesomewm.org/doc/api/libraries/awful.layout.html

Или ты можешь взять https://github.com/xinhaoyuan/layout-machi, и создать свою раскладку, какую тебе хочется.

shpinog ★★★
()
Последнее исправление: shpinog (всего исправлений: 1)

Плюсую первый комментарий. Вы что-то делаете не так с тайлингом. Вот у меня есть тег с layout’ом awful.layout.suit.tile, вполне себе обычный и самый популярный layout. В нём при наличии одного клиента, например, браузера, тот будет растянут на всё доступное пространство, кроме панели. С layout’ом awful.layout.suit.max браузер будет выглядеть так же. Но когда появится новый клиент, например, терминал, то в случае tile терминал появится справа и займёт 50% экранного пространства, как вы и хотите в своём вопросе, а в случае max терминал перекроет браузер и займёт то пространство, которое раньше занимал браузер, и между ними надо будет переключаться туда-обратно.

Есть ещё layout awful.layout.suit.max.fullscreen, но я его не люблю из-за того, что клиенты в нём перекрывают панель, и пользы от него немного, т.к. всегда можно перевести нужный клиент клиент в fullscreen по Mod4 + f, и при этом даже иметь возможность дальше работать с остальными floating/tiling/maximized клиентами как раньше.

Описанное мною работает вполне себе из коробки и является дефолтом, только надо убедиться, что текущий layout – это не awful.layout.suit.floating, и что нужный клиент тоже не имеет атрибутов floating (по дефолту Mod4 + Control + space переключает это) и maximized (см. дальше).

Ещё есть Mod4 + m, который даёт клиенту атрибут maximized. Тогда клиент будет развёрнут так же, как при layout’е max (или tile при наличии единственного клиента), вне зависимости от того, какой layout сейчас активен, есть ли другие клиенты и так далее. Работает даже для floating клиентов и floating layout. Я пользуюсь этим изредка, когда нужно по-быстрому развернуть маленькое окно, что-то в нём сделать, и вернуть как было, дабы не терять размещение остальных клиентов.

Ещё приведу свой юзкейс для примера: первый тег – tile. Второй – max. На первом обычно терминал и иногда всякое разное, на втором – всегда браузер и редко что-то ещё. Окон браузера на втором теге может быть больше одного, я переключаюсь между ними как между вкладками и лишь изредка переключаю layout на tile. Когда мне нужен терминал, я жму Mod4 + Control + 1 либо кликаю ПКМ на единичку в панели, и тогда на экране появляется содержание обоих тегов, при этом layout tile берёт верх над max и клиенты начинают тайлиться. Недостаток – если на втором теге не одно окно браузера, то тайлятся все окна сразу, но лишние можно свернуть или переместить на другой тег, а если их слишком много, то проще временно переместить нужное окно на первый тегг и сидеть только на нём.

xenith
()
Последнее исправление: xenith (всего исправлений: 1)
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.