Skip to content

Zoom

Everything under System Settings › Accessibility › Zoom, as Nix options. Each one is named after the control you'd click, and set under programs.nix-plist-manager.options in home-manager.

27 options 24 verified against System Settings

System Settings › Accessibility › Zoom › Modifier key for scroll gesture

home-manager · per user Not verified
applications.systemSettings.accessibility.zoom.modifierKeyForScrollGesture = {
control = true;
};

The modifier keys to hold, each true or false: "command""control""option""shift" "unset" puts back macOS's default.

Where it's stored and what runs
  • com.apple.driver.AppleBluetoothMultitouch.trackpad HIDScrollZoomModifierMask
  • com.apple.AppleMultitouchTrackpad HIDScrollZoomModifierMask
  • com.apple.universalaccess closeViewScrollWheelModifiersInt

For unset:

/usr/bin/defaults delete com.apple.driver.AppleBluetoothMultitouch.trackpad HIDScrollZoomModifierMask 2>/dev/null || true
/usr/bin/defaults delete com.apple.AppleMultitouchTrackpad HIDScrollZoomModifierMask 2>/dev/null || true
/usr/bin/defaults delete com.apple.universalaccess closeViewScrollWheelModifiersInt 2>/dev/null || true
/usr/bin/defaults -currentHost delete com.apple.driver.AppleBluetoothMultitouch.trackpad HIDScrollZoomModifierMask 2>/dev/null || true
/usr/bin/defaults -currentHost delete com.apple.AppleMultitouchTrackpad HIDScrollZoomModifierMask 2>/dev/null || true
/usr/bin/defaults -currentHost delete com.apple.universalaccess closeViewScrollWheelModifiersInt 2>/dev/null || true

For { control = true; }:

/usr/bin/defaults write com.apple.driver.AppleBluetoothMultitouch.trackpad HIDScrollZoomModifierMask -int 262144 || echo 'nix-plist-manager: failed: /usr/bin/defaults write com.apple.driver.AppleBluetoothMultitouch.trackpad HIDScrollZoomModifierMask -int 262144' >&2
/usr/bin/defaults write com.apple.AppleMultitouchTrackpad HIDScrollZoomModifierMask -int 262144 || echo 'nix-plist-manager: failed: /usr/bin/defaults write com.apple.AppleMultitouchTrackpad HIDScrollZoomModifierMask -int 262144' >&2
/usr/bin/defaults write com.apple.universalaccess closeViewScrollWheelModifiersInt -int 262144 || echo 'nix-plist-manager: failed: /usr/bin/defaults write com.apple.universalaccess closeViewScrollWheelModifiersInt -int 262144' >&2
/usr/bin/defaults -currentHost delete com.apple.driver.AppleBluetoothMultitouch.trackpad HIDScrollZoomModifierMask 2>/dev/null || true
/usr/bin/defaults -currentHost delete com.apple.AppleMultitouchTrackpad HIDScrollZoomModifierMask 2>/dev/null || true
/usr/bin/defaults -currentHost delete com.apple.universalaccess closeViewScrollWheelModifiersInt 2>/dev/null || true

System Settings › Accessibility › Zoom › Use keyboard shortcuts to zoom

home-manager · per user ✓ Verified on macOS 27
applications.systemSettings.accessibility.zoom.useKeyboardShortcutsToZoom = true;

true or false

Where it's stored and what runs
  • com.apple.universalaccess closeViewHotkeysEnabled
  • com.apple.symbolichotkeys AppleSymbolicHotKeys

For false:

/usr/bin/defaults write com.apple.universalaccess closeViewHotkeysEnabled -bool false || echo 'nix-plist-manager: failed: /usr/bin/defaults write com.apple.universalaccess closeViewHotkeysEnabled -bool false' >&2
/usr/bin/defaults write com.apple.symbolichotkeys AppleSymbolicHotKeys -dict-add 15 '<dict><key>enabled</key><false/></dict>' 17 '<dict><key>enabled</key><false/></dict>' 179 '<dict><key>enabled</key><false/></dict>' 19 '<dict><key>enabled</key><false/></dict>' 23 '<dict><key>enabled</key><false/></dict>' || echo 'nix-plist-manager: failed: /usr/bin/defaults write com.apple.symbolichotkeys AppleSymbolicHotKeys -dict-add 15 '\''<dict><key>enabled</key><false/></dict>'\'' 17 '\''<dict><key>enabled</key><false/></dict>'\'' 179 '\''<dict><key>enabled</key><false/></dict>'\'' 19 '\''<dict><key>enabled</key><false/></dict>'\'' 23 '\''<dict><key>enabled</key><false/></dict>'\''' >&2
/usr/bin/defaults -currentHost delete com.apple.universalaccess closeViewHotkeysEnabled 2>/dev/null || true
/usr/bin/defaults -currentHost delete com.apple.symbolichotkeys AppleSymbolicHotKeys 2>/dev/null || true
/System/Library/PrivateFrameworks/SystemAdministration.framework/Resources/activateSettings -u

For true:

/usr/bin/defaults write com.apple.universalaccess closeViewHotkeysEnabled -bool true || echo 'nix-plist-manager: failed: /usr/bin/defaults write com.apple.universalaccess closeViewHotkeysEnabled -bool true' >&2
/usr/bin/defaults write com.apple.symbolichotkeys AppleSymbolicHotKeys -dict-add 15 '<dict><key>enabled</key><true/></dict>' 17 '<dict><key>enabled</key><true/></dict>' 179 '<dict><key>enabled</key><true/></dict>' 19 '<dict><key>enabled</key><true/></dict>' 23 '<dict><key>enabled</key><true/></dict>' || echo 'nix-plist-manager: failed: /usr/bin/defaults write com.apple.symbolichotkeys AppleSymbolicHotKeys -dict-add 15 '\''<dict><key>enabled</key><true/></dict>'\'' 17 '\''<dict><key>enabled</key><true/></dict>'\'' 179 '\''<dict><key>enabled</key><true/></dict>'\'' 19 '\''<dict><key>enabled</key><true/></dict>'\'' 23 '\''<dict><key>enabled</key><true/></dict>'\''' >&2
/usr/bin/defaults -currentHost delete com.apple.universalaccess closeViewHotkeysEnabled 2>/dev/null || true
/usr/bin/defaults -currentHost delete com.apple.symbolichotkeys AppleSymbolicHotKeys 2>/dev/null || true
/System/Library/PrivateFrameworks/SystemAdministration.framework/Resources/activateSettings -u

