GNU/Linux >> Linux の 問題 >  >> Ubuntu

Unity Launcherアイコンの注文を自動化しますか?

インストールプロセスを自動化するインストールスクリプトを作成しました。その後、アイコンをユニティランチャーに再配置/追加/削除したいと思います。

dconf watch /を使用する アイコンを並べ替えると、出力が表示されます。これを行うためのコマンドラインの方法はありますか–おそらくgsettings

承認された回答:

はじめに

以下の簡単なスクリプトでは、ファイルを引数として取り、プログラムへのショートカットがファイルに表示されるようにランチャーを設定します(1行に1つ)。

基本的な考え方は、ランチャーアイコンは実際には.desktopへのリンクであるということです。 ファイル(表示される可能性がある場所)、およびランチャーアイテムを設定するための標準的な方法は、次のコマンドを実行することです。

gsettings set com.canonical.Unity.Launcher favorites  "[ 'item1.desktop' , 'item2.desktop' , . . . 'item3.desktop;  ]"

多くのアイテムを追加したい場合、これは面倒になる可能性があり、引用は面倒になる可能性があります。いつでも目的のプログラムを開き、アイコンを右クリックして[ランチャーにロック]オプションを呼び出すことができますが、大量のアイテムを扱う場合も実用的ではありません。

ここでのアプローチは、1行に1回ずつファイルを読み取り、コマンドテキストを作成して、それを実行することです。これは、gsettings setを実行するのと同じです。 上記のコマンド。ただし、ハードワークはあなたのために行われます。

使用法:

スクリプトを実行するには、スクリプトをファイルに保存し、chmod +x /path/to/scriptを使用して実行可能にします。 として実行

python /path/to/script /path/to/file

入力ファイルには、/usr/share/applications/firefox.desktopなど、ランチャーに追加するアイテムへのフルパスが含まれている必要があります。 、ただし必須ではありません。firefox.desktopの行 大丈夫です。

デモ

スクリプトを実行する前に

スクリプトの実行後

順序は、入力ファイルに表示されるエントリとまったく同じであることに注意してください

スクリプトソース

#!/usr/bin/env python
# Author: Serg Kolo
# Date: April 22, 2016
# Purpose:  programmatically set Unity launcher items
# by reading a file
# Written for: http://askubuntu.com/q/760895/295286
# Tested on: Ubuntu 14.04 LTS
import sys
import subprocess

command="""gsettings set com.canonical.Unity.Launcher favorites """

def run_command(cmd):
    p = subprocess.Popen(cmd, shell=True, stdout=subprocess.PIPE)
    output = p.stdout.read().strip()
    return output  


items=""
with open(sys.argv[1]) as file:
  for line in file:
      temp = "'" + line.strip().split('/')[-1] + "'"
      items = ",".join([items,temp])

items = '"[ ' + items[1:] + ' ]"'

print run_command(command + " " + items)

Ubuntu
  1. Ubuntu 16.04ランチャーアイコンサイズGsettingsコマンドライン?

  2. UnityランチャーとSteamアイコン?

  3. UnityLauncherはUbuntu12.04でFirefoxの汎用アイコンを使用しますか?

  1. Ubuntu 12.04でランチャーアイコンアプリケーションメニューを更新する方法は?

  2. Unity Launcherでキーワードをアプリケーションに関連付けますか?

  3. Unityランチャーを透明にする方法は?

  1. Unity 2dで常に表示されるようにランチャーを設定するにはどうすればよいですか?

  2. * .desktopファイルからShスクリプトを実行しますか?

  3. Ubuntu 16.04 Eclipseランチャーアイコンの問題?