{"slug": "some-applescript-automation-snippets", "title": "Some AppleScript automation snippets", "summary": "This article provides two AppleScript automation snippets for macOS. The first script checks if the running application has \"Assistive Access\" enabled and prompts the user to enable it if necessary. The second script enumerates the names and IDs of all panes within System Settings, returning a list of pane identifiers and their corresponding names.", "body_md": "Check if app running the script has 'Assistive Access', and if not, prompts the user to enable it:\n-- Function to check if assistive access is enabled\non hasAssistiveAccess()\ntell application \"System Events\"\nreturn UI elements enabled\nend tell\nend hasAssistiveAccess\n-- Get the name of the current application\ntell application \"System Events\"\nset currentAppName to name of the first process whose frontmost is true\nend tell\n-- Main Script\nif not hasAssistiveAccess() then\n-- display dialog \"This script requires assistive access to interact with System Settings. Please grant access in System Preferences under Security & Privacy > Privacy > Accessibility.\" buttons {\"OK\"} default button 1\ndisplay dialog \"This script requires assistive access to interact with System Settings. Please grant access to '\" & currentAppName & \"' in System Preferences under Security & Privacy > Privacy > Accessibility.\" buttons {\"OK\"} default button 1\nreturn\nend if\nEnumerate the name and ID of all of the panes within 'System Settings':\ntell application \"System Settings\"\nset paneList to every pane\nset paneMap to {}\nrepeat with aPane in paneList\nset paneID to the id of aPane\nset paneName to the name of aPane\nset end of paneMap to {id:paneID, name:paneName}\nend repeat\nend tell\nreturn paneMap\nWhich returns (manually formatted for easier reading):\n{\n{id:\"com.apple.Appearance-Settings.extension\", name:\"Appearance\"},\n{id:\"com.apple.Battery-Settings.extension*BatteryPreferences\", name:\"Battery\"},\n{id:\"com.apple.settings.PrivacySecurity.extension\", name:\"Privacy & Security\"},\n{id:\"com.apple.ExtensionsPreferences\", name:\"Extensions\"},\n{id:\"com.apple.Profiles-Settings.extension\", name:\"Profiles\"},\n{id:\"com.apple.BluetoothSettings\", name:\"Bluetooth\"},\n{id:\"com.apple.ScreenSaver-Settings.extension\", name:\"Screen Saver\"},\n{id:\"com.apple.Trackpad-Settings.extension\", name:\"Trackpad\"},\n{id:\"com.apple.Keyboard-Settings.extension\", name:\"Keyboard\"},\n{id:\"com.apple.systempreferences.AppleIDSettings*AppleIDSettings\", name:\"Glenn Grant\"},\n{id:\"com.apple.Lock-Screen-Settings.extension\", name:\"Lock Screen\"},\n{id:\"com.apple.Focus-Settings.extension\", name:\"Focus\"},\n{id:\"com.apple.Screen-Time-Settings.extension\", name:\"Screen Time\"},\n{id:\"com.apple.Sound-Settings.extension\", name:\"Sound\"},\n{id:\"com.apple.Passwords-Settings.extension\", name:\"Passwords\"},\n{id:\"com.apple.Touch-ID-Settings.extension*TouchIDPasswordPrefs\", name:\"Touch ID & Password\"},\n{id:\"com.apple.Siri-Settings.extension\", name:\"Siri & Spotlight\"},\n{id:\"com.apple.Network-Settings.extension\", name:\"Network\"},\n{id:\"com.apple.systempreferences.GeneralSettings\", name:\"General\"},\n{id:\"com.apple.SystemProfiler.AboutExtension\", name:\"About\"},\n{id:\"com.apple.Software-Update-Settings.extension\", name:\"Software Update\"},\n{id:\"com.apple.settings.Storage\", name:\"Storage\"},\n{id:\"com.apple.AirDrop-Handoff-Settings.extension\", name:\"AirDrop & Handoff\"},\n{id:\"com.apple.LoginItems-Settings.extension\", name:\"Login Items\"},\n{id:\"com.apple.Localization-Settings.extension\", name:\"Language & Region\"},\n{id:\"com.apple.Date-Time-Settings.extension\", name:\"Date & Time\"},\n{id:\"com.apple.Sharing-Settings.extension\", name:\"Sharing\"},\n{id:\"com.apple.Time-Machine-Settings.extension\", name:\"Time Machine\"},\n{id:\"com.apple.Transfer-Reset-Settings.extension\", name:\"Transfer or Reset\"},\n{id:\"com.apple.Startup-Disk-Settings.extension\", name:\"Startup Disk\"},\n{id:\"com.apple.Displays-Settings.extension\", name:\"Displays\"},\n{id:\"com.apple.WalletSettingsExtension\", name:\"Wallet & Apple Pay\"},\n{id:\"com.apple.ControlCenter-Settings.extension\", name:\"Control Centre\"},\n{id:\"com.apple.Internet-Accounts-Settings.extension\", name:\"Internet Accounts\"},\n{id:\"com.apple.Mouse-Settings.extension\", name:\"Mouse\"},\n{id:\"com.apple.Users-Groups-Settings.extension\", name:\"Users & Groups\"},\n{id:\"com.apple.Print-Scan-Settings.extension\", name:\"Printers & Scanners\"},\n{id:\"com.apple.Desktop-Settings.extension\", name:\"Desktop & Dock\"},\n{id:\"com.apple.Accessibility-Settings.extension\", name:\"Accessibility\"},\n{id:\"com.apple.Game-Center-Settings.extension\", name:\"Game Center\"},\n{id:\"com.apple.wifi-settings-extension\", name:\"Wi‑Fi\"},\n{id:\"com.apple.Notifications-Settings.extension\", name:\"Notifications\"},\n{id:\"com.apple.Wallpaper-Settings.extension\", name:\"Wallpaper\"},\n{id:\"cl.fail.lordkamina.SwiftDefaultApps\", name:\"SwiftDefaultApps\"}\n}", "url": "https://wpnews.pro/news/some-applescript-automation-snippets", "canonical_source": "https://gist.github.com/0xdevalias/db8b0c8b626ccb9a775b806be673eb55", "published_at": "2023-12-19 05:00:12+00:00", "updated_at": "2026-05-24 06:35:21.511534+00:00", "lang": "en", "topics": ["developer-tools"], "entities": ["Apple", "System Events", "System Settings"], "alternates": {"html": "https://wpnews.pro/news/some-applescript-automation-snippets", "markdown": "https://wpnews.pro/news/some-applescript-automation-snippets.md", "text": "https://wpnews.pro/news/some-applescript-automation-snippets.txt", "jsonld": "https://wpnews.pro/news/some-applescript-automation-snippets.jsonld"}}