Browse Source

Implement cross-platform open function open_command()

For now this supports:
- Mac OS X
- Linux (presumably works on all versions)
- Cygwin (Windows)
Marc Cornellà 9 years ago
parent
commit
2d0bfcf818
1 changed files with 16 additions and 0 deletions
  1. 16 0
      lib/functions.zsh

+ 16 - 0
lib/functions.zsh

@@ -15,6 +15,22 @@ function take() {
   cd $1
 }
 
+function open_command() {
+  local open_cmd
+
+  # define the open command
+  case "$OSTYPE" in
+    darwin*)  open_cmd="open" ;;
+    cygwin*)  open_cmd="cygstart" ;;
+    linux*)   open_cmd="xdg-open" ;;
+    *)        echo "Platform $OSTYPE not supported"
+              return 1
+              ;;
+  esac
+
+  nohup $open_cmd "$@" &>/dev/null
+}
+
 #
 # Get the value of an alias.
 #