インジケーターアプレットに表示されるアイコンの順序を変更することはできますか? Tomboyインジケーター、Weatherインジケーター、Clipboard-managerインジケーター、Ubuntu OneおよびDropboxインジケーター、および従来のMessagesインジケーターとSound Menuインジケーターに加えて、インジケーターのアプレットが少し混乱し、アイコンのソートが非常に役立ちます...
システムインジケータは、設計により固定された順序になっています。注文が気に入らないかもしれませんが、注文を固定することでサポートが容易になります(注文については延々と議論できます)。アプリケーションインジケータの動作は少し異なります。デフォルトの順序になるように設計されていますが、アプリケーションは連続性のためにそれを調整できます。たとえば、アプリケーションに2つのインジケーターが隣接している場合。
このシステムはアプリケーション開発者による悪用の可能性があるため、システムには一連のオーバーライドがあります。 1つ目はシステムレベルです。これにより、ディストリビューションがすべてのユーザーに対して修正できる不正なアプリケーションがあることが判明すると、パッケージで管理できます。次の場所にあります。
/usr/share/indicator-application/ordering-override.keyfile
任意のステータス通知IDをそこに配置し、そのアプリケーションの新しいインデックスのために、新しい順序付けインデックスを与えることができます。次の場所にあるホームディレクトリに存在できるユーザーごとのオーバーライドファイルもあります。
~/.local/share/indicators/application/ordering-override.keyfile
希望する方法でパネルを調整する助けになることを願っています!
公式のubuntuのもの(天気、ubu-one、バッテリー、メッセージ、私、音、シャットダウン)は所定の場所にハードコーディングされています。吸います。他の人は先着順、右左優先の法則を使用して順序を取る必要があります。これから判断すると brainstorm/feature request 、答えは:いいえ、GUIを使用してアイコンの順序を手動で変更することはできません。しかし @ Ted Gould's answerを参照してください。
Unityパネルのアプリケーションインジケータの位置を変更するには、ordering-override.keyfile
の下にある/usr/share/indicator-application
というファイルを編集する必要があります。このファイルを編集するとすべてのユーザーの設定が変更されるため、~/.local/share/indicators/application/ordering-override.keyfile
にコピーして、ユーザーのみに変更を加えることができます。
mkdir -p ~/.local/share/indicators/application
cp /usr/share/indicator-application/ordering-override.keyfile ~/.local/share/indicators/application/
ターミナルで次のコマンドを実行してファイルを開きます。
gedit ~/.local/share/indicators/application/ordering-override.keyfile
このファイルでは、パネルにアプリケーションインジケータの順序に関する既存のルールが表示されます。最初のものはnm-applet
で、値は「1」です。これは、パネルに右から左に表示される最初のアプリケーションインジケータであることを意味します。
これを例として使用すると、独自のアプリケーションインジケーターを追加し、その名前とtransmission=6
などの番号を入力して位置を指定できます。これにより、送信アプリケーションインジケーターがパネルの6番目のインジケーターとして表示されます(右から)他の5つのインジケータが存在する場合、左)。
ソース: http://www.webupd8.org/2011/06/how-to-change-application-indicators.html
さて、あなたの場合、ordering-override.keyfile
ファイルは次のようになります。
[Ordering Index Overrides]
nm-applet=1
My_Weather_Indicator=2
lang_indicator=3
bluetooth_manager=4
indicator_sysmonitor=5
transmission=6
Dropboxインジケーターの並べ替えを有効にする手順
ドロップボックスインジケーターを並べ替える場合は、テッドグールドの指示に従ってください。さらにいくつかの手順があります。
注:/usr/share/...
でファイルを編集した場合、スクリプトを/etc/rc.local
に配置する必要があります(look for注以下)
Dropboxはインジケーター名にPIDを追加し、Dropboxが起動するたびにこれが変わるため、Dropboxが起動するたびにordering-override.keyfile
を更新する必要があります。
これを行うには、テキストエディターを開き、次のスクリプトをコピーして貼り付け、start-dropbox.sh
のような名前を付けます。次に、右クリックして[プロパティ]を選択し、[許可]タブに移動して[プログラムとして実行ファイルを許可する]ボックスをオンにするか、ターミナルを開いてスクリプトを配置したフォルダーに移動し、実行Sudo chmod 755 ./start-dropbox.sh
を実行します
#!/bin/bash
#Disclaimer: This script is intended for use with Ubuntu 14.04. You alone are responsible any consequence resulting from its use.
#The purpose of this script is to start dropbox, update the keyfile, and restart the indicator panel.
#Start dropbox if not already started (for some reason pgrep didn't work)
[[ $(ps aux | grep dropbox | grep dist | awk '{print $2 }') = "" ]] && dropbox start -i
#If the override file exists
if [[ -e ~/.local/share/indicators/application/ordering-override.keyfile ]]
then
while [ "$(ps aux | grep dropbox | grep dist | awk '{print $2 }')" = "" ]; do
sleep 1s
done
sleep 5s #dropbox creates several PIDs, so wait a bit before continuing
sed -e "s/dropbox-client-.*=/dropbox-client-$(ps aux | grep dropbox | grep dist | awk '{print $2 }')=/g" -i ~/.local/share/indicators/application/ordering-override.keyfile
restart unity-panel-service
fi
これで、「スタートアップアプリケーション」を開き、スクリプトへのフルパスを「コマンド」として使用して新しいエントリを作成できます(〜/ start-dropbox.shを使用しても機能しません。/home/yourname/startを実行する必要があります) -dropbox.sh)。
**注:ここで、/etc/rc.local
の最後に完全なスクリプトパスを追加します
1つのオプションの手順は、Dropboxの設定を開き、「システムの起動時にDropboxを開始する」のチェックを外すことです。 Dropboxは起動するたびにこれを上書きするため、既に[スタートアップアプリケーション]リストにあるDropboxのコマンドを変更することはできません。
できました!
~/.local/share/indicators/application/ordering-override.keyfile
は次のようになります。
[Ordering Index Overrides]
multiload=13
My-Weather-Indicator=12
redshift=11
Diodon=10
Chars=9
indicator-brightness=8
dropbox-client-24651=7
nm-applet=6
gnome-power-manager=5
ibus=4
gst-keyboard-xkb=3
gsd-keyboard-xkb=2
chrome-app-indicator-1=1