Linux下菜单编辑配置

来源:互联网 发布:显卡性能数据图 编辑:程序博客网 时间:2024/06/05 18:34
"Linux下菜单编辑配置,文件打开方式,开始菜单管理"

KDE,GNOME等桌面环境都支持 desktop快捷方式

在Gnome环境,与之相关的目录和文件有


~/.local/share/applications 用户自己的应用程序快捷方式
/etc/gnome/defaults.list 系统 程序打开方式(我没有这个文件)
/usr/share/applications 
/usr/share/applications/mimeinfo.cache
~/.local/share/applications/mimeinfo.cache
/etc/gnome-vfs-2.0
/usr/share/desktop-directories
/usr/share/desktop-base




/etc/gnome/defaults.list 保存了全局的打开方式
~/.local/share/applications/defaults.list 保存了个人的打开方式




~/.local/share/applications
/usr/share/applications
这两个分别是局部的desktop项和全局的desktop项



/usr/share/applications/mimeinfo.cache
~/.local/share/applications/mimeinfo.cache
这两个分别是全局的和局部的打开方式缓存



desktop文件的结构

[Desktop Entry]
Encoding=UTF-8 //字符编码
Name=vim   //显示的名字
MimeType=text/plain; //类型
Exec=vim %f //运行的程序 %f表示一个参数
Type=Application  //类型
Terminal=true //是否使用终端
NoDisplay=true //是否显示在gnome菜单里

GNome用这个 
/etc/X11/desktop-menus/applications.menu
XML文件来定义菜单的

它引用在
/usr/share/desktop-menu-files(旧版)
/usr/share/applications(新版)
目录下的 .desktop文件

目录结构

< VFolderInfo>
< MergeDir>< /MergeDir>
< DesktopDir>< /DesktopDir>

< Folder>
< Name>Foo< /Name>
< Desktop>Foobar.directory< /Desktop>
< Query>
< And>
< Keyword>Category< /Keyword>
< Not>
< Keyword>Category< /Keyword>
< /Not>
< /And>

< Include>appname.desktop< /Include>
< Exclude>appname2.desktop< /Exclude>

< Folder>
...
< /Folder>

< /Folder>
< /VFolderInfo>
"Re:Linux下菜单编辑配置,文件打开方式,开始菜单管理"

(我在此将 菜单栏里面的 其他 以及其它里面的子目录以外的菜单栏 通称为一级目录,比如图像,互联网都是一级目录。)
和gnome菜单显示相关的有三个个目录:/usr/share/applications,
/usr/share/gnome/apps和
/etc/X11/applnk/
对于前者即/usr/share/applications里面都是
以desktop为后缀的文档;对于后者/usr/share/gnome/apps和/etc/X11/applnk/里面是一些目录,它们可以是
Network,
Office,
Graphics,
AudioVideo,
System,
Development,
Utility,
Settings等
一般在这些目录里面也是以desktop为结尾的文件这些文件对应的菜单项一般是让它们在其它里面显示(我想也应该可以在第一级目录里面显示,呵呵没有试过).对于/usr/share/applications里面的文件,既可在其它里面显示也可在第一级菜单里面显示。
下面来看一下以.desktop结尾的文件的格式,低下是一个模板:

[Desktop Entry]
Name=
Name[zh_CN]=
Exec=
Icon=
Terminal=
Type=
Categories=Application;;;
Encoding=UTF-8
Comment=
Comment[zh_CN]=
OnlyShowIn=
X-Desktop-File-Install-Version=0.3


