LINUX.ORG.RU

It's awesome! ...again

 , , ,


6

1

Кратко:

  • Переполз с SpaceFM на ranger — нет лишних окон, вимовое управление, не нужно отрывать руки от клавиатуры;
  • Темы, иконки и ШГ (да, ШГ; да, не исправил) всё те же;
  • Виджет музыки;
  • Виджет, показывающий статус UPS (так как USB HID и polling, потому и забор инфы по таймеру);
  • Индикатор индикаторов клавиатуры (увы, сигналов для этого дела нет, потому тоже таймер), так как клавиатура у меня задвинута далеко за монитор;
  • Активный клиент в тасклисте сдвигается в сторону рабочей области, свёрнутый становится полупрозрачным и задвигается влево.

Собственно, в этот раз я принёс показать виджет музыки. Киллерфича: работающие слайдеры, лол. Уведомление при смене трека, если вибокс скрыт (с вибоксом оно и не нужно). Изначально уведомления планировалось реализовать показом вибокса со скрытием по таймеру, но таймер, вызванный из другого таймера ведёт себя крайне странно, и бороться с ним у меня просто не хватило терпения. Не работает только смена обложек, так как не реализован фетч обложек; просто не знаю, откуда их брать по Artist/Album.

На старте жрёт 404 мегабайта оперативной памяти (из шестнадцати гигабайт) по причине nut, deluge, tor и всякого ещё.

Конфиги там же.

JB, ты говорил, что тайловые WM все одинаковые?

Вопрос к обладателям трекболов (предлагатели трекпадов, клиторов и прочих планшетов могут смело идти в пешее эротическое путешествие, да): коты, оно сделает мне хорошо?

>>> mutt (1920x1080, 149 Kb)

>>> ranger + neovim (1920x1080, 177 Kb)

>>> Просмотр (1920x1080, 1603 Kb)

★★★★★

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

Ответ на: комментарий от r3lgar

он умеет обращаться по telnet только к mpd, и парсить только его выхлоп

господи, ты руками коннектишься к mpd и парсишь его протокол?

мне было бы проще написать какой-нибудь виджет для mpris(и вообще, возможно, что такой уже есть готовый; кстати, разве нет готового виджета для mpd?)

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

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

Язык у меня меняется мгновенно, так как реализовано через CAPI, а ловля ивента из dbus в сях куда лучше, чем в lua. По таймеру у меня индикаторы индикаторов клавиатуры (то есть caps/num/scroll led), ибо их я так и не нашёл.

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

Связаны

я так и не понял, как гибкость связана с тем, что что-то “не готово”

Те же виджеты (не напанельные) напрочь отсутствуют

В смысле, те, что постоянно торчат на десктопе? Ок, но это не задача WM, и к нему можно при большом желании прикрутить любую штуку с виджетами.

чтобы сделать интересные вещи в ихней панельке, нужно быть чуть ли не колдуном

в xmonad нет панели же. ты можешь поставить любую, которая тебе нравится. есть и такие(в которых можно сделать интересные вещи(taffybar, lemonbuddy))

можно повесить что угодно на какой угодно ивент — в мастере это уже давно

ок

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

господи, ты руками коннектишься к mpd и парсишь его протокол?

Вариантов лучше нет. Есть только вариант с mpc, но во-первых это лишний пакет в системе, во-вторых его выхлоп парсить куда сложнее, а в третьих это быстрее. В моём варианте mpd выплёвывает

Key: Value
либо
ACK [int@int] {} error description
Что парсится легко и приятно.

кстати, разве нет готового виджета для mpd?

Есть, тысячи, и все парсят выхлоп через mpc.

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

По таймеру у меня индикаторы индикаторов клавиатуры (то есть caps/num/scroll led), ибо их я так и не нашёл.

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

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

как гибкость связана с тем, что что-то “не готово”

Трудозатратность.

это не задача WM

Но таки неплохая фича, если она нужна.

прикрутить любую штуку с виджетами

Юниксвей? Аргумент. :3

в xmonad нет панели же

Я считаю xmobar дефолтом. Пусть он и не является частью.

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

смотреть на кейивенты

Мне нужны не кейивенты, а именно состояния лампочек. Так как ивенты могут быть разными (в том числе это может быть kernel panic, уведомление о приходе электронной почты, состояние раскладки клавиатуры…), так что это не подходит.

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

это лишний пакет в системе

кого-то это до сих пор волнует? тем более что он весит примерно нифига

Что парсится легко и приятно.

окей, действительно нормас

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

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

Мне нужны не кейивенты, а именно состояния лампочек

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

Так как ивенты могут быть разными (в том числе это может быть kernel panic, уведомление о приходе электронной почты, состояние раскладки клавиатуры…)

