LINUX.ORG.RU

Dwm и свистелки

 , ,


2

1

Прошло прилично времени. Что-то добавлено, что-то перепилено.

На панель навешаны разные события мыши (так, например, символ в левом верхнем углу [ x ] — левая кнопка: F11 для firefox-а, средняя: закрыть окно, правая: удалить пустые теги, колесико: добавить-убрать окна в master и т.д). Окна перетаскиваются средней кнопкой. Это к вопросу о том, что в тайлинге якобы неудобно мышевозить.

Есть свистоперделок чутка — pijulius/picom ага, чтоб не скучно было.

Скринкаст (за качество извиняюсь, не OBS-ом писано, лень мне в нем разбираться).

В остальном: гента, vifm, bottom (вместо speedometer, который всё), alacritty, tmux, zsh.

>>> Просмотр (1600x900, 306 Kb)

★★★★

Проверено: hobbit ()

Что используется для отображения картинок в vifm в alacritty? Я установил alacritty-sixel, т.к. остально не работало.

Какие патчи для dwm?

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

В vifm ueberzug.

По патчам:

dwm-activetagindicatorbar-6.2.diff
dwm-attachdirection-6.2.diff
dwm-autostart-20200610-cb3f58a.diff
dwm-bar-height-6.2.diff
dwm-cfacts-6.2-1.diff
dwm-colorbar-6.2.diff
dwm-fakefullscreen-20170508-ceac8c9.diff
dwm-floatrules-6.2.diff
dwm-hide_vacant_tags-6.2.diff
dwm-moveresize-20200609-46c8838.diff
dwm-movestack-6.1.diff
dwm-namedscratchpads-6.2.diff
dwm-noborderfloatingfix-6.2.diff
dwm-nomonocleborders-20190607-cb3f58a.diff
dwm-pertag-6.2.diff
dwm-reorganizetags-6.2.diff
dwm-resizecorners-6.2.diff
dwm-statusbutton-20180524-c8e9479.diff
dwm-switchcol-6.1.diff
dwm-6.0-winview.diff
dwm-xtile-6.2.diff
dwm-xtile-gaps-6.2.diff

Плюс gapless grid и shiftview встроены в код. На основе shiftview сделана функция для отображения смежных тегов по принципу: нажал кнопку влево - объединилсь два ближайших тега слева, нажал еще - три ближайших слева и т.д. Ну и еще всякое правлено руками: в overview всех окон автоматом подрубается gapless grid, scratchpad с vifm выезжает снизу (это пришлось отдельно showhide править), и что-то еще по мелочи, всего не упомню, в чем ковырялся.

gill_beits ★★★★
() автор топика
Последнее исправление: gill_beits (всего исправлений: 2)
Ответ на: комментарий от gill_beits

Круто, спасибо! Я пока обхожусь 2-3 патчами. ueberzug не смог заставить работать что-то, возможно, плохо старался. sixel показался более простым решением.

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

Там с ueberzug драма. Автор обиделся и всех послал. Может, скоро все на sixel перейдем.

gill_beits ★★★★
() автор топика

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

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

Как по мне прикол тайлинга не в распределении места на экране (это просто бонус), а в легкости управления с клавиатуры. Т.е. floating wm-ы для тех, кто больше любит помышевозить, тайлинги, для любителей поклавиатурить. При этом и там и там функции схожи, главное, на что больше упор.

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

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

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

в кедах в основном все с клавы, ты прав. но браузер клавиатуру плохо понимает же. Ладно там еще фокус на браузер передать, потом сочетаниями клавиш добраться до нужной кнопки, тоже ладно. Но некоторые вещи предполагают мышевозить. Хорошо было бы вообще отказаться от мышки. Хотя мышь у меня очень удобная, просто не всегда удобно, когда очень требуется на нее перекидывать щупальца свои.

