Я использую FVWM уже более десяти лет, и некоторое время я беспокоился о том, что оконный менеджер умирает медленной смертью. Я понимаю, что 2.6.0 только что вышел несколько дней назад, и по иронии судьбы именно это напомнило мне поискать замену - хотя новая стабильная версия хороша, это заняло так много времени (4 года между 2.4.20 и 2.6.0 и 2 года между 2.4.19 и 2.4.20), что я все еще не уверен в будущем FVWM.
Таким образом, мне интересно, есть ли более современный оконный менеджер, который имеет следующие свойства (это ключевые вещи, которые мне нравятся в FVWM и которые я хотел бы сохранить):
Фокус следует за мышью без автоматического поднятия. Т.е., если я перетаскиваю мышь в частично закрытое окно, это окно получает фокус, но не выходит вперед.
Несколько виртуальных рабочих столов, между которыми я могу переключаться с помощью клавиатуры, и между которыми я могу перемещать окна.
Клавиша-модификатор + манипулирование окном мыши, которое можно настроить следующим образом:
- щелкните левой кнопкой мыши + Alt + Shift = отправить назад, если передний, в противном случае поднять на передний
- правый клик + alt + shift = развернуть окно по вертикали (размер по горизонтали не изменился)
- средний щелчок + alt + shift = захватить окно и переместить его
- средний аккорд + alt + control + shift = resize (перетащите указатель в сторону или угол и переместите эту сторону или угол)
Для всего этого «щелчок» означает щелчок в любом месте окна, а не только в рамке. Операции перемещения / изменения размера должны начинаться при наведении мыши и заканчиваться при наведении мыши.
Я не использую какую-либо рабочую среду, просто X11.
Ответы:
Я думаю, что fvwm может сделать все это, это довольно настраиваемо в соответствующих отношениях. Вам было трудно убедить его сделать это?
Раньше я использовал fvwm, но в конце концов переключился на sawfish , потому что хотел более удобные программируемые хуки. (Назад, когда я в последний раз использовал fvwm, он был технически завершен по Тьюрингу, но только через
PipeRead
команду и не имел хуков в нужном месте.) Sawfish построен как Emacs, с поверхностью Lisp над скомпилированным ядром. Он поддерживает несколько рабочих столов из коробки. Все, что вы просите, либо работает путем установки нескольких параметров, либо может быть реализовано в несколько строк кода.источник
Sardathrion уже упомянул Awesome WM , но без ссылки на функции, упомянутые в вопросе. Кроме того, я думал, что мог бы поделиться своими собственными взглядами на его использование.
Но сначала о требуемых свойствах:
Да - по умолчанию
Да + -
awesome
фактически переопределяет виртуальные рабочие столы и называет их «тегами» . Это позволяет вам, например:сделать так, чтобы одно окно появлялось на любом количестве тегов одновременно,
сделать любое количество тегов для просмотра одновременно,
связать приложение с определенным тегом, чтобы оно всегда открывалось по этому тегу, даже если оно в данный момент не просматривается (например, откройте браузер в фоновом режиме, не упуская из виду свой терминал или что-либо еще),
определить макет по умолчанию для каждого тега - возможны несколько макетов, включая плавающее («типичное» поведение окна), несколько схем листов , максимизированное (каждое окно максимизируется) и полноэкранное .
Да, все это выполнимо. Вы можете определить действие для любых
mouse button
+modifier keys
комбинаций, в области окна, виджета или глобально. Если у вас возникнут проблемы с определением этого поведения, дайте мне знать, и я вам помогу.Два самых ярких свойства
awesome
- это скорость и гибкость. Отличная производительность объясняется тем, чтоawesome
он построен поверхXcb
библиотеки вместо старойXlib
. (Но так как большинство легких WM быстрые, вам, вероятно, понадобится действительно старое оборудование, чтобы почувствовать преимущества.)Awesome
Написано вC
иlua
. Первое гарантирует, что ядро действительно быстрое, а второе позволяет вам легко взаимодействовать со всеми свойствами вашего рабочего стола. В файлах конфигурации вы можете определить как простые, так и сложные функции, которые ссылаются на все текущее состояние WM, включая свойства текущего активного окна, видимые теги, виджеты и т. Д.Вы можете взглянуть на некоторые скриншоты на удивительной вики . Если вы ищете awesome + Lua на таких сайтах, как Github, вы найдете множество пользовательских настроек и воспользуетесь некоторыми из их улучшений.
источник
Я использую ветку разработки уже около двух лет, AFAIR начиная с 2.6.28, и время от времени испытываю другие WM / DE из любопытства, и пока:
Он не падал ни разу, поэтому fvwm-devel или fvwm-unstable довольно пригодны для использования на рабочем столе. У меня была только одна ошибка с динамическим меню, я не заметил, когда она исчезла.
В буквальном смысле любой другой оконный менеджер, казалось, испытывал недостаток в той или иной функциональности, но я больше всего упускал контекстные сочетания клавиш и условное размещение окон.
Конечно, вы можете выбрать любой «современный» wm и попытаться настроить его в соответствии с вашими потребностями, возможно, обойти некоторые недостающие функции с помощью xbindkeys и / или xdotool, но fvwm уникален, и вы, вероятно, не упомянули некоторые вещи, которые необходимы для ваш рабочий процесс, потому что вы поймете, что они были там, когда они вдруг не будут работать так, как вы ожидаете их в современном оконном менеджере.
Извините, если это звучит несколько высокомерно от кого-то вроде новичка по сравнению с вами, но я так до сих пор это вижу.
Тем не менее, новые WM, которые стоит попробовать, - это kwin (он имеет некоторые интересные функции, такие как вкладки и мозаичные окна и компоновка и вполне настраивается, но я не уверен, насколько он стабилен в данный момент) и compiz, который может работать как отдельное окно. менеджер и имеет несколько действительно интересных плагинов (я бы упомянул «окна групп и вкладок» и «правила окон»), все остальные либо плиточные, либо * блоки, либо разрабатываются для того, чтобы быть как можно более впечатляющими.
источник
Не уверен, что вы рассматриваете что-то вроде KDE, но все ваши потребности доступны в KWin (Kde's WM)
Проверьте http://docs.kde.org/stable/en/kdebase-workspace/kcontrol/windowbehaviour/index.html
Вы можете иметь столько виртуальных рабочих столов, сколько захотите.
Легко настроить с панели управления (или вручную, если вам нужно).
источник
Вы смотрели на Awesome оконный менеджер ? Раньше он работал по умолчанию, но больше нет - см. Комментарий. С веб-страницы:
источник
С некоторой конфигурацией вы можете заставить xfce делать то, что вы хотите.
источник
Почти наверняка вы можете заставить Openbox сделать это:
конфигурация
Отредактируйте файл
~/.config/openbox/rc.xml
следующим образом:фокус
Наручники
RaiseLower может или не может быть то, что вы хотите здесь.
Смотрите Действия для полного списка.
источник
Может быть, взгляните на Pekwm и его файлы конфигурации ключа / мыши . Это легкий и ненавязчивый WM.
источник
Может быть, попробовать Просвещение ? Это современный и очень настраиваемый. Я не знаю, как сделать «отправить вперед, если впереди, иначе поднять на фронт», потому что у него есть условное условие, но другие требования легко настроить.
источник