Use scroll gesture with modifier keys to zoom

Section titled “Use scroll gesture with modifier keys to zoom”

System Settings › Accessibility › Zoom › Use scroll gesture with modifier keys to zoom

home-manager · per user ✓ Verified on macOS 27
applications.systemSettings.accessibility.zoom.useScrollGestureWithModifierKeysToZoom = true;

true or false "unset" puts back macOS's default.

Where it's stored and what runs
  • com.apple.driver.AppleBluetoothMultitouch.trackpad HIDScrollZoomModifierMask
  • com.apple.AppleMultitouchTrackpad HIDScrollZoomModifierMask
  • com.apple.universalaccess closeViewScrollWheelToggle

For false:

/usr/bin/defaults write com.apple.driver.AppleBluetoothMultitouch.trackpad HIDScrollZoomModifierMask -int 0 || echo 'nix-plist-manager: failed: /usr/bin/defaults write com.apple.driver.AppleBluetoothMultitouch.trackpad HIDScrollZoomModifierMask -int 0' >&2
/usr/bin/defaults write com.apple.AppleMultitouchTrackpad HIDScrollZoomModifierMask -int 0 || echo 'nix-plist-manager: failed: /usr/bin/defaults write com.apple.AppleMultitouchTrackpad HIDScrollZoomModifierMask -int 0' >&2
/usr/bin/defaults write com.apple.universalaccess closeViewScrollWheelToggle -bool false || echo 'nix-plist-manager: failed: /usr/bin/defaults write com.apple.universalaccess closeViewScrollWheelToggle -bool false' >&2
/usr/bin/defaults -currentHost delete com.apple.driver.AppleBluetoothMultitouch.trackpad HIDScrollZoomModifierMask 2>/dev/null || true
/usr/bin/defaults -currentHost delete com.apple.AppleMultitouchTrackpad HIDScrollZoomModifierMask 2>/dev/null || true
/usr/bin/defaults -currentHost delete com.apple.universalaccess closeViewScrollWheelToggle 2>/dev/null || true

For true:

/usr/bin/defaults write com.apple.universalaccess closeViewScrollWheelToggle -bool true || echo 'nix-plist-manager: failed: /usr/bin/defaults write com.apple.universalaccess closeViewScrollWheelToggle -bool true' >&2
/usr/bin/defaults -currentHost delete com.apple.driver.AppleBluetoothMultitouch.trackpad HIDScrollZoomModifierMask 2>/dev/null || true
/usr/bin/defaults -currentHost delete com.apple.AppleMultitouchTrackpad HIDScrollZoomModifierMask 2>/dev/null || true
/usr/bin/defaults -currentHost delete com.apple.universalaccess closeViewScrollWheelToggle 2>/dev/null || true

For unset:

/usr/bin/defaults delete com.apple.driver.AppleBluetoothMultitouch.trackpad HIDScrollZoomModifierMask 2>/dev/null || true
/usr/bin/defaults delete com.apple.AppleMultitouchTrackpad HIDScrollZoomModifierMask 2>/dev/null || true
/usr/bin/defaults delete com.apple.universalaccess closeViewScrollWheelToggle 2>/dev/null || true
/usr/bin/defaults -currentHost delete com.apple.driver.AppleBluetoothMultitouch.trackpad HIDScrollZoomModifierMask 2>/dev/null || true
/usr/bin/defaults -currentHost delete com.apple.AppleMultitouchTrackpad HIDScrollZoomModifierMask 2>/dev/null || true
/usr/bin/defaults -currentHost delete com.apple.universalaccess closeViewScrollWheelToggle 2>/dev/null || true

System Settings › Accessibility › Zoom › Use trackpad gesture to zoom

home-manager · per user ✓ Verified on macOS 27
applications.systemSettings.accessibility.zoom.useTrackpadGestureToZoom = true;

true or false "unset" puts back macOS's default.

Where it's stored and what runs
  • com.apple.universalaccess closeViewTrackpadGestureZoomEnabled

For false:

/usr/bin/defaults write com.apple.universalaccess closeViewTrackpadGestureZoomEnabled -bool false || echo 'nix-plist-manager: failed: /usr/bin/defaults write com.apple.universalaccess closeViewTrackpadGestureZoomEnabled -bool false' >&2
/usr/bin/defaults -currentHost delete com.apple.universalaccess closeViewTrackpadGestureZoomEnabled 2>/dev/null || true

For true:

/usr/bin/defaults write com.apple.universalaccess closeViewTrackpadGestureZoomEnabled -bool true || echo 'nix-plist-manager: failed: /usr/bin/defaults write com.apple.universalaccess closeViewTrackpadGestureZoomEnabled -bool true' >&2
/usr/bin/defaults -currentHost delete com.apple.universalaccess closeViewTrackpadGestureZoomEnabled 2>/dev/null || true

For unset:

/usr/bin/defaults delete com.apple.universalaccess closeViewTrackpadGestureZoomEnabled 2>/dev/null || true
/usr/bin/defaults -currentHost delete com.apple.universalaccess closeViewTrackpadGestureZoomEnabled 2>/dev/null || true

System Settings › Accessibility › Zoom › Zoom style

home-manager · per user ✓ Verified on macOS 27
applications.systemSettings.accessibility.zoom.zoomStyle = "Full Screen";

One of: "Full Screen""Picture-in-Picture""Split Screen" "unset" puts back macOS's default.

Where it's stored and what runs
  • com.apple.universalaccess closeViewZoomMode

For Full Screen:

