Форум русскоязычного сообщества Ubuntu


Получить помощь и пообщаться с другими пользователями Ubuntu можно
на irc канале #ubuntu-ru в сети Freenode
и в Jabber конференции ubuntu@conference.jabber.ru

Автор Тема: Динамическое меню в awesome  (Прочитано 1969 раз)

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

Оффлайн piyavking

  • Автор темы
  • Активист
  • *
  • Сообщений: 709
  • никогда так не было, чтобы никак не было
    • Просмотр профиля
    • Пиявкин
Динамическое меню в awesome
« : 16 Декабрь 2013, 12:17:26 »
Осваиваю awesome, по сравнению с openbox очень нравится. Но хотелось бы прояснить один момент: В openbox есть возможность реализации динамического меню, содержание которого является выхлопом скрипта, который формирует структуру меню в зависимости от каких-либо условий, в частности - от лаунчера, по которому кликнули.

Не подскажут ли знающие люди, есть ли принципиальная возможность чего-либо подобного в awesome, или всё-таки жёсткость его меню непобедима?

Спасибо за внимание.
крайний LTS Netboot, awesomeWM/иксы без WM, urxvtd, qutebrowser, vim/gvim, mpv/smplayer, linux-lowlatency, jack+wineasio

Оффлайн Чистый

  • Почётный модератор
  • Старожил
  • *
  • Сообщений: 3474
  • nix - вот оно счастье...
    • Просмотр профиля
Re: Динамическое меню в awesome
« Ответ #1 : 16 Декабрь 2013, 12:37:26 »
какое меню? подбробнее плз, вообще конфиги awesome это чистое lua и ограничиваются лишь вашими знаниями этого языка и вашей фантазии
Тестовый репозиторий kdeNeur ppa:devcode/kdeneur
各々が死ぬことをどのように決定する

Оффлайн piyavking

  • Автор темы
  • Активист
  • *
  • Сообщений: 709
  • никогда так не было, чтобы никак не было
    • Просмотр профиля
    • Пиявкин
Re: Динамическое меню в awesome
« Ответ #2 : 16 Декабрь 2013, 14:42:28 »
Чистый,
То есть при формировании переменной mymainmenu в ~/.config/awesome/rc.lua я совершенно спокойно могу использовать проверку условий? Отлично, спасибо!
крайний LTS Netboot, awesomeWM/иксы без WM, urxvtd, qutebrowser, vim/gvim, mpv/smplayer, linux-lowlatency, jack+wineasio

Оффлайн Чистый

  • Почётный модератор
  • Старожил
  • *
  • Сообщений: 3474
  • nix - вот оно счастье...
    • Просмотр профиля
Re: Динамическое меню в awesome
« Ответ #3 : 16 Декабрь 2013, 15:12:33 »
Чистый,
То есть при формировании переменной mymainmenu в ~/.config/awesome/rc.lua я совершенно спокойно могу использовать проверку условий? Отлично, спасибо!
ну конечно....
Тестовый репозиторий kdeNeur ppa:devcode/kdeneur
各々が死ぬことをどのように決定する

Оффлайн piyavking

  • Автор темы
  • Активист
  • *
  • Сообщений: 709
  • никогда так не было, чтобы никак не было
    • Просмотр профиля
    • Пиявкин
Re: Динамическое меню в awesome
« Ответ #4 : 20 Декабрь 2013, 02:00:33 »
Чистый,
А вот и нет(

Вот пытаюсь проверять примонтированность/отмонтированность флешки, и в зависимости от этого формировать меню:
myflashstatus = awful.util.pread("mount | grep \/dev\/sdc1")
if myflashstatus == "" then
        myflashname = 'Mount Flash'
        myflashcommand = 'sudo mount -o noatime,nodiratime,rw /dev/sdc1 /flash'
else
        myflashname = 'Umount Flash'
        myflashcommand = 'sudo umount /dev/sdc1'
end

mymount = awful.widget.launcher({ image = '/home/piyavking/.local/share/icons/mount.png',
                                     menu = awful.menu({ items = { myflashname, myflashcommand, '/home/piyavking/.local/share/icons/mount.png' },
}
})
})

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

Вот тут вот вот мне советуют что-то годное, но мне левела не хватает самому допилить.
« Последнее редактирование: 20 Декабрь 2013, 07:15:25 от piyavking »
крайний LTS Netboot, awesomeWM/иксы без WM, urxvtd, qutebrowser, vim/gvim, mpv/smplayer, linux-lowlatency, jack+wineasio

Оффлайн Чистый

  • Почётный модератор
  • Старожил
  • *
  • Сообщений: 3474
  • nix - вот оно счастье...
    • Просмотр профиля
Re: Динамическое меню в awesome
« Ответ #5 : 20 Декабрь 2013, 07:36:33 »
для монтирования отмонтирования есть специальный виджет для панели, касательно конфига то тут да, он читается один раз при запуске, как то это из головы вылетело
Тестовый репозиторий kdeNeur ppa:devcode/kdeneur
各々が死ぬことをどのように決定する

Оффлайн piyavking

  • Автор темы
  • Активист
  • *
  • Сообщений: 709
  • никогда так не было, чтобы никак не было
    • Просмотр профиля
    • Пиявкин
