kla*_*usi 22 gnome gnome-shell-extension 14.04 gnome-shell
shell 扩展小部件的顺序似乎是随机的,我该如何更改?例如,我想在左侧显示日期/时间信息。
我的外壳面板:

Jib*_*bow 24
首先,您必须找到要更改的扩展名的相应文件。
你通常可以在这里找到它:~/.local/share/gnome-shell/extensions。
如果扩展是通过包管理器安装的,你可以在这里找到它:(/usr/share/gnome-shell/extensions/感谢AB)
然后进入扩展的目录并extension.js使用任何文本编辑器打开“ ”。
转到以下行:(function enable()使用编辑器中的搜索功能 - 如果找不到它,请转到下方的“更新”部分)。
在这个函数里面通常是一行Main.panel.addToStatusArea('NAME', _OTHERNAME, NUMBER, LEFT/CENTER/RIGHT);(同样:如果你找不到它,请转到Update)。可能会发生最后两个参数 (NUMBER和POSITION) 丢失的情况;看起来像这样:(Main.panel.addToStatusArea('NAME', _OTHERNAME);
别担心!您的计算机将解释较短的版本:('NAME', _OTHERNAME, 0, right);随意添加缺少的参数。但始终按照显示的顺序!!!)
的POSITION定义,其中面板上的图标应。有三个区域:left,center和right。您可能不想更改此值,但可以随意更改。以下是POSITION面板上的三种可能状态:
------------------------------------------------------------------
Activities Date Other icons
------------------------------------------------------------------
left center right
Run Code Online (Sandbox Code Playgroud)
您可能想要更改的更重要的值是NUMBER. 它定义了子面板内图标的顺序。可能的值为:
0:我不在乎图标在哪里。
负值:位置;从右侧开始(可能很重要,因为所有扩展图标都在系统图标之后加载)
正值:位置;从左侧开始。较高的值将位于更靠右侧的位置。
您必须在所有扩展中使用这些值,因为相同的值相互冲突(位置 2 上的两个不同扩展没有任何意义)。有时甚至以下价值观会发生冲突。
每次更改值时,请确保保存文件。然后点击Alt+ F2,输入r和Enter。面板将使用新排序的图标刷新。这是处理这些值的快速选项。
最后引用Mathematical Coffee 的一段话:
使用 Main.panel.addToStatusArea(unique_name_of_indicator, inidicator, position, box) 将 SystemStatusButton 或 PanelButton 添加到面板。这会为您处理将其菜单添加到菜单管理器中(框是 Main.panel._{left, right, center}Box,省略 box 参数默认给出右框,省略位置给出位置 0)。如果您的按钮只是一个 ButtonBox(即没有菜单),那么坚持使用。_{左,右,中}Box.insert_child_at_index。
如果您对这种方法有任何问题,请告诉我。
我环顾四周,发现这种方式不适用于所有扩展(主要仅适用于简单/新扩展)。在这种情况下经常使用的扩展是“系统监视器”。修改图标位置的方式应该(一般)一样(我没有测试过。所以一定要创建一个备份文件)。但是“系统监视器”存在一些差异:
var enable = function ()。所以最好enable在文件中搜索这个词。定义图标位置的地方称为Main.panel._addToPanelBox('system-monitor', tray, 1, panel);。更改数字应具有与上述相同的效果。为了改变整个区域,您有两个选择:
通过将同一行更改为Main.panel._addToPanelBox('system-monitor', tray, 1, Main.panel._rightBox);(注意:扩展程序设置菜单中的位置将不再起作用)。
或者通过将行let panel = Main.panel._rightBox;(再次使用搜索功能)更改为您想要的位置(_leftBox, _centerBox, _rightBox)。
(这些步骤可以应用于任何其他扩展。但名称会略有不同。但仍然:在我对这个答案的第一次尝试中描述了通用方法)
简而言之,整个过程:
搜索相应的文件。然后enable在这个文件里面搜索。然后搜索任何类似的东西Main.panel...并更改值(非常不言自明)。
最后我注意到你提到了时间面板。我没有找到修改它的位置的好方法,但这里有一些别的东西:
您已安装“系统监视器”。很好 :)
打开相应extension.js并将这两行中的“右”一词更改为“左”:
Main.panel._addToPanelBox('dateMenu', dateMenu, -1, Main.panel._rightBox);和Main.panel._rightBox.insert_child_at_index(dateMenu.actor, -1);。
最后,您必须在此扩展的设置中检查“移动时钟”。你去吧!我还没有测试过,但它应该可以工作。如果没有,请写评论:)
啊!忘了提:每次更改值时,保存文件并使用Alt+ F2- type r- hit刷新面板Enter。并确保创建备份文件!!!:D
| 归档时间: |
|
| 查看次数: |
16624 次 |
| 最近记录: |