I'd like to replace gedit, and use Sublime Text 3 as my default text editor for all text files on my Ubuntu system. Can you let me know how do I go about making this change?
2 Answers
UPDATE
Sublime Text 4 (builds 4000 and higher) has been released, and is the preferred version of Sublime Text to use. There are instructions on Sublime's website for installation using the package repositories (apt
, pacman
, yum
, dnf
, and zypper
) for a number of popular Linux distributions. However, even installing in this way doesn't automagically make all text/source files open with Sublime, so you'll likely still need to follow the directions below.
These instructions assume that you have installed Sublime Text either using the .deb
file provided for Debian/Ubuntu-based systems, or using the apt
repository instructions linked above. If you downloaded the tarball and installed it manually to a location other than /opt/sublime_text
, you will need to change the paths below to your install location.
First, make sure that /usr/share/applications/sublime_text.desktop
exists (sublime-text.desktop
on some systems):
ls /usr/share/applications/sublime_text.desktop
Then, open /usr/share/applications/defaults.list
with Sublime:
subl /usr/share/applications/defaults.list
Search for all instances of gedit
(org.gnome.gedit
on some systems) and replace them with sublime_text
. Save the file, log out and back in, and you should be all set.
If for some reason /usr/share/applications/sublime_text.desktop
(or sublime-text.desktop
) doesn't exist, create it:
sudo touch /usr/share/applications/sublime_text.desktop
Open it in Sublime:
subl /usr/share/applications/sublime_text.desktop
and paste the following into it:
[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;
However, if you installed Sublime Text using the .deb
file downloaded from sublimetext.com, the file should already exist.
-
This desktop file works great on my system except that the "New Window" or "New File" right click actions cause the mouse cursor to go into a busy-spin mode. Everything seems to work normally though...– DigikataFeb 18, 2014 at 23:44
-
3I can not get this to work in Ubuntu 13.10 with Sublime Text 2, I did make sure that sublime_text.desktop was changed to reflect sublime-text-2.desktop, any suggestions? Mar 5, 2014 at 22:41
-
11btw, its sublime-text not sublime_text, installed from official repo; 14.04 Apr 25, 2014 at 10:23
-
2I can not get this to work in Ubuntu 13.10 with Sublime Text 3, not with
sublime_text
norsublime-text
. Jul 20, 2014 at 15:27 -
1
Once you have Sublime installed, right-click on a text file. Go to the "Open With" tab. Select "Show other applications." Then, select Sublime Text 3.
Hope this helps!
-
1I've been doing that, I was hoping to find out if there were a system wide change I could make for all text files.– user193491Dec 29, 2013 at 12:58
-
2I thought that that would change it for all of the txt's... maybe I'm wrong, but I was pretty sure...– masulzenDec 29, 2013 at 16:47
-
If it's missing from the list, apply the changes mentioned here: askubuntu.com/a/755041/80283 Jul 18, 2018 at 11:46