Сайт | Скачать | Видео | Wiki

Автор Тема: JWM. Автообновление меню  (Прочитано 9501 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн sfs

  • Администратор
  • Ветеран
  • ****
  • Сообщений: 33997
  • Репутация: +231/-0
  • Автор темы
    • PuppyRus-A
JWM. Автообновление меню
« : 23 Сентябрь 2013, 11:21:48 »
Варианты :
Методики применимы в любом линукс
1. В аттаче (jwn-xdgmenu + xdotools) 9a
2. В ~/.jwmrc-tray прописать вместо jwm-menu-ref -> PupMenu или xfce-appfinder или synapse
3. В ~/.jwmrc-tray прописать вместо jwm-menu-ref -> dmenu-launch
4. В аттаче 9d. Другой jwn-xdgmenu (дописывает расширения иконок, не требует либы gnome-menus, есть параметр m - высота меню) + menu-dmn (демон на sh обновляющий меню; пока сыроват)
5. openbox-menu -f jwm (демоном + демон menu-cache)
6. дописать в fixmenus  menu-icon-fix -  костыль, изменяет  
Код
<item label="Leafpad - editor" icon="leafpad">
<item label="Leafpad - editor" icon="/usr/share/pixmaps/leafpad.xpm">

Альтернативные построители меню

1 2 3 , возможно, на слабых Пк будут тормозить при открытии меню. Не так часто туда и лазают...
Костыльность сопоставима с fixmenus. Зато без демонов...

4 - пожалуй, оптимально. Обновит меню при любых изменениях (pfsload, pacman)
5 - тяжеловато для jwm и пока глючит
6 оптимально добавить к menu-dmn
« Последнее редактирование: 29 Август 2014, 10:13:00 от sfs »

Оффлайн RoDoN

  • Модератор
  • Ветеран
  • ****
  • Сообщений: 6283
  • Репутация: +141/-0
Re:JWM. Автообновление меню
« Ответ #1 : 23 Сентябрь 2013, 12:58:59 »
п.4 расширение .png дописывает, а .xpm - нет, точнее вместо .xpm пишет .png, но даже это + демон обновляющий меню уже ощутимый прогресс.
« Последнее редактирование: 23 Сентябрь 2013, 13:01:49 от RoDoN »
Lenovo G500 (i3-3110M, 8 Гб, Intel + Radeon HD 8570)
PRA 16.12 JWM, Runtu 22.04 x64 XFCE

Оффлайн sfs

  • Администратор
  • Ветеран
  • ****
  • Сообщений: 33997
  • Репутация: +231/-0
  • Автор темы
    • PuppyRus-A
Re:JWM. Автообновление меню
« Ответ #2 : 23 Сентябрь 2013, 13:10:13 »
п.4 расширение .png дописывает, а .xpm - нет,
xpm - вроде, только в пупи. Главное - чтобы из репы без правок ставить. Надо еще меню под стандарт перепахать.
Оптимально под lxmenu-data
Исходники есть. Может, geekless поможет...
демон обновляющий меню уже ощутимый прогресс.
Надо это только для pacman. И то, если найти в его конфиге место для прописки fixmenus после установки...
Демон - пока голая идея. Надо допиливать обработку повторного запуска и т.п.
http://habrahabr.ru/post/151771/  
http://www.linux.org.ru/forum/admin/682819
http://dj7.dyndns.org/shablon-demona-na-bash/#.Ujw5e7N5OPI
В AUR есть daemontools , dmon - скопмилил, но запустить не осилил
« Последнее редактирование: 23 Сентябрь 2013, 13:12:12 от sfs »

Оффлайн sfs

  • Администратор
  • Ветеран
  • ****
  • Сообщений: 33997
  • Репутация: +231/-0
  • Автор темы
    • PuppyRus-A
Re:JWM. Автообновление меню
« Ответ #3 : 23 Сентябрь 2013, 18:20:49 »
Демон - пока голая идея. Надо допиливать обработку повторного запуска и т.п.
Доделал перезалил
Посмотрел исходник jwm-xdgmenu. Упоминание .xpm и даже .jpg есть. У меня тоже подставляет вместо .xpm ->.png

Оффлайн sfs

  • Администратор
  • Ветеран
  • ****
  • Сообщений: 33997
  • Репутация: +231/-0
  • Автор темы
    • PuppyRus-A
Re:JWM. Автообновление меню
« Ответ #4 : 04 Ноябрь 2013, 22:21:49 »
Добавил в п.2 xfce4-appfinder или synapse
Для synapse хорошо бы включить compton. Тяжеловат. http://zenway.ru/page/synapse
xfce4-appfinder впечатляет. Может доработать его и использовать по умолчанию...

131104
Написал menu-icon-fix - в шапке. Поможет и в openbox (не помню есть ли там эта проблема)

Разобрался с jwm-xdgmenu (подставляющим .png). Алгоритм там такой: если расширения нет - дописать .png. Если иконка спрятана глубоко /usr/share/icons/hicolor/32x32/apps/p7zip.png - не помогает. Т.е. больше вреда чем пользы. Надо возвращать старый jwm-xdgmenu

Альтернативы :
1. http://murga-linux.com/puppy/viewtopic.php?t=85757 - bacon универсальное решение для jwm icewm openbox fluxbox fbpanel. Не будет ли тормозить...

2. http://murga-linux.com/puppy/viewtopic.php?t=70804&start=123  - bash Доработанный в шапке
Есть уникальный функционал - иконки дисков в доп. нижней панели (откл\вкл в конфиге) - все бы хорошо, но надо делать jwm -restart (не -reload) После restart иконки могут повылетать из трея. Лучше не использовать
В аттаче модуль для pra

3. https://github.com/Enlik/misc/blob/master/jwmxdgmenu.pl

Проблему иконок без расширений не решают. menu-icon-fix - единственное средство (возможно jwmxdgmenu.pl  - тоже)
« Последнее редактирование: 04 Ноябрь 2013, 23:06:25 от sfs »

Оффлайн sfs

  • Администратор
  • Ветеран
  • ****
  • Сообщений: 33997
  • Репутация: +231/-0
  • Автор темы
    • PuppyRus-A
Re:JWM. Автообновление меню
« Ответ #5 : 07 Ноябрь 2013, 18:42:10 »
вид меню JWM изменился, появился пункт на англицком "Other", а почему не "Прочее" или "Разное", пункты "Справка" и "Выключение" поменялись местами (зачем?) и исчезла линия перед ними.
Для эксперимента использовал альтернативу1 gen_pup_xdg
Он самый быстрый (тестил time-ом). альтернатива2 - самый медленный (что не удивило , т.к. sh)
Это становится актуальным, т.к. в конце используется sh костыль menu-icon-fix
Еще gen_pup_xdg умеет делать меню для openbox icewm и пр. Причем без menu-cache. На openbox+tint имею виды

"Other" - поправлю
По замене пунктов меню : gen_pup_xdg работает с 1 файлом меню (это вкомпилено)
Поэтому со "Справка" можно :
1. передвинуть в самый верх
2. как было, но тогда "Выключение"  не генерить, а писать
3. все как было, но с иконками - вернуться на изначальный jwm-xdgmenu: sed 's/BAC/OLD' /usr/local/bin/jwm_menu_refresh

Чтобы gen_pup_xdg вел себя аналогично jwm-xdgmenu можно
а. закостылить цикл подмены одного файла меню на стандартный  (по пунктам). Не хотелось бы...
б. доработал gen_pup_xdg, но даже исходный перекомпилить не удалось под pr pra slacko. Кто в теме bacon- помогайте

Оффлайн sfs

  • Администратор
  • Ветеран
  • ****
  • Сообщений: 33997
  • Репутация: +231/-0
  • Автор темы
    • PuppyRus-A
Re:JWM. Автообновление меню
« Ответ #6 : 18 Август 2014, 10:38:59 »
Придумал еще вариант - xfce4-appfinder. Повесил на кнопку "меню" панели jwm. Все автообновляется, показывает комментарии и есть поиск, т.е. полный функционал whisker-menu. Значительно удобнее обычного jwm меню. Из проблем - управлять местом появления нельзя. Можно только посередине и верх. лев. угол. Размер окна и настройки при наличии xconfd сохраняются
Оптимально использовать с notifyd. Общие либы. Красивее xpupsay
Все вместе занимает 180k.
Не поставить ли этот вариант в iso - как основной...

Кстати аналогичное меню, но без иконок и комментариев висит на хоткее alt+f5
« Последнее редактирование: 18 Август 2014, 15:20:44 от sfs »

Оффлайн sfs

  • Администратор
  • Ветеран
  • ****
  • Сообщений: 33997
  • Репутация: +231/-0
  • Автор темы
    • PuppyRus-A
Re:JWM. Автообновление меню
« Ответ #7 : 29 Август 2014, 10:33:33 »
Для построения классического меню jwm в menu-dmn используется определение изменения (появление .desktop после подключения модуля) в папке через  du
Иногда подглючивает. Есть костыль - хоткей super-r -принудительное обновление меню
Пробовали с Дядей Шуриком inode - с aufs не работает
Скомпилил утилиту, которая может помочь
http://www.gnu.org.ua/software/direvent/
Пока не пробовал, т.к. вариант с appfinder нравится больше

Оффлайн sfs

  • Администратор
  • Ветеран
  • ****
  • Сообщений: 33997
  • Репутация: +231/-0
  • Автор темы
    • PuppyRus-A
Re:JWM. Автообновление меню
« Ответ #8 : 18 Сентябрь 2014, 16:41:42 »
Нашел С сырец для fvwm
Теоретически можно доточить под jwm

Оффлайн sfs

  • Администратор
  • Ветеран
  • ****
  • Сообщений: 33997
  • Репутация: +231/-0
  • Автор темы
    • PuppyRus-A
Re:JWM. Автообновление меню
« Ответ #9 : 12 Июль 2015, 11:29:58 »
Очень много костылей к jwm приходится подставлять.
В jwm-2.3.1 многое поменялось. Например, можно сделать без костылей динамическое меню (только прочитал, еще не в курсе как). Для pra пригодилось бы.
Не нашел здесь http://www.joewing.net/projects/jwm/snapshots/ChangeLog
Можно подробнее?
jwm теперь может сам построить свое меню?

Оффлайн RoDoN

  • Модератор
  • Ветеран
  • ****
  • Сообщений: 6283
  • Репутация: +141/-0
Re:JWM. Автообновление меню
« Ответ #10 : 12 Июль 2015, 19:43:22 »
Здесь http://www.joewing.net/projects/jwm/release-2.3.shtml читаем:
Added a Dynamic submenu that will re-load its menu contents each time it is accessed.
т.е.:
Добавлен динамический подменю, повторно загрузить его содержимое меню каждый раз при обращении к нему. (машинный перевод от гугла)
Lenovo G500 (i3-3110M, 8 Гб, Intel + Radeon HD 8570)
PRA 16.12 JWM, Runtu 22.04 x64 XFCE

Оффлайн DdShurick

  • Это Риччи
  • Активный участник
  • Ветеран
  • ****
  • Сообщений: 8636
  • Репутация: +187/-2
  • Старый чайник
Re:JWM. Автообновление меню
« Ответ #11 : 12 Июль 2015, 20:48:12 »
 Скомпилировал jwm-2.3.1. Собрался легко, запустился, но ущербный: (в Richy) обои, корзина и курсор, ни меню, ни панели.  ???
 В PRA не убирается верхняя панель, остальное на месте. Меню действительно обновляется самостоятельно, правда без проверки программы на работоспособность. Подключил через консоль zoiper, в меню пункт появился, хотя без pulseaudio не работает.
« Последнее редактирование: 12 Июль 2015, 23:08:51 от DdShurick »
Моноблок Lenovo IdeaCentre c200 (Intel Atom D525, Intel GMA 3150, 2 Gb RAM) Richy64
Nettop Acer Aspire Revo R3610 (Atom N330, nVidia GeForce 9400, 3 Gb RAM) Richy64

Оффлайн paulus

  • Активный участник
  • Ветеран
  • ****
  • Сообщений: 1732
  • Репутация: +24/-0
Re:JWM. Автообновление меню
« Ответ #12 : 13 Июль 2015, 09:51:50 »
В PRA не убирается верхняя панель, остальное на месте.
Панель теперь скрывается по другому...
<Tray autohide="top" halign="center" valign="top" height="56">

В арче apwal нижнюю панель не портит, а в pra смещение идет... Что-то там нужно поменять.
p.s. Оказалось не дружит с svg, с png иконкой все ок.
« Последнее редактирование: 13 Июль 2015, 12:48:04 от paulus »

Оффлайн sfs

  • Администратор
  • Ветеран
  • ****
  • Сообщений: 33997
  • Репутация: +231/-0
  • Автор темы
    • PuppyRus-A
Re:JWM. Автообновление меню
« Ответ #13 : 13 Июль 2015, 09:57:39 »
Я правильно понял - новый jwm сам строит свое меню?
paulus - будете делать модуль нового jwm?

Оффлайн paulus

  • Активный участник
  • Ветеран
  • ****
  • Сообщений: 1732
  • Репутация: +24/-0
Re:JWM. Автообновление меню
« Ответ #14 : 13 Июль 2015, 13:02:32 »
paulus - будете делать модуль нового jwm?
Попробовал на основе старого 040-jwm-2.3.1-p01.pfs. Из проблем:
  • не отображает svg иконки в меню и панели (пустота сдвигает "рабочие столы" на середину). png исправляет. Подтвердите?
  • с меню, помогите переделать на нативный от jwm
  • наверное нужно удалить темы, так как не полностью работают из-за изменений в jwm. Или разобраться как подправить.
« Последнее редактирование: 13 Июль 2015, 13:09:57 от paulus »