macOSの画面を左右2分割で表示する


macOS自体に左右2分割で表示する機能がありますが、ウィンドウが全画面になってしまうのでちょっと使いづらい。
osascriptを使うと、ウィンドウの位置とサイズをコマンドラインから設定できるみたいなので、これを使ってみることにした。

align
#!/bin/sh

app=$1
align=$2

case $align in
  left )
    osascript \
      -e "tell application \"${app}\"" \
      -e 'set bounds of front window to {0, 23, 839, 1040}' \
      -e 'end tell'
    break
    ;;
  right )
    osascript \
      -e "tell application \"${app}\"" \
      -e 'set bounds of front window to {840, 23, 1680, 1040}' \
      -e 'end tell'
    break
    ;;
  * )
    echo "第2引数に left または right を入力してください" 1>&2
    ;;
esac

上記のスクリプトをパスの通った場所に置いて、

align Preview left
align Firefox right

とやると、こんな感じになる。

参考: https://dev.classmethod.jp/smartphone/iphone/mac-app-resize/