Macシステム設定defaultsコマンドでCUIから編集する

諸々のMacの設定はGUIから操作するのが一般的

だけど

みたいなことをやろうとするとCUI(ここではAnsible)から操作したい

とりあえずコマンドラインから設定を変更する方法について確認をする

MacOSのシステム設定の内容をCUIから確認をする

$ defaults read

このコマンドで設定のリストをJSONっぽい形式で吐き出す.

どれが何なのかは頑張ってググるなり推測するのが良さそう.

OSをインストールしたばっかりの状態をまず記録しておいて差分を見るというのも良いだろう(自分はこの方法で欲しい設定を探した)

わかりやすいところで言うと,例えばシステム設定>キーボードの設定で

  • キーのリピート速度
  • リピート入力認識までの時間

の2つを最速にしている

この設定だと

{
	...
	"Apple Global Domain" =     {
		...
		InitialKeyRepeat = 15;
		KeyRepeat = 2;
		...
	};
	...
	(((超長いので省略)))
	...
}

のようになっているのがわかる.

defaultsコマンドで設定を変更する

ここの設定は以下のようなコマンドから設定が可能

# キーのリピート速度
$ defaults write -g KeyRepeat -int 2

# リピートの認識速度
$ defaults write -g InitialKeyRepeat -int 15

かなり簡単.

"Apple Global Domain"の場合は-gのオプションで良いが他の場合は名前で指定する

#トラックパッドのクリックの強さを弱くする
$ defaults write com.apple.AppleMultitouchTrackpad 'FirstClickThreshold' -float 0

# Dockを自動で隠す
$ defaults write com.apple.dock autohide -bool true

みたいな感じで.

多分GUIで設定できない細かい設定とかもできそう.

あとはよしなに.

defaultsの詳細はここを見るのが一番良さそう

https://macos-defaults.com/

参考

#blog