Поэтому я и отметил что штука для ноутов, т.к. там есть тачпэд считай под рукой и тебе не нужно убирать руку далеко вправо за мышкой, можно подхватить большим пальцем. На сплит клаву я еще не расточился, может как соберу и на пекарне попробую. На пекарне просто порой занимаю позу gravity-zero и откидываюсь на кресле, а руку на мышь где я просто листаю какую-нибудь статью, как пример. Ну и одной рукой в таком положении отдыха фигней пострадать проще все-таки.

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

NorthernBlow
()
Последнее исправление: NorthernBlow (всего исправлений: 4)
Ответ на: комментарий от NorthernBlow

браузер клавиатуру плохо понимает же.

А ты пробовал vimium? Три года на тайлинге и все три года юзаю его. Единственное, что на нем работает не очень - выделение текста (visual mode).

Ну и одной рукой в таком положении отдыха фигней пострадать проще все-таки.

Не скажу за другие тайловые wm-ы, но в dwm панель можно настроить так, чтобы нажатие на ее участки делало то же, что и клавиатурные комбинации (т.е. нажимаешь, например, левой кнопкой на заголовок окна на панели и ресайзишь окно, на статусную строку - и переходишь в overview). На почилить за чаем вполне хватит.

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

Отлично и в статике и в динамике!

LINUX-ORG-RU ★★★★★
()

Вау! Это просто великолепный dwm. Крайне сильно реквестирую конфиги picom и dwm. И как ты сделал скратчпады?

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

А скратчапады — это просто патч namedscratchpads. Эффект слайдинга происходит от того, что функция showhide в dwm не переключает рабочие столы, а на деле просто прячет окна по четырем основным направлениям (по дефолту влево). Picom только анимирует это поведение. Чтобы заставить окна «уезжать» в другую сторону достаточно исправить строку внутри showhide:

XMoveWindow(dpy, c->win, c->x, HEIGHT(c) * -2);

И задать другое направление. Для namedscratchpads можно даже задать направление появления/скрытия для каждого скратчпада в отдельности, указав scratchkey нужного скратчпада.

if (c->scratchkey == 'v') {
    showhide(c->snext);
    XMoveWindow(dpy, c->win, c->x, HEIGHT(c) * 3);
	}
gill_beits ★★★★
() автор топика

годно +1, про statusbutton не знал)) пойду заузаю тоже =)

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

Мне наоборот на десктопе тайлинг кажется более удобным, чем на ноуте, ибо на ноуте 2 окна обычно уже не влезают по размеру, если это что-то большое (thunderbird, например, и ещё какая-нибудь программа, или IDE).

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

В браузере использую trydactil, в нём можно даже textarea редактировать в vim (правда редактирование у меня часто отваливается почему-то, поэтому прекратил пока пользоваться).

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

Спасибо! Да там все отключено просто, чтоб только три графика осталось: тыц.

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

Пользовался(юсь) только dwm и никак не пойму, что такое эти скратчпады и для чего?

В целом симпатично, я одно время насмотревшись всяких скринов сидел с гапсами и скруглениями, но потом убрал эти излишества - просто жирные рамки, надоели просвечивающиеся обои)

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

Скратчпады — это штука вроде yakuake из кед, дроп даун терминал. Только помимо терминала туда вообще можно любое приложение засунуть (хоть гимп, хоть браузер), и располагаться оно может где угодно (в углу, в центре экрана и т.д.). Удобно, когда нужно выполнить одну-две комманды, не занимая и не переключаясь на другое рабочее место.

gill_beits ★★★★
() автор топика

Круто, смотрится красиво.

Только я использую такие патчи - "".
И gapps - 0.
И vimfm ушел в утиль, когда плотно взялся за NNN.
И панель, панели нет-с.
И это, все операции с окнами я оставил на DWM, а твои хотелки явно попадают под i3/Sway.
И Gentoo заменил на Crux.

Roy-Batty
()

А тайловый WM, но с глобальным меню, как в макоси, бывает? Было бы интересно, мне кажется.

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

смысла нет.

Либо автостарт с разбрасыванием по столам, либо dmenu. Быстрее ничего нет.

