Alfredからコマンド一つで作業環境を初期化する with Automator version 3
:追加された部分
:削除された部分
(差分が大きい場合、文字単位では表示しません)
Alfredからコマンド一つで作業環境を初期化する with Automator
いくつかのプロジェクトを同時に走らせていると、あるプロジェクトの作業の後に、別のプロジェクトの作業を始めようとした時、作業環境を初期化するのが億劫で、「あーめんどくさい」ってついついRSSをチェックしたりくだらない動画を見てしまったりして大変よくないわけです。
いくつかのプロジェクトを同時に走らせていると、あるプロジェクトの作業の後に、別のプロジェクトの作業を始めようとした際、作業環境を初期化するのが億劫で、「あーめんどくさい」ってついついRSSをチェックしたりくだらない動画を見てしまったりして大変よくないわけです。
というわけで、
* [Alfred](https://www.alfredapp.com/)でプロジェクト名を入力してenterすると、必要なものが全て立ち上がる
っていうことをずっとできるようにしたいと思っていたのですが、最近になって、それAutomator使ったらよいのでは、ということにようやく気づいたので備忘録を兼ねてメモ。
っていう状態にしたいと長らく思っていたのですが、最近になって、それAutomator使うとよいのでは、ということにようやく気づいたので備忘録を兼ねてメモ。
## 方法
1. Automatorを起動して「アプリケーション」を新規作成
2. 「アプリケーションを起動」を追加して、起動するアプリケーションに「ターミナル」を選択
![スクリーンショット 2016-03-21 0.17.58](https://mimemo.s3-ap-northeast-1.amazonaws.com/attachment/5b2cf516-d42b-44b4-b5d7-f872cdbc2a4f.png)
3. 「AppleScriptを実行」を追加
![スクリーンショット 2016-03-21 0.20.20](https://mimemo.s3-ap-northeast-1.amazonaws.com/attachment/c0556ef7-835c-4aa8-98c6-ee62ac93b05d.png)
4. ↓みたいなスクリプトを記述して保存。(今回はmimemoの例)
```
on run {input, parameters}
-- ターミナルを起動もしくはアクティブにして
-- ターミナルをアクティブにして
tell application "Terminal"
activate
-- Cmd+Tを送信してタブを開く
tell application "System Events" to keystroke "t" using command down
-- タブが開くのをちょっとだけ待つ
repeat while contents of selected tab of window 1 starts with linefeed
delay 0.01
end repeat
-- ディレクトリ移動して
do script "cd ~/_work/10mado/mimemo" in window 1
-- Atom立ち上げて
do script "atom ." in window 1
-- gulpを走らせて
do script "gulp front" in window 1
-- もう一個タブ開いて
tell application "System Events" to keystroke "t" using command down
repeat while contents of selected tab of window 1 starts with linefeed
delay 0.01
end repeat
-- ディレクトリ移動して
do script "cd ~/_work/10mado/mimemo" in window 1
do script "git status" in window 1
-- ブラウザでテストサーバのURLを開く
do script "open http://localhost:8081/" in window 1
end tell
return input
end run
```
4. 保存した場所がAlfredの検索対象になるようにする
今回はこれをmimemoという名前で保存して、Alfredで`mim`と入れると
今回はこれをmimemoという名前で保存して、Alfredで`mim`などと入れると
![スクリーンショット 2016-03-21 0.05.07](https://mimemo.s3-ap-northeast-1.amazonaws.com/attachment/64c6d861-e0b1-4694-b699-c05fde96c5b4.png)
こうなって、enter押せば作業環境の初期化できるようになりました。めでたしめでたし。
こうなって、enter押せば作業環境の初期化ができるようになりました。めでたしめでたし。
AppleScriptのところは、AppleScriptで書かなくても、Automatorのワークフローでどうにかできる部分も多々あるはずだし、PSDファイル開くとか、[conasu](https://conasu.co/)のそのプロジェクトのページ開くとか、色々と応用範囲も広そう。
AppleScriptのところは、AppleScriptで書かなくても、Automatorのワークフローでどうにかできる部分も多々あるはずだし、PSDファイル開くとか、conasuでそのプロジェクトのページ開くとか、色々と自由に設定できるので、色々と応用できる範囲は広そう。
ついでに、これをiCloud DriveのAutomatorフォルダに置いておくと、複数の端末で同じように使えたりして地味に便利。
いくつかのプロジェクトを同時に走らせていると、あるプロジェクトの作業の後に、別のプロジェクトの作業を始めようとした際、作業環境を初期化するのが億劫で、「あーめんどくさい」ってついついRSSをチェックしたりくだらない動画を見てしまったりして大変よくないわけです。
というわけで、
- Alfredでプロジェクト名を入力してenterすると、必要なものが全て立ち上がる
っていう状態にしたいと長らく思っていたのですが、最近になって、それAutomator使うとよいのでは、ということにようやく気づいたので備忘録を兼ねてメモ。
方法
- Automatorを起動して「アプリケーション」を新規作成
- 「アプリケーションを起動」を追加して、起動するアプリケーションに「ターミナル」を選択
- 「AppleScriptを実行」を追加
- ↓みたいなスクリプトを記述して保存。(今回はmimemoの例)
on run {input, parameters}
-- ターミナルをアクティブにして
tell application "Terminal"
activate
-- Cmd+Tを送信してタブを開く
tell application "System Events" to keystroke "t" using command down
-- タブが開くのをちょっとだけ待つ
repeat while contents of selected tab of window 1 starts with linefeed
delay 0.01
end repeat
-- ディレクトリ移動して
do script "cd ~/_work/10mado/mimemo" in window 1
-- Atom立ち上げて
do script "atom ." in window 1
-- gulpを走らせて
do script "gulp front" in window 1
-- もう一個タブ開いて
tell application "System Events" to keystroke "t" using command down
repeat while contents of selected tab of window 1 starts with linefeed
delay 0.01
end repeat
-- ディレクトリ移動して
do script "cd ~/_work/10mado/mimemo" in window 1
do script "git status" in window 1
-- ブラウザでテストサーバのURLを開く
do script "open http://localhost:8081/" in window 1
end tell
return input
end run
- 保存した場所がAlfredの検索対象になるようにする
今回はこれをmimemoという名前で保存して、Alfredでmim
などと入れると
こうなって、enter押せば作業環境の初期化ができるようになりました。めでたしめでたし。
AppleScriptのところは、AppleScriptで書かなくても、Automatorのワークフローでどうにかできる部分も多々あるはずだし、PSDファイル開くとか、conasuのそのプロジェクトのページ開くとか、色々と応用範囲も広そう。
ついでに、これをiCloud DriveのAutomatorフォルダに置いておくと、複数の端末で同じように使えたりして地味に便利。