Pull to refresh

Comments 49

Они же тайловые(фреймовые) разве нет?
А по делу — очень на любителя вещь.

Ну, я не призываю их никого использовать. Просто сравниваю. Однако, вы правы. Если вам легче кликать на всё, то конечно же нужно использовать DE, которые ориентированны под мышь

Для разработчика такой подход хоть и мб болезненным с точки зрения перехода, но в целом сильно упрощает работу с текстом, спустя время использования vim кейбиндингов+тайл менегер уже не задумываешься над тем что ты хочешь сделать, мысли сами преобразуются в действия посредством клавиатуры. Поэтому, в отличии от автора, я все таки призываю попробовать) поплеваться неделю полторы а потом сравнить с тем что было, по моему опыту возвращаться уже не хочется =)
А мне очень понравилось на i3. Сначала я KDE пользовался, но забросил его после выхода бреда под названием KDE4 (сейчас вообще пятые KDE — это просто ад какой-то!), потом перешел на icewm, но у него вечно были проблемы с несколькими мониторами. В итоге остановился на i3. Очень удобно IDE рядом с консолью располагать: в IDE код пишешь, в консоли собираешь:
image
(на работе вообще 27'' монитор 16:9 + 17'' 4:3, там IDE с терминалом намного приятней рядом смотрятся).
Очень здорово, что изначально нет ненужных заголовков и обрамления окон — в icewm эту дрянь приходилось в настройках отключать.
UFO landed and left these words here

А чем 4-5 кеды и плазма не нравятся? Быстрые, простые, гибкие, надёжные

Пробовал и awesome, и i3, но в конце концов остановился на exwm

UFO landed and left these words here
UFO landed and left these words here
не хватает мне этого в i3

Делается через i3-msg 'workspace 7; exec gnome-calculator; workspace 1;'; Переключение на 7й стол, запуск приложения, возврат на 1й

UFO landed and left these words here

Сейчас проверил на том же файрфоксе. Окно открывается там, где был запущен exec, даже если уже прозошло переключение на другой стол. Версия i3 version 4.17.1 (2019-08-30)

UFO landed and left these words here
> файрфокс запускается секунды три
> и нельзя из за этого делать новый
> свитч на другой стол

Запуск программы на нужном столе обязательно активирует (отображает) этот стол? Можно ли запуск программы на нужном столе сделать в фоновом режиме? (и пусть файрфокс хоть 3 часа себе там запускается и не мешает делать запуски на столах остальных)

Конечно. Можете задать правила, где будут запускаться приложения (bspc rule и правило для определенного класса), или же в мануале можно посмотреть на фокус (man bspc | grep focus). Примеры прописаны у меня в конфигурационных файлах на GitHub

Не знаю то ли имеется в виду. Но я люблю чтоб конкретные приложения всегда на определенном рабочем месте запускались. Для примера кусочек из моего конфига:
set $workspace1 "1: Firefox"
assign [class="firefox"] $workspace1


Таким образом фаерфокс всегда откроется на первом столе, с какого бы стола я его не вызвал.

Этот код делает то же самое в bspwm:


bspc monitor -d Desktop Web Terminal Editors
bspc rule -a Firefox desktop=^1

Также можете отметить в коде, нужен ли вам фокус, должно ли оно "липнуть" ко всем рабочим областям (воркспейсам)
Вот пример, как у меня запускается Ranger (с alacritty):


bspc rule -a Alacritty:ranger state=floating follow=on sticky=on
# Летающий режим, фокус включен, липнет ко всем воркспейсам
Как-то так в конфиге. Хром на третий стол летит при запуске и сразу готов принять Пайчарм в соседний таб (чтобы не по половине экрана занимать)
set $WS3 3:WORK
set $WS4 4:TERM
set $WS5 5:FILES

exec --no-startup-id pcmanfm
exec --no-startup-id chromium

assign [class="Chromium"] $ws3
assign [class="jetbrains-pycharm"] $ws3
assign [class="Pcmanfm"] $ws5

for_window [class="Chromium"] move container to workspace $ws3
for_window [class="Chromium"] layout tabbed
for_window [class="jetbrains-pycharm"] move container to workspace $ws3
for_window [class="jetbrains-pycharm"] layout tabbed

Но это работает не только на стадии запуска i3, а всегда. То есть ручками запущеный хром тоже улетит на 3й стол, даже если запускался на другом.

