AppleScript Choose

choose FileName


【スクリプトエディタで開く】|

#!/usr/bin/env osascript
----+----1----+----2----+-----3----+----4----+----5----+----6----+----7
#
#
# com.cocolog-nifty.quicktimer.icefloe
----+----1----+----2----+-----3----+----4----+----5----+----6----+----7
use AppleScript version "2.8"
use framework "Foundation"
use framework "UniformTypeIdentifiers"
use framework "AppKit"
use scripting additions
property refMe : a reference to current application


###デスクトップ
set appFileManager to refMe's NSFileManager's defaultManager()
set ocidURLsArray to (appFileManager's URLsForDirectory:(refMe's NSDesktopDirectory) inDomains:(refMe's NSUserDomainMask))
set ocidDesktopDirPathURL to ocidURLsArray's firstObject()
set aliasDefaultLocation to (ocidDesktopDirPathURL's absoluteURL()) as alias
##################
###ダイアログ
set strName to (name of current application) as text
if strName is "osascript" then
  tell application "Finder" to activate
else
  tell current application to activate
end if
set strDefaultFileName to "ファイル名.html" as text
set strTargetExtension to "html"
set strPromptText to "名前を決めてください" as text
set strMesText to "名前を決めてください" as text
###ファイル名 ダイアログ
set aliasFilePath to (choose file name strMesText default location aliasDefaultLocation default name strDefaultFileName with prompt strPromptText) as «class furl»
##################
###パス
set strFilePath to (POSIX path of aliasFilePath) as text
set ocidFilePathStr to refMe's NSString's stringWithString:(strFilePath)
set ocidFilePath to ocidFilePathStr's stringByStandardizingPath()
set ocidFilePathURL to (refMe's NSURL's alloc()'s initFileURLWithPath:(ocidFilePath) isDirectory:false)
set ocidContainerDirPathURL to ocidFilePathURL's URLByDeletingLastPathComponent()
###拡張子
set strExtension to (ocidFilePathURL's pathExtension()) as text
###最後のアイテムがファイル名
set strFileName to (ocidFilePathURL's lastPathComponent()) as text
###拡張子のつけ忘れ対策
if strFileName does not contain strTargetExtension then
  set strFileName to (strFileName & "." & strTargetExtension) as text
  set ocidFilePathURL to ocidContainerDirPathURL's URLByAppendingPathComponent:(strFileName)
end if
log ocidFilePathURL's |path|() as text

|

choose from listにソートした値を使う


【スクリプトエディタで開く】|

#!/usr/bin/env osascript
----+----1----+----2----+-----3----+----4----+----5----+----6----+----7
#
#
# com.cocolog-nifty.quicktimer.icefloe
----+----1----+----2----+-----3----+----4----+----5----+----6----+----7
##自分環境がos12なので2.8にしているだけです
use AppleScript version "2.8"
use framework "Foundation"
use scripting additions

property refMe : a reference to current application

###元になるレコード
set recordCenter to {|010100|:"札幌管区気象台", |010900|:"福岡管区気象台", |010300|:"気象庁", |010400|:"名古屋地方気象台", |010500|:"新潟地方気象台", |010600|:"大阪管区気象台", |010700|:"広島地方気象台", |010800|:"高松地方気象台", |010200|:"仙台管区気象台", |011000|:"鹿児島地方気象台", |011100|:"沖縄気象台"} as record
##############################
###正順のレコードから可変DICTを作る
set ocidCenterDict to refMe's NSMutableDictionary's alloc()'s initWithCapacity:0
ocidCenterDict's setDictionary:(recordCenter)
###↑のDICTのキーリストを取得
set ocidAllKeyArray to ocidCenterDict's allKeys()
##############################
###逆順DICT格納用の可変DICTを初期化
set ocidReverseCenterDict to refMe's NSMutableDictionary's alloc()'s initWithCapacity:0
###キーの数だけ繰り返し
repeat with itemAllKeys in ocidAllKeyArray
  set strAllKeys to itemAllKeys as text
  ##キーから値を取り出して
  set ocidCenterNo to (ocidCenterDict's valueForKey:(strAllKeys))
  ##キーと値を逆にセットした逆レコードを作って
  set ocidItemDict to (refMe's NSDictionary's dictionaryWithObject:(strAllKeys) forKey:(ocidCenterNo))
  ###逆順DICTにADD追加していく
(ocidReverseCenterDict's addEntriesFromDictionary:(ocidItemDict))
end repeat

##############################
###正順DICTのallKeysのソート
set ocidDescriptor to refMe's NSSortDescriptor's sortDescriptorWithKey:("self") ascending:(true) selector:("localizedStandardCompare:")
set ocidDescriptorArray to refMe's NSMutableArray's alloc()'s initWithCapacity:(0)
ocidDescriptorArray's addObject:(ocidDescriptor)
set ocidSortedKey to (ocidAllKeyArray's sortedArrayUsingDescriptors:(ocidDescriptorArray))

##############################
###ダイアログ用のリスト
set listChooser to {} as list
###ソート済みの値Arrayを順番に
repeat with itemSortedKey in ocidSortedKey
  ###テキストにして
  set strSortedKey to itemSortedKey as text
  ###ソートされたキー順に値を取得して
  set strPrefName to (ocidCenterDict's valueForKey:(strSortedKey)) as text
  ###ダイアログ用のリストに順に格納していく
  set end of listChooser to (strPrefName as text)
end repeat

###########################
###ダイアログを前面に出す
set strName to (name of current application) as text
if strName is "osascript" then
  tell application "Finder" to activate
else
  tell current application to activate
end if
try
  set listResponse to (choose from list listChooser with title "選んでください" with prompt "選んでください" default items (item 1 of listChooser) OK button name "OK" cancel button name "キャンセル" without multiple selections allowed and empty selection allowed) as list
on error
  log "エラーしました"
return "エラーしました"
end try
if (item 1 of listResponse) is false then
return "キャンセルしました"
else
  ###ダイアログ戻り値=正順DICTの値なので
  set strResponse to (item 1 of listResponse) as text
end if

##############################
###逆順DICTから正順DICTのキーの値を取る
set ocidValueNO to ocidReverseCenterDict's valueForKey:(strResponse)
set strValueNO to ocidValueNO as text

log strResponse
log strValueNO



|

[choose from list] empty selection allowed

#!/usr/bin/env osascript

----+----1----+----2----+-----3----+----4----+----5----+----6----+----7

#

#

#

#

#                       com.cocolog-nifty.quicktimer.icefloe

----+----1----+----2----+-----3----+----4----+----5----+----6----+----7


use AppleScript version "2.8"

use framework "Foundation"

use scripting additions


set listChooser to {"A", "B"} as list

try

  tell current application

    activate

    set listResponse to (choose from list listChooser with title "短め" with prompt "長め" default items (item 1 of listChooser) OK button name "OK" cancel button name "キャンセル" with multiple selections allowed and empty selection allowed) as list

  end tell

on error

  log "エラーしました"

  return "エラーしました"

  error "エラーしました" number -200

end try

if (count of listResponse) = 0 then

  log "選択無しの場合の処理"

  -->ここに分岐なり処理なりを指定する

else if (item 1 of listResponse) is false then

  return "キャンセルしました"

  error "キャンセルしました" number -200

end if

|

[choose from list]multiple selections allowed

一つだけ選ぶ場合

#!/usr/bin/env osascript

----+----1----+----2----+-----3----+----4----+----5----+----6----+----7

#

#

#

#

#                       com.cocolog-nifty.quicktimer.icefloe

----+----1----+----2----+-----3----+----4----+----5----+----6----+----7


use AppleScript version "2.8"

use framework "Foundation"

use scripting additions


set listChooser to {"A", "B"} as list

try

  set objResponse to (choose from list listChooser with title "短め" with prompt "長め" default items (item 1 of listChooser) OK button name "OK" cancel button name "キャンセル" without multiple selections allowed and empty selection allowed)

on error

  log "エラーしました"

  return "エラーしました"

end try

if objResponse is false then

  return "キャンセルしました"

end if


set theResponse to (objResponse) as text





複数選択

#!/usr/bin/env osascript

----+----1----+----2----+-----3----+----4----+----5----+----6----+----7

#

#

#

#

#                       com.cocolog-nifty.quicktimer.icefloe

----+----1----+----2----+-----3----+----4----+----5----+----6----+----7


use AppleScript version "2.8"

use framework "Foundation"

use scripting additions


set listChooser to {"A", "B"} as list

try

  tell current application

    activate

    set listResponse to (choose from list listChooser with title "短め" with prompt "長め" default items (item 1 of listChooser) OK button name "OK" cancel button name "キャンセル" with multiple selections allowed without empty selection allowed) as list

  end tell

on error

  log "エラーしました"

  return "エラーしました"

  error "エラーしました" number -200

end try


if (item 1 of listResponse) is false then

  return "キャンセルしました"

  error "キャンセルしました" number -200

end if


|

[Localised] localized名称付きのフォルダを作成する

#!/usr/bin/env osascript
----+----1----+----2----+-----3----+----4----+----5----+----6----+----7
#
#
#
#
# com.cocolog-nifty.quicktimer.icefloe
----+----1----+----2----+-----3----+----4----+----5----+----6----+----7
##自分環境がos12なので2.8にしているだけです
use AppleScript version "2.8"
use framework "Foundation"
use scripting additions

property refMe : a reference to current application
property refNSString : a reference to refMe's NSString
property refNSURL : a reference to refMe's NSURL

set objFileManager to refMe's NSFileManager's defaultManager()


####作成するフォルダのローカライズ名
set strLocalizedName to "サンプル" as text

####作成するフォルダのパーミッション
set strPermDemNo to "700" as text

####Finderコメント
set strCommentText to "" as text

###ラベル番号
set strIndexNo to "6" as text
(*
0:ラベル無し
1:グレー
2:グリーン
3:パープル
4:ブルー
5:イエロー
6:レッド
7:オレンジ
*)

###################################
#####入力フォルダ
###################################
####デスクトップ NSURL
set ocidDesktopDirPathURL to (objFileManager's URLsForDirectory:(refMe's NSDesktopDirectory) inDomains:(refMe's NSUserDomainMask))
####エイリアスに
set aliasDefaultLocation to (ocidDesktopDirPathURL) as alias
####日付番号がデフォルトフォルダ名
set strDefaultName to doGetDateNo("yyyyMMdd") as text
####strLocalizedNameがある場合はフォルダ名に.localizedを付与
if strLocalizedName is not "" then
set strDefaultName to strDefaultName & ".localized" as text
end if
####ダイアログテキスト
set strPromptText to "名前を決めてください" as text
#####ダイアログ
set aliasPath to (choose file name default location aliasDefaultLocation default name strDefaultName with prompt strPromptText) as «class furl»

###UNIXパス
set strFilePathText to POSIX path of aliasPath as text
###String
set ocidFilePath to (refNSString's stringWithString:strFilePathText)
###絶対パスで
set ocidFilePathString to ocidFilePath's stringByStandardizingPath
###NSURL
set ocidFilePathURL to (refNSURL's alloc()'s initFileURLWithPath:ocidFilePathString isDirectory:true)

if strCommentText is "" then
####フォルダ名をコメントに
set strCommentText to ocidFilePathURL's lastPathComponent() as text
end if

###実行
doMakeNewFolderAtURL(ocidFilePathURL, strPermDemNo, strCommentText, strIndexNo, strLocalizedName)


################################
####フォルダ生成サブ
################################
on doMakeNewFolderAtURL(argFilePath, argOctNo, argComment, argIndexNo, argLocalizedName)
###ファイルマネージャー初期化
set objFileManager to refMe's NSFileManager's defaultManager()
################################
####渡された値がNSURL以外の場合の処理
try
set strClassName to class of argFilePath as text
####渡された値がテキストだったら
if strClassName is "text" then
set strFilePath to argFilePath as text
####渡された値がエイリアスだったら
else if strClassName is "alias" then
set strFilePath to POSIX path of argFilePath as text
end if
set ocidFilePath to (refNSString's stringWithString:strFilePath)
set ocidFilePathString to ocidFilePath's stringByStandardizingPath
set ocidFilePathURL to (refNSURL's alloc()'s initFileURLWithPath:ocidFilePathString isDirectory:true)
on error
######ocid形式の値だったら
set strClassName to argFilePath's className() as text
###テキストなら
if strClassName contains "NSCFString" then
set ocidFilePathString to argFilePath's stringByStandardizingPath
set ocidFilePathURL to (refNSURL's alloc()'s initFileURLWithPath:ocidFilePathString isDirectory:true)
###NSURLなら
else if strClassName is "NSURL" then
set ocidFilePathURL to argFilePath
else
error "NSURLを指定してください" number -9999
return
end if
end try

################################
####渡されたパスが有る場合はエラー
set ocidFilePathString to ocidFilePathURL's |path|()
###フォルダ名
set ocidFolderName to (ocidFilePathString's lastPathComponent())
set strFolderName to ocidFolderName as text
set boolFolderExists to (objFileManager's fileExistsAtPath:ocidFilePathString isDirectory:true)
if boolFolderExists is false then
#####属性を指定しておく
set ocidAttrDict to refMe's NSMutableDictionary's alloc()'s initWithCapacity:0
set strUID to user ID of (system info) as text
###所有者ID
ocidAttrDict's setValue:strUID forKey:(refMe's NSFileOwnerAccountID)
###グループID
ocidAttrDict's setValue:80 forKey:(refMe's NSFileGroupOwnerAccountID)
####パーミッション
set strOctNo to argOctNo as text
set numPermissionNO to doOct2Dem(strOctNo) as number
ocidAttrDict's setValue:numPermissionNO forKey:(refMe's NSFilePosixPermissions)
###↑設定したocidAttrDictでフォルダを作る
###フォルダを作る
set listBoolMakeDir to objFileManager's createDirectoryAtURL:(ocidFilePathURL) withIntermediateDirectories:false attributes:(ocidAttrDict) |error|:(reference)
####ラベルを指定する
set numIndexNo to argIndexNo as integer
ocidFilePathURL's setResourceValue:numIndexNo forKey:(refMe's NSURLLabelNumberKey) |error|:(reference)
###コメント受け取り
set strComment to argComment as text
###URLをエイリアスに (すぐ上でフォルダ作成したのでエイリアス実態がある)
set aliasPath to ocidFilePathURL as alias
####コメントの追加
tell application "Finder" to set comment of item aliasPath to strComment

###フォルダ名に.localizedがあるなら
if strFolderName contains ".localized" then
set strLocalizedName to argLocalizedName as text
if strLocalizedName is not "" then
######日本語表示用の.localizedを作成しておく(予約語反映しない場合は削除可)
set ocidLocalizedDirPathURL to ocidFilePathURL's URLByAppendingPathComponent:".localized" isDirectory:false
####パスにして
###set ocidLocalizedDirPath to ocidLocalizedDirPathURL's |path|() as text
####フォルダ作成
set listBoolMakeDir to objFileManager's createDirectoryAtURL:(ocidLocalizedDirPathURL) withIntermediateDirectories:false attributes:(missing value) |error|:(reference)
####フォルダ名からlocalizedを抜いた値
set strFolderName to (ocidFolderName's stringByDeletingPathExtension()) as text
####値を決めて
set strKey to strFolderName
set strValue to strLocalizedName
set ocidLocalizedJastringsURL to ocidLocalizedDirPathURL's URLByAppendingPathComponent:"ja.strings"
#####Plistを作成する
doMakeNewPlist(strKey, strValue, ocidLocalizedJastringsURL)

end if
else
####空のファイルを作成する
set ocidBlankData to refMe's NSData's alloc()'s init()
set ocidAttrFile to refMe's NSMutableDictionary's alloc()'s initWithCapacity:0
ocidAttrFile's setValue:493 forKey:(refMe's NSFilePosixPermissions)
set boolMakeNewFile to objFileManager's createFileAtPath:ocidLocalizedPath |contents|:ocidBlankData attributes:ocidAttrFile
end if

else
log #存在する"
end if

end doMakeNewFolderAtURL

###################################
#####PLIST 作成
###################################
to doMakeNewPlist(argKey, argValue, argFilePath)
####要素確定
set strKey to argKey as text
set strValue to argValue as text
try
set strClassName to argFilePath's className() as text
####
if strClassName is "NSURL" then
set ocidFilePath to argFilePath's |path|()
else
set ocidFilePath to argFilePath
end if
on error
####テキストのパスが来ちゃったら
###NSStringにして
set ocidPosixPath to refNSString's stringWithString:argFilePath
##NSStringフルパスにして
set ocidFilePath to ocidPosixPath's stringByStandardizingPath
end try
###空のレコード
set ocidPlistData to refMe's NSMutableDictionary's alloc()'s initWithCapacity:0
###保存するデータ
set strValue to strValue as text
set strKey to strKey as text
###レコードに追加
ocidPlistData's setObject:strValue forKey:strKey

######################
###定型どちらか選ぶ
###バイナリー形式
set ocidBinplist to refMe's NSPropertyListBinaryFormat_v1_0
####書き込み用にバイナリーデータに変換
set ocidPlistEditData to refMe's NSPropertyListSerialization's dataWithPropertyList:ocidPlistData format:ocidBinplist options:0 |error|:(missing value)
####書き込み
ocidPlistEditData's writeToFile:ocidFilePath atomically:true

end doMakeNewPlist

###################################
#####パーミッション 8進10進
###################################
to doOct2Dem(argOctNo)
set strOctalText to argOctNo as text
set num3Line to first item of strOctalText as number
set num2Line to 2nd item of strOctalText as number
set num1Line to last item of strOctalText as number
set numDecimal to (num3Line * 64) + (num2Line * 8) + (num1Line * 1)
return numDecimal
end doOct2Dem



###################################
#####日付
###################################
to doGetDateNo(strDateFormat)
####日付情報の取得
set ocidDate to refMe's NSDate's |date|()
###日付のフォーマットを定義
set ocidNSDateFormatter to refMe's NSDateFormatter's alloc()'s init()
ocidNSDateFormatter's setLocale:(refMe's NSLocale's localeWithLocaleIdentifier:"ja_JP_POSIX")
ocidNSDateFormatter's setDateFormat:strDateFormat
set ocidDateAndTime to ocidNSDateFormatter's stringFromDate:ocidDate
set strDateAndTime to ocidDateAndTime as text
return strDateAndTime
end doGetDateNo

###################################
#####エラー処理
###################################

to doGetErrorData(ocidNSErrorData)
#####個別のエラー情報
log "エラーコード:" & ocidNSErrorData's code() as text
log "エラードメイン:" & ocidNSErrorData's domain() as text
log "Description:" & ocidNSErrorData's localizedDescription() as text
log "FailureReason:" & ocidNSErrorData's localizedFailureReason() as text
log ocidNSErrorData's localizedRecoverySuggestion() as text
log ocidNSErrorData's localizedRecoveryOptions() as text
log ocidNSErrorData's recoveryAttempter() as text
log ocidNSErrorData's helpAnchor() as text
set ocidNSErrorUserInfo to ocidNSErrorData's userInfo()
set ocidAllValues to ocidNSErrorUserInfo's allValues() as list
set ocidAllKeys to ocidNSErrorUserInfo's allKeys() as list
repeat with ocidKeys in ocidAllKeys
if (ocidKeys as text) is "NSUnderlyingError" then
log (ocidNSErrorUserInfo's valueForKey:ocidKeys)'s localizedDescription() as text
log (ocidNSErrorUserInfo's valueForKey:ocidKeys)'s localizedFailureReason() as text
log (ocidNSErrorUserInfo's valueForKey:ocidKeys)'s localizedRecoverySuggestion() as text
log (ocidNSErrorUserInfo's valueForKey:ocidKeys)'s localizedRecoveryOptions() as text
log (ocidNSErrorUserInfo's valueForKey:ocidKeys)'s recoveryAttempter() as text
log (ocidNSErrorUserInfo's valueForKey:ocidKeys)'s helpAnchor() as text
else
####それ以外の値はそのままテキストで読める
log (ocidKeys as text) & ": " & (ocidNSErrorUserInfo's valueForKey:ocidKeys) as text
end if
end repeat

end doGetErrorData

|

[choose file]without multiple selections allowed

#!/usr/bin/env osascript
----+----1----+----2----+-----3----+----4----+----5----+----6----+----7
#
#
#
#
# com.cocolog-nifty.quicktimer.icefloe
----+----1----+----2----+-----3----+----4----+----5----+----6----+----7

use AppleScript version "2.8"
use framework "Foundation"
use scripting additions

property refMe : a reference to current application
property refNSString : a reference to refMe's NSString
property refNSURL : a reference to refMe's NSURL
set objFileManager to refMe's NSFileManager's defaultManager()

###################################
#####ダイアログ
###################################a
tell application "Finder"
##set aliasDefaultLocation to container of (path to me) as alias
set aliasDefaultLocation to (path to desktop folder from user domain) as alias
end tell
set listChooseFileUTI to {"public.item", "public.movie"}
set strPromptText to "ファイルを選んでください" as text
set listAliasFilePath to (choose file with prompt strPromptText default location (aliasDefaultLocation) of type listChooseFileUTI with invisibles and showing package contents without multiple selections allowed) as list
###################################
#####パス処理
###################################
###エリアス
set aliasFilePath to item 1 of listAliasFilePath as alias
###UNIXパス
set strFilePath to POSIX path of aliasFilePath as text
###String
set ocidFilePath to refNSString's stringWithString:strFilePath
###NSURL
set ocidFilePathURL to refNSURL's alloc()'s initFileURLWithPath:ocidFilePath isDirectory:false
####ファイル名を取得
set ocidFileName to ocidFilePathURL's lastPathComponent()
####拡張子を取得
set ocidFileExtension to ocidFilePathURL's pathExtension()
####ファイル名から拡張子を取っていわゆるベースファイル名を取得
set ocidPrefixName to ocidFileName's stringByDeletingPathExtension
####コンテナディレクトリ
set ocidContainerDirPathURL to ocidFilePathURL's URLByDeletingLastPathComponent()


###################################
#####保存ダイアログ
###################################
###ファイル名
set strPrefixName to ocidPrefixName as text
###拡張子
###同じ拡張子の場合
##set strFileExtension to ocidFileExtension as text
###拡張子変える場合
set strFileExtension to "txt"
###ダイアログに出すファイル名
set strDefaultName to (strPrefixName & ".output." & strFileExtension) as text
set strPromptText to "名前を決めてください"
###選んだファイルの同階層をデフォルトの場合
set aliasDefaultLocation to ocidContainerDirPathURL as alias
####デスクトップの場合
##set aliasDefaultLocation to (path to desktop folder from user domain) as alias
####ファイル名ダイアログ
####実在しない『はず』なのでas «class furl»
set aliasSaveFilePath to (choose file name default location aliasDefaultLocation default name strDefaultName with prompt strPromptText) as «class furl»
####UNIXパス
set strSaveFilePath to POSIX path of aliasSaveFilePath as text
####ドキュメントのパスをNSString
set ocidSaveFilePath to refNSString's stringWithString:strSaveFilePath
####ドキュメントのパスをNSURL
set ocidSaveFilePathURL to refNSURL's fileURLWithPath:ocidSaveFilePath
###拡張子取得
set strFileExtensionName to ocidSaveFilePathURL's pathExtension() as text
###ダイアログで拡張子を取っちゃった時対策
if strFileExtensionName is not strFileExtension then
set ocidSaveFilePathURL to ocidSaveFilePathURL's URLByAppendingPathExtension:strFileExtension
end if

|

その他のカテゴリー

Acrobat Acrobat Annotation Acrobat Dialog Acrobat Form Acrobat JS Acrobat Open Acrobat Plugin Acrobat python Acrobat Reader Acrobat Sequ Acrobat Stamps Admin Admin Account Admin Apachectl Admin configCode Admin Device Management Admin LaunchServices Admin Locationd Admin loginitem Admin Maintenance Admin Permission Admin Pkg Admin Power Management Admin Printer Admin SetUp Admin SMB Admin System Information Admin Tools Admin Users Admin Volumes Adobe Apple AppleScript AppleScript Guide AppleScript Accessibility AppleScript AppKit AppleScript Applications AppleScript AppStore AppleScript Archive AppleScript Attributes AppleScript Automator AppleScript AVAsset AppleScript AVconvert AppleScript AVFoundation AppleScript AVURLAsset AppleScript BackUp AppleScript Barcode AppleScript Bash AppleScript Basic AppleScript Basic Path AppleScript Bluetooth AppleScript BOX AppleScript Browser AppleScript Calendar AppleScript CD/DVD AppleScript Choose AppleScript Chrome AppleScript CIImage AppleScript CloudStorage AppleScript Color AppleScript com.apple.LaunchServices.OpenWith AppleScript Console AppleScript Contacts AppleScript CotEditor AppleScript CURL AppleScript current application AppleScript Date&Time AppleScript delimiters AppleScript Desktop AppleScript Device AppleScript Disk AppleScript do shell script AppleScript Dock AppleScript DropBox AppleScript eMail AppleScript Encode Decode AppleScript Error AppleScript EXIFData AppleScript ffmpeg AppleScript File AppleScript Finder AppleScript Firefox AppleScript Folder AppleScript Fonts AppleScript GIF AppleScript HTML AppleScript Icon AppleScript Illustrator AppleScript Image Events AppleScript Image2PDF AppleScript ImageOptim Applescript iWork AppleScript Javascript AppleScript Jedit AppleScript Json AppleScript Label AppleScript List AppleScript locationd AppleScript LRC AppleScript LSSharedFileList AppleScript m3u8 AppleScript MakePDF AppleScript Map AppleScript Math AppleScript Microsoft AppleScript Microsoft Edge AppleScript Microsoft Excel AppleScript Mobileconfig AppleScript Mouse AppleScript Movie AppleScript Music AppleScript NetWork AppleScript Notes AppleScript NSArray AppleScript NSBitmapImageRep AppleScript NSBundle AppleScript NSCFBoolean AppleScript NSCharacterSet AppleScript NSColor AppleScript NSColorList AppleScript NSData AppleScript NSDictionary AppleScript NSError AppleScript NSEvent AppleScript NSFileAttributes AppleScript NSFileManager AppleScript NSFont AppleScript NSFontManager AppleScript NSImage AppleScript NSIndex AppleScript NSKeyedArchiver AppleScript NSKeyedUnarchiver AppleScript NSLocale AppleScript NSMutableArray AppleScript NSMutableDictionary AppleScript NSMutableString AppleScript NSNotFound AppleScript NSNumber AppleScript NSOpenPanel AppleScript NSPasteboard AppleScript NSPDFImageRep AppleScript NSpoint AppleScript NSPredicate AppleScript NSRange AppleScript NSRegularExpression AppleScript NSRunningApplication AppleScript NSScreen AppleScript NSSize AppleScript NSString AppleScript NSStringCompareOptions AppleScript NSTask AppleScript NSTimeZone AppleScript NSURL AppleScript NSURL File AppleScript NSURLBookmark AppleScript NSURLComponents AppleScript NSURLResourceKey AppleScript NSUserDefaults AppleScript NSUUID AppleScript NSView AppleScript NSWorkspace AppleScript Numbers AppleScript OAuth AppleScript ObjC AppleScript OneDrive AppleScript Osax AppleScript PDF AppleScript PDFAnnotationWidget AppleScript PDFContext AppleScript PDFDisplayBox AppleScript PDFDocumentPermissions AppleScript PDFKit AppleScript PDFnUP AppleScript PDFOutline AppleScript Photos AppleScript Photoshop AppleScript Plist System Events AppleScript PostScript AppleScript prefPane AppleScript Preview AppleScript Python AppleScript QR AppleScript QR Decode AppleScript QuickLook AppleScript QuickTime AppleScript record AppleScript Regular Expression AppleScript Reminders AppleScript ReName AppleScript Repeat AppleScript RTF AppleScript Safari AppleScript SaveFile AppleScript ScreenCapture AppleScript ScreenSaver AppleScript Script Editor AppleScript Script Menu AppleScript Shortcuts AppleScript Shortcuts Events AppleScript Sort AppleScript Sound AppleScript Spotlight AppleScript SRT AppleScript StandardAdditions AppleScript stringByApplyingTransform AppleScript System Events AppleScript System Settings AppleScript TemporaryItems AppleScript Terminal AppleScript Text AppleScript Text CSV AppleScript Text TSV AppleScript TextEdit AppleScript Translate AppleScript Trash AppleScript Twitter AppleScript UI AppleScript Unit Conversion AppleScript UTType AppleScript valueForKeyPath AppleScript Video AppleScript VisionKit AppleScript Visual Studio Code AppleScript webarchive AppleScript webp AppleScript Wifi AppleScript XML AppleScript XML EPUB AppleScript XML OPML AppleScript XML Plist AppleScript XML RSS AppleScript XML SVG AppleScript XML TTML AppleScript XML webloc AppleScript YouTube AppleScript Zero Suppress Applications Barcode OnLine Tools CityCode Design iPhone List Logs lsappinfo Memo Music perl PlistBuddy pluginkit postalcode ReadMe SF Symbols character id SF Symbols Entity sips Skype Slack sqlite TCC Tools Typography Video Wacom zoom