И да, многие просто биндят свои любимые программы на сочетание.

Если хочется извращений, рекомендую смотреть в сторону Xmonad и интеграции его в DE.

Roy-Batty
()
Последнее исправление: Roy-Batty (всего исправлений: 2)
Ответ на: комментарий от PlaQ

Прозрачность. Терминалы и, допустим, Emacs. Ну и всё, что поддерживает прозрачность (всякие dunst).

Roy-Batty
()

Посмотрел конфиги на github. Странно настроен Vim, xorg. )))

Roy-Batty
()

У меня от анимации в скринкасте чуть глаза не вытекли. Как так жить можно?

serg002 ★★★
()

Неплохо для тайлинга. DWM композитный и с анимациями по дефолту, или всё дело в патчах?

kirill_rrr ★★★★★
()
Ответ на: комментарий от Roy-Batty

Либо автостарт с разбрасыванием по столам, либо dmenu. Быстрее ничего нет.
И да, многие просто биндят свои любимые программы на сочетание.

Ты ведь это про запуск самих программ, да? Глобальное меню — это немного про другое.

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

Да пробовал я поделку в Unity. Вот только покажи мне задачи, где это применимо в WM. И я скромно умолчу о Dbus.

Roy-Batty
()
Ответ на: комментарий от gill_beits

Не попадался патч, который циклит несколько тегов? Как cyclelayouts, только чтобы можно было указать, сколько тегов зацикливать

serg002 ★★★
()
Ответ на: комментарий от Roy-Batty

И это, все операции с окнами я оставил на DWM, а твои хотелки явно попадают под i3/Sway

Ты не понимаешь, о чём говоришь

И Gentoo заменил на Crux.

Расскажи о своих кейсах. Если на локалхосте посидеть попейсать на лоре, тогда подойдет хоть crux

serg002 ★★★
()
Последнее исправление: serg002 (всего исправлений: 1)
Ответ на: комментарий от kirill_rrr

DWM композитный и с анимациями по дефолту, или всё дело в патчах?

Это pijulius/picom.

Ну, а про управление направлением скрытия окон я выше написал про функцию showhide.

Получается, что часть настраивается через picom, часть в dwm.

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

патч, который циклит несколько тегов

В смысле - выбрать несколько тегов за раз, а потом двигать это выделение влево-вправо по тегам?

Так вроде обычный shiftview с этим справляется? Или ты о чем-то другом?

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

Сyclelayouts По MODKEY-tab переключается на предыдущий открытый тег. Т.е, если я стою на 2 теге, а потом переключился на 9, то если я нажимаю MODKEY-tab - я попадаю на 2 тег, если еще раз нажимаю, то попадаю опять на 9 тег. Т.е по сути зацикливается два тега. Хотелось бы зацикливать 3 или более тегов. Очень удобно для разработки. Есть броузер, есть редактор и управлялка проектом. Между ними быстро переключаться очень удобно было бы

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

Нет, такого патча не знаю, наиболее близко, как мне кажется, shiftviewclients, чтобы переключаться циклом между активными тегами, минуя пустые. Но было бы неплохо, да.

gill_beits ★★★★
() автор топика

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

Сам awesomщик, но этот ваш dwm тоже штучка неплохая)

piyavking ★★★★★
()
Последнее исправление: piyavking (всего исправлений: 1)
Ответ на: комментарий от emorozov

ну в оконных режимах частично видно же, а тут постоянно все закрыто.

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

ваш dwm тоже штучка неплохая

Она ровно до того момента неплохая, пока ты не захочешь что-то свое туда добавить. А это невозможно, без полного анализа кода. В отличие от awesome, который спроектирован как библиотека, которая полностью документирована. Тебе достаточно жонглировать функциями этой библиотеки и всё будет работать

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

В своё время, awesome подзадолбал постоянными сменами своего API, после каждого обновления приходилось переписывать конфиг.

Со временем понял, что той функциональности, что есть в dwm (±1-2 патча) вполне достаточно, и добавлять ничего не надо.

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