UFO landed and left these words here
тоже без проблем
exec --no-startup-id sakura
exec --no-startup-id sakura -x bc -t bc  # запускаем bc в терминале и даём окну имя bc

assign [class="Sakura" title="bc"] $ws7
assign [class="Sakura"] $ws4

for_window [class="Sakura" title="bc"] move container to workspace $ws7


Я не понял почему иногда нужно прописывать for_window, а иногда хватает только assign, но особо не вникал, пишу оба правила обычно
UFO landed and left these words here
Сейчас попробую набросать, но не уверен, что с фоксом прокатит
exec firefox
exec firefox --new-window https://web.whatsapp.com/

assign [class="firefox"] $ws6

for_window [class="firefox" title="WhatsApp*"] move container to workspace $ws7
for_window [class="firefox"] move container to workspace $ws6



upd: фокс странно открывает вкладки, хотя я указал ему --new-window, но он всё равно открыл Вотсап в первом окне новой вкладкой. И проблема в том, что если открыть Вотсап в основном окне, то оно переедет на другой стол. Надо экспериментировать
Долго мучился с чем-то подобным, используя названия терминалов, заголовки табов в браузере и прочее. Потом случайно узнал, что в командной строке при запуске можно добавить аргумент --class="MyClass", а затем использовать его в конфиге i3.
> firefox
> firefox web.whatsapp.com

Что при этом сделает Файрфокс?
Скажет, что один евоный экземпляр запущен уж?
Или просто откроет в этом первом экземпляре новую вкладку для загрузки вацапа в неё?
В конфиге:
assign [class=«Telegram»] $ws4
Класс приложения смотреть через xprop

Можно привязать конкретные приложения к рабочим столам:
assign [class="Emacs"] 2
и теперь emacs всегда открывется на втором workspace. Для запуска при старте:
exec --no-startup-id emacs

Пользовался i3 но так и не смог полностью победить screen tearing. Перешел на sway с вэйландом — все работает без дополнительных композиторов и даже чувствуется плавнее на глаз.
UFO landed and left these words here
Уже наверное 12 лет использую dwm, без каких-либо патчей на него. Абсолютно все нужды покрывает. Но без tiling WM жизни нет.

Использую bspwm уже достаточно давно. Всем доволен. После gnome — глоток свежего воздуха.

dwm забыли. Лично мне он больше всего из перечисленных понравился. Можно считать что тоже уже сконфигурирован.

А как же xmonad? Больше 10 лет назад это был единственный WM, который я смог настроить на своём ноуте с Intel GPU, чтобы окна правильно располагались на двух мониторах разного разрешения, которые не объединяются в прямоугольную область (1366x768+1280x800).
Пару лет назад увлекся подходом минимализма в софте (suckless.org) и поставил DWM в качестве своего первого Tiling WM. Первый месяц было сложновато — многое пришлось настраивать руками (например звук, уведомления). Но с другой стороны было интересно повозиться. Сейчас когда все настроил под себя и запомнил несколько сочетаний клавиш — получил простую и гибкую систему в которой мне удобно.

На минималистичный браузер surf к сожалению не удалось перейти. Ютюб и некоторые другие сайты в нем жутко тормозят.

Стандартный dmenu не удобен в качестве лаунчера. Вместо него лучше использовать dmenu_recent.
UFO landed and left these words here

Пользуюсь StumpWM, чувствую себя в нём отлично, тем более что он имеет схожий пользовательский опыт с Emacs, которым я уже относительно давно болею.


Из плюсов отмечу:
+ Весьма быстрый
+ Гибкая настройка, вплоть до изменения кода самого WM из конфиг-файла
+ Common Lisp как язык настройки, что позволяет втянуть существующую кодовую базу прямо в WM. Есть у меня даже безумный проект написать небольшой плагин с онлайн-переводчиком, доступным по горячей клавише.
+ Вдохновлён Emacs, соответственно, нацелен на продуктивность и настраиваемость.


Разумеется, есть и минусы:
— Не все функции и хаки задокументированы, но пользователи некоторые из них переоткрывают, поэтому чужие конфиги помогают здорово. А все мы порой страдаем эффективной прокрастинацией а-ля "А настрою-ка я свой WM/редактор/whatever", так что вас впереди ждёт много открытий, если вы начинаете пользоваться StumpWM.
— Common Lisp, который является отдельным языком, который придётся учить, если ещё не знаете.
— Вдохновлён Emacs, поэтому многие вещи могут казаться странными.


