Change default text editor to Sublime Text in Linux Mint

22,498

Solution 1

Open /usr/share/applications/defaults.list in Sublime:

sudo subl /usr/share/applications/defaults.list

Search for all instances of gedit and replace them with sublime_text. Save the file, quit Sublime, log out and back in, and you should be all set.

EDIT

While the above instructions should work with any .deb-based system (I use Ubuntu), apparently there is an issue with Mint where changes to /usr/share/applications/defaults.list are lost upon reboot. To work around this, do the following:

  1. Create a new file (if it doesn't already exist) called ~/.local/share/applications/defaults.list in Sublime. The first line should be [Default Applications].
  2. Open /usr/share/applications/defaults.list in Sublime. Hit CtrlF to open the Find dialog and type gedit into the search box.
  3. Hit AltEnter or click the Find All button to select all the instances of gedit in the file.
  4. Hit CtrlL to expand the selections to the entire line, then hit CtrlC to copy the lines.
  5. In ~/.local/share/applications/defaults.list, hit CtrlV to paste the lines containing gedit.
  6. Hit CtrlH to open the Replace dialog. Search for gedit and replace with sublime_text. Hit CtrlAltEnter to Replace All (or click the Replace All button) and you're all set.
  7. Save ~/.local/share/applications/defaults.list, log out and back in, and Sublime Text should now be your default text editor.

Solution 2

so I just figured out a less complicated way to do it.

Step 1: Select any file that you want to open with Sublime. Right-click on it.

Step 2: Go to Properties.

Step 3: Go to Open With

Step 4: Select Sublime

Step 5: Set as Default

Solution 3

If you don't want to edit system files yourself, you can simply go to "Preferred applications" in settings.

Solution 4

Matt's answer worked for me too, many thanks for the clear instructions!

Just to state the obvious, in case it helps someone: if you want a different default editor, then:

  • ensure it's executable name, eg vim replaces gedit in the ~/.local/share/applications/defaults.list file

  • ensure export EDITOR=path\executable is included in the appropriate config file for you (~\.profile or ~\.bashrc or whatever)

Share:
22,498

Related videos on Youtube

Mica
Author by

Mica

Updated on September 18, 2022

Comments

  • Mica
    Mica over 1 year

    I've installed Sublime Text 3 from the .deb found here: http://www.sublimetext.com/3

    Now, how to set it as the default text editor in place of gedit in Mint 16?

  • Mica
    Mica over 10 years
    It works at first, but after rebooting, defaults.list gets reverted, gedit back in place of sublime_text. What can I do to prevent this?
  • Mica
    Mica over 10 years
    Apparently this is an issue with Mint which can be circumvented by using .local/share/applications/defaults.list instead. So, I've copied/pasted/edited the gedit lines to this file, and they're now successfully overriding their counterparts in /usr/share/applications/defaults.list, even after a reboot.
  • MattDMo
    MattDMo over 10 years
    @xichael - thanks for the info. I've updated my answer to describe exactly how to set things up to work around this issue. I usually use Ubuntu, where my original solution works fine, and since Mint is quite similar I figured it would work!
  • Cactus BAMF
    Cactus BAMF over 9 years
    You're missing a small step: the first line on ~/.local/share/applications/defaults.list must be "[Default Applications]" for this to work
  • MattDMo
    MattDMo over 9 years
    @Alexandre thanks for that, I'll update the answer. As an Ubuntu user, I've only worked with existing files, so I kinda missed that detail :)
  • user
    user almost 7 years
    @MattDMo, no need to run Sublime Text as sudo sudo subl /usr/... Sublime Text prompts you for the sudo password when you attempt to save a the root file. Anyways, should not it be gksudo for applications?
  • Shashank Bhatt
    Shashank Bhatt almost 3 years
    The accepted answer should be this.