Desktop Entry創(chuàng)建Linux程序的快捷方式

1.Desktop ?Entry文件

在windows操作系統(tǒng)里腌逢,打開(kāi)程序可以通過(guò)點(diǎn)桌面上的快捷方式文件打開(kāi)。在Linux系統(tǒng)上搏讶,程序的打開(kāi)快捷方式文件是由Desktop Entry文件來(lái)描述的,它描述了程序的啟動(dòng)配置信息媒惕。Desktop Entry文件標(biāo)準(zhǔn)是由FreeDesktop.org(http://freedesktop.org/wiki/)制定的,目前最新的版本是Version 1.2alpha妒蔚。我們用1.0就好了。Desktop Entry文件以".desktop"為后綴名肴盏。這些Desktop ?Entry文件通常會(huì)放在/usr/share/applications/或/opt/gnome/share/applications/等目錄下科盛,但其實(shí)放哪里都可以菜皂。用戶打開(kāi)應(yīng)用程序?yàn)g覽器后會(huì)看見(jiàn)很多應(yīng)用程序快捷方式,每個(gè)快捷方式都和一個(gè)Desktop ?Entry文件相對(duì)應(yīng)恍飘。點(diǎn)擊相應(yīng)Desktop ?Entry文件同樣可以啟動(dòng)相對(duì)應(yīng)的應(yīng)用程序榨崩。一個(gè)DesktopEntry文件的樣子大概如下:

[Desktop Entry]

Version = 1.0

Encoding = UTF-8

Name = Quick Start Tour

GenericName = User Tutorial

Comment = help you learn how to use the Desktop

Exec = gnome-open

/usr/share/doc/manual/sled-gnome-cbt_en/index.html

Icon = cbt

StartupNotify = true

Terminal = false

Type = Application

Categories = GNOME;Application;Documentation;

OnlyShowIn = GNOME;

X-SUSE-translate = true

Name[cs] = Rychlá prohlídka systému

Comment[cs] = V?ukov? program seznamující

u?ivatele se základy pracovního prost?edí

GenericName[cs] = U?ivatelsk? tutoriál

Name[hu] = Rendszerbemutató

Comment[hu] = A munkaállomés használatát

bemutató segédlet

GenericName[hu] = Felhasználói segédlet

2.Desktop ?Entry文件結(jié)構(gòu)

Desktop Entry文件以字符串"[Desktop Entry]"開(kāi)始常侣。Desktop Entry文件的內(nèi)容是由若干“key=value”的鍵值對(duì)組成的。key分為必選和可選兩種:必選的必須在.desktop文件中被定義胳施;而可選則不必。下面是關(guān)于一些重要關(guān)鍵字的說(shuō)明:

Version:可選,指定了當(dāng)前Desktop Entry文件所遵循的Desktop Entry文件標(biāo)準(zhǔn)版本焦辅。

Name:必選,指定了快捷方式顯示的名稱筷登。

Icon:[可選]指定義了快捷方式所使用的圖標(biāo)。

Icon如果指定的圖標(biāo)是以絕對(duì)路徑的格式給出前方,那么所指定圖標(biāo)文件將被使用;如果只給出了圖標(biāo)的名稱惠险,那么Linux系統(tǒng)將使用"IconTheme Specification",也就說(shuō)從系統(tǒng)指定的主題下去找這個(gè)圖標(biāo)苗傅,這些主題的圖標(biāo)放在/usr/share/icons的對(duì)應(yīng)的主題下班巩,如果系統(tǒng)沒(méi)有指定主題,那么就會(huì)加載hicolor主題下的圖標(biāo)抱慌。原文是這樣說(shuō)的:

The ?name of the theme that this theme inherits from. If an icon name is not found in the current theme, it is searched for in the inherited theme (and recursively in all the inherited themes).If no theme is specified implementations are required to add the"hicolor" theme to the inheritance tree. An implementation may optionally add other default themes in between the last specified theme and the hicolor theme.

參考:https://specifications.freedesktop.org/icon-theme-spec/icon-theme-spec-0.9.html

GenericName:[可選]指定了應(yīng)用程序的通用名稱。如果程序名系:谷歌瀏覽器抑进,那么這個(gè)通用的名稱可以系:瀏覽器强经。有些分類的意思单匣。

Comment:[可選]對(duì)當(dāng)前快捷方式對(duì)應(yīng)的程序的簡(jiǎn)單描述。

Type:[必選]指定了Desktop Entry文件的類型户秤。數(shù)值可以是"Application"或"Link"码秉。"Type= Application"表示當(dāng)前Desktop Entry文件指向了一個(gè)應(yīng)用程序鸡号;而"Type = Link"表示當(dāng)前Desktop Entry文件指向了一個(gè)URL转砖。

Exec:[可選]只有在"Type"類型是"Application"時(shí)才有意義鲸伴。定義了啟動(dòng)指定應(yīng)用程序所要執(zhí)行的命令,在此命令是可以帶參數(shù)的汞窗。所執(zhí)行的命令在shell中輸入并按回車鍵同樣可以啟動(dòng)指定應(yīng)用程序姓赤。

URL:[可選]只有在"Type"類型是"Link"時(shí)才有意義仲吏。"URL"的數(shù)值定義了該Desktop

Entry文件指向的URL蝌焚。

StartupNotify:[可選]值只能是true或false,只有在"Type"類型是"Application"時(shí)才有意義。用于跟蹤程序的啟動(dòng)誓斥。參考:https://www.freedesktop.org/wiki/Specifications/startup-notification-spec/

Terminal:[可選]數(shù)值也是布爾值,只有在"Type"類型是"Application"時(shí)才有意義劳坑。指出將要運(yùn)行的程序是否需要在終端窗口中運(yùn)行

Categories:[可選]只有在"Type"類型是"Application"時(shí)才有意義。指出了將要運(yùn)行的程序在菜單中顯示的類別距芬。參考:https://specifications.freedesktop.org/menu-spec/menu-spec-1.0.html

在關(guān)鍵字后加上字符串"[LOCALE]"就可以對(duì)該關(guān)鍵字進(jìn)行特定的本地化定義,也就是說(shuō)根據(jù)系統(tǒng)所選的語(yǔ)言去選用相應(yīng)的鍵值框仔。"LOCALE"的合法取值為:

LOCALE= lang_COUNTRY.ENCODING@MODIFIER

在此,域"_COUNTRY"存和,".ENCODING"和"@MODIFIER"是可以被忽略的。當(dāng)指定Desktop

Entry文件被解析時(shí)捐腿,解析器應(yīng)當(dāng)根據(jù)當(dāng)前POSIX

locale來(lái)正確獲取本地化的關(guān)鍵字?jǐn)?shù)值。如前就分別定義了在"cs"和"hu"語(yǔ)言環(huán)境下關(guān)鍵字"Name"茄袖,"Comment"和"GenericName"的不同值。