/usr/bin/defaults write com.apple.universalaccess closeViewZoomMode -int 0 || echo 'nix-plist-manager: failed: /usr/bin/defaults write com.apple.universalaccess closeViewZoomMode -int 0' >&2
/usr/bin/defaults -currentHost delete com.apple.universalaccess closeViewZoomMode 2>/dev/null || true

For Picture-in-Picture:

/usr/bin/defaults write com.apple.universalaccess closeViewZoomMode -int 1 || echo 'nix-plist-manager: failed: /usr/bin/defaults write com.apple.universalaccess closeViewZoomMode -int 1' >&2
/usr/bin/defaults -currentHost delete com.apple.universalaccess closeViewZoomMode 2>/dev/null || true

For Split Screen:

/usr/bin/defaults write com.apple.universalaccess closeViewZoomMode -int 2 || echo 'nix-plist-manager: failed: /usr/bin/defaults write com.apple.universalaccess closeViewZoomMode -int 2' >&2
/usr/bin/defaults -currentHost delete com.apple.universalaccess closeViewZoomMode 2>/dev/null || true

For unset:

/usr/bin/defaults delete com.apple.universalaccess closeViewZoomMode 2>/dev/null || true
/usr/bin/defaults -currentHost delete com.apple.universalaccess closeViewZoomMode 2>/dev/null || true

System Settings › Accessibility › Zoom › Advanced… › Disable Universal Control while zoomed in

home-manager · per user ✓ Verified on macOS 27
applications.systemSettings.accessibility.zoomAdvanced.disableUniversalControlWhileZoomedIn = true;

true or false "unset" puts back macOS's default.

Where it's stored and what runs
  • com.apple.universalaccess closeViewDisableUniversalControl

For false:

/usr/bin/defaults write com.apple.universalaccess closeViewDisableUniversalControl -bool false || echo 'nix-plist-manager: failed: /usr/bin/defaults write com.apple.universalaccess closeViewDisableUniversalControl -bool false' >&2
/usr/bin/defaults -currentHost delete com.apple.universalaccess closeViewDisableUniversalControl 2>/dev/null || true

For true:

/usr/bin/defaults write com.apple.universalaccess closeViewDisableUniversalControl -bool true || echo 'nix-plist-manager: failed: /usr/bin/defaults write com.apple.universalaccess closeViewDisableUniversalControl -bool true' >&2
/usr/bin/defaults -currentHost delete com.apple.universalaccess closeViewDisableUniversalControl 2>/dev/null || true

For unset:

/usr/bin/defaults delete com.apple.universalaccess closeViewDisableUniversalControl 2>/dev/null || true
/usr/bin/defaults -currentHost delete com.apple.universalaccess closeViewDisableUniversalControl 2>/dev/null || true

Flash screen when notification banner appears outside zoom view

Section titled “Flash screen when notification banner appears outside zoom view”

System Settings › Accessibility › Zoom › Advanced… › Flash screen when notification banner appears outside zoom view

home-manager · per user ✓ Verified on macOS 27
applications.systemSettings.accessibility.zoomAdvanced.flashScreenWhenNotificationBannerAppearsOutsideZoomView = true;

true or false "unset" puts back macOS's default.

Where it's stored and what runs
  • com.apple.universalaccess closeViewFlashScreenOnNotificationEnabled

For false:

/usr/bin/defaults write com.apple.universalaccess closeViewFlashScreenOnNotificationEnabled -bool false || echo 'nix-plist-manager: failed: /usr/bin/defaults write com.apple.universalaccess closeViewFlashScreenOnNotificationEnabled -bool false' >&2
/usr/bin/defaults -currentHost delete com.apple.universalaccess closeViewFlashScreenOnNotificationEnabled 2>/dev/null || true

For true:

/usr/bin/defaults write com.apple.universalaccess closeViewFlashScreenOnNotificationEnabled -bool true || echo 'nix-plist-manager: failed: /usr/bin/defaults write com.apple.universalaccess closeViewFlashScreenOnNotificationEnabled -bool true' >&2
/usr/bin/defaults -currentHost delete com.apple.universalaccess closeViewFlashScreenOnNotificationEnabled 2>/dev/null || true

For unset:

/usr/bin/defaults delete com.apple.universalaccess closeViewFlashScreenOnNotificationEnabled 2>/dev/null || true
/usr/bin/defaults -currentHost delete com.apple.universalaccess closeViewFlashScreenOnNotificationEnabled 2>/dev/null || true

System Settings › Accessibility › Zoom › Advanced… › Follow keyboard focus

home-manager · per user ✓ Verified on macOS 27
applications.systemSettings.accessibility.zoomAdvanced.followKeyboardFocus = "Always";

One of: "Always""Never""When Typing" "unset" puts back macOS's default.

Where it's stored and what runs
  • com.apple.universalaccess closeViewZoomFocusFollowModeKey

For Always:

/usr/bin/defaults write com.apple.universalaccess closeViewZoomFocusFollowModeKey -int 1 || echo 'nix-plist-manager: failed: /usr/bin/defaults write com.apple.universalaccess closeViewZoomFocusFollowModeKey -int 1' >&2
/usr/bin/defaults -currentHost delete com.apple.universalaccess closeViewZoomFocusFollowModeKey 2>/dev/null || true

For Never:

/usr/bin/defaults write com.apple.universalaccess closeViewZoomFocusFollowModeKey -int 0 || echo 'nix-plist-manager: failed: /usr/bin/defaults write com.apple.universalaccess closeViewZoomFocusFollowModeKey -int 0' >&2
/usr/bin/defaults -currentHost delete com.apple.universalaccess closeViewZoomFocusFollowModeKey 2>/dev/null || true

For When Typing:

/usr/bin/defaults write com.apple.universalaccess closeViewZoomFocusFollowModeKey -int 2 || echo 'nix-plist-manager: failed: /usr/bin/defaults write com.apple.universalaccess closeViewZoomFocusFollowModeKey -int 2' >&2
/usr/bin/defaults -currentHost delete com.apple.universalaccess closeViewZoomFocusFollowModeKey 2>/dev/null || true

