gpt4 book ai didi

menu - 在 Awesome WM 中,是否可以根据您所在的标签有不同的菜单?

转载 作者:行者123 更新时间:2023-12-02 01:36:44 25 4
gpt4 key购买 nike

在 Awesome Window Manager 中,您有一个主菜单,可以通过单击左上角的启动器、右键单击桌面或使用键绑定(bind) Mod+w 来调用该菜单。我想做的是能够根据我所在的标签拥有不同的菜单。

例如,目前在我的 Awesome 配置中,我有 4 个标签:主要、开发、视频和办公室。所以我想要每个不同标签的菜单,如下所示:

主要:终端、挂起、重启、关闭开发:终端、gvim、firefox、视频:vlc、brasero办公室:作家计算绘图印象

这真的可能吗?

最佳答案

我最终创建了一个函数来为每个标签创建不同的菜单:

更改鼠标和键盘键绑定(bind)的行以调用 getTagMenu:

-- {{{ Mouse bindings: I USE PRIMARY BUTTON
root.buttons(awful.util.table.join(
awful.button({ }, 1, function ()
menutag = getTagMenu()
menutag:show({keygrabber=true})
end),
awful.button({ }, 4, awful.tag.viewnext),
awful.button({ }, 5, awful.tag.viewprev)

))

-- {{{ Key bindings: I use MENU KEY
globalkeys = awful.util.table.join(
awful.key({ }, "Menu", function ()
menutag = getTagMenu()
menutag:show({keygrabber=true})
end))

现在的功能:

function getTagMenu ()
tagID=awful.tag.getidx(awful.tag.selected(1))
screen[1]:add_signal("tag::history::update", function()
tagName = awful.tag.selected(1).name end)

if tagName == "main" then
menutag = awful.menu({ items = {
{ "&gvim", "gvim" },
{ "&firefox", "firefox" },
{ "&software", "software-center" },
{ "&config", "zsh -c -i 'awe'" },
{ "sleep", "zsh -c -i 'gksu pm-suspend'" },
{ "logout", awesome.quit },
{ "restart", "zsh -c -i 'sudo shutdown -r now'" },
{ "shut", "zsh -c -i 'sudo shutdown -h now'"}}})
end

if tagName == "develop" then
menutag = awful.menu({ items = {
{ "&gvim", "gvim" },
{ "&sqlitestudio", "sqlitestudio" },
{ "&tkcon", "tkcon" } } } )
end

if tagName == "media" then
menutag = awful.menu({ items = {
{ "vlc", "vlc" } } } )
end

if tagName == "office" then
menutag = awful.menu({ items = {
{ "&write", "libreoffice --writer" },
{ "&calc", "libreoffice --calc" } } } )
end
return menutag
end

关于menu - 在 Awesome WM 中,是否可以根据您所在的标签有不同的菜单?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14819866/

25 4 0