#
# Opens a new Terminal.app/iTerm.app tab in the current directory.
#
# Authors:
#   Sorin Ionescu <sorin.ionescu@gmail.com>
#

# function tab {

local command="cd \\\"$PWD\\\""
(( $# > 0 )) && command="${command}; $*"

the_app=$(
  osascript 2> /dev/null <<EOF
    tell application "System Events"
      name of first item of (every process whose frontmost is true)
    end tell
EOF
)

[[ "$the_app" == 'Terminal' ]] && {
  osascript 2> /dev/null <<EOF
    tell application "System Events"
      tell process "Terminal" to keystroke "t" using command down
      tell application "Terminal" to do script "${command}" in front window
    end tell
EOF
}

[[ "$the_app" == 'iTerm' ]] && {
  osascript 2> /dev/null <<EOF
    tell application "iTerm"
      set current_terminal to current terminal
      tell current_terminal
        launch session "Default Session"
        set current_session to current session
        tell current_session
          write text "${command}"
        end tell
      end tell
    end tell
EOF
}

[[ "$the_app" == 'iTerm2' ]] && {
  osascript 2> /dev/null <<EOF
    tell application "iTerm2"
      tell current window
        create tab with default profile
        tell current session to write text "${command}"
      end tell
    end tell
EOF
}

# }
