Я не использую VLC так часто, чтобы иметь его там, поэтому я хотел бы удалить его из меню звука в правом верхнем углу. Я нашел небольшое изображение, чтобы показать, как оно выглядит (звуковое меню открыто и показывает VLC вместе с другими музыкальными проигрывателями).
Извините за предоставление изображения с очень низким разрешением.
Перемещение плагин VLC DBus
sudo mv /usr/lib/vlc/plugins/control/libdbus_plugin.so /usr/lib/vlc/plugins/control/libdbus_plugin.so.backup
Открывают dconf-editor
, Remove vlc.desktop
от:
/com/canonical/indicator/sound/interested-media-players
Или просто сброс это через Примечание терминала
dconf reset /com/canonical/indicator/sound/interested-media-players
: Someones может понравиться к , Изменяют звуковое меню индикатора, чтобы скрыть средства управления от неактивного игрока или удалить его после closeing. Другими словами, Рабочие плееры имеют полные средства управления, Закрытые любое единственное средство запуска (никакие кнопки управления) или исчезают полностью из меню.
Как удалить VLC из звукового меню / Как препятствовать тому, чтобы VLC вновь появился в звуковом меню.
Удаление VLC из звукового меню
Метод GUI
com/canonical/indicator/sound
interested-media-players
) объекты, удалите приложение (приложения), в котором Вы не нуждаетесь / хотят появиться в меню. Закройте dconf-редактора.
Метод командной строки
Считать текущие пункты меню:
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
. Выйдите из системы и въезжайте задним ходом. desktopfile будет перенаправлен к сценарию, сценарий будет запускать VLC и ожидать его, чтобы остановить и удалить VLC из soundmenu сразу.
#!/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)
Шоу определяемые пользователем приложения в soundmenu, только если они работают
решение ниже, гибко применимы для mutiple приложений сразу с положением в звуковом меню. Пользователь может определить (и изменение), какие приложения имеют постоянное положение в меню, и которые должны быть удалены из звукового меню после того, как они закрываются.
, Что это и что это делает
, решение существует сценария, который работает от запуска (вход в систему). Это позволяет определяемым пользователем приложениям появляться в звуковом меню, но удаляет те приложения из soundmenu после того, как они закроются.
сценарий не имеет никакого эффекта на функциональность файлов на рабочем столе. Я не мог заметить эффект на загрузку процессора, использование памяти незначительно.
, как использовать
Копия сценарий ниже в пустой файл, сохраните его как cleanup_soundmenu.py
В строке, запускающейся с no_show =
, приложения установлены, который должен быть очищен из меню после того, как они закрываются. Поданы два примера: ['rhythmbox', 'vlc']
. Имена получены из своих файлов на рабочем столе, разделенных от .desktop
.
В строке, начиная с cleanup_interval
, пользователь может определить интервал между проверками уборки. По умолчанию это - 10 секунд.
Добавляют следующую строку к Startup Applications
(Тире>, Приложения Запуска> Добавляют):
python3 /path/to/cleanup_soundmenu.py
На следующем входе в систему, определенное приложение будет убрано из звукового меню, если они не будут работать.
сценарий
#!/usr/bin/env python3
import subprocess
import time
import getpass
no_show = ['rhythmbox', 'vlc'] # add names here, to set apps not to show
cleanup_interval = 10 # cleanup interval (in seconds)
curruser = getpass.getuser()
def createlist_runningprocs():
processesb = subprocess.Popen(
["ps", "-u", curruser],
stdout=subprocess.PIPE)
process_listb = (processesb.communicate()[0].decode("utf-8")).split("\n")
return process_listb
def read_soundmenu():
# read the current launcher contents
get_menuitems = subprocess.Popen([
"gsettings", "get",
"com.canonical.indicator.sound",
"interested-media-players"
], stdout=subprocess.PIPE)
try:
return eval(get_menuitems.communicate()[0].decode("utf-8"))
except SyntaxError:
return []
def set_soundmenu(new_list):
# set the launcher contents
subprocess.Popen([
"gsettings", "set",
"com.canonical.indicator.sound",
"interested-media-players",
str(new_list)])
def check_ifactionneeded():
snd_items = read_soundmenu()
procs = createlist_runningprocs()
remove = [item+".desktop" for item in no_show if not item in str(procs)]
if len(remove) != 0:
for item in remove:
try:
snd_items.remove(item)
except ValueError:
pass
return snd_items
else:
pass
while 1 != 0:
new_list = check_ifactionneeded()
if new_list != None:
set_soundmenu(new_list)
time.sleep(cleanup_interval)
Это статья о том, как добавить эту опцию, делает противоположный сценарий:
Инструменты-> Предпочтения-> все-> интерфейс Interface-> Control Interface-> D-Bus Control
Открывают Терминальное приложение, затем копируют, вставляют и выполняют одну из следующей команды. После этого звуковой индикатор будет автоматически вычищен после выходов VLC.
не оставляют записи в звуковом индикаторе:
(mkdir -p ~/.local/share/applications);(cp /usr/share/applications/vlc.desktop ~/.local/share/applications);(sed -i 's/Exec=\/usr\/bin\/vlc --started-from-file %U/Exec=sh -c "\/usr\/bin\/vlc --started-from-file %U; gsettings reset com.canonical.indicator.sound interested-media-players"/' ~/.local/share/applications/vlc.desktop)
отпуск запись Rhythmbox в звуковом индикаторе:
(mkdir -p ~/.local/share/applications);(cp /usr/share/applications/vlc.desktop ~/.local/share/applications);(sed -i 's/Exec=\/usr\/bin\/vlc --started-from-file %U/Exec=sh -c "\/usr\/bin\/vlc --started-from-file %U; gsettings set com.canonical.indicator.sound interested-media-players \\\"['\'rhythmbox.desktop\'']\\\""/' ~/.local/share/applications/vlc.desktop)
изменения отмены:
rm ~/.local/share/applications/vlc.desktop