Я действительно хочу изменить текстовый редактор по умолчанию на моем Ubuntu 12.04 от nano до Geany. Когда я использовал этот код:
update-alternatives --config editor
.. Я не вижу Geany в списке.
Итак, чтобы добавить Geany, это должно работать правильно? [!d2 ]
update-alternatives --install /usr/bin/geany geany /usr/bin/geany 10
Кроме того, на стороне заметки, можете ли вы сказать мне, если вы лично предложите мне изменить редактор по умолчанию от nano на Geany и почему?
В качестве альтернативы это также сработало для меня:
xdg-mime default geany.desktop $(grep MimeType /usr/share/applications/geany.desktop | sed 's/MimeType=//' | sed 's/;/ /g')
Эта строка извлекает все MimeTypes, для которых зарегистрирован gedit, выполняет некоторую очистку (команды sed) и, наконец, устанавливает geany в качестве приложения по умолчанию для них.
Я нашел его здесь вместе с кучей полезной информации о цветовых схемах.
Это немного поздно, но я подумал, что это может помочь кому-то.
Моя проблема в том, что я не люблю копировать и вставлять то, что я не понимаю, так вот объяснение ответов до сих пор.
Прежде всего, есть два здесь и в обоих ответах есть правильные:
редактор командной строки по умолчанию - разрешен «izx» ассоциацией типа файла (mime-type) в сеансе рабочего стола для приложений GUI - решил «Стив».Здесь немного подробнее:
редактор командной строки по умолчанию - разрешен решением «izx» mime-type - от «Steve» [ ! d7]На уровне файла есть два важных значения:
/usr/share/applications/defaults.list - список системных настроек по умолчанию.
~/.local/share/applications/mimeapps.list - пользовательский сеанс рабочего стола по умолчанию list
Что делает команда?
Из man-страницы xdg-mime (man xdg-mime)
xdg-mime - command line tool for querying information about file type handling and adding descriptions for new file type
Команда xdg-mime default... добавляет записи в личный список пользователей.
Давайте разбейте команду вниз.
Команда:
xdg-mime default geany.desktop $(grep MimeType /usr/share/applications/geany.desktop | sed 's/MimeType=//' | sed 's/;/ /g')
Команда может быть прочитана как:
set geany.desktop как приложение по умолчанию для mime-типа, выданного $(grep MimeType /usr/share/applications/geany.desktop | sed 's/MimeType=//' | sed 's/;/ /g')
Глядя на
$(grep MimeType /usr/share/applications/geany.desktop | sed 's/MimeType=//' | sed 's/;/ /g')
, все типы mime из файла geany.desktop удаляет «MimeType =», заменяет ";" с "" давая нам: text/plain text/x-chdr text/x-csrc text/x-c++hdr text/x-c++src text/x-java text/x-dsrc text/x-pascal text/x-perl text/x-python application/x-php application/x-httpd-php3 application/x-httpd-php4 application/x-httpd-php5 application/xml text/html text/css text/x-sql text/x-diff Посмотрев на личный файл пользователя после запуска команды, мы можем увидеть все ассоциации файлов, установленные для приложения geany.desktop:
[Default Applications]
x-scheme-handler/mailto=userapp-Thunderbird-ZP00XW.desktop
message/rfc822=userapp-Thunderbird-ZP00XW.desktop
application/x-extension-eml=userapp-Thunderbird-ZP00XW.desktop
application/x-perl=sublime_text.desktop
text/plain=geany.desktop
text/x-chdr=geany.desktop
text/x-csrc=geany.desktop
text/x-dtd=sublime_text.desktop
text/x-java=geany.desktop
text/mathml=sublime_text.desktop
text/x-python=geany.desktop
text/x-sql=geany.desktop
text/x-c++hdr=geany.desktop
text/x-c++src=geany.desktop
text/x-dsrc=geany.desktop
text/x-pascal=geany.desktop
text/x-perl=geany.desktop
application/x-php=geany.desktop
application/x-httpd-php3=geany.desktop
application/x-httpd-php4=geany.desktop
application/x-httpd-php5=geany.desktop
application/xml=geany.desktop
text/html=geany.desktop
text/css=geany.desktop
text/x-diff=geany.desktop
Зная это, вот моя особая проблема и как я ее решил.
Что делает команда?
Я хотел изменить значение по умолчанию
Решение:
Найти системные значения по умолчанию для gedit с помощью:
$less /usr/share/applications/defaults.list | grep gedit
application/x-perl=gedit.desktop
text/plain=gedit.desktop
text/x-chdr=gedit.desktop
text/x-csrc=gedit.desktop
text/x-dtd=gedit.desktop
text/x-java=gedit.desktop
text/mathml=gedit.desktop
text/x-python=gedit.desktop
text/x-sql=gedit.desktop
Замените «gedit» на «sublime_text» и добавьте записи в раздел «Стандартные приложения» моего личного defaults.list
application/x-perl=sublime_text.desktop
text/plain=sublime_text.desktop
text/x-chdr=sublime_text.desktop
text/x-csrc=sublime_text.desktop
text/x-dtd=sublime_text.desktop
text/x-java=sublime_text.desktop
text/mathml=sublime_text.desktop
text/x-python=sublime_text.desktop
text/x-sql=sublime_text.desktop
Поскольку есть комментарии, указывающие на то, что принятый ответ был неправильным, я чувствую, что должен указать, что этот вопрос не может иметь ни одного ответа. Если вопрос был изменен, чтобы указать CLI, и запросы для графического интерфейса, перенесенные в новый поток, это устранит путаницу. Слишком поздно для этого, я думаю.
В любом случае для nautilus (aka files) на gnome в Ubuntu 14.04. И учитывая принятый ответ, вы могли бы (как и я) ожидать, что эквивалент будет: donotdothisssudo update-alternatives --install /etc/alternatives/gnome-text-editor gnome-text-editor /usr/bin/geany 10
Вот что я думал, и он сломал ссылки, поэтому не делайте этого! Если вы это сделали, это они для меня: lrwxrwxrwx /usr/bin/gnome-text-editor -> /etc/alternatives/gnome-text-editor lrwxrwxrwx /etc/alternatives/gnome-text-editor -> /usr/bin/gedit
При исправлении этой ошибки я воссоздал эти ссылки следующим образом: lrwxrwxrwx /usr/bin/gnome-text-editor -> /etc/alternatives/gnome-text-editor lrwxrwxrwx /etc/alternatives/gnome-text-editor -> /usr/bin/geany [ ! d5]
Поскольку все, что я действительно сделал, это заменить вторичную симлинку, и у меня есть желаемый ответ в моей системе, я предполагаю, что задача проста: sudo ln -s /usr/bin/geany /etc/alternatives/gnome-text-editor [!d7 ]
Однако выполнение команды CLI для изменения чего-либо специфического GUI должно быть неправильным. Место, где мои руки берут меня при поиске этой опции изменения, - это система меню nautilus, рядом с настройкой отдельного типа файла. Однако единственная причина, по которой я туда иду, состоит в том, что это часть решения. На мой взгляд, если вы следовали логике DPKG (альтернативы обновления) и включили ее в свой дистрибутив, вы не хотите, чтобы приложение пользовательского пространства, такое как Nautilus, вмешивалось в ваше приложение менеджера настроек. Мое скромное предложение исправить это было бы добавить новый контроль настроек редактора в настройки >> подробности >> приложения по умолчанию, которые должны были быть новой страницей с точки зрения пользователей. Затем команде Nautilus необходимо было изменить свое меню, чтобы пользователь перенаправлялся на эту новую страницу. Это может скомпрометировать, когда мои руки заставили меня искать настройку, где мои руки «должны» взять меня вместо этого и управлять процессом ввода одной точки в системную настройку. Похоже, что это изменение должно было быть в порту галерей debian, хотя я просто догадываюсь. Разумеется, не было бы никакого начисления на этот счет без команды Nautilus на борту этой идеи, им также нужно было бы указать API или эквивалентный механизм.
Страница настроек на моем экране необходимо поместить как выбор редактора gnome по умолчанию, так и приложение, используемое для открытия каждого отдельного файла (который заменит текущую функциональность, предоставленную Nautilus).
Я размещаю это как прохождение мысли, не стесняйтесь ездить если он обратится к вам. К сожалению, я не знаю процедуры и протокола, которые необходимо сделать для себя.