【macOS】 ウインドウの位置と寸法を設定する

macOS上で使用するソフトのウインドウを定置化したい。
しかし、ウインドウの位置と寸法を記憶してくれるソフトもあれば、寸法だけ記憶するソフトもあるし、別のソフトと重ならないようにずれた位置で起動してくれるソフトもあります。
Windowsであれば数多ある便利なフリーソフトに頼るところですが、macOSフリーソフトの種類が少ない上に、OSをアップデートした際の後方互換性に不安があるので、できるだけサードパーティ製のソフトに依存せずに済ませたいものです。
幸いにも、macOSにはウインドウの位置と寸法を任意に変更できる機能があります。
それは、AppleScriptです。

■■■■■■■■■■■■■■■

【準備】

①Launchpadから「その他」→「スクリプトエディタ」を起動し、環境設定で「メニューバーにスクリプトメニューを表示」をONにする。

f:id:b131:20201212222549p:plain


テキストエディタで下記を内容とするファイルを作る。
(下記は、位置x, y = 0, 25、寸法w, h = 600, 650の場合)
----------ここから----------
set bestPosition to {0, 25}
set bestSize to {600, 650}
tell application "System Events"
set topProcess to item 1 of (every process whose frontmost is true)
tell topProcess
set topDocWindow to item 1 of (every window whose subrole is "AXStandardWindow")
set size of topDocWindow to bestSize
set position of topDocWindow to bestPosition
set size of topDocWindow to bestSize
set position of topDocWindow to bestPosition
end tell
end tell
----------ここまで----------

③ファイルの拡張子を「.scpt」にして、「~/ライブラリ/Scripts/」にコピーする。(macOS Big Surでは要パスワード)
※デフォルトのスクリプトは削除しても、OSのアップデートなどで復活するので、削除不要。

■■■■■■■■■■■■■■■

【使い方】

①サイズを変更するウインドウを選択してアクティブにする。
macOSのメニューバーのスクリプトメニューからスクリプトを選択する。

f:id:b131:20201212222641p:plain


※初回実行時はアクセシビリティ機能によるコンピュータの制御許可を求められるので、「許可」すること。

f:id:b131:20201212222725p:plainf:id:b131:20201212222749p:plain


■■■■■■■■■■■■■■■

【所感】

前述しましたがmacOSWindowsと比較して、ソフトの後方互換性に大きな不安があります。OSをアップデートすると今まで愛用していたソフトが使えなくなったというのは、ざらにあることです。
だから簡単な機能をOSの機能で賄えるというのはありがたいことです。
macOSには、このような小さな一手間で作業性を向上する便利な機能がたくさんあります。
今後の記事で少しずつ紹介できたらいいなと思います。