diff options
author | Robby Russell <robby@planetargon.com> | 2012-12-04 06:55:25 -0800 |
---|---|---|
committer | Robby Russell <robby@planetargon.com> | 2012-12-04 06:55:25 -0800 |
commit | d100354d0d2a8e62c735dcc6db92fb1f0b9edb0c (patch) | |
tree | 307ecdc19f1dfac640e750eed3027f3e4845a751 /plugins/osx/osx.plugin.zsh | |
parent | 462136a9d6188f4928d9a58a9421ebccdca293c9 (diff) | |
parent | 4a813cf1a2ccddc58059271065a8abc8f9079019 (diff) | |
download | zsh-d100354d0d2a8e62c735dcc6db92fb1f0b9edb0c.tar.gz zsh-d100354d0d2a8e62c735dcc6db92fb1f0b9edb0c.tar.bz2 zsh-d100354d0d2a8e62c735dcc6db92fb1f0b9edb0c.zip |
Merge pull request #778 from rschmukler/plugin-osx
Added vsplit_tab and split_tab for iTerm.
Diffstat (limited to 'plugins/osx/osx.plugin.zsh')
-rw-r--r-- | plugins/osx/osx.plugin.zsh | 63 |
1 files changed, 60 insertions, 3 deletions
diff --git a/plugins/osx/osx.plugin.zsh b/plugins/osx/osx.plugin.zsh index 682bb2667..f278d4f8d 100644 --- a/plugins/osx/osx.plugin.zsh +++ b/plugins/osx/osx.plugin.zsh @@ -2,10 +2,9 @@ # FILE: osx.plugin.zsh # DESCRIPTION: oh-my-zsh plugin file. # AUTHOR: Sorin Ionescu (sorin.ionescu@gmail.com) -# VERSION: 1.0.1 +# VERSION: 1.1.0 # ------------------------------------------------------------------------------ - function tab() { local command="cd \\\"$PWD\\\"" (( $# > 0 )) && command="${command}; $*" @@ -35,9 +34,67 @@ EOF launch session "Default Session" set current_session to current session tell current_session - write text "${command}" + write text "${command}; clear;" + end tell + end tell + end tell +EOF + } +} + +function vsplit_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" == 'iTerm' ]] && { + osascript 2>/dev/null <<EOF + tell application "iTerm" to activate + + tell application "System Events" + tell process "iTerm" + tell menu item "Split Vertically With Current Profile" of menu "Shell" of menu bar item "Shell" of menu bar 1 + click + end tell + end tell + keystroke "${command}; clear;" + keystroke return + end tell +EOF + } +} + +function split_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" == 'iTerm' ]] && { + osascript 2>/dev/null <<EOF + tell application "iTerm" to activate + + tell application "System Events" + tell process "iTerm" + tell menu item "Split Horizontally With Current Profile" of menu "Shell" of menu bar item "Shell" of menu bar 1 + click end tell end tell + keystroke "${command}; clear;" + keystroke return end tell EOF } |