For unset:

/usr/bin/defaults delete com.apple.universalaccess closeViewZoomFocusFollowModeKey 2>/dev/null || true
/usr/bin/defaults -currentHost delete com.apple.universalaccess closeViewZoomFocusFollowModeKey 2>/dev/null || true

System Settings › Accessibility › Zoom › Advanced… › Invert colors

home-manager · per user Not verified
applications.systemSettings.accessibility.zoomAdvanced.invertColorsInPictureInPicture = true;

true or false "unset" puts back macOS's default.

Where it's stored and what runs
  • com.apple.universalaccess closeViewInvertColors

For false:

/usr/bin/defaults write com.apple.universalaccess closeViewInvertColors -bool false || echo 'nix-plist-manager: failed: /usr/bin/defaults write com.apple.universalaccess closeViewInvertColors -bool false' >&2
/usr/bin/defaults -currentHost delete com.apple.universalaccess closeViewInvertColors 2>/dev/null || true

For true:

/usr/bin/defaults write com.apple.universalaccess closeViewInvertColors -bool true || echo 'nix-plist-manager: failed: /usr/bin/defaults write com.apple.universalaccess closeViewInvertColors -bool true' >&2
/usr/bin/defaults -currentHost delete com.apple.universalaccess closeViewInvertColors 2>/dev/null || true

For unset:

/usr/bin/defaults delete com.apple.universalaccess closeViewInvertColors 2>/dev/null || true
/usr/bin/defaults -currentHost delete com.apple.universalaccess closeViewInvertColors 2>/dev/null || true

System Settings › Accessibility › Zoom › Advanced… › Keep picture-in-picture window stationary

home-manager · per user Not verified
applications.systemSettings.accessibility.zoomAdvanced.keepPictureInPictureWindowStationary = true;

true or false "unset" puts back macOS's default.

Where it's stored and what runs
  • com.apple.universalaccess closeViewKeepZoomWindowStationary

For false:

/usr/bin/defaults write com.apple.universalaccess closeViewKeepZoomWindowStationary -bool false || echo 'nix-plist-manager: failed: /usr/bin/defaults write com.apple.universalaccess closeViewKeepZoomWindowStationary -bool false' >&2
/usr/bin/defaults -currentHost delete com.apple.universalaccess closeViewKeepZoomWindowStationary 2>/dev/null || true

For true:

/usr/bin/defaults write com.apple.universalaccess closeViewKeepZoomWindowStationary -bool true || echo 'nix-plist-manager: failed: /usr/bin/defaults write com.apple.universalaccess closeViewKeepZoomWindowStationary -bool true' >&2
/usr/bin/defaults -currentHost delete com.apple.universalaccess closeViewKeepZoomWindowStationary 2>/dev/null || true

For unset:

/usr/bin/defaults delete com.apple.universalaccess closeViewKeepZoomWindowStationary 2>/dev/null || true
/usr/bin/defaults -currentHost delete com.apple.universalaccess closeViewKeepZoomWindowStationary 2>/dev/null || true

System Settings › Accessibility › Zoom › Advanced… › Maximum zoom

home-manager · per user ✓ Verified on macOS 27
applications.systemSettings.accessibility.zoomAdvanced.maximumZoom = 1.0;

A number from 1 to 40 "unset" puts back macOS's default.

Where it's stored and what runs
  • com.apple.universalaccess closeViewNearPoint

For 1.0:

/usr/bin/defaults write com.apple.universalaccess closeViewNearPoint -float 1.000000 || echo 'nix-plist-manager: failed: /usr/bin/defaults write com.apple.universalaccess closeViewNearPoint -float 1.000000' >&2
/usr/bin/defaults -currentHost delete com.apple.universalaccess closeViewNearPoint 2>/dev/null || true

For 40.0:

/usr/bin/defaults write com.apple.universalaccess closeViewNearPoint -float 40.000000 || echo 'nix-plist-manager: failed: /usr/bin/defaults write com.apple.universalaccess closeViewNearPoint -float 40.000000' >&2
/usr/bin/defaults -currentHost delete com.apple.universalaccess closeViewNearPoint 2>/dev/null || true

For unset:

/usr/bin/defaults delete com.apple.universalaccess closeViewNearPoint 2>/dev/null || true
/usr/bin/defaults -currentHost delete com.apple.universalaccess closeViewNearPoint 2>/dev/null || true

System Settings › Accessibility › Zoom › Advanced… › Minimum zoom

home-manager · per user ✓ Verified on macOS 27
applications.systemSettings.accessibility.zoomAdvanced.minimumZoom = 1.0;

A number from 1 to 40 "unset" puts back macOS's default.

Where it's stored and what runs
  • com.apple.universalaccess closeViewFarPoint

For 1.0:

/usr/bin/defaults write com.apple.universalaccess closeViewFarPoint -float 1.000000 || echo 'nix-plist-manager: failed: /usr/bin/defaults write com.apple.universalaccess closeViewFarPoint -float 1.000000' >&2
/usr/bin/defaults -currentHost delete com.apple.universalaccess closeViewFarPoint 2>/dev/null || true

For 40.0:

/usr/bin/defaults write com.apple.universalaccess closeViewFarPoint -float 40.000000 || echo 'nix-plist-manager: failed: /usr/bin/defaults write com.apple.universalaccess closeViewFarPoint -float 40.000000' >&2
/usr/bin/defaults -currentHost delete com.apple.universalaccess closeViewFarPoint 2>/dev/null || true

For unset:

/usr/bin/defaults delete com.apple.universalaccess closeViewFarPoint 2>/dev/null || true
/usr/bin/defaults -currentHost delete com.apple.universalaccess closeViewFarPoint 2>/dev/null || true

System Settings › Accessibility › Zoom › Advanced… › Detach zoom view from pointer

home-manager · per user ✓ Verified on macOS 27
applications.systemSettings.accessibility.zoomAdvanced.modifiersForTemporaryActions.detachZoomViewFromPointer = true;

true or false "unset" puts back macOS's default.

