Macのウィンドウを指定のサイズに変更【AppleScriptを使用】

ウィンドウを複数使ったり、アプリたくさんや使う人、画像や動画を編集する人、ブロガーなどはMacを頻繁に使う人は多いと思います。

そんな中でウィンドウの大きさを自分の好きな値に設定したい時があると思います。僕は見ての通りブログを書いているのですが、見やすいように画像の大きさをだいたい統一するようにしています。

しかし、ウィンドウの大きさってそのアプリによって最適なサイズをあらかじめプログラムされていて、全てを同じサイズで統一できませんでした。

必要なのはブログ用のスクリーンショットの時くらいなのでその都度設定しようと思いました。あれやこれやと試しているうちに、2クリックでできるようになったので、その方法を書き留めておきます。

タイトルでAppleScriptを使うと書いているので難しそうですが、コピペすればいいだけなので、この記事の通りにすればできるので安心してください。

Macのウィンドウを指定のサイズに変更

目標は、1番前にあるウィンドウのサイズを変更することです。(サイズ変更できないアプリの場合はできません)

僕が考えた方法ではなく、他の方のサイトに書いてありました。詳しくはそちらのサイトを見てください。

参考サイト→ウィンドウのサイズをAppleScriptで制御-Macとの闘いの日々

スクリプトエディタでスクリプトの作成

まず使うエディタなんですけど、スクリプトエディタというアプリを使います。Macでは、少し分かりにくいところにありますが、標準でインストールされているアプリです。これだけしか使わないので、インストールするアプリとかはないです。

Finder→アプリケーション→ユーティリティのフォルダの中に「スクリプトエディタ.app」があるので、アプリを起動してみます。

こんな画面になるので、新規書類をクリックします。

ここでスクリプトを作成して保存します。本当は自分でスクリプトを考えていくのですが、上で紹介したサイトの方が作ってくれているのでそれを使わせてもらいます。

set bestSize to {1152, 768}
tell application "System Events"
	set topProcess to item 1 of (every process whose frontmost is true)
	tell topProcess
		set topDocWindow to window 1
		set size of topDocWindow to bestSize
	end tell
end tell

こちらのスクリプトをコピー&ペーストしてください。

1行目のset bestSize to {1152, 768}は、{1152, 768}は、{横, 縦}と横と縦のサイズになっているので、指定したいサイズにして下さい。

コピペするとこんな感じにスクリプトが紫色になっていると思います。

次に、上のかなづちマークのアイコンをクリックするとコンパイルされて色が変わります。(コンパイルとはコンピュータが分かるように翻訳することです)

これで、このスクリプトは動作するはずです。

 

試しに実行してみましょう。

かなずちの横の三角マークをクリックします。

 

初めて使う人はこのようなアクセス権がないというダイアログが出てくるかもしれません。

その場合は、アクセス権を与えます。上で「OK」を押すと設定画面が出てくると思いますが、Macのメニューバー→システム環境設定→セキュリティとプライバシーからでも出せます。

Macのユーザ名とパスワードを入力してロックを解除して、「スクリプトエディタ」にチェックを入れます。

するとスプリクトエディタで編集していたウィンドウの大きさが変わったと思います。

 


画像だけでは分かりにくいと思うので、動画も撮ってみました。大きさが変わっています!

できた瞬間は少し感動しました。自分で書いたスクリプトじゃありませんが、こんなことができるなんてすごいですよね。

これで動作の確認ができたので、次は別のアプリやウィンドウでもサイズを調整できるようにしていきます。このままでは、いちいちエディタ実行ボタンを押さないといけません。

そもそも実行ボタンを押した時点でこのウィンドウが1番前になってしまうので、他のウィンドウの大きさを変えることができません笑

 

次にこれをどのアプリからでもすぐ呼び出せるようにしていきます。

編集自体はこれで完了しているので、取り敢えず名前をつけて保存していきます。

名前に関しては何でもいいと思いますが、この後にこのファイル名をクリックしてサイズ変更できるようにするので、自分が分かるようにしておくといいです。

いくつかサイズを用意したい人は、ファイル名にサイズを書いておくことをオススメします。

名前を変更できたら保存します。Macの上のメニューバー→ファイル→保存で保存が完了します。

スクリプトを編集した時は必ず保存するようにしてください。そのままウィンドウを閉じてしまうと変更が保存されないです。

スクリプトの解説

2クリックでうウィンドウの大きさを変える前にここで、今後のためにスクリプトの中身について書いておきます。これはメモみたいなものなので飛ばしてもらっていいです。

 

1 set bestSize to {1152, 768}

変更したいサイズの定義。{1152, 768}は、{横, 縦}と横と縦のサイズになっていて変更可能。

 

2 tell application "System Events"

  set topProcess to item 1 of (every process whose frontmost is true)

全ての実行中のアプリ「every process」中で、「frontmost」という変数が「true」になっているアプリが1番手前のアプリなのでそれを取り出して「topProcess」という変数に入れる。

アプリの状態や存在を確認するために「System Events」というアプリに命令を送っています。tell〜と書いたら、処理内容の後に「end tell」で閉じる。

item 1 ofだけだと、リストの1番目の項目を取り出すだけなので、処理を続けられないので別の変数に入れているようです。

 

3 tell topProcess set topDocWindow to window 1

「window1」で1番前のウィンドウを取得して、それを「topDocWindow」という変数に格納する。

1番前のウィンドウは1番前のアプリが持っているので、1番前のアプリに命令送っています。これもtell〜なので、処理内容の後に「end tell」で閉じる。

 

4 set size of topDocWindow to bestSize

最後に、「topDocWindow」(1番手前のウィンドウ)を「bestSize」(指定のサイズ)の値に変更する。

スクリプトメニューから呼び出せるようにする

次に2クリックでサイズ変更できるようにメニューバーにスクリプトメニューを追加していきます。

 

Macのメニューバー→スプリクトエディタ→環境設定と進みます。

設定の一般のところで、「メニューバーにスクリプトメニューを表示」と「コンピュータスクリプトを表示」にチェックを入れます。

「アプリケーションスクリプトを表示」は「下」のままでいいと思います。表示の違いなんでしょうけど、よくわかりませんでした。

先程と同じくアクセス権限の画面が出た場合は同じように処理します。

ユーザ名とパスワードを入力して認証をして、スクリプトメニューにチェックします。

 

設定を変更すると右上のメニューバーにスクリプトメニューが追加されました。

後は先程作ったスプリクトファイルを移動させるだけです。

メニューバーのスプリクトメニューをクリックします。

 

そして、「スクリプトフォルダを開く」→「コンピュータ・スクリプト・フォルダを開く」をクリック

Scriptsというフォルダが開かれ流ので、そこに先程作った「ウィンドウサイズを調整(1152×768)」のファイルを移動させます。

この時にもまた認証を求められるので、ユーザ名と名前を入力します。

移動ができたらもう一度スクリプトメニューをクリックすると追加されていると思います。


追加されました!他のアプリでもできるかどうか確認してみます。

 


ちゃんとできました!
追加も今までの手順でできるので何個か作ってみるといいと思います。

まとめ

ウィンドウのスクリーンショットをとる時に便利だと思います。めんどくさい設定とかもなく、2クリックですぐに変更できます。既定のウィンドウの大きさが気に食わなかった時にも、自分の好みの大きさにできます。

これを応用するとウィンドウの位置の変えられるようです。

個人的にこの方法はかなりエレガントな方法だと感心しました。標準のソフトでこんなことができるなんて素晴らしいですね。

コメント

タイトルとURLをコピーしました