Используйте Marco Polo или любую другую альтернативу, описанную на этой странице, чтобы определить свое местоположение (изменить) и выполнить сценарий оболочки, который редактирует ~/Library/Preferences/com.apple.screensaver.plist
:
defaults write com.apple.screensaver askForPasswordDelay -int 1800
К сожалению, это происходит только после повторного входа в систему. Но вместо этого вы можете использовать AppleScript для создания сценариев GUI, проходя через Системные настройки:
tell application "System Preferences"
set current pane to pane id "com.apple.preference.security"
tell application "System Events"
tell process "System Preferences"
tell first window
tell first tab group
# ensure we're on the first tab
click (first radio button whose title is "General")
# 'require password' checkbox
set cb to (first checkbox whose title is "Require password")
# 'require password' popup button
set pb to pop up button 1
# always enable password
if value of cb is not 1 then
# password is currently disabled, enable it
click cb
end if
# if password is activated now, set the timeout
# this check is redundant, you can remove it
if value of cb is 1 then
# click pop up button to get menu
click pop up button 1
# select 'immedately'
click first menu item of menu of pb
end if
end tell
end tell
end tell
end tell
quit
end tell
Создайте три версии этого скрипта для каждого желаемого выбора из всплывающего меню. first menu item
сразу, second menu item
5 секунд, и так далее.
Сохраните их как скрипт, например, немедленно. Scpt immediately.scpt,
и выполните с помощью osascript
из командной строки, или сохраните как приложение из AppleScript Editor, и выполните, open
их.
Зависит от того, какое решение для определения вашего местоположения вы решите использовать.