Re: Динамическое меню в awesome
« Ответ #6 : 20 Декабрь 2013, 07:59:20 »
Чистый,
Монтированием/отмонтированием мои потребности, к сожалению, не ограничиваются. Мне ещё нужны менюшки, названия, иконки, и команды пунктов которых динамически зависят от содержания некоторых меняющихся в процессе работы файликов, например. Опенбоксом это делалось достаточно ненапряжно. Как дела с этим делом обстоят у осома - покажет вскрытие, но, думаю, это достаточно легко осуществимо, при наличии знаний, которых у меня пока нет))). Упомянутый мной человек с ЛОР'а дал верное направление, но всё упирается в мои белые пятна.
крайний LTS Netboot, awesomeWM/иксы без WM, urxvtd, qutebrowser, vim/gvim, mpv/smplayer, linux-lowlatency, jack+wineasio

Оффлайн Чистый

  • Почётный модератор
  • Старожил
  • *
  • Сообщений: 3474
  • nix - вот оно счастье...
    • Просмотр профиля
Re: Динамическое меню в awesome
« Ответ #7 : 20 Декабрь 2013, 09:34:23 »
piyavking,
да я уже читал твою ветку на лоре, но я все равно толком не понял всей задачи целиком, что бы что-то советовать...
Тестовый репозиторий kdeNeur ppa:devcode/kdeneur
各々が死ぬことをどのように決定する

Оффлайн piyavking

  • Автор темы
  • Активист
  • *
  • Сообщений: 709
  • никогда так не было, чтобы никак не было
    • Просмотр профиля
    • Пиявкин
Re: Динамическое меню в awesome
« Ответ #8 : 20 Декабрь 2013, 12:46:23 »
Чистый,
Задача простая - реализация динамического меню, формирующегося в момент нажатия на лаунчер.
крайний LTS Netboot, awesomeWM/иксы без WM, urxvtd, qutebrowser, vim/gvim, mpv/smplayer, linux-lowlatency, jack+wineasio

Оффлайн Чистый

  • Почётный модератор
  • Старожил
  • *
  • Сообщений: 3474
  • nix - вот оно счастье...
    • Просмотр профиля
Re: Динамическое меню в awesome
« Ответ #9 : 20 Декабрь 2013, 15:28:54 »
что у вас выступает в качестве лаунчера ? сколько их, от чего должно менятся меню, т.е. по какой причине должно видоизменятся меню ?
Тестовый репозиторий kdeNeur ppa:devcode/kdeneur
各々が死ぬことをどのように決定する

Оффлайн piyavking

  • Автор темы
  • Активист
  • *
  • Сообщений: 709
  • никогда так не было, чтобы никак не было
    • Просмотр профиля
    • Пиявкин
Re: Динамическое меню в awesome
« Ответ #10 : 24 Декабрь 2013, 10:16:31 »
Чистый,
лаунчер - обычный,

mynetmenu = awful.widget.launcher({ image = '....картинка.png',
                                     menu =  awful.menu({ items = {
**** пункты меню ***
}
})
})

Причина, по которой должно видоизменяться меню - проверка "mount | grep \/dev\/sdc1" . Если выхлоп команды пуст, то пункт меню должен быть "Mount Flash", с командой монтирования. Если нет - то "Umount Flash", с командой отмонтирования.
крайний LTS Netboot, awesomeWM/иксы без WM, urxvtd, qutebrowser, vim/gvim, mpv/smplayer, linux-lowlatency, jack+wineasio

Оффлайн Чистый

  • Почётный модератор
  • Старожил
  • *
  • Сообщений: 3474
  • nix - вот оно счастье...
    • Просмотр профиля
Re: Динамическое меню в awesome
« Ответ #11 : 24 Декабрь 2013, 10:40:14 »
я же уже говорил что для этого есть отдельный виджет, который это и выполняет, можете посмотреть как в нем это реализовано
Тестовый репозиторий kdeNeur ppa:devcode/kdeneur
各々が死ぬことをどのように決定する

Оффлайн piyavking

  • Автор темы
  • Активист
  • *
  • Сообщений: 709
  • никогда так не было, чтобы никак не было
    • Просмотр профиля
    • Пиявкин
Re: Динамическое меню в awesome
« Ответ #12 : 24 Декабрь 2013, 20:58:20 »
Чистый,
Не можешь дать линк на этот виджет?
крайний LTS Netboot, awesomeWM/иксы без WM, urxvtd, qutebrowser, vim/gvim, mpv/smplayer, linux-lowlatency, jack+wineasio

Оффлайн Чистый

  • Почётный модератор
  • Старожил
  • *
  • Сообщений: 3474
  • nix - вот оно счастье...
    • Просмотр профиля
Re: Динамическое меню в awesome
« Ответ #13 : 24 Декабрь 2013, 21:18:12 »
на сайте awesome в разделе виджетов, вроде там видел...
Тестовый репозиторий kdeNeur ppa:devcode/kdeneur
各々が死ぬことをどのように決定する

 

Страница сгенерирована за 0.075 секунд. Запросов: 25.