мы точно говорим об одних и тех же ивентах? я говорю об XKeyEvent(3), а ты о чем?

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

Я считаю xmobar дефолтом.

но в дефолтной конфигурации даже и намека нет на статусбар

(одно время юзал xmonad вообще без статусбара; нужная инфа выводилась по кейбиндам на появляющееся для этого окно в центре экрана)

считать какую-то панель дефолтом для хмонада неправильно, ящитаю

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

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

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

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

кого-то это до сих пор волнует? тем более что он весит примерно нифига

В то время curl есть практически в любом дистре искаропки.

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

Ядро умеет мигать ими при kernel panic, некоторый софт умеет ими мигать или просто включать по событию, можно вручную прописать в /sys.

мы точно говорим об одних и тех же ивентах?

Нет. :3 Я говорю об ивентах (событиях) как таковых, а ты только о кейивентах. (=

считать какую-то панель дефолтом для хмонада неправильно, ящитаю

Но совсем без панели уж больно уныло. На крайний случай её можно просто скрыть.

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

Я говорю об ивентах (событиях) как таковых

XEvent(3)?

Ядро умеет мигать ими при kernel panic, некоторый софт умеет ими мигать или просто включать по событию, можно вручную прописать в /sys.

окей тогда да, все плохо

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

XEvent(3)?

Нет, вообще об ивентах. kernel panic — это событие, приход письма — тоже событие, keypress — тоже событие. Они совершенно разного сорта, но все они ялвяются событиями, которые могут менять состояние индикатора (в большинстве случаев через файлы в /sys).

окей тогда да, все плохо

Всё просто отвратительно, так как отловить событие, если его могут послать почти все, кому не лень, просто нереально, особенно если учесть то, что инструмента для этого просто нет как такового, кроме парсинга файлов в /sys вручную.

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

Я уже упомянул об этом. У меня как раз этот набор мышц проблемен.

Ну нагрузка гораздо меньше, чем при работе мышью.

в нём даже есть что-то от геймпада, в частности при игре с его помощью

Вот эту мысль не понял.

Долго привыкал к управлению трекболом?

Тяжело было только первые часы. Преимущества в сравнении с мышью проявили себя к концу первой недели использования.

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

Нет, вообще об ивентах. kernel panic — это событие, приход письма — тоже событие, keypress — тоже событие.

тогда уж define событие

kernel panic – это хорошо, но все же исключительный случай. а в обычной ситуации леды контролируются иксами

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

Что не так в его архитектуре и как вообще его архитектура связана с API его биндингов к Lua?

Почему нельзя просто ему сказать «передай чуваку по этому адресу вот это»? Почему нужно городить целое приложение для того, чтобы отправить один запрос и получить ответ в несколько байт? Биндинги в Lua немного лучше, но немного, настолько немного, что то же самое.

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

Ну нагрузка гораздо меньше, чем при работе мышью.

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

в нём даже есть что-то от геймпада, в частности при игре с его помощью

Вот эту мысль не понял.

Управление в играх трекболом — это что-то среднее между мышью и геймпадом.

Тяжело было только первые часы. Преимущества в сравнении с мышью проявили себя к концу первой недели использования.

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

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

Это удобно. Но мне всё равно кажется, что шар там маловат. У меня пальцы длинные, потому мне чем больше девайс — тем лучше.

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

больше ничего не прибавить

Да прибавить-то есть что, времени на это нет.

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

тогда уж define событие

Терминология зависит от области применения.

kernel panic – это хорошо, но все же исключительный случай

Да, тогда в иксах уже не нужно ничего индицировать, они просто упадут. xD

в обычной ситуации леды контролируются иксами

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

У меня с клавиатуры управляются только num и caps, и то не всегда.

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

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

А ссылки на конфиг ranger уже просили, али нет?

У меня там никаких хитростей:

set preview_images false
set draw_borders false
set vcs_aware true
set confirm_on_delete always
set dirname_in_tabs true
set collapse_preview false
set status_bar_on_top false
set update_title true
set show_hidden true
set column_ratios 1,4,1
set cd_bookmarks true
set unicode_ellipsis true
map dD delete

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

Я уже не раз упомянал моё отношение к перенагрузке большого пальца.

Тред не читала.

То есть оно не требует отточенного до микрона движения?

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

Ну не знаю, к хорошему человеки привыкают быстро (а коты — ещё быстрее), так что тут особенность мышления влияет больше, чем физиология, как мне кажется.

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

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

40мм

Это меньше спичечного коробка.

инфа отсюда

Занятная страница.

Kensington Orbit

Он заставляет делать руку /\ вот так.

чувак говорит

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

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

Тред не читала.

ЛОР. ЛОР никогда не меняется.

Нет, я правша и всегда использовала мышь правой рукой

Убедительно. А с учётом, что я вимер, то было бы круто юзать поинтер левой рукой, чтобы не отвлекаться от навигационных hjkl. :3

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

Так и планирую. Но надо вначале сократить количество претендентов хотя бы до двух.

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

а как же слепая печать и всё такое?

Увы, слепая печать настолько слепая, что одной рукой я печатать не умею (точнее, умею, но крайне медленно). Двумя руками у меня и навигация с клавиатуры, и ввод. Поинтер нужен только в GIMP (если речь о лоликсе), но и там немало хоткеев (ИЧСХ, все двуручные), которые упрощают жизнь.

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

А теперь посмотри, как ему надо скармливать получателя/сообщение. Это просто дичайший 3.14-здец, а не формат. То же касается (почти) все остальные реализации.

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

Выглядит всё вкусно.

На счёт трекболов — польюсь как на десктопе (Logitech Trackman Marble), так и на ноуте (Wireless Trackball). В целом доволен и всё устраивает.

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

Как ему надо скармливать получателя/сообщение? Получатель, путь к объекту, интерфейс, метод, сигнатура, аргументы. В чём проблема?

intelfx ★★★★★
()

Индикатор индикаторов клавиатуры

скрытием по таймеру, но таймер, вызванный из другого таймера

юникс вей, однозначно

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

Что не нравится и почему? Иначе это звучит как «ненужно» без аргументов (что присуще только школьникам (не в обиду оным)).

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

думаю клава с подсветкой

Б-же упаси! Leopold FC900RN/EBP, кейкапы заменены на идущие в комплекте без окошка (только капс- и скролллок, для нумлока замены нет). Потому и индикаторы ледов на панели.

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

Получатель, путь к объекту, интерфейс, метод, сигнатура, аргументы

Почему dbus не может сам сванговать интерфейс и получателя? Почему сам объект при регистрации не передаёт необходимые параметры, в том числе принимаемые методы? Это бы упростило обращение через dbus. У меня нет слов. Это просто 3.14-здец!

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

Индикатор индикаторов клавиатуры

скрытием по таймеру, но таймер, вызванный из другого таймера

юникс вей, однозначно

Щито поделать.

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

Почему dbus не может сам сванговать интерфейс и получателя?

Автоматически определить интерфейс — это я ещё понимаю (хотя в общем случае, очевидно, в разных интерфейсах могут быть одинаковые методы). А как ты предлагаешь автоматически определять получателя?

В любом случае, не «dbus», а «dbus-send». Возьми и напиши свой враппер, который будет это делать. Архитектура самого dbus к твоим хотелкам не имеет никакого отношения.

Почему сам объект при регистрации не передаёт необходимые параметры, в том числе принимаемые методы? Это бы упростило обращение через dbus. У меня нет слов. Это просто 3.14-здец!

Что, простите? Бобёр, выдыхай. Каждый сервис при регистрации передаёт все данные о себе, в т. ч. список своих имён, объектов, интерфейсов и методов с сигнатурами.

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

А как ты предлагаешь автоматически определять получателя?

Я не предлагаю определять получателя автоматически. Вообще, вполне достаточно передавать получателя, сообщение и сигнатуру, остальное, ящитаю, объект должен передавать в dbus при регистрации, и при каждом обращении не придётся кучу всего передавать.

Архитектура самого dbus к твоим хотелкам не имеет никакого отношения.

Да она-то ещё страшнее.

Бобёр, выдыхай. Каждый сервис при регистрации передаёт все данные о себе, в т. ч. список своих имён, объектов, интерфейсов и методов с сигнатурами.

Тогда почему при обращении нужно передавать столько всего, что может быть сванговано автоматически (читай выше)?

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

Почему dbus не может сам сванговать интерфейс и получателя?

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

Ага.

Вообще, вполне достаточно передавать получателя, сообщение и сигнатуру

А сейчас, пардон, что происходит?

Получатель — это peer name плюс object path. Сообщение — это название метода плюс аргументы. Замечу, что интерфейс — это на самом деле часть названия метода.

Тогда почему при обращении нужно передавать столько всего, что может быть сванговано автоматически (читай выше)?

Не может.

Тебе просто кажется, что какие-то из этих сущностей лишние, потому что их больше двух. В то время как на самом деле это просто семантическое разбиение — «получателя» на peer name и object path, а «сообщения» на interface, method и аргументы.

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

GNOME 3

Где ты нашёл сходства с GNOME 3? о_О

с тайлингом. Зачем?

Затем, что тайлинг больше всего пригоден для работы.

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