Where it's stored and what runs
  • com.apple.universalaccess closeViewTemporaryDetachEnabled

For false:

/usr/bin/defaults write com.apple.universalaccess closeViewTemporaryDetachEnabled -bool false || echo 'nix-plist-manager: failed: /usr/bin/defaults write com.apple.universalaccess closeViewTemporaryDetachEnabled -bool false' >&2
/usr/bin/defaults -currentHost delete com.apple.universalaccess closeViewTemporaryDetachEnabled 2>/dev/null || true

For true:

/usr/bin/defaults write com.apple.universalaccess closeViewTemporaryDetachEnabled -bool true || echo 'nix-plist-manager: failed: /usr/bin/defaults write com.apple.universalaccess closeViewTemporaryDetachEnabled -bool true' >&2
/usr/bin/defaults -currentHost delete com.apple.universalaccess closeViewTemporaryDetachEnabled 2>/dev/null || true

For unset:

/usr/bin/defaults delete com.apple.universalaccess closeViewTemporaryDetachEnabled 2>/dev/null || true
/usr/bin/defaults -currentHost delete com.apple.universalaccess closeViewTemporaryDetachEnabled 2>/dev/null || true

System Settings › Accessibility › Zoom › Advanced… › Disable panning

home-manager · per user ✓ Verified on macOS 27
applications.systemSettings.accessibility.zoomAdvanced.modifiersForTemporaryActions.disablePanning = true;

true or false "unset" puts back macOS's default.

Where it's stored and what runs
  • com.apple.universalaccess closeViewTemporaryFreezePanningEnabled

For false:

/usr/bin/defaults write com.apple.universalaccess closeViewTemporaryFreezePanningEnabled -bool false || echo 'nix-plist-manager: failed: /usr/bin/defaults write com.apple.universalaccess closeViewTemporaryFreezePanningEnabled -bool false' >&2
/usr/bin/defaults -currentHost delete com.apple.universalaccess closeViewTemporaryFreezePanningEnabled 2>/dev/null || true

For true:

/usr/bin/defaults write com.apple.universalaccess closeViewTemporaryFreezePanningEnabled -bool true || echo 'nix-plist-manager: failed: /usr/bin/defaults write com.apple.universalaccess closeViewTemporaryFreezePanningEnabled -bool true' >&2
/usr/bin/defaults -currentHost delete com.apple.universalaccess closeViewTemporaryFreezePanningEnabled 2>/dev/null || true

For unset:

/usr/bin/defaults delete com.apple.universalaccess closeViewTemporaryFreezePanningEnabled 2>/dev/null || true
/usr/bin/defaults -currentHost delete com.apple.universalaccess closeViewTemporaryFreezePanningEnabled 2>/dev/null || true

System Settings › Accessibility › Zoom › Advanced… › Toggle zoom

home-manager · per user ✓ Verified on macOS 27
applications.systemSettings.accessibility.zoomAdvanced.modifiersForTemporaryActions.toggleZoom = true;

true or false "unset" puts back macOS's default.

Where it's stored and what runs
  • com.apple.universalaccess closeViewPressOnReleaseOff

For false:

/usr/bin/defaults write com.apple.universalaccess closeViewPressOnReleaseOff -bool false || echo 'nix-plist-manager: failed: /usr/bin/defaults write com.apple.universalaccess closeViewPressOnReleaseOff -bool false' >&2
/usr/bin/defaults -currentHost delete com.apple.universalaccess closeViewPressOnReleaseOff 2>/dev/null || true

For true:

/usr/bin/defaults write com.apple.universalaccess closeViewPressOnReleaseOff -bool true || echo 'nix-plist-manager: failed: /usr/bin/defaults write com.apple.universalaccess closeViewPressOnReleaseOff -bool true' >&2
/usr/bin/defaults -currentHost delete com.apple.universalaccess closeViewPressOnReleaseOff 2>/dev/null || true

For unset:

/usr/bin/defaults delete com.apple.universalaccess closeViewPressOnReleaseOff 2>/dev/null || true
/usr/bin/defaults -currentHost delete com.apple.universalaccess closeViewPressOnReleaseOff 2>/dev/null || true

System Settings › Accessibility › Zoom › Advanced… › Move cursor to next monitor

home-manager · per user ✓ Verified on macOS 27
applications.systemSettings.accessibility.zoomAdvanced.moveCursorToNextMonitor = true;

true or false "unset" puts back macOS's default.

Where it's stored and what runs
  • com.apple.universalaccess closeViewMonitorSelectionEnabled

For false:

/usr/bin/defaults write com.apple.universalaccess closeViewMonitorSelectionEnabled -bool false || echo 'nix-plist-manager: failed: /usr/bin/defaults write com.apple.universalaccess closeViewMonitorSelectionEnabled -bool false' >&2
/usr/bin/defaults -currentHost delete com.apple.universalaccess closeViewMonitorSelectionEnabled 2>/dev/null || true

For true:

/usr/bin/defaults write com.apple.universalaccess closeViewMonitorSelectionEnabled -bool true || echo 'nix-plist-manager: failed: /usr/bin/defaults write com.apple.universalaccess closeViewMonitorSelectionEnabled -bool true' >&2
/usr/bin/defaults -currentHost delete com.apple.universalaccess closeViewMonitorSelectionEnabled 2>/dev/null || true

For unset:

/usr/bin/defaults delete com.apple.universalaccess closeViewMonitorSelectionEnabled 2>/dev/null || true
/usr/bin/defaults -currentHost delete com.apple.universalaccess closeViewMonitorSelectionEnabled 2>/dev/null || true

System Settings › Accessibility › Zoom › Advanced… › Move screen image

home-manager · per user ✓ Verified on macOS 27
applications.systemSettings.accessibility.zoomAdvanced.moveScreenImage = "Just enough to show focus item";

One of: "Just enough to show focus item""So focus item is centered" "unset" puts back macOS's default.

Where it's stored and what runs
  • com.apple.universalaccess closeViewZoomFocusMovement

For Just enough to show focus item:

/usr/bin/defaults write com.apple.universalaccess closeViewZoomFocusMovement -int 1 || echo 'nix-plist-manager: failed: /usr/bin/defaults write com.apple.universalaccess closeViewZoomFocusMovement -int 1' >&2
/usr/bin/defaults -currentHost delete com.apple.universalaccess closeViewZoomFocusMovement 2>/dev/null || true

For So focus item is centered:

/usr/bin/defaults write com.apple.universalaccess closeViewZoomFocusMovement -int 0 || echo 'nix-plist-manager: failed: /usr/bin/defaults write com.apple.universalaccess closeViewZoomFocusMovement -int 0' >&2
/usr/bin/defaults -currentHost delete com.apple.universalaccess closeViewZoomFocusMovement 2>/dev/null || true

For unset:

/usr/bin/defaults delete com.apple.universalaccess closeViewZoomFocusMovement 2>/dev/null || true
/usr/bin/defaults -currentHost delete com.apple.universalaccess closeViewZoomFocusMovement 2>/dev/null || true

System Settings › Accessibility › Zoom › Advanced… › Move screen image when focus item is

home-manager · per user ✓ Verified on macOS 27
applications.systemSettings.accessibility.zoomAdvanced.moveScreenImageWhenFocusItemIs = "Near Screen Edge";

One of: "Near Screen Edge""Off-Center""On Screen Edge" "unset" puts back macOS's default.

Where it's stored and what runs
  • com.apple.universalaccess closeViewZoomFocusActivationZone

For Near Screen Edge:

/usr/bin/defaults write com.apple.universalaccess closeViewZoomFocusActivationZone -int 2 || echo 'nix-plist-manager: failed: /usr/bin/defaults write com.apple.universalaccess closeViewZoomFocusActivationZone -int 2' >&2
/usr/bin/defaults -currentHost delete com.apple.universalaccess closeViewZoomFocusActivationZone 2>/dev/null || true

For Off-Center:

/usr/bin/defaults write com.apple.universalaccess closeViewZoomFocusActivationZone -int 0 || echo 'nix-plist-manager: failed: /usr/bin/defaults write com.apple.universalaccess closeViewZoomFocusActivationZone -int 0' >&2
/usr/bin/defaults -currentHost delete com.apple.universalaccess closeViewZoomFocusActivationZone 2>/dev/null || true

For On Screen Edge:

/usr/bin/defaults write com.apple.universalaccess closeViewZoomFocusActivationZone -int 1 || echo 'nix-plist-manager: failed: /usr/bin/defaults write com.apple.universalaccess closeViewZoomFocusActivationZone -int 1' >&2
/usr/bin/defaults -currentHost delete com.apple.universalaccess closeViewZoomFocusActivationZone 2>/dev/null || true

For unset:

/usr/bin/defaults delete com.apple.universalaccess closeViewZoomFocusActivationZone 2>/dev/null || true
/usr/bin/defaults -currentHost delete com.apple.universalaccess closeViewZoomFocusActivationZone 2>/dev/null || true

System Settings › Accessibility › Zoom › Advanced… › Movement speed

home-manager · per user ✓ Verified on macOS 27
applications.systemSettings.accessibility.zoomAdvanced.movementDelay = 0.0;

A number from 0 to 1 "unset" puts back macOS's default.

Where it's stored and what runs
  • com.apple.universalaccess closeViewZoomFocusMovementDelay

For 0.0:

/usr/bin/defaults write com.apple.universalaccess closeViewZoomFocusMovementDelay -float 0.000000 || echo 'nix-plist-manager: failed: /usr/bin/defaults write com.apple.universalaccess closeViewZoomFocusMovementDelay -float 0.000000' >&2
/usr/bin/defaults -currentHost delete com.apple.universalaccess closeViewZoomFocusMovementDelay 2>/dev/null || true

For 1.0:

/usr/bin/defaults write com.apple.universalaccess closeViewZoomFocusMovementDelay -float 1.000000 || echo 'nix-plist-manager: failed: /usr/bin/defaults write com.apple.universalaccess closeViewZoomFocusMovementDelay -float 1.000000' >&2
/usr/bin/defaults -currentHost delete com.apple.universalaccess closeViewZoomFocusMovementDelay 2>/dev/null || true

For unset:

/usr/bin/defaults delete com.apple.universalaccess closeViewZoomFocusMovementDelay 2>/dev/null || true
/usr/bin/defaults -currentHost delete com.apple.universalaccess closeViewZoomFocusMovementDelay 2>/dev/null || true

System Settings › Accessibility › Zoom › Advanced… › Restore zoom factor on startup

home-manager · per user ✓ Verified on macOS 27
applications.systemSettings.accessibility.zoomAdvanced.restoreZoomFactorOnStartup = true;

true or false "unset" puts back macOS's default.

Where it's stored and what runs
  • com.apple.universalaccess closeViewRestoreZoomFactorOnStartup

For false:

/usr/bin/defaults write com.apple.universalaccess closeViewRestoreZoomFactorOnStartup -bool false || echo 'nix-plist-manager: failed: /usr/bin/defaults write com.apple.universalaccess closeViewRestoreZoomFactorOnStartup -bool false' >&2
/usr/bin/defaults -currentHost delete com.apple.universalaccess closeViewRestoreZoomFactorOnStartup 2>/dev/null || true

For true:

/usr/bin/defaults write com.apple.universalaccess closeViewRestoreZoomFactorOnStartup -bool true || echo 'nix-plist-manager: failed: /usr/bin/defaults write com.apple.universalaccess closeViewRestoreZoomFactorOnStartup -bool true' >&2
/usr/bin/defaults -currentHost delete com.apple.universalaccess closeViewRestoreZoomFactorOnStartup 2>/dev/null || true

For unset:

/usr/bin/defaults delete com.apple.universalaccess closeViewRestoreZoomFactorOnStartup 2>/dev/null || true
/usr/bin/defaults -currentHost delete com.apple.universalaccess closeViewRestoreZoomFactorOnStartup 2>/dev/null || true

System Settings › Accessibility › Zoom › Advanced… › Show zoomed image while screen sharing

home-manager · per user ✓ Verified on macOS 27
applications.systemSettings.accessibility.zoomAdvanced.showZoomedImageWhileScreenSharing = true;

true or false "unset" puts back macOS's default.

Where it's stored and what runs
  • com.apple.universalaccess closeViewZoomScreenShareEnabledKey

For false:

/usr/bin/defaults write com.apple.universalaccess closeViewZoomScreenShareEnabledKey -bool false || echo 'nix-plist-manager: failed: /usr/bin/defaults write com.apple.universalaccess closeViewZoomScreenShareEnabledKey -bool false' >&2
/usr/bin/defaults -currentHost delete com.apple.universalaccess closeViewZoomScreenShareEnabledKey 2>/dev/null || true

For true:

/usr/bin/defaults write com.apple.universalaccess closeViewZoomScreenShareEnabledKey -bool true || echo 'nix-plist-manager: failed: /usr/bin/defaults write com.apple.universalaccess closeViewZoomScreenShareEnabledKey -bool true' >&2
/usr/bin/defaults -currentHost delete com.apple.universalaccess closeViewZoomScreenShareEnabledKey 2>/dev/null || true

For unset:

/usr/bin/defaults delete com.apple.universalaccess closeViewZoomScreenShareEnabledKey 2>/dev/null || true
/usr/bin/defaults -currentHost delete com.apple.universalaccess closeViewZoomScreenShareEnabledKey 2>/dev/null || true

System Settings › Accessibility › Zoom › Advanced… › Smooth images

home-manager · per user ✓ Verified on macOS 27
applications.systemSettings.accessibility.zoomAdvanced.smoothImages = true;

true or false "unset" puts back macOS's default.

Where it's stored and what runs
  • com.apple.universalaccess closeViewSmoothImages

For false:

/usr/bin/defaults write com.apple.universalaccess closeViewSmoothImages -bool false || echo 'nix-plist-manager: failed: /usr/bin/defaults write com.apple.universalaccess closeViewSmoothImages -bool false' >&2
/usr/bin/defaults -currentHost delete com.apple.universalaccess closeViewSmoothImages 2>/dev/null || true

For true:

/usr/bin/defaults write com.apple.universalaccess closeViewSmoothImages -bool true || echo 'nix-plist-manager: failed: /usr/bin/defaults write com.apple.universalaccess closeViewSmoothImages -bool true' >&2
/usr/bin/defaults -currentHost delete com.apple.universalaccess closeViewSmoothImages 2>/dev/null || true

For unset:

/usr/bin/defaults delete com.apple.universalaccess closeViewSmoothImages 2>/dev/null || true
/usr/bin/defaults -currentHost delete com.apple.universalaccess closeViewSmoothImages 2>/dev/null || true

Toggle between full screen and picture-in-picture

Section titled “Toggle between full screen and picture-in-picture”

System Settings › Accessibility › Zoom › Advanced… › Toggle between full screen and picture-in-picture

home-manager · per user ✓ Verified on macOS 27
applications.systemSettings.accessibility.zoomAdvanced.toggleBetweenFullScreenAndPictureInPicture = true;

true or false "unset" puts back macOS's default.

Where it's stored and what runs
  • com.apple.universalaccess closeViewQuickSwitchHotKeysEnabled

For false:

/usr/bin/defaults write com.apple.universalaccess closeViewQuickSwitchHotKeysEnabled -bool false || echo 'nix-plist-manager: failed: /usr/bin/defaults write com.apple.universalaccess closeViewQuickSwitchHotKeysEnabled -bool false' >&2
/usr/bin/defaults -currentHost delete com.apple.universalaccess closeViewQuickSwitchHotKeysEnabled 2>/dev/null || true

For true:

/usr/bin/defaults write com.apple.universalaccess closeViewQuickSwitchHotKeysEnabled -bool true || echo 'nix-plist-manager: failed: /usr/bin/defaults write com.apple.universalaccess closeViewQuickSwitchHotKeysEnabled -bool true' >&2
/usr/bin/defaults -currentHost delete com.apple.universalaccess closeViewQuickSwitchHotKeysEnabled 2>/dev/null || true

For unset:

/usr/bin/defaults delete com.apple.universalaccess closeViewQuickSwitchHotKeysEnabled 2>/dev/null || true
/usr/bin/defaults -currentHost delete com.apple.universalaccess closeViewQuickSwitchHotKeysEnabled 2>/dev/null || true

Use keyboard shortcuts to adjust zoom window

Section titled “Use keyboard shortcuts to adjust zoom window”

System Settings › Accessibility › Zoom › Advanced… › Use keyboard shortcuts to adjust zoom window

home-manager · per user ✓ Verified on macOS 27
applications.systemSettings.accessibility.zoomAdvanced.useKeyboardShortcutsToAdjustZoomWindow = true;

true or false "unset" puts back macOS's default.

Where it's stored and what runs
  • com.apple.universalaccess closeViewResizeHotKeysEnabled

For false:

/usr/bin/defaults write com.apple.universalaccess closeViewResizeHotKeysEnabled -bool false || echo 'nix-plist-manager: failed: /usr/bin/defaults write com.apple.universalaccess closeViewResizeHotKeysEnabled -bool false' >&2
/usr/bin/defaults -currentHost delete com.apple.universalaccess closeViewResizeHotKeysEnabled 2>/dev/null || true

For true:

/usr/bin/defaults write com.apple.universalaccess closeViewResizeHotKeysEnabled -bool true || echo 'nix-plist-manager: failed: /usr/bin/defaults write com.apple.universalaccess closeViewResizeHotKeysEnabled -bool true' >&2
/usr/bin/defaults -currentHost delete com.apple.universalaccess closeViewResizeHotKeysEnabled 2>/dev/null || true

For unset:

/usr/bin/defaults delete com.apple.universalaccess closeViewResizeHotKeysEnabled 2>/dev/null || true
/usr/bin/defaults -currentHost delete com.apple.universalaccess closeViewResizeHotKeysEnabled 2>/dev/null || true

