9
7
2011
19

生成 Awesome 的“应用程序”菜单

本文来自依云's Blog,转载请注明。

Ubuntu 下,Awesome 有个叫 debian_menu 的模块,用于向 Awesome 菜单中添加一个类似于 GNOME 的“应用程序”菜单的项。然而到了 ArchLinux 下,却没这么个模块了。本来我并不太在意,但看到别人折腾后,自己又开始手痒了。

本来是准备自己用 Python 写个程序来生成的,用 pkgfile 一查,却发现有archlinux-xdg-menu这么个软件包,遂装了。原来主要是两个 Perl 脚本。其一生成各种格式的菜单配置,其二根据配置文件为指定的窗口管理器生成菜单配置文件。虽然看示例配置文件似乎不支持 Awesome,但xdg_menu --help一看却是支持 Awesome 的。

xdg_menu --format awesome > ~/.config/awesome/menu.lua

然后改下rc.lua,把这个大菜单加上就可以了:

require("menu")

mymainmenu = awful.menu({ items = { { "Awesome", myawesomemenu, beautiful.awesome_icon },
          -- ...
          { "应用程序 (&A)", xdgmenu },
          -- ...

截图如下:

效果不错,只可惜没图标。

又:从 wiki 上看到,原来这菜单可以添加快捷键的,只要在相应字母前加上&符号即可。

2011年12月3日更新dlin帮忙修改了archlinux-xdg-menu,现在有图标了 ;-)

2012年5月28日更新:现在 Arch 下需要稍微修改下命令参数了:

xdg_menu --format awesome --root-menu /etc/xdg/menus/arch-applications.menu > ~/.config/awesome/menu.lua
Category: Linux | Tags: arch awesome | Read Count: 15747
dlin 说:
Dec 03, 2011 12:40:25 PM

> 可惜没图标

我幫忙改了 archlinux-xdg-menu 現在應該有圖標了! 等一下正式 release 吧!

Avatar_small
依云 说:
Dec 03, 2011 03:17:28 PM

已经更新,基本上都有图标了,谢谢你哦~

maplebeats 说:
Jul 22, 2012 06:14:00 AM

啊哈,啊哈。。。我都已经把python文件都建立好了,写了几行感觉肯定有人做这个。。。结果一搜就到这了~。~

alswl 说:
Sep 19, 2012 04:31:45 PM

哎呦,好赞好赞啊

krup 说:
Oct 11, 2012 10:04:31 PM

生成的菜单可以使用,并有图标,但是如果图标的格式是svg格式的时候,当鼠标移动到该菜单时,会出错。有什么解救方法吗?

maplebeats 说:
Oct 12, 2012 12:56:37 AM

我的解决办法就是。。。。s/svg/png/。。。又治标不治本了。。

血族使天 说:
Mar 13, 2013 09:47:31 PM

rc.lua代码的括号不配对,应该是这样才对吧:
require("menu")

mymainmenu = awful.menu({ items = { { "Awesome", myawesomemenu, beautiful.awesome_icon },
-- ...
{ "应用程序 (&A)", xdgmenu },
require("menu")
-- ...
}
})

Avatar_small
依云 说:
Mar 13, 2013 10:00:19 PM

因为那只是一部分。你可以到 github 上看到完整的代码。

行河 说:
Jun 02, 2013 11:57:33 AM

不错,我的简单配一下就很好用了,最麻烦的是widgit部分,版本升级太快了,语法变化太大了,以前的版本的很多不能用了,要自已改,折腾人呀!!!

MaskRay 说:
Apr 06, 2014 10:38:18 PM

用到的好多工具都記不住名字,我最近在構思是不是用 dmenu 弄一個可以搜索的多級菜單,另外還需要 dzen2 提供 osd

Avatar_small
依云 说:
Apr 06, 2014 10:51:24 PM

dzen2 好有意思 =w=

mugbya 说:
Jun 07, 2014 05:58:45 PM

xdg_menu --format awesome --root-menu /etc/xdg/menus/arch-applications.menu > ~/.config/awesome/menu.lua

这句执行了,重启都无果? 是我还差一些什么

我都把你的git仓库拖下来了,但应用菜单还是没有修改过来.....https://github.com/lilydjwg/myawesomerc

PS: 说改wiki页面的事.这次U盘系统大体装完,觉得wiki上说不用UUID启动不同的计算机不对啊,我查看grub.cfg 里面指定的就是UUID,fstab也用UUID,这样却能做到启动不同的计算机。

我怕我知道的不多,反而修改错了,所以特来先通禀确认一下。

Avatar_small
依云 说:
Jun 07, 2014 06:40:20 PM

你没在 rc.lua 里引用它吧。你把我的仓库作为 ~/.config/awesome 目录放在那里的话应该有效果的(因为机器不一样,也许会有些错误,要解决掉)。

你的「PS」节说的是什么呀。UUID 就是分区的 ID,LABEL 就是分区的标签,你 ls /dev/disk 看看啦。

mugbya 说:
Jun 07, 2014 10:02:25 PM

仙子在awesome下用的那个shell啊? gnome-terminal ?

awesome才入手--不懂的蛮多,请教你下。

------
中文的确实需要改了,刚刚对照了下,很多对不上,忽略重要的,或者过时--等awesome配置完我就去修改wiki

Avatar_small
依云 说:
Jun 08, 2014 04:27:22 PM

那个叫终端。我以前用 gnome-terminal,后来新版有些问题就换了 xfce4-terminal。

mugbya 说:
Jul 13, 2014 07:26:59 PM

“原来这菜单可以添加快捷键的,只要在相应字母前加上&符号即可。”

-> 原来这个快捷键必须要在应用菜单程序显出来才能有效啊?

Avatar_small
依云 说:
Jul 13, 2014 07:40:38 PM

当然啦。这个和一般的程序菜单里带下划线那个是一样的语义的。你要通过快捷键直接启动程序就定义在 globalkeys 里啦。

ios122 说:
Aug 23, 2015 09:08:05 PM

看错了 ,还以为是iOS里面的awesomemenu.这里是我整理的,根据最新的github版本. http://www.ios122.com/2015/08/awesomemenu/

dpluy 说:
Nov 25, 2016 12:51:58 AM

大晚上的,我用v4浏览是黑白的,好别扭~


登录 *


loading captcha image...
(输入验证码)
or Ctrl+Enter

部分静态文件存储由又拍云存储提供。 | Theme: Aeros 2.0 by TheBuckmaker.com