Как заставить пользовательский файл рабочего стола быть программой по умолчанию для определенных файлов

Я написал оболочку python для vlc, которая сидит в качестве appindicator и контролирует нажатия клавиш для vlc и загружает файлы next / prev в папке. У меня есть скрипт, работающий из сценариев nautilus. Теперь мне нужно, чтобы этот скрипт был программой открытия по умолчанию для видеофайлов. Как я могу достичь этого? Я уже сделал файл .desktop и поместил его в ~/.local/share/applications

Это содержимое файла рабочего стола.

[Desktop Entry]
Name=vlcwrapy-nix
Icon=vlc
Type=Application
Exec=/home/thekindlyone/projects/vlcwrapy-nix/vlcwrapy-nix.py

python wrapper для vlc Но в контекстном меню open with файла nautilus файла vlcwrapy-nix не отображается. Пожалуйста, помогите. PS: Мне нужен мой скрипт, чтобы получить имя файла, который дважды был нажат как аргумент .. и рабочий каталог будет каталогом, в котором находится файл с двойным щелчком (точно так же, как nautilus- скрипты ведут себя)

1
задан 14 December 2014 в 16:17

2 ответа

Я не уверен в том, что Nautilus изменит программу по умолчанию с открытым кодом (на Thunar он находится в меню правой кнопки мыши, открывается с другим, меняет значение по умолчанию, но это на самом деле не помогает) ... [ ! d0]

У меня есть куча файлов .desktop в /usr/share/applications/, пыталась ли копировать ваш файл .desktop? Или ~/.local/share/applications/?

У меня также есть файл в моем доме ~/.local/share/applications/defaults.list, у которого есть много таких списков:

[Default Applications]
audio/mpeg=vlc.desktop
video/x-theora+ogg=vlc.desktop
application/pdf=evince.desktop

После того, как вы получите свой пользовательский файл .desktop в (! d3)

Или вы могли бы изменить свой файл /usr/bin/vlc как ваш сценарий (например, если вы хотите изменить этот файл defaults.list, чтобы использовать новый .desktop. или ссылку на него) вместо реального vlc? Тогда вам, вероятно, придется сменить скрипт для запуска нового «реального» vlc (например, переименованного в /usr/bin/vlc-real. Тогда в любое время что-то пытается запустить vlc, вместо этого они будут запускать ваш собственный скрипт.

1
ответ дан 24 May 2018 в 01:00
  • 1
    Nautilus тоже открыт, но мой пользовательский .desktop не появляется там. Другие ресурсы в Интернете, похоже, предлагают. замена реального vlc с моим скриптом - это взломать, на который я не слишком увлечен, зарезервировать как последнюю попытку канавы. – thekindlyone 14 December 2014 в 16:59
  • 2
    Пробовал добавленное изменение, о / usr / share / applications? – Xen2050 14 December 2014 в 17:19
  • 3
    Локальный файл .desktop всегда перекрывает глобальный. – Jacob Vlijm 14 December 2014 в 17:25
  • 4
    В этом случае это будет новый уникальный файл .desktop, но где локальные сохраняются? У XFCE есть несколько под ~ / .local для меню sendto или дома для автозапуска – Xen2050 14 December 2014 в 17:29
  • 5
    должен быть в ~/local/share/applications, но там не обязательно много. – Jacob Vlijm 14 December 2014 в 17:34

Я использую настройку ubuntu для редактирования ассоциаций файлов:

sudo add-apt-repository ppa:tualatrix/ppa

sudo apt-get update

sudo apt-get install ubuntu-tweak

Дайте мне знать, если это сработает для вас.

0
ответ дан 24 May 2018 в 01:00
  • 1
    Я думаю, что это не то, что ищет ОП. Команда для запуска vlc должна быть перенаправлена. – Jacob Vlijm 14 December 2014 в 17:38

Другие вопросы по тегам:

Похожие вопросы: