问题描述
Unity是否允许从.desktop
文件或通过菜单编辑系统制作自定义启动器图标? (目前,启动器并没有给出在所有程序上“保持启动”的选项。
对于我使用的一些程序,我必须制作自定义启动器或.desktop
文件。
例如,日常搅拌机构建通常只是带有可执行文件的文件夹。
在基本的Gnome或KDE中,我可以使用菜单编辑系统创建新的菜单条目。然后,我也可以通过菜单或将.desktop
文件拖放到Docky中将其添加到Docky。 Unity启动器不支持拖放,所以这不是一个错误或任何东西,但是当我打开一个.desktop
文件时,它有不可预知的结果。大多数时候它不会有“保持在发射器”。有时候它会有一个没有.desktop
图标的可靠项目,如果我把这个项目固定到启动器上,关闭它之后它不会再次调用程序。我也已经将它与celtx
的.desktop
文件一起使用。
最佳解决办法
11.04及更早版本:
Unity支持.desktop文件中的自定义启动器。要从.desktop
文件创建自定义启动程序,您需要为程序创建*.desktop
文件。
gedit ~/.local/share/applications/name.desktop
.desktop
文件应该如下所示:
[Desktop Entry]
Name=the name you want shown
Comment=
Exec=command to run
Icon=icon name
Terminal=false
Type=Application
StartupNotify=true
在文件管理器中打开您的个人文件夹并导航至:(您可能需要按ctrl+h
以显示隐藏的文件以查看.gconf
目录。)
.gconf-> desktop-> unity-> launcher -> favourites
你会看到一堆以“app-
”开头的文件夹。你需要为你的程序创建一个文件夹。使用您在/usr/share/applications
中使用的同名.desktop。进入文件夹中的一个文件夹,查看是否已经存在于Dock&复制xml文件并将其粘贴到您的新文件夹中。用您的文本编辑器打开它,并将*.desktop
的名称更改为您的名字.desktop
。
打开gconf-editor(您可以通过在终端中运行命令gconf-editor
打开gconf)&去:
desktop-> unity-> launcher -> favorites
双击右侧的列表和&添加您的name.desktop
。
注销&回来,你应该看到你的发射器。 (非常感谢你在Ubuntu论坛上的帮助解答这个问题)
Unity也有一个称为透镜的功能。默认情况下,Unity中有两个应用程序和文件。将来,您将能够安装和创造更多。有关于Ubuntu wiki的一些信息:https://wiki.ubuntu.com/Unity/Lenses
次佳解决办法
更新:2015年12月
对于Ubuntu 15.10或14.04 LTS(11.10或更高版本,Unity(3D))
注意:这可以替换现有图标的功能,或者(一旦创建)可以搜索(从Dash图标)以添加到当前的button-bar。
首先制作你想要修改的任何.desktop文件的OWN副本。它更安全,然后你可以随时删除并重新开始。
(list all files)
ls /usr/share/applications/*.desktop
例如:Mozilla Firefox,firefox.desktop
(do this once, or after deleting any failed attempt)
cp /usr/share/applications/firefox.desktop ~/.local/share/applications
然后仔细改变任何措辞,或添加其他选项。
(edit the file)
gedit ~/.local/share/applications/firefox.desktop &
注意:&符号’&’立即释放命令行。
我自己的’firefox.desktop’文件:
[Desktop Entry]
Version=1.0
Name=Firefox Web Browser
Name[es]=Navegador web Firefox
Name[fr]=Navigateur Web Firefox
Name[it]=Firefox Browser Web
Name[nl]=Firefox webbrowser
Comment=Browse the World Wide Web
Comment[de]=Im Internet surfen
Comment[es]=Navegue por la web
Comment[fr]=Naviguer sur le Web
Comment[it]=Esplora il web
Comment[nl]=Verken het internet
GenericName=Web Browser
GenericName[es]=Navegador web
GenericName[fr]=Navigateur Web
GenericName[it]=Browser web
GenericName[nl]=Webbrowser
Keywords=Internet;WWW;Browser;Web;Explorer
Keywords[de]=Internet;WWW;Browser;Web;Explorer;Webseite;Site;surfen;online;browsen
Keywords[es]=Explorador;Internet;WWW
Keywords[fr]=Internet;WWW;Browser;Web;Explorer;Fureteur;Surfer;Navigateur
Keywords[it]=Internet;WWW;Browser;Web;Navigatore
Keywords[nl]=Internet;WWW;Browser;Web;Explorer;Verkenner;Website;Surfen;Online
Exec=firefox %u
Terminal=false
X-MultipleArgs=false
Type=Application
Icon=firefox
Categories=GNOME;GTK;Network;WebBrowser;
MimeType=text/html;text/xml;application/xhtml+xml;application/xml;application/rss+xml;application/rdf+xml;image/gif;image/jpeg image/png;x-scheme-handler/http;x-scheme-handler/https;x-scheme-handler/ftp;x-scheme-handler/chrome;video/webm;application/x-xpinstall;
StartupNotify=true
Actions=NewWindow;NewPrivateWindow;NewSafeMode;ProfileManager;
[Desktop Action NewWindow]
Name=Open a New Window
Name[de]=Ein neues Fenster öffnen
Name[es]=Abrir una ventana nueva
Name[fr]=Ouvrir une nouvelle fenêtre
Name[it]=Apri una nuova finestra
Name[nl]=Nieuw venster openen
Exec=firefox -new-window
OnlyShowIn=Unity;
[Desktop Action NewPrivateWindow]
Name=Open a New Private Window
Name[de]=Ein neues privates Fenster öffnen
Name[es]=Abrir una ventana privada nueva
Name[fr]=Ouvrir une nouvelle fenêtre de navigation privée
Name[it]=Apri una nuova finestra anonima
Exec=firefox --private-window
OnlyShowIn=Unity;
[Desktop Action NewSafeMode]
Name=Open in Safe Mode
Exec=firefox --safe-mode
OnlyShowIn=Unity;
[Desktop Action ProfileManager]
Name=Open Profile Manager
Exec=firefox --ProfileManager
OnlyShowIn=Unity;
我自己的’libreoffice-startcenter.desktop’文件:
[Desktop Entry]
Version=1.0
Terminal=false
Icon=libreoffice-main
Type=Application
Categories=Office;
Exec=libreoffice %U
# MimeType=application/vnd.openofficeorg.extension;
MimeType=application/vnd.oasis.opendocument.text;application/vnd.oasis.opendocument.text-template;application/vnd.oasis.opendocument.text-web;application/vnd.oasis.opendocument.text-master;application/vnd.sun.xml.writer;application/vnd.sun.xml.writer.template;application/vnd.sun.xml.writer.global;application/vnd.stardivision.writer;application/msword;application/vnd.ms-word;application/x-doc;application/rtf;text/rtf;application/vnd.wordperfect;application/wordperfect;application/vnd.openxmlformats-officedocument.wordprocessingml.document;application/vnd.ms-word.document.macroenabled.12;application/vnd.openxmlformats-officedocument.wordprocessingml.template;application/vnd.ms-word.template.macroenabled.12;application/vnd.oasis.opendocument.spreadsheet;application/vnd.oasis.opendocument.spreadsheet-template;application/vnd.sun.xml.calc;application/vnd.sun.xml.calc.template;application/vnd.stardivision.calc;application/vnd.stardivision.chart;application/msexcel;application/vnd.ms-excel;application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;application/vnd.ms-excel.sheet.macroenabled.12;application/vnd.openxmlformats-officedocument.spreadsheetml.template;application/vnd.ms-excel.template.macroenabled.12;application/vnd.ms-excel.sheet.binary.macroenabled.12;text/csv;application/x-dbf;application/vnd.oasis.opendocument.graphics;application/vnd.oasis.opendocument.graphics-template;application/vnd.sun.xml.draw;application/vnd.sun.xml.draw.template;application/vnd.stardivision.draw;application/vnd.oasis.opendocument.presentation;application/vnd.oasis.opendocument.presentation-template;application/vnd.sun.xml.impress;application/vnd.sun.xml.impress.template;application/vnd.stardivision.impress;application/mspowerpoint;application/vnd.ms-powerpoint;application/vnd.openxmlformats-officedocument.presentationml.presentation;application/vnd.ms-powerpoint.presentation.macroenabled.12;application/vnd.openxmlformats-officedocument.presentationml.template;application/vnd.ms-powerpoint.template.macroenabled.12;application/vnd.oasis.opendocument.formula;application/vnd.sun.xml.math;application/vnd.stardivision.math;
Name=LibreOffice
Name[pt_BR]=BrOffice
GenericName=Office
GenericName[de]=Büroanwendungen
GenericName[en]=Office
GenericName[es]=Oficina
GenericName[fr]=Bureautique
GenericName[it]=Office
Comment=The office productivity suite compatible to the open and standardized ODF document format. Supported by The Document Foundation.
Comment[de]=Die zum offenen und standardisierten ODF-Format kompatible Sammlung von Büroanwendungen. Unterstützt durch »The Document Foundation«.
Comment[en]=The office productivity suite compatible to the open and standardized ODF document format. Supported by The Document Foundation.
Comment[es]=Suite de productividad para la oficina compatible con ODF, el formato de documentos abierto y estandarizado. Con el soporte de la Document Foundation.
Comment[fr]=Suite bureautique compatible avec le format de document standard et ouvert ODF. Soutenue par The Document Foundation.
Comment[it]=La suite di produttività compatibile con il formato standard e aperto dei documenti ODF. Supportata dalla The Document Foundation.
X-Ayatana-Desktop-Shortcuts=Writer;Calc;Draw;Impress;Math;
[Writer Shortcut Group]
Name=Writer
Exec=libreoffice --writer %U
TargetEnvironment=Unity
[Calc Shortcut Group]
Name=Calc
Exec=libreoffice -calc %U
TargetEnvironment=Unity
[Draw Shortcut Group]
Name=Draw
Exec=libreoffice -draw %U
TargetEnvironment=Unity
[Impress Shortcut Group]
Name=Impress
Exec=libreoffice -impress %U
TargetEnvironment=Unity
[Math Shortcut Group]
Name=Math
Exec=libreoffice -math %U
TargetEnvironment=Unity
multi-tool图标’toolbox.desktop’文件:
[Desktop Entry]
Name=Ubuntu Toolbox
Comment=System Settings
Exec=unity-control-center --overview
Icon=redhat-tools
Terminal=false
Type=Application
StartupNotify=true
Categories=GNOME;GTK;System;
OnlyShowIn=Unity;
Keywords=Preferences;Settings;
X-Ubuntu-Gettext-Domain=unity-control-center
X-Ayatana-Desktop-Shortcuts=GnomeTerminal;SoftwareCenter;SoftwareUpdates;
[GnomeTerminal Shortcut Group]
Name=Gnome Terminal
Exec=gnome-terminal
TargetEnvironment=Unity
[SoftwareCenter Shortcut Group]
Name=Ubuntu Software Center
Exec=software-center
TargetEnvironment=Unity
[SoftwareUpdates Shortcut Group]
Name=Update Manager
Exec=update-manager -c
TargetEnvironment=Unity
这是我以前的一些努力。
第三种解决办法
对于11.10和更新的版本:
您仍然可以使用旧的GUI对话框在桌面上创建启动器。
使用ALT+F2
类型:
gnome-desktop-item-edit --create-new ~/Desktop
(首都D)
这将启动对话框(创建启动器):
您可以将此.desktop
文件放在任何文件夹中,然后拖放到启动器。
注:必须先安装gnome-desktop-item-edit
软件包,因此如果您安装了gnome-panel
,则会自动安装。
第四种办法
11.04及更早版本:
这是一种不编辑配置文件且没有root权限的方法。
首先在桌面上创建启动器(仅临时)
-
右键点击你的桌面
-
选择
Create Launcher...
-
根据需要创建自定义启动器。
现在你在桌面上获得了启动器。如果您对此感到满意,请将其置于Launcher Panel中:
-
打开您的主文件夹。按
Ctrl +
显示隐藏文件,如有必要。
H -
浏览到
.local/share/applications
-
将Launcher从桌面拖放到该文件夹。
-
现在,将您的启动程序从
.local/share/applications
拖放到屏幕左侧的启动栏中。 -
您现在可以删除桌面上的自定义启动器,如果它仍在那里。
而已。
第五种办法
我在这里看到很多复杂的答案。我认为这个解决方案很简单。
-
(首先安装包
alacarte
,如果你没有它,这是在11.10之前默认安装的菜单编辑器,显然你只需要做一次。) -
通过在短划线中搜索它来启动”Main Menu”。
-
为您的应用程序添加一个项目并关闭编辑器。
-
通过在短划线中搜索它来启动应用程序。
-
图标上的Right-click和“Keep in launcher”
在Oneiric中,您可能还需要安装gnome-panel
软件包,alacarte
应该但不依赖于此软件包。看到:
https://bugs.launchpad.net/ubuntu/+source/alacarte/+bug/826049
第六种办法
对于11.10和更新的版本:
在Ubuntu 11.10中,从.desktop文件创建自定义启动程序的最简单方法是复制现有的.desktop文件或创建自定义启动程序。
要创建一个简单的自定义文件,您需要将这些条目添加到您在~/.local/share/applications/
中选择的.desktop文件中
nano ~/.local/share/applications/your_application_name.desktop
[Desktop Entry]
Name=the name you want shown
Comment=
Exec=command to run
Icon=icon name
Terminal=false
Type=Application
StartupNotify=true
对于.desktop文件的额外选项,您可以访问this site。所有可用的选项在那里都有很好的描述。
您还可以将现有应用程序的.desktop文件从/usr/share/applications/
复制到您的~/.local/share/applications/
并进行编辑以适合您的需求。
即:这会将gedit
.desktop文件复制到应为用户保存.desktop文件的文件夹中
cd ~/.local/share/applications
sudo cp /usr/share/applications/gedit.desktop .
之后,使用nautilus ~/.local/share/applications/
打开该位置,然后将您刚刚创建的文件拖放到Unity启动器。
有一个选项,而不是拖动ñ放置文件,您可以打开dconf-editor
(使用sudo apt-get install dconf-tools
安装它或在USC
中查找它)并导航到desktop.unity.launcher并通过双击右侧的条目来编辑密钥favorites
钥匙。
要添加自定义启动程序,请使用此格式'/home/bruno/.local/share/applications/gedit.desktop'
将其添加到您想要的位置。不要忘记尊重,
和该行中的空格,并确保该行分别以[
和]
开头和结尾。
使用此方法,您需要注销并返回以使favorites
中的更改生效。
第七种办法
对于12.04我来说,我做了以下工作:
-
在桌面上创建一个”Untitled Document”。只需右键单击桌面并选择创建新文档。
-
使用Gedit编辑文件并添加以下行:
[桌面条目]类型=应用程序
保存文件,然后将其重命名为任何你想要的,但在名称末尾添加.desktop。例如,如果我想为photoshop等葡萄酒程序创建快捷方式,我会将其作为名称photoshop.desktop
现在您应该可以右键单击该文件,Launcher Properties应该如下例所示:
正如你现在可以在图像中看到的那样,你可以在命令行中放入任何你想要的东西,其他名称,图标等等。
不要忘记将权限设置为可执行文件!否则它将无法工作。
这就像这里其他答案的简短版本。
第八种办法
要将应用程序添加到统一启动器中:
-
点击
dash
(ubuntu标志,左上角) -
打开你想添加的应用程序。
-
一个图标将出现在启动器中,右键单击该图标,然后单击
Pin to launcher
。 -
要从启动器
right click
中删除应用,启动器图标和Quit
注意:此时的图标无法在加载后重新排列,您必须按照希望它们在启动器中安装图标时的顺序放置图标!
第九种办法
12.04
对于那些喜欢有GUI的人来说:在12.04中,你也可以选择使用Arronax这是一个Nautilus插件来创建你的启动程序(.desktop文件更准确),并解释它是如何工作的。
如果您已经拥有应用程序启动器,只需右键单击并单击“为此文件创建启动器”选项,如下所示。
如果您启用了桌面图标,只需右键单击桌面,即可创建具有特定命令的自启动程序,这将为您提供以下选项来创建空白启动程序:
一旦你点击了”Create Starter”,你将会打开下面的对话框,你可以用你喜欢的任何命令轻松地定制你的启动器:
将启动器保存到桌面后,您将看到如下所示的文件:
然后,您只需将其捡起并拖放到您喜欢的任何地方的码头上即可:
一些不错的功能:
-
能够将关键字分配给命令,以便通过统一破折号进行搜索。
-
按照this youtube video的说明,在Wine中为Windows程序创建启动程序的速度相对较快(尽管我自己也没有测试过)
安装
安装前的免责声明:Arronax仍然处于Alpha开发阶段,因为没有很多程序员正在开发它,我没有遇到任何问题,但我更愿意提供给你一个提醒,以免影响您的选择安装另一个您不知道的PPA。
要使用终端窗口(Ctrl
+ Alt
+ T
打开它)进行安装,请输入以下命令:
sudo add-apt-repository ppa:diesch/testing
sudo apt-get update
sudo apt-get install arronax
做完这些之后,您必须通过登录和注销重新启动Nautilus,或在终端窗口中键入以下内容:
nautilus -q
11.10
我打算这是对Bart van Heukeloms的回答,因为它也适用于11.10版本,但作为主持人在我提出编辑时很好地指出,这是一个不同的答案,尽管它也适用。在升级之前,我在11.10上试了几次,没有任何问题。不过我不能保证它仍然可以正常工作,尽管我希望它仍然可以工作。
11.10中的安装与12.04中的安装完全相同。
Note: This quick tutorial is shamelessly inspired/plagiarised from Meilins post on the Ubuntuguide website so he is due all the credit.
第十种办法
这是一种不编辑配置文件的方法。
首先在桌面上创建启动器(仅临时)
-
右键点击你的桌面
-
选择
Create Launcher...
-
根据需要创建自定义启动器。
现在你在桌面上获得了启动器。如果您对此感到满意,请将其置于Launcher Panel中:
-
以root身份打开Nautilus。按
Alt
+F2
并输入gksu nautilus
。 -
浏览到
/home/your-username/Desktop
-
通过点击右键复制启动器并选择
Copy
。 -
浏览到
/usr/share/applications
-
通过在空白处单击右键来粘贴您的启动器,然后选择
Paste
。 -
现在,将您的启动程序从
/usr/share/applications
拖放到屏幕左侧的启动栏中。 -
您现在可以删除桌面上的自定义启动器。
而已。