Я использую Ubuntu 15.10.
Мой /usr/share/applications/sublime_text.desktop
содержит следующее:
[Desktop Entry]
Version=1.0
Type=Application
Name=Sublime Text
GenericName=Text Editor
Comment=Sophisticated text editor for code, markup and prose
Exec=/opt/sublime_text/sublime_text %F
Terminal=false
MimeType=text/plain;
Icon=sublime-text
Categories=TextEditor;Development;
StartupNotify=true
Actions=Window;Document;
[Desktop Action Window]
Name=New Window
Exec=/opt/sublime_text/sublime_text -n
OnlyShowIn=Unity;
[Desktop Action Document]
Name=New File
Exec=/opt/sublime_text/sublime_text --command new_file
OnlyShowIn=Unity;
Когда я нажимаю правой кнопкой мыши на файле Markdown ( xxx.md
) в Gnome Files (ранее «Nautilus»), я не вижу «Sublime Text» в качестве варианта выбора, даже если я выбираю «Просмотреть все приложения».
Я даже пробовал добавлять %F
к строкам Exec=/opt/sublime_text/sublime_text -n
и и , Exec=/opt/sublime_text/sublime_text --command new_file
соответственно , но это ничего не изменило.[Desktop Action Window]
[Desktop Action Document]
Я даже побежал sudo update-desktop-database
.
Что я делаю не так?
решение1
Скопируйте содержимое /usr/share/applications/sublime_text.desktop
в~/.local/share/applications/sublime_text.desktop
Или просто используйте:
cp -it ~/.local/share/applications /usr/share/applications/sublime_text.desktop
Затем в терминале введите:sudo update-desktop-database
решение2
Если старый кэш делает что-то не так, просто удалите его и позвольте системе создать новый.
rm ~/.local/share/applications/sublime_text.desktop
Меня устраивает.
решение3
Я попробовал все варианты, указанные в других ответах. Но, как-то мне это не помогло (я использую Ubuntu 16.04 и установил Sublime-text_build-3126_amd64).
Я вижу, что эта проблема возникает в моей системе только тогда, когда я устанавливаю редактор Sublime с помощью пакета (sublime-text_build-3126_amd64.deb), загруженного с сайта. Однако,установка Sublime из терминаларешает эту проблему.
Мне еще предстоит выяснить технически, почему существует разница в поведении приложения между двумя режимами установки. Однако, поскольку это работает для меня, я делюсь этим здесь, чтобы это могло быть полезно для других. Рабочая альтернатива:
- Удалите существующий пакет sublime. Используйте Synaptic Pkg Mgr и выполните полное удаление.
Установите Sublime с помощью команд:
Для Sublime-Text-2:
sudo add-apt-repository ppa:webupd8team/sublime-text-2 sudo apt-get update sudo apt-get install sublime-text
Для Sublime-Text-3:
sudo add-apt-repository ppa:webupd8team/sublime-text-3 sudo apt-get update sudo apt-get install sublime-text-installer
Введите
subl
команду, чтобы начать немедленно.Щелкните правой кнопкой мыши по файлу, который вы хотите открыть в редакторе Sublime. Теперь вы можете найти приложение "Sublime text" в списке меню. Также вы можете установить редактор по умолчанию для типа файла, установив его в свойствах файла.
Спасибо!:)
решение4
Откройте /usr/share/applications/defaults.list
(символическую ссылку на /etc/gnome/defaults.list
в моей системе) в Sublime и замените все вхождения на gedit.desktop
. sublime_text.desktop
Сохраните файл и перезагрузите компьютер — может быть достаточно выйти из системы и снова войти, но я подозреваю, что вам нужно будет полностью выйти из Gnome, чтобы настройки были перезагружены. После того, как вы снова войдете в систему, Sublime Text должен быть указан в контекстном меню как выбор по умолчанию для файлов Markdown, а также в меню «Открыть с помощью» для всех типов файлов, которые можно открыть в текстовом редакторе.
РЕДАКТИРОВАТЬ:
Вот содержимое моего текущего /usr/share/applications/sublime_text.desktop
:
[Desktop Entry]
Version=1.0
Type=Application
Name=Sublime Text
GenericName=Text Editor
Comment=Sophisticated text editor for code, markup and prose
Exec=/opt/sublime_text/sublime_text %F
Terminal=false
MimeType=text/plain;
Icon=sublime-text
Categories=TextEditor;Development;
StartupNotify=true
Actions=Window;Document;
[Desktop Action Window]
Name=New Window
Exec=/opt/sublime_text/sublime_text -n
OnlyShowIn=Unity;
[Desktop Action Document]
Name=New File
Exec=/opt/sublime_text/sublime_text --command new_file
OnlyShowIn=Unity;