summaryrefslogtreecommitdiff
path: root/plugins/osx/osx.plugin.zsh
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/osx/osx.plugin.zsh')
-rw-r--r--plugins/osx/osx.plugin.zsh57
1 files changed, 57 insertions, 0 deletions
diff --git a/plugins/osx/osx.plugin.zsh b/plugins/osx/osx.plugin.zsh
new file mode 100644
index 000000000..81eed5e92
--- /dev/null
+++ b/plugins/osx/osx.plugin.zsh
@@ -0,0 +1,57 @@
+function savepath() {
+ pwd > ~/.current_path~
+}
+
+function tab() {
+savepath
+osascript >/dev/null <<EOF
+on do_submenu(app_name, menu_name, menu_item, submenu_item)
+ -- bring the target application to the front
+ tell application app_name
+ activate
+ end tell
+ tell application "System Events"
+ tell process app_name
+ tell menu bar 1
+ tell menu bar item menu_name
+ tell menu menu_name
+ tell menu item menu_item
+ tell menu menu_item
+ click menu item submenu_item
+ end tell
+ end tell
+ end tell
+ end tell
+ end tell
+ end tell
+ end tell
+end do_submenu
+
+do_submenu("Terminal", "Shell", "New Tab", 1)
+EOF
+}
+
+function itab() {
+savepath
+osascript >/dev/null <<EOF
+on do_submenu(app_name, menu_name, menu_item)
+ -- bring the target application to the front
+ tell application app_name
+ activate
+ end tell
+ tell application "System Events"
+ tell process app_name
+ tell menu bar 1
+ tell menu bar item menu_name
+ tell menu menu_name
+ click menu item menu_item
+ end tell
+ end tell
+ end tell
+ end tell
+ end tell
+end do_submenu
+
+do_submenu("iTerm", "Shell", "New Tab")
+EOF
+}