对上面的每一项我逐一解释:
Name--你原意给程序取的名字
Name[zh_CN]--程序对应local为中文是的名字
Exec要执行的应用程序路径
Icon你想要显示的图标路径
Type程序的种类,一般为Application即可。
下面的Categories是关键,注意上面的几个分号,第一个之前一般为Application即可
第二个之前可以为Network,
Office,
Graphics,
AudioVideo,
System,
Development,
Utility,
Settings
之一。
它们分别对应如下:
互联网 Network
办公 Office
图像 Graphics
声音和视频 AudioVideo
系统工具 System
编程 Development
辅助选项 Utility
首选项 Settings。
也就是说如果这一项是Network就会在互联网栏里面显示,这一项是Utility,你创建的菜单项就会在辅助选项里面显示,如此类推。
第二个分号之后的内容可以为X-Red-Hat-Base加X-Red-Hat-Base-Only或者X-Red-Hat-Extra。(注意只要加了X-Red-Hat-Base就不会在其他里面显示了)对于
X-Red-Hat-Base加X-Red-Hat-Base-Only
将在一级菜单里面显示,对于X-Red-Hat-Extra将在其它里面显示。
下面看我的两个个实例:

[Desktop Entry]
Name=redoffice
Name[zh_CN]=红色办公Office
Exec=redoffice
Icon=/usr/share/pixmaps/redhat-word-processor.png
Terminal=false
Type=Application
Categories=Application;Office;X-Red-Hat-Extra;
Encoding=UTF-8
Comment=RedOffice1.2
Comment[zh_CN]=Office工具
X-Desktop-File-Install-Version=0.3

将在 其他 的 办公 里面显示我的菜单.

[Desktop Entry]
Name=redoffice
Name[zh_CN]=红色办公Office
Exec=redoffice
Icon=/usr/share/pixmaps/redhat-word-processor.png
Terminal=false
Type=Application
Categories=Application;Office;X-Red-Hat-Base;X-Red-Hat-Base-Only;
Encoding=UTF-8
Comment=RedOffice1.2
Comment[zh_CN]=Office工具
X-Desktop-File-Install-Version=0.3


将在第一级菜单 办公[/b ]里面显示我的菜单
如下的几个是编码和说明以及是否在终端运行。OnlyShowIn指的是在kde里面还是gnome里面显示其值为GNOME或KDE
另外kde里面的菜单和/usr/share/applnk/的文件有关当然对应有[Kde Desktop Entry]我是用的gnome,没有试KDE.
"Re:Linux下菜单编辑配置,文件打开方式,开始菜单管理"

让你自定义的子菜单与系统菜单平起平坐:

1.用文本编辑器打开 /etc/xdg/menus/applications.menu文件

2.添加如下内容:



esITo
esito.directory



esITo





(是不是很像网页源代码? Twisted Evil 不会做网页? Question 当我没说!)

3.用文本编辑器打开/usr/share/desktop-directories/下任意一个扩展名为.directory的文件,另存为esito.directory.

4.修改esito.directory文件:

[Desktop Entry]
Name=esITo
Name[zh_CN]=esITo自定义菜单
Comment=esITo菜单
Comment[zh_CN]=esITo自定义菜单
Icon=emacs.png
Type=Directory

注:

Name=esITo 英文名字 必需 esITo
Name[zh_CN]=esITo 中文名字 除非你用英文
Comment=esITo menu 英文注释
Comment[zh_CN]=esITo自定义菜单 中文注释
Icon=emacs.png 菜单的图标 自己到/usr/share/pixmaps目录里选
Type=Directory 表示是文件夹 必需

5.用文本编辑器打开一个/usr/share/applications目录中的快捷方式(随意),修改Categories项为Categories=esITo

6.重新起动X系统(RedHat/Fedora Core基本上需要重启Linux了)

7.其中esITo是我自己起的名字,可以为任意英文标识.

8.当你没有设置任何快捷方式到你的菜单项里时,你的菜单项是不会显示的!

"Re:Linux下菜单编辑配置,文件打开方式,开始菜单管理"

$XDG_CONFIG_DIRS/menus/applications.menu

/etc/xdg

~/.config/
========================
/etc/xdg/menus/gnome-applications.menu
~/.config/menus/gnome-applications.menu

修改这里,就可以了

0 0
原创粉丝点击