Резюмируя: StumpWM как менеджер окон хорош, но на полную он начинает работать в руках людей, которые знают хотя бы один язык из семейства Lisp, со всеми вытекающими: хакинг, метапрограммирование, compile-time computing.

Реквестирую конфиг и список туториалов для возможно более быстрого перехода

К сожалению, туториалов по StumpWM и переходу на него я не могу вспомнить, (кроме небольшого гайда) но это компенсируется относительной простотой использования и качеством документации, которая представлена двумя ресурсами: StumpWM Wiki и StumpWM Manual.


Мануал особенно хорош — благодаря нему я себе, при наличии свободного времени, постоянно что-то новое выхакиваю, к примеру, как-то за полчаса написал простенькую реализацию цветового обозначения заряда батареи, в альтернативу той, что поставляется среди контрибьюторских плагинов. Плагины, кстати, заметно облегчают настройку и с их помощью можно дотянуть до уровня комфортности того же хомячкового XFCE, которым я раньше (до просветления подаренного Лиспом до желания попробовать более продуктивные инструменты) счастливо пользовался.


Но разумеется, как и в случае с Emacs, лучший способ хорошо кастомизировать свой WM — скоммуниз позаимствовать у других кусочки, которые понравятся. И здесь Вики уже неплохо помогает, приводя список файлов конфигурации, которые их авторы выложили на GitHub (здесь с моими добавлениями и мнениями):



Также, поскольку для настройки используется Common Lisp, могут пригодиться курительные мануалы и туториалы по этому богатому языку, которые можно найти в боковом меню сабреддита, посвящённого Common Lisp — r/Common_Lisp.


Здесь казалось бы, отличный момент для меня поделиться своим конфигом, который содержит неплохое количество озарений и ещё больше еретических костылей, но я его выложу только через этак полгода, когда польностью перейду на максимально лисповую экосистему (GuixSD + StumpWM + Emacs + Konqueror/Next), приведу все конфиги в порядок, а заодно и статью на Хабр в процессе напишу, быть может.


А пока — на здоровье! Надеюсь, вам со StumpWM будет так же комфортно, как и мне.

Долгое время пользовался awesome wm, сейчас на свежеустановленной системе пробую KDE в связке с таким скриптом для kwin. В целом нравится, поведение после переназначения хоткеев почти повторяет awesome, за исключением нескольких мелочей и недоработок, но зато доступны все возможности KDE.

UFO landed and left these words here

Я лично всё еще предпочту Awesome на маломощном железе, а в целом просто захотелось bells & whistles от KDE. Всё более интегрированно, да и настраивать голый wm было бы лень.


Знаю, что еще можно подменить KWin на awesome. Последний раз так пробовал делать пару лет назад с xmonad, оно работало, но были мелкие и не очень проблемы/недоработки/несостыковки, ломавшие ощущение полностью интегрированной среды рабочего стола.

А в чём преимущество тайловых вм перед нетайловыми?
В автоматическом тайлинге?
Я имею в виду сравнение, в котором не участвует легковесность, а сравнивается только сам интерфейс.
Без мыши-то я и в КДЕ работаю.

как правило в том, что необходимые окна на виду. например браузер + терминал + ещё что-то.


в нетайловом опычно предпочитают переключаться между окнами, которые друг друга перекрывают.

Зависит от размера экрана. Если экран достаточно большой, то люди либо используют win+стрелку либо мышкой сдвигают окно к краю и добиваются того же результата. А если экран недостаточно большой — разврачивают окна на весь экран и переключаются по alt-tab.
Если экран достаточно большой, то люди либо используют win+стрелку либо мышкой сдвигают окно к краю и добиваются того же результата.

Какого именно «того же»? Тайловые менеджеры дают возможность сделать любую разумную раскладку, например по горизонтали браузер + IDE + веркальный столбец из терминала и мессенджера. Тут скорее вопрос обратный — если всё равно пользоваться только раскладкой окон такого рода, ну и фулскрином, то зачем брать нетайловый ВМ?
Лично я остановился на awesome, единственное что действительно напрягает это конфиги виджетов для топ бара, иногда приходится повозиться, bspwm хотел попробоватьm, но по какой-то причине не завелось, но мб в будущем

Неожиданно нашёл довольно неплохо работающий аналог DWM для Windows-10


Называется workspacer https://github.com/rickbutton/workspacer


На удивление работает без проблем и имеет конфиг для конфигурации.

Only those users with full accounts are able to leave comments. Log in, please.