下載創(chuàng)建幾個(gè)小實(shí)例:

如在桌面創(chuàng)建打開(kāi)百度的快捷方式嘁锯,我準(zhǔn)備了一個(gè)baidu.png圖標(biāo):

[Desktop

Entry]

Version=1.0

Name=百度一下

Icon=/home/won/Icons/baidu.png

Type=Link

URL=http://www.baidu.com

把這個(gè)文件件放在桌面,一點(diǎn)擊家乘,就打開(kāi)百度了。

再來(lái)一個(gè)打開(kāi)androidstudio IDE的:

[Desktop

Entry]

Version=1.0

Name=Android

Studio

Icon=/home/won/Icons/studio.png

Type=Application

Exec=/home/won/Software/android-studio/bin/studio.sh

效果如下:


最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末耀找,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子业崖,更是在濱河造成了極大的恐慌,老刑警劉巖双炕,帶你破解...
    沈念sama閱讀 218,858評(píng)論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異妇斤,居然都是意外死亡丹拯,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,372評(píng)論 3 395
  • 文/潘曉璐 我一進(jìn)店門咽笼,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái),“玉大人剑刑,你說(shuō)我怎么就攤上這事∷簦” “怎么了?”我有些...
    開(kāi)封第一講書(shū)人閱讀 165,282評(píng)論 0 356
  • 文/不壞的土叔 我叫張陵茅糜,是天一觀的道長(zhǎng)。 經(jīng)常有香客問(wèn)我蔑赘,道長(zhǎng),這世上最難降的妖魔是什么缩赛? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 58,842評(píng)論 1 295
  • 正文 為了忘掉前任,我火速辦了婚禮酥馍,結(jié)果婚禮上辩昆,老公的妹妹穿的比我還像新娘旨袒。我一直安慰自己汁针,他們只是感情好砚尽,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,857評(píng)論 6 392
  • 文/花漫 我一把揭開(kāi)白布。 她就那樣靜靜地躺著必孤,像睡著了一般帆精。 火紅的嫁衣襯著肌膚如雪隧魄。 梳的紋絲不亂的頭發(fā)上卓练,一...
    開(kāi)封第一講書(shū)人閱讀 51,679評(píng)論 1 305
  • 那天购啄,我揣著相機(jī)與錄音,去河邊找鬼狮含。 笑死顽悼,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的蔚龙。 我是一名探鬼主播冰评,決...
    沈念sama閱讀 40,406評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼木羹,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了坑填?” 一聲冷哼從身側(cè)響起抛人,我...
    開(kāi)封第一講書(shū)人閱讀 39,311評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤脐瑰,失蹤者是張志新(化名)和其女友劉穎,沒(méi)想到半個(gè)月后苍在,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體绝页,經(jīng)...
    沈念sama閱讀 45,767評(píng)論 1 315
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡寂恬,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,945評(píng)論 3 336
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了掠剑。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 40,090評(píng)論 1 350
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡朴译,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出眠寿,到底是詐尸還是另有隱情,我是刑警寧澤焦蘑,帶...
    沈念sama閱讀 35,785評(píng)論 5 346
  • 正文 年R本政府宣布,位于F島的核電站例嘱,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏拼卵。R本人自食惡果不足惜奢浑,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,420評(píng)論 3 331
  • 文/蒙蒙 一腋腮、第九天 我趴在偏房一處隱蔽的房頂上張望雀彼。 院中可真熱鬧,春花似錦徊哑、人聲如沸。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 31,988評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)窒盐。三九已至草则,卻和暖如春蟹漓,著一層夾襖步出監(jiān)牢的瞬間炕横,已是汗流浹背葡粒。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 33,101評(píng)論 1 271
  • 我被黑心中介騙來(lái)泰國(guó)打工份殿, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留嗽交,地道東北人卿嘲。 一個(gè)月前我還...
    沈念sama閱讀 48,298評(píng)論 3 372
  • 正文 我出身青樓夫壁,卻偏偏與公主長(zhǎng)得像拾枣,于是被迫代替她去往敵國(guó)和親盒让。 傳聞我的和親對(duì)象是個(gè)殘疾皇子梅肤,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,033評(píng)論 2 355

推薦閱讀更多精彩內(nèi)容