web-dev-qa-db-ja.com

Sublime Textをデフォルトのアプリとして設定できません

.cppや.Javaなどのファイルを開くデフォルトのアプリとして崇高なテキストを設定したいのですが、「Select Application」のアプリケーションリストには崇高なテキストが表示されません。

このリンクでメソッドを試しましたが、機能しませんでした: すべての関連付けをgeditから別のアプリケーションに変更します

代替方法はありますか?

これが役立つ場合、いくつかの関連コマンドの出力は次のとおりです。

$ ls -al /usr/share/applications/*sublime*
-rw-r--r-- 1 root root 230 Aug  8 23:50 /usr/share/applications/sublime.desktop
-rw-r--r-- 1 root root 532 Sep 23  2016 /usr/share/applications/sublime_text.desktop

$ ls -al /usr/local/share/applications/*sublime*
ls: cannot access '/usr/local/share/applications/*sublime*': No such file or directory

$ ls -al /opt
total 20
drwxr-xr-x  5 root root 4096 Aug  8 23:58 .
drwxr-xr-x 25 root root 4096 Aug 11 08:07 ..
drwxr-xr-x  3 root root 4096 Apr 21 16:02 google
drwxr-xr-x  5 root root 4096 Jul 14  2012 sublime
drwxr-xr-x  4 root root 4096 Aug  8 23:58 sublime_text

$ cat /usr/local/share/applications/sublime*.desktop
cat: '/usr/local/share/applications/sublime*.desktop': No such file or directory

$ cat /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;

コメントに応えて:

Sudo fsck -f /の実行後に得られる出力

これは、前のコマンドが実行されるたびに数秒後に表示されるものです

後に自動的に表示される画面へのリンク

左側のアイコン(ボックスのあるアイコン)はSublime Text 3で、デフォルトのパスが必要です。右のアイコン(Sの付いたアイコン)は、Sublime Text 2のアイコンで、ビルドが期限切れのため開いていません。

Left one is Sublime Text 3

3
Kewal Shah

この投稿に関連する長いコメントやチャットをすべてやりたくない人のために、私はついに答えを得ました(credit:@Terrance ):

  • cat /usr/share/applications/sublime_text.desktopと入力して、ST 3に存在する.desktopファイルを確認します。

  • Sudo nano /usr/share/applications/defaults.listと入力して、デフォルトのアプリリストを開きます。

  • デフォルトのアプリが何であれ、text/x-Javaやtext/x-c ++などの行を、ST 3まで編集します。 text/x-Java=sublime_text.desktop、保存して終了します。

enter image description here

お役に立てれば :)

3
Kewal Shah

さらに簡単に...任意の.c ++または.Javaドキュメントを右クリックし、Propertiesを選択します。 Open Withタブに移動し、使用可能なアプリケーションのリストでSublimeを選択して、[Set as Default]をクリックします。

何らかの理由で、Unityダッシュボードまたは利用可能なアプリケーションのリストにSublimeが表示されない場合、.desktopファイルがないためSublimeを再インストールする必要があります。 Sublime 2の有効期限が切れているため、Sublime 3ベータ版を使用することをお勧めします。

更新#1:

Ubuntuパーティションのファイルシステムを確認するには...

  • GRUBメニューから起動します
  • 詳細オプションを選択
  • 回復モードを選択
  • ルートアクセスを選択する
  • #プロンプトで、Sudo fsck -f /と入力します
  • エラーがあった場合はfsckコマンドを繰り返します
  • タイプreboot

更新#2:

@Terranceによると、それは/usr/share/applications/defaults.listに問題があり、Sublime Text 2は期限切れで起動しませんでした。詳細については、受け入れられた回答を参照してください。

4
heynnema