summaryrefslogtreecommitdiff
path: root/plugins/osx/osx.plugin.zsh
blob: a65ca642a2cc31d89507274fe8714933d17b7281 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
alias showfiles='defaults write com.apple.finder AppleShowAllFiles TRUE; killall Finder'
alias hidefiles='defaults write com.apple.finder AppleShowAllFiles FALSE; killall Finder'

# Recursively delete .DS_Store files
alias rm-dsstore="find . -name '*.DS_Store' -type f -delete"

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
}