LINUX.ORG.RU

Xmonad? Awesome!

 ,


5

2

Решил тоже выложить свой скриншот. Давно пользуюсь различными tilling wm, хотя не привязан к ним, пользуюсь скорее из-за конфигурируемости. Но после перехода на двухмониторную конфигурацию я понял, что единственным работопригодным (для меня) WM является xmonad, ввиду своей парадигмы работы с двумя и более мониторами. В xmonad каждый монитор представляет из себя viewport, который отображает какой-либо workspace из общего пула, в то время как всякие dwm, awesome создают на каждый монитор абсолютно независимые наборы воркспейсов. После некоторого времени использования xmonad, я всё же решил отказаться от него ввиду моего неосилятора haskell, и какой то странной работы с fullscreen приложениями (возможно это тоже мой неосилятор), решил запилить всё что мне нравится в xmonad для awesome. Так родились два github репозитория:

  • https://github.com/paul-axe/xmonadify - реализация двухмониторной модели поведения как в xmonad. Сделано на диких граблях, который подсмотрел в tyrannical.
  • https://github.com/paul-axe/AWNS - Names Scratchpads для awesome. Делал на основе каких то старых модулей для scratchpad. На скриншоте Deadbeef как раз показывается/скрывается через этот модуль.

Во всём этом есть куча багов, которые пока лень править, так что если кто-то захочет использовать, то на свой страх и риск.

Кроме того запилил Emacs-like кейбиндинги. В итоге получилось что-то очень похожее по функционалу на то что раньше было в xmonad.

Финальный конфиг можно посмотреть здесь: https://github.com/paul-axe/awesome-config

>>> Просмотр (3840x1080, 539 Kb)



Проверено: JB ()
Последнее исправление: JB (всего исправлений: 2)

каждый монитор представляет из себя viewport, который отображает какой-либо workspace из общего пула

У меня так i3 работает искаропки, чяднт?

Aesdana
()

Интересно, а как у тебя панель стала в 30px, при том, что в конфиге дефолт?

mywibox[s] = awful.wibox({ position = "top", screen = s })
по-дефолту, кажется, 20px или меньше?

Иконка Firefox размазана, либо рисовать-подгонять самому, либо играться с высотой панели, которая должна быть стандартная 16, 18, 20, 22, 24px и т.д.

vim
()
Ответ на: комментарий от Aesdana

Используешь i3? i3 для меня недостаточно конфигурируем, и поведение переключения между воркспейсами немного странное. Если воркспейс виден на другом мониторе, то переключение на него не перенесёт его на активный монитор, а сделает активным монитор, на котором этот воркспейс виден.

ki11obyte
() автор топика
Ответ на: комментарий от vim

Панелька сама меняет размер под размер шрифта. Насчёт иконок - они мне вообще не нужны, надо бы выпилить.

ki11obyte
() автор топика
Ответ на: комментарий от ki11obyte

надо бы выпилить.

в theme.lua:

theme.tasklist_disable_icon = true

vim
()
Ответ на: комментарий от Aesdana

Я имел ввиду глобальное поведение, а не юзерские кейбиндинги. В любом случае, скрэтчпад на i3 реализован как то уж совсем странно. И текстовый конфиг уже кажется слишком кастрированным

ki11obyte
() автор топика

Неплохо, но работать еще есть куда

dvrts ★★★
()
Ответ на: комментарий от thriller

