如何永久移动 Unity Launcher 中的图标(即重启后仍可继续使用)

如何永久移动 Unity Launcher 中的图标(即重启后仍可继续使用)

关于这个问题有很多已回答的问题,但究竟如何才能永久地移动图标,以便在下次启动后它们仍位于原来的位置?我经常使用的某些程序的图标是最近安装的,因此它们的 Unity 启动器图标位于栏的底部,整齐地“折叠起来”。这台机器是一台旧的 Sempron 驱动的 HP/Compaq NX6325,因此它严重低于带有 Unity 的 12.04LTS 的规格——我喜欢这一点——但这让人很沮丧。

我发现新安装的程序的图标放在底部,所以是的,我可以删除启动器顶部附近较少使用的程序,然后重新安装它们,但这似乎是一种荒谬的组织方式。

我不可能成为唯一一个在 Unity 中拥有超过 16 个启动器的人!


致 Rinzwind:

...之后的正常操作是将其拖到另一个地方。这不起作用吗?

是的,它工作正常。但重启后,菜单又回到我将它们拖到新位置之前的状态。抱歉,如果我的原始帖子没有说清楚,但我不知道如何详细说明。请参阅下面我对 chaskes 的回复,也许会有所帮助。

这是一个永久性的行动。

在我的计算机上不是这样。我以前可以永久移动图标,但现在我只能在重新启动之前更改它们的位置。我不能肯定地说问题何时首次出现。

致 chaskes:

我知道如何做这些事情,但是,从我最初的帖子来看:

...究竟怎样才能永久移动图标,以便下次启动后它们还能停留在原来的位置?

我想说的是,我有以下图标,顺序如下:Dash Home、Chromium、Firefox、Thunderbird、Blue Fish、Filezilla、Picasa 等。我可以将它们移动到任何我想要的位置。但如果我重新启动,它们会恢复到上面显示的顺序,就好像这是默认顺序一样。如您所见,它不是按字母顺序排列的。

致 blvdeer:是的,你明白我想要什么,我想你已经接近目标了。如果我运行你给出的命令:

gsettings get com.canonical.Unity.Launcher favorites

我明白了:

['chromium-browser.desktop', 'firefox.desktop',
'/home/Scooby2/.launcher/Thunderbird.desktop', 'bluefish.desktop',
'filezilla.desktop', '/home/Scooby2/.launcher/Picasa 3.desktop',
'gimp.desktop', ....]

(四个点代表文件的其余部分,为简单起见省略了。)它的内容略有不同,我不知道为什么。但是我可以将图标拖到我想要的位置。如果我再次运行相同的命令,列表将显示新的顺序 - 我可以将其保存到文件或脚本中。但是如果我运行

gsettings set com.canonical.Unity.Launcher favorites
"['/usr/share/app-install/desktop/dvdstyler-data:dvdstyler.desktop',
'kde4-kdenlive.desktop', 'gimp.desktop', 'vlc.desktop',
'ssvnc.desktop', ....]"

(四个点代表文件的其余部分,为简单起见省略了)我得到了这个:

用法:gsettings [--schemadir SCHEMADIR] 设置 SCHEMA[:PATH] KEY VALUE

将 KEY 的值设置为 VALUE

参数:SCHEMADIR 搜索其他架构的目录
SCHEMA 架构的名称 PATH 可重定位架构的路径 KEY 架构中的键 VALUE 要设置的值

如果此命令可以运行,我可以将其放入启动时运行的脚本中以重写 Unity Launcher 顺序 - 问题没有解决,但变通方法有效。查看 gsettings 的手册页并在 Google 上搜索帮助让我意识到这有多复杂,而我知道的又有多少。有人有什么想法吗?

答案1

要更改启动器中的图标顺序,您可以将其拖动到新位置。只需左键单击图标并按住,将其拖动到您想要的位置,然后松开。

关于单击并按住的注意事项:您可以立即将图标拖到右侧;也就是说,将其拖出启动器,然后再将其拖回新位置。在不将图标拖出启动器的情况下垂直移动图标之前,您需要等待一两秒钟才能移动它。否则,您将滚动启动器图标。(感谢 Catskul 提出这一点。)

要从启动器中删除图标,请右键单击该图标并选择从启动器解锁

要防止新安装的程序自动添加到启动器,请更改软件中心的设置。点击菜单中的查看,然后取消选中“启动器中的新应用程序”

回应 OP 的评论:

如果这些更改在重启后没有保留,请尝试重新安装libdconf0,这是来自的建议Unity 重启后重置

sudo apt-get install --reinstall libdconf0

答案2

我的理解是您想要重新排序启动器上物品的放置位置。

获取启动器列表
在终端中输入以下内容并按回车键

gsettings get com.canonical.Unity.Launcher favorites  

类似这样的事是会被归还的。

['application://google-chrome.desktop', 'application://gnome-terminal.desktop', 
'application://nautilus.desktop', 'application://media1.desktop', 
'unity://running-apps', 'unity://expo-icon', 'unity://devices']

重新排序启动器
复制此内容,粘贴到文本编辑器中并重新组织内容。假设我想将鹦鹉螺保持在顶部,我会执行以下操作:

['application://nautilus.desktop', 'application://gnome-terminal.desktop', 
'application://google-chrome.desktop', 'application://media1.desktop', 
'unity://running-apps', 'unity://expo-icon', 'unity://devices']

设置顺序
在终端类型中:

gsettings set com.canonical.Unity.Launcher favorites     
['application://nautilus.desktop', 'application://gnome-terminal.desktop', 
'application://google-chrome.desktop', 'application://media1.desktop', 
'unity://running-apps', 'unity://expo-icon', 'unity://devices']

刷新 Unity
Alt+ F2,输入unity并按回车键,这将刷新 unity 和启动器。

这应该设置顺序并且应该在重启后继续存在,但我没有 16 个启动器并且还没有测试过它们。

如果这没有工作,使用以下 shell 脚本并在登录后运行它:

#!/bin/bash
gsettings set com.canonical.Unity.Launcher favorites     
['application://nautilus.desktop', 'application://gnome-terminal.desktop', 
'application://google-chrome.desktop', 'application://media1.desktop', 
'unity://running-apps', 'unity://expo-icon', 'unity://devices']

将其保存在您的主文件夹中,例如 a.sh,然后使其可执行

chmod +x a.sh

然后,当您登录时:
Alt+ F2,输入a.sh并按回车键。

我希望有人发布一个更清晰的解决方案

答案3

这个问题通过运行 It appeared libdconf0 was broken 得到解决sudo apt-get install --reinstall libdconf0 。感谢 chaskes 提供解决方案。

相关内容