Skip to content

Commit

Permalink
Merge pull request #4342 from robobenklein/patch-1
Browse files Browse the repository at this point in the history
Fix Atom Plugin for Linux Users
  • Loading branch information
robbyrussell committed Sep 19, 2015
2 parents 25f2d59 + dca4295 commit cbc1a08
Show file tree
Hide file tree
Showing 2 changed files with 29 additions and 15 deletions.
12 changes: 9 additions & 3 deletions plugins/atom/README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
## atom

Plugin for Atom, a cross platform text and code editor, available for Linux, Mac OS X, and Windows.
This plugin makes "at" a useful function for invoking the Atom Editor.

Originally by Github user [aforty](https://github.com/aforty) for OSX, modified to alias 'at' to 'atom' for Linux, since atom already works on the terminal for Linux, and calling 'at' in a non-OSX environment should still work.

### Requirements

Expand All @@ -10,8 +12,12 @@ Plugin for Atom, a cross platform text and code editor, available for Linux, Mac

* If `at` command is called without an argument, launch Atom

* If `at` is passed a directory, `cd` to it and open it in Atom
* If `at` is passed a directory, open it in Atom

* If `at` is passed a file, open it in Atom

* if `att` command is called, it is equivalent to `at .`, opening the current folder in Atom
### Examples

* Open the current dir in atom: `at .`
* Open another dir in atom: `at path/to/folder`
* Open a file: `at filename.extension`
32 changes: 20 additions & 12 deletions plugins/atom/atom.plugin.zsh
Original file line number Diff line number Diff line change
@@ -1,14 +1,22 @@
local _atom_paths > /dev/null 2>&1
_atom_paths=(
"$HOME/Applications/Atom.app"
"/Applications/Atom.app"
)
# Gets OS Type
unamestr=$(uname -s)

for _atom_path in $_atom_paths; do
if [[ -a $_atom_path ]]; then
alias at="open -a '$_atom_path'"
break
fi
done
# If OSX
if [[ "$unamestr" == 'Darwin' ]]; then
local _atom_paths > /dev/null 2>&1
_atom_paths=(
"$HOME/Applications/Atom.app"
"/Applications/Atom.app"
)

alias att='at .'
for _atom_path in $_atom_paths; do
if [[ -a $_atom_path ]]; then
alias at="open -a '$_atom_path'"
break
fi
done
# If Linux
elif [[ "$unamestr" == 'Linux' ]]; then
# Alerts the user if 'atom' is not a found command.
type atom >/dev/null 2>&1 && alias at="atom" || { echo >&2 "You have enabled the atom oh-my-zsh plugin on Linux, but atom is not a recognized command. Please make sure you have it installed before using this plugin."; }
fi

0 comments on commit cbc1a08

Please sign in to comment.