
Я разработал приложение «MonitorMe» для Ubuntu.
Я видел, что в Ubuntu Microsoft добавила функцию «Открыть с помощью VS Code» в контекстное меню без использования действия Nautilus.
Я хочу добавить опцию в контекстное меню Ubuntu, например "Открыть с помощью monitorme". Как это сделать?
Спасибо.
решение1
Если ваше приложение работает с определенным типом файла (MIME-тип), вы можете написать файл .desktop и связать свое приложение с этим типом MIME; тогда оно будет доступно во всех файловых менеджерах.
Если у вас нет определенного типа MIME, вы можете схитрить и использовать тип MIME inode/directory
, тогда вы сможете открыть его из контекстного меню каталогов.
Примеры:
Минималистичный файл .desktop
[Desktop Entry]
Type=Application
Name=MyApplication
Exec=myapp %f
Icon=myapp
GenericName=MyApplication that does cool things
Terminal=false
MimeType=inode/directory;
Переместите этот файл в , /usr/share/applications
чтобы сделать его доступным для всех пользователей на вашем компьютере. Если вы создаете пакет .deb из вашего приложения для его распространения, установите файл .desktop в на /usr/share/applications
вашем make install
шаге и упакуйте его вместе с вашим приложением.
Дальнейшее чтение
Freedesktop.org:Спецификация файла XDG для рабочего стола
Arch Linux Вики:Записи рабочего стола
Убунту Вики:Как добавить тип MIME
решение2
В Ubuntu 20.04 вы все еще можете использовать действия Nautilus, но в 21.04 это больше не работает.
Что еще всегда работало, так этоСкрипты Наутилуса. Вы помещаете свой скрипт (с установленным исполняемым битом) в ~/.local/share/nautilus/scripts
. Затем они появятся как подменю пункта меню «Скрипты», вызываемого правой кнопкой мыши.Страница помощи сообщества Ubuntuсодержит более подробную информацию о том, как это работает.