I would like to set Atom as my default editor for open.

In order to do this, I set in my .bashrc:

export EDITOR="atom -nw"

and reload the file with source .bashrc. Anyway, when I try to open a text file through open filename, it always opens it with TextEdit.

I also tried variations of the above, such as export EDITOR=atom, or exporting VISUAL.

I am sure that .bashrc gets loaded on login.

What am I missing/doing wrong?


The open command is part of OS X and uses Finder's default “Open With…” application to open the file, just like double-clicking it in Finder. $EDITOR is used for things like fc where it is used as the default command-line editor (a replacement for vim or emacs).

To use Atom with the open command, you can select a file of the type you want in Finder, press ⌘ command+I for “Get Info”, and then change “Open With:” to Atom, and click “Change All…”.

Alternatively you can define an alias like

alias e="atom -nw"

in your .bashrc and then run e file-to-edit.txt whenever you want to edit a file in Atom.

| improve this answer | |
  • Thank you. I guess I will stick to opening atom through the command line explicitly. – link Aug 2 '14 at 13:24
  • This answer is useless, the question is common and simple, no one wants TextEdit to show up when they click ANY sort of text file, the default should always point to Atom (or whatever editor). – Alex Borsody Mar 28 at 18:35

The actual answer is:

export EDITOR="/Applications/Atom.app/Contents/MacOS/Atom -nw"

| improve this answer | |

thee's answer doesn't work for Yosemite and El Capitan - use this one instead:

defaults write com.apple.LaunchServices/com.apple.launchservices.secure LSHandlers -array-add '{LSHandlerContentType=public.plain-text;LSHandlerRoleAll=com.github.atom;}'
| improve this answer | |
  • 2
    Didn't work for me – guptron Mar 1 '16 at 14:30
  • Note, this requires a restart after the command (at least it did for me on High Sierra). – golmschenk Apr 6 '18 at 19:18

Just right (or control) click a file of the type you want to change and:

"Get Info" -> "Open with:" -> (Select your program of choice) -> "Change All"

You'll have to do this once for each extension (.txt, .rtf, etc.) you wish to update.

| improve this answer | |
  • This was the only one that helped. Thank you. – Fatemeh Asgari Jan 30 at 5:44

Following this answer on Stackoverflow, the following command should work:

defaults write com.apple.LaunchServices LSHandlers -array-add '{LSHandlerContentType=public.plain-text;LSHandlerRoleAll=com.github.atom;}'

I am not sure how fare this works through. For me, open /etc/hosts opened the file in Atom as expected, but open demo.properties did not.

Edit: Might not work on Yosemite and above, see this answer for a modified version.

| improve this answer | |
  • demo.properties possibly is not registered as a text file – mmmmmm Dec 27 '14 at 0:28
  • This does not work on macOS Mojave or higher. – Nanashi No Gombe Oct 31 '19 at 14:52

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .