Как удалить VLC из меню звука / Как предотвратить появление VLC в меню звука.
Удаление VLC из меню звука
Метод GUI
- Установите редактор dconf
- Откройте dconf-editor и перейдите к:
com/canonical/indicator/sound
- В списке пунктов soundmenu (
interested-media-players
) удалите те приложения, которые вам не нужны / не должны отображаться в меню. Закройте dconf-редактор.
- Готово, VLC исчез из меню.
Метод командной строки
Чтобы прочитать текущие пункты меню:
gsettings get com.canonical.indicator.sound interested-media-players
дает вывод как:
['rhythmbox.desktop', 'vlc.desktop']
Чтобы удалить VLC, удалите vlc.desktop
из списка и установите измененное меню командой:
gsettings set com.canonical.indicator.sound interested-media-players "['rhythmbox.desktop']"
Предотвращение возврата VLC в меню звука (14.04)
Решение удаляет VLC из меню звука, но если вы запустите VLC, он снова появится в меню звука. Сценарий ниже не предотвращает это, но немедленно и автоматически удаляет его после закрытия VLC.
Чтобы использовать это:
Скопируйте приведенный ниже скрипт, вставьте его в пустой текстовый файл и сохраните как vlc
, сделайте его исполняемым. Затем скопируйте vlc.desktop
файл из /usr/share/applications
в ~/.local/share/applications
и заменить (первый) запуск линии с Exec=
помощью Exec=/path/to/script/vlc
. Выйдите из системы и вернитесь обратно. Файл рабочего стола будет перенаправлен в скрипт, скрипт запустит VLC и подождет, пока он остановится, и немедленно удалит VLC из звукового меню.
#!/usr/bin/python3
import subprocess
import getpass
import time
curruser = getpass.getuser()
def read_currentmenu():
# read the current launcher contents
get_menuitems = subprocess.Popen([
"gsettings", "get", "com.canonical.indicator.sound", "interested-media-players"
], stdout=subprocess.PIPE)
return eval((get_menuitems.communicate()[0].decode("utf-8")))
def set_current_menu(current_list):
# preparing subprocess command string
current_list = str(current_list).replace(", ", ",")
subprocess.Popen([
"gsettings", "set", "com.canonical.indicator.sound", "interested-media-players",
current_list,
])
subprocess.call(["/usr/bin/vlc"])
current_list = read_currentmenu()
for item in current_list:
if item == "vlc.desktop":
current_list.remove(item)
set_current_menu(current_list)
Другие приложения
Этот метод / скрипт также можно использовать для других приложений в меню звука. Затем две строки в последнем разделе скрипта должны быть изменены в соответствии с другим приложением:
if item == "vlc.desktop": (change to desktop file of the application)
а также
subprocess.call(["/usr/bin/vlc"]) (change the command to run the application)