和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[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[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[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