Править что-то глубже Lua мне ещё ни разу не приходилось, так что не уверен когда оно мне понадобится (=

Та память мне кстати уже давно не нужна, валяется без дела.

ki11obyte
() автор топика

А я в свое время пытался из xmonad сделать ion3. Сделал почти все, что хотел, но вернулся на ion3 (а ныне перешел на notion). Друг долгое время пользовался моим конфигом, но в итоге перепилил его под динамику, убрав костыли для статики.

andreyu ★★★★★
()

Мои прогнозы об ATаке воплотились куда быстрее ожидаемого, что является совершенно НЕДОПУСТИМЫМ СОСТОЯНИЕМ. Алсо, как ты успел скрин снять с высаженной в ноль батареей?

MiniRoboDancer ★☆
()

А что такое эти ваши модные скретчпады, что все их себе впиливают? Когда-то пытался понять, что это, читал разные описания, всё равно не понял, что это и зачем оно может быть нужно.

devsdc ★★
()
Ответ на: комментарий от devsdc

Scratchpad это выпадающее (необязательно) как quake-терминал приложение, необязательно терминал, есть описание на русском, возможно не попадалось тебе: http://awesome.naquadah.org/wiki/Scratchpad_manager/ru

Короче задаешь приложение, место появления, размеры и т.д., отличие от обычного вызова приложения в том, что при закрытии (скрытии) скретчпада - оно не пропадает, продолжает работать.

Сомнительной нужности.

vim
()
Ответ на: комментарий от MiniRoboDancer

Снято на стационарном компе. Виджет не выпиливал, ибо на ноуте тем же конфигом пользуюсь.

ki11obyte
() автор топика
Ответ на: комментарий от devsdc

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

ki11obyte
() автор топика
Ответ на: комментарий от devsdc

А что такое эти ваши модные скретчпады, что все их себе впиливают?

Отвечу на вторую часть вопроса.

Полно: Впиливают потому что ошибочно думают, что у них столько важных и полезных windows, что их надо прямо-таки manag'ить. Заводят модный WM, воркспейс на вьюпорте сидит и монитором погоняет. Мучаются немного, а потом осознают, что все, что им в этом window management'е надо — «дай мне нужное окно, сейчас и быстро!». Scratchpad позволяет им вернуть нужное им поведение, но продолжать фапать на всю ту мощь, что у них есть в кровью и потом пропатченном WM. Хотя для их задач им нужен window management на уровне позапрошлогодних флагманов ведроида и айоси.

Коротко: потому что «одно приложение = один монитор» им хватило бы, мощь и гибкость тайлинговых WM им нафиг не уперлась, но понты уже эрегированы, а пользоваться десктопом как-то хочется.

t184256 ★★★★★
()

Приятно смотрится.

Amet13 ★★★★★
()
Ответ на: комментарий от t184256

На самом деле есть идея попробовать реализовать необходимый функционал (расположение окон, скрэтчпады и даже viewport) через EWMH на каком-нибудь openbox. Как минимум ради эксперимента, ибо не уверен что это будет юзабельно. По поводу «понтов» - я уже как то создавал топик по поводу неюзабельности стэковых WM на мультимониторной конфигурации, собственно это меня и удерживает на тайловых WM.

ki11obyte
() автор топика
Ответ на: комментарий от ki11obyte

Да, на словах все у тайлинга все хорошо, гибко и позарез нужно, только вот на деле у тебя два окна «на весь монитор».

t184256 ★★★★★
()
Ответ на: комментарий от ki11obyte

На самом деле есть идея попробовать реализовать необходимый функционал (расположение окон, скрэтчпады и даже viewport) через EWMH на каком-нибудь openbox.

Легко. Тот же скратчпад делается в несколько строк с wmctrl и xdotool (правда, если нужно как в ионе с табами или вложенными фреймами, то облом). Тайлинг тоже через wmctrl делается. Даже динамический можно замутить: при поднятии окна пройтись по стеку и перехерачить геометрию. Вообще, всё что нужно для «крутого» управления окнами - это доступ к стеку, ну и конечно wm, не забивающий на стандарты.

Hjorn
()
Ответ на: комментарий от ki11obyte

Правда, так ли нужны все эти перделки, большой вопрос.

Hjorn
()
Ответ на: комментарий от Hjorn

Ну xdotool уж слишком костыли имхо. Хотя обычного EWMH должно хватить. Проблема в том что viewport по идеологии противоречит ewmh, хотя не уверен будет ли это плодить проблемы

ki11obyte
() автор топика
Ответ на: комментарий от t184256

Мучаются немного, а потом осознают, что все, что им в этом window management'е надо — «дай мне нужное окно, сейчас и быстро!»

Точно. Чаще всего нужен просто быстрый доступ к окну по хоткею. Банальная закладка. Забавно, что только в кедах это есть из коробки (повесить хоткей на окно). Все остальные крутяшки изощряются с тегами и скратчпадами, а такую простую вещь не дают. Можно конечно сделать 1 окно = 1 воркспейс, но это не всегда удобно.

Hjorn
()
Ответ на: комментарий от Hjorn

Ну ещё по этому же хоткею прятать (= Вообще скучаю по скрэтчпадам в ion3, где они представляли из себя полноценный воркспейс, который можно разбить как надо и разложить туда нужные окна.

ki11obyte
() автор топика
Ответ на: комментарий от ki11obyte

Да, ионовский скратчпад хотеть! Кстати, в ионе был и bookmarks.lua для закладок, правда ограниченный и неудобный.

Hjorn
()
Ответ на: комментарий от ki11obyte

идея попробовать реализовать необходимый функционал (расположение окон, скрэтчпады и даже viewport) через EWMH на каком-нибудь openbox

Решил переизобрести pytyle?

thriller ★★
()
Ответ на: комментарий от ki11obyte

ok, всегда пожалуйста, отпишитесь о результатах сравнения, если не трудно

LiBer ★★★
()
Ответ на: комментарий от LiBer

Пробовал shifty. Штука интересная, но мне её функционал оказался попросту ненужным. На основе shifty был построен tyrannical, в котором как раз были зачатки чего-то похожего на то что сделал я.

ki11obyte
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.