web-dev-qa-db-ja.com

GeanyをUbuntuのデフォルトエディターにするにはどうすればよいですか?

Ubuntu 12.04のデフォルトのテキストエディターをnanoからGeanyに変更したいのです。このコードを使用したとき:

update-alternatives --config editor

..リストにGeanyが表示されません。

Geanyを追加するには、これは正しく機能するはずです。

update-alternatives --install /usr/bin/geany geany /usr/bin/geany 10

また、補足として、デフォルトのエディターをnanoからGeanyに変更することを個人的に提案するかどうか、そしてその理由を教えてください。

23

コマンドラインの方法は次のとおりです。

Sudo update-alternatives --install /usr/bin/editor editor /usr/bin/geany 10

必要に応じて、Sudo update-alternatives --config editorを使用してGeanyを選択します。

コマンドライン方式のグラフィカルな代替手段として、 Gnome AlternativesSudo apt-get install galternatives)の使用を検討してください。 GAlternativesを実行し、左側の列でeditorを選択してから、追加/右側のGeanyを選択します。

16
ish

代替として、これも私のために働いた:

xdg-mime default geany.desktop $(grep MimeType /usr/share/applications/geany.desktop | sed 's/MimeType=//' | sed 's/;/ /g')

この行は、geditが登録されているすべてのMimeTypesをフェッチし、いくつかのクリーンアップ(sedコマンド)を実行し、最終的にそれらのデフォルトアプリケーションとしてgeanyを設定します。

I ここで見つけました 配色に関する有用な情報の束とともに。

13
Steve

これは少し遅いですが、誰かを助けるかもしれないと思いました。

私の問題は、わからないことをコピーして貼り付けたくないので、ここで答えを説明します。

何よりもまず、ここには2つの問題があり、どちらの答えも正しいです。

  1. デフォルトのコマンドラインエディター-「izx」で解決
  2. gUIアプリケーションのデスクトップセッションでのファイルタイプ(MIMEタイプ)の関連付け-「Steve」で解決。

ここでもう少し詳しく:

  1. コマンドラインソリューション-from 'izx'

    • geany(GUIアプリケーション)を代替エディターリストに追加し、デフォルトとして設定します。
    • エディターは通常、vi、vim、nanoなどのテキストベースのエディター専用であるといつも思っていましたが、チェックしたところ、これも機能しているようです。
    • 結果は、次の場合に選択したデフォルトを使用してファイルを開くことができることを意味します。
  2. mime-type solution-from 'Steve'

ファイルレベルでは、次の2つの重要なリストがあります。

/usr/share/applications/defaults.list-システムのデフォルトリスト。

~/.local/share/applications/mimeapps.list-ユーザーのパーソナルデスクトップセッションのデフォルトリスト

コマンドは何をしますか?

Xdg-mimeのmanページから(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')

コマンドは次のように読むことができます。

$(grep MimeType /usr/share/applications/geany.desktop | sed 's/MimeType=//' | sed 's/;/ /g')によって出力されるMIMEタイプのデフォルトアプリケーションとしてgeany.desktopを設定します

見つめている

$(grep MimeType /usr/share/applications/geany.desktop | sed 's/MimeType=//' | sed 's/;/ /g')
  • geany.desktopファイルからすべてのMIMEタイプを取得します
  • 「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

これを知って、ここに私の特定の問題とそれをどうやって解決したかを示します。

問題:

Nautilusのデフォルトの「ファイルを開く」アプリケーションを「gedit」から「sublime text」に変更したかったのです。

ソリューション:

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の「Default Applications」セクションにエントリを追加します

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
11
Steve-B

受け入れられた答えが正しくなかったことを示すコメントがあるので、この質問には単一の答えを含めることはできないと指摘すべきです。 CLIを指定するために質問が変更され、GUIのクエリが新しいスレッドに移動した場合、混乱が解消されます。遅すぎると思います。

とにかくUbuntu 14.04の下でのgnome上のnautilus(別名ファイル)の場合。そして、受け入れられた答えを考えると、あなたは(私がしたように)同等のものが期待されるかもしれません:
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-editorlrwxrwxrwx /etc/alternatives/gnome-text-editor -> /usr/bin/gedit

このエラーを修復しながら、これらのリンクを次のように再作成しました。
lrwxrwxrwx /usr/bin/gnome-text-editor -> /etc/alternatives/gnome-text-editorlrwxrwxrwx /etc/alternatives/gnome-text-editor -> /usr/bin/geany

私が本当にやったことは、セカンダリsimlinkを置き換えることだけであり、システムでの応答を望んでいたので、タスクは次のようになります。
Sudo ln -s /usr/bin/geany /etc/alternatives/gnome-text-editor

ただし、GUI固有の何かを変更するためにCLIコマンドを実行するのは間違っているに違いありません。この変更オプションを検索するときに私の手がかかる場所は、個々のファイルタイプ設定の横にあるnautilusメニューシステムです。しかし、私がそこに行く唯一の理由は、それが解決策の一部であるためです。私の見解では、DPKG(更新代替)のロジックに従い、それをディストリビューションに含めた場合、Nautilusのようなユーザースペースアプリケーションが設定マネージャーアプリに干渉することは望ましくありません。これを修正するための謙虚な提案は、新しいエディター設定コントロールを設定>>詳細>>デフォルトアプリケーションに追加することです。これは、ユーザーの観点からは新しいページである必要があります。ユーザーがその新しいページにリダイレクトされるように、Nautilusチームはメニューを変更する必要があります。これにより、私の手が設定を探すようになり、代わりに「手」が私を連れて行って、システム設定への単一ポイント入力プロセスを管理する場所が損なわれます。この変更はdebianのgalternativesのポートの範囲内である必要があるように見えますが、私は推測しています。もちろん、Nautilusチームがアイデアを持っていない限り、そのようなことを先に進めても意味がありません。APIまたは同等のメカニズムを指定する必要もあります。

私のビューの設定ページは、デフォルトのgnomeエディターの選択と、個々のファイルを開くために使用されるアプリケーション(Nautilusが提供する現在の機能を置き換える)の両方をカバーする必要があります。

私はこれを過ぎ去った考えとして投稿します。あなたにアピールするなら、気軽に進めてください。悲しいことに、私は自分でそうするために必要な手順とプロトコルを知りません。

1
jim wotherspoon