Use trackpad gesture to move cursor between monitors

Section titled “Use trackpad gesture to move cursor between monitors”

System Settings › Accessibility › Zoom › Advanced… › Use trackpad gesture to move cursor between monitors

home-manager · per user ✓ Verified on macOS 27
applications.systemSettings.accessibility.zoomAdvanced.useTrackpadGestureToMoveCursorBetweenMonitors = "Off";

One of: "Off""Swipe with Five Fingers""Swipe with Four Fingers""Swipe with Three Fingers" "unset" puts back macOS's default.

Where it's stored and what runs
  • com.apple.universalaccess closeViewMonitorSelectionTrackpadGesture

For Off:

/usr/bin/defaults write com.apple.universalaccess closeViewMonitorSelectionTrackpadGesture -int 0 || echo 'nix-plist-manager: failed: /usr/bin/defaults write com.apple.universalaccess closeViewMonitorSelectionTrackpadGesture -int 0' >&2
/usr/bin/defaults -currentHost delete com.apple.universalaccess closeViewMonitorSelectionTrackpadGesture 2>/dev/null || true

For Swipe with Five Fingers:

/usr/bin/defaults write com.apple.universalaccess closeViewMonitorSelectionTrackpadGesture -int 3 || echo 'nix-plist-manager: failed: /usr/bin/defaults write com.apple.universalaccess closeViewMonitorSelectionTrackpadGesture -int 3' >&2
/usr/bin/defaults -currentHost delete com.apple.universalaccess closeViewMonitorSelectionTrackpadGesture 2>/dev/null || true

For Swipe with Four Fingers:

/usr/bin/defaults write com.apple.universalaccess closeViewMonitorSelectionTrackpadGesture -int 2 || echo 'nix-plist-manager: failed: /usr/bin/defaults write com.apple.universalaccess closeViewMonitorSelectionTrackpadGesture -int 2' >&2
/usr/bin/defaults -currentHost delete com.apple.universalaccess closeViewMonitorSelectionTrackpadGesture 2>/dev/null || true

For Swipe with Three Fingers:

/usr/bin/defaults write com.apple.universalaccess closeViewMonitorSelectionTrackpadGesture -int 1 || echo 'nix-plist-manager: failed: /usr/bin/defaults write com.apple.universalaccess closeViewMonitorSelectionTrackpadGesture -int 1' >&2
/usr/bin/defaults -currentHost delete com.apple.universalaccess closeViewMonitorSelectionTrackpadGesture 2>/dev/null || true

For unset:

/usr/bin/defaults delete com.apple.universalaccess closeViewMonitorSelectionTrackpadGesture 2>/dev/null || true
/usr/bin/defaults -currentHost delete com.apple.universalaccess closeViewMonitorSelectionTrackpadGesture 2>/dev/null || true

System Settings › Accessibility › Zoom › Advanced… › Zoom each display independently

home-manager · per user ✓ Verified on macOS 27
applications.systemSettings.accessibility.zoomAdvanced.zoomEachDisplayIndependently = true;

true or false "unset" puts back macOS's default.

Where it's stored and what runs
  • com.apple.universalaccess closeViewZoomIndividualDisplays

For false:

/usr/bin/defaults write com.apple.universalaccess closeViewZoomIndividualDisplays -bool false || echo 'nix-plist-manager: failed: /usr/bin/defaults write com.apple.universalaccess closeViewZoomIndividualDisplays -bool false' >&2
/usr/bin/defaults -currentHost delete com.apple.universalaccess closeViewZoomIndividualDisplays 2>/dev/null || true

For true:

/usr/bin/defaults write com.apple.universalaccess closeViewZoomIndividualDisplays -bool true || echo 'nix-plist-manager: failed: /usr/bin/defaults write com.apple.universalaccess closeViewZoomIndividualDisplays -bool true' >&2
/usr/bin/defaults -currentHost delete com.apple.universalaccess closeViewZoomIndividualDisplays 2>/dev/null || true

For unset:

/usr/bin/defaults delete com.apple.universalaccess closeViewZoomIndividualDisplays 2>/dev/null || true
/usr/bin/defaults -currentHost delete com.apple.universalaccess closeViewZoomIndividualDisplays 2>/dev/null || true

System Settings › Accessibility › Zoom › Advanced… › Zoomed image moves

home-manager · per user ✓ Verified on macOS 27
applications.systemSettings.accessibility.zoomAdvanced.zoomedImageMoves = "Continuously with pointer";

One of: "Continuously with pointer""To keep pointer centered""When pointer reaches edge" "unset" puts back macOS's default.

Where it's stored and what runs
  • com.apple.universalaccess closeViewPanningMode

For Continuously with pointer:

/usr/bin/defaults write com.apple.universalaccess closeViewPanningMode -int 0 || echo 'nix-plist-manager: failed: /usr/bin/defaults write com.apple.universalaccess closeViewPanningMode -int 0' >&2
/usr/bin/defaults -currentHost delete com.apple.universalaccess closeViewPanningMode 2>/dev/null || true

For To keep pointer centered:

/usr/bin/defaults write com.apple.universalaccess closeViewPanningMode -int 2 || echo 'nix-plist-manager: failed: /usr/bin/defaults write com.apple.universalaccess closeViewPanningMode -int 2' >&2
/usr/bin/defaults -currentHost delete com.apple.universalaccess closeViewPanningMode 2>/dev/null || true

For When pointer reaches edge:

/usr/bin/defaults write com.apple.universalaccess closeViewPanningMode -int 1 || echo 'nix-plist-manager: failed: /usr/bin/defaults write com.apple.universalaccess closeViewPanningMode -int 1' >&2
/usr/bin/defaults -currentHost delete com.apple.universalaccess closeViewPanningMode 2>/dev/null || true

For unset:

/usr/bin/defaults delete com.apple.universalaccess closeViewPanningMode 2>/dev/null || true
/usr/bin/defaults -currentHost delete com.apple.universalaccess closeViewPanningMode 2>/dev/null || true