
В предыдущей заметке я написал про организацию тайлинга в Windows, теперь же будет короткая заметка про еще одну маленькую доработку моего верного FVWM.
В данном случае пример показан на моей рабочей машине, так как я за ней провожу большую часть своих будних дней.
В принципе, в FVWM уже есть встроенный механизм тайлинга, который вызывается командой FvwmRearrange. Данная команда, как можно убедиться из man-страницы, умеет так ресайзить окна, чтобы они укладывались в равномерную сетку заданной размерности. Это неплохо работает, когда надо разбить окна в конфигурации "два столбца", хотя мне уже давно стало привычным сразу бросать окно в нужный угол с помощью давно прописанных хоткеев. Это может быть и не так быстро, как автоматический тайлинг, но стало привычным и больших проблем не вызывает. Тем более виртуальные рабочие столы в FVWM работают куда лучше их аналогов в Windows, а это значит, что я легко распределяю окна по рабочим пространствам, группируя их по задачам.
Но, как я уже писал, самой удобной формой раскладки для большинства случаев (кроме, наверное, терминалов), для меня является раскладка 2:1. И вот эта раскладка до недавнего времени у меня реализована не была. Но начав заниматься тайлингом на домашней машине, я решил, что мне надо сделать подобное и на работе. Как и прежде, заморачиваться с автоматической организацией окон я не стал, ограничившись, во-первых, выделением хоткеев на функции "отправить в такой то угол/сторону экрана", во-вторых, ограничился лишь вариантом "широкое окно слева", в-третьих, что самое важное, наконец то вынес все размеры окон в переменные, которые инициализируются специальным скриптом, исходя из заданного разрешения экрана, высоты щели между окнами и нижним краем экрана (используется для переключения рабочих столов колесиком мышки. Просто уводишь мышь вниз до упора и крутишь колесе. Ну и заодно меню можно вызвать) и ширины панели.
В первом варианте это все было захардкожено в конфиге, но у меня данная конфигурация WM универсальна для всех машин, а значит ей нужна гибкость.