0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

AppleScriptの第一歩(ミュージックの特定プレイリストを再生して再生中の曲にフォーカス)

Last updated at Posted at 2022-10-16

概要

Macで処理を自動化したい。
でもシェルスクリプトで操作するのはなかなか難しい場面がある。
そこでAppleScriptを使う。

この記事では AppleScriptをまだ1回も自作したことが無い 状態向けに、初歩的なAppleScriptの作り方 から記載。

やり方(ミュージックの起動まで)

アプリケーション ⇒ ユーティリティ ⇒ スクリプトエディタ 。
image.png

環境設定。
image.png

編集中 ⇒ フォーマット 文字列中のタブや改行をエスケープ にチェック入れる。
(これの設定は必須ではないが、設定しておくのおススメ)
image.png

ミュージックを起動するだけの超簡単なAppleScript
-- コメント書く時はこう!
tell application "Music"
    activate
end tell

トンカチマークでコンパイルできる。
image.png

ファイル ⇒ 保存 。
image.png

image.png

再生ボタンでスクリプト実行(動作確認)できる。
image.png

動作が想定通りなら 開くだけでスクリプトの内容が実行されるもの を作ろう。
(いわゆるバッチファイル的なもの)

ファイル ⇒ 書き出す 。
image.png

ファイルフォーマットは『アプリケーション』 。
image.png

↓こんなものが出来上がる。
image.png

この『tester_app』をダブルクリックで開くだけでAppleScriptの内容が実行される。

スクリプトエディタでkeystroke動作確認できるように設定

下記の設定は必須ではない。
でもこれをやっておくとスクリプトエディタでkeystroke(キー入力)の動作確認できるので楽。
image.png
image.png

やり方(特定プレイリストの再生と再生中の曲にフォーカス)

-- ミュージックを起動して、指定した名前のプレイリスト再生
tell application "Music"
    activate
    play playlist "ななひら"
end tell

-- コントロールの『現在の曲に移動』
tell application "System Events"
    keystroke "l" using command down
end tell

tell application "System Events" 以下では下記をやっている。
image.png

別にやらなくてもミュージックの再生には問題はない。

でもやらないと下記のようになってしまう。
曲は再生されるが、再生している曲(プレイリスト)にフォーカスせず、 ミュージックを閉じた時の状態 のまま。
image.png

スクリプトで『現在の曲に移動』のキー入力をすることで下記のように、 再生してる曲(プレイリスト)にフォーカス される。
image.png

バージョン

macOS Monterey 12.6

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?