AppleScript Text

改行コード変更(仮)

もう少しいい方法があるような気がする

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

#!/usr/bin/env osascript
----+----1----+----2----+-----3----+----4----+----5----+----6----+----7
(*
com.cocolog-nifty.quicktimer.icefloe
改行コードを調べて 改行コードを変更する
文字コードはUTF-8に変更する
*)
----+----1----+----2----+-----3----+----4----+----5----+----6----+----7
use AppleScript version "2.8"
use framework "Foundation"
use framework "AppKit"
use scripting additions
property refMe : a reference to current application
property refNSNotFound : a reference to 9.22337203685477E+18 + 5807
##############################
#設定 デフォルトの改行コード
# 空の場合や
#1行だけで改行の無いテキストの場合
#この改行を適応する
#################################
set listNewLineChar to {"MacCR改行", "UnixLF改行", "WindowsCRLF改行"} as list
###ダイアログを前面に出す
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 strTitle to ("選んでください") as text
set strPrompt to ("変更後の保存する改行コードを選んでください\nMac用の場合基本的には\nUnixLF改行を選んでください") as text
try
  set listResponse to (choose from list listNewLineChar with title strTitle with prompt strPrompt default items (item 2 of listNewLineChar) 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 "キャンセルしましたA"
else if (item 1 of listResponse) is {} then
return "キャンセルしましたB"
end if
set strResponse to (item 1 of listResponse) as text
#戻り値をキーにして値=値を取り出す
if strResponse is "MacCR改行" then
  set ocidSetNewLineChar to refMe's NSString's stringWithString:("\r")
else if strResponse is "UnixLF改行" then
  set ocidSetNewLineChar to refMe's NSString's stringWithString:("\n")
else if strResponse is "WindowsCRLF改行" then
  set ocidSetNewLineChar to refMe's NSString's stringWithString:("\r\n")
end if
##############################
#入力
##############################
#デフォルトロケーション
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 aliasDesktopDirPath 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 listUTI to {"public.text"}
set strMes to ("ファイルを選んでください") as text
set strPrompt to ("テキストファイルを選んでください") as text
try
  #ファイル選択
  set listFilePath to (choose file strMes with prompt strPrompt default location aliasDesktopDirPath of type listUTI with invisibles, showing package contents and multiple selections allowed) as list
on error
log "エラーしました"
return "エラーしました"
end try
if (item 1 of listFilePath) is false then
return "キャンセルしましたA"
else if listFilePath is {} then
return "キャンセルしましたB"
end if

##############################
#保存先
##############################
#保存先用にユーザーが選択したファイルの最初のエイリアスを取得
set aliasFirstFilePath to (item 1 of listFilePath) as alias
#パスにして
set strFirstFilePath to (POSIX path of aliasFirstFilePath) as text
set ocidFirstFilePathStr to (refMe's NSString's stringWithString:(strFirstFilePath))
set ocidFirstFilePath to ocidFirstFilePathStr's stringByStandardizingPath()
set ocidFirstFilePathURL to (refMe's NSURL's alloc()'s initFileURLWithPath:(ocidFirstFilePath) isDirectory:false)
#ファイルの親階層ディレクトリを取得して
set ocidContainerDirPathURL to ocidFirstFilePathURL's URLByDeletingLastPathComponent()
#エイリアスとしてダイアログに渡す
set aliasContainerDirPath to (ocidContainerDirPathURL's absoluteURL()) as alias
#
set strMes to "フォルダを選んでください" as text
set strPrompt to "フォルダを選択してください\n入力フォルダと同じフォルダを選択すると\n『上書き』になります" as text
try
  ###ダイアログを前面に出す
  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 aliasResponse to (choose folder strMes with prompt strPrompt default location aliasContainerDirPath with invisibles and showing package contents without multiple selections allowed) as alias
on error
log "エラーしました"
return "エラーしました"
end try
#戻り値エイリアスをURLに
set strSaveDirPath to (POSIX path of aliasResponse) as text
set ocidSaveDirPathStr to (refMe's NSString's stringWithString:(strSaveDirPath))
set ocidSaveDirPath to ocidSaveDirPathStr's stringByStandardizingPath()
set ocidSaveDirPathURL to (refMe's NSURL's alloc()'s initFileURLWithPath:(ocidSaveDirPath) isDirectory:true)
#上書きチェック
if aliasContainerDirPath = aliasResponse then
log "同じフォルダに保存しようとしています"
  set strMes to "上書きを指定しました。\nファイルは上書きになります\nいいですか?" as text
  try
    ###ダイアログを前面に出す
    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
    #
    tell application (POSIX path of (path to frontmost application))
      set refResponse to (display alert ("【注意】:" & strMes) buttons {"OK", "処理中止"} default button "OK" cancel button "処理中止" as informational giving up after 20)
end tell
  on error
log "エラーしました"
return "エラーしました"
    error number -128
  end try
  if true is equal to (gave up of refResponse) then
return "時間切れですやりなおしてください"
    error number -128
  end if
  if "処理中止" is equal to (button returned of refResponse) then
return "処理を中止しました"
  end if
end if


##最初のファイル選択で選んだファイルの数だけ繰り返し
repeat with itemAliasFilePath in listFilePath
  #入力ファイルパス
  set aliasFilePath to itemAliasFilePath as alias
  #入力ファイルパス
  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 ocidFileName to ocidFilePathURL's lastPathComponent()
  set strFileName to ocidFileName as text
  #ファイルのテキストを読み込み
  set listResponse to (refMe's NSString's alloc()'s initWithContentsOfURL:(ocidFilePathURL) usedEncoding:(refMe's NSUTF8StringEncoding) |error|:(reference))
  set ocidReadString to (item 1 of listResponse)
  if ocidReadString = (missing value) then
    set strFileName to ocidFilePathURL's lastPathComponent() as text
    set strMes to ("文字コードを判定出来ませんでした : " & strFileName & "\n処理を中止します") as text
display alert strMes
return
  end if
  ##############################
  #改行コード判定
  set ocidCrRange to (ocidReadString's rangeOfString:("\r"))'s location()
  set ocidLfRange to (ocidReadString's rangeOfString:("\n"))'s location()
  if ocidCrRange = refNSNotFound then
log "Mac改行は無い"
    if ocidLfRange = refNSNotFound then
log "Mac改行もUNIX改行は無い=改行の無い1行か空のテキスト"
      set ocidLength to ocidReadString's |length|
      if ocidLength = (refMe's NSNumber's numberWithInteger:0) then
log "空のテキスト"
        set ocidNewLineChar to ocidSetNewLineChar
      else
log "改行無しの1行テキスト"
        set ocidNewLineChar to ocidSetNewLineChar
      end if
    else
log "Mac改行無+UNIX改行あり=UNIX改行"
      set ocidNewLineChar to (refMe's NSString's stringWithString:("\n"))
    end if
  else
    if ocidLfRange = refNSNotFound then
log "MacがあるUNIX改行は無い=Mac改行"
      set ocidNewLineChar to (refMe's NSString's stringWithString:("\r"))
    else
log "Mac改行ある+UNIX改行あり=Windows改行"
      set ocidNewLineChar to (refMe's NSString's stringWithString:("\r\n"))
    end if
  end if
  ##############################
  ####改行コードを変更
  #改行を設定項目の改行コードに変更
  set ocidReadCFString to (ocidReadString's stringByReplacingOccurrencesOfString:(ocidNewLineChar) withString:(ocidSetNewLineChar))
  #出力先 保存先パス 選んだフォルダ+ファイル名
  set ocidSaveFilePathURL to (ocidSaveDirPathURL's URLByAppendingPathComponent:(ocidFileName))
  #保存
  set listDone to (ocidReadCFString's writeToURL:(ocidSaveFilePathURL) atomically:(true) encoding:(refMe's NSUTF8StringEncoding) |error|:(reference))
  if (item 1 of listDone) is true then
log "保存成功: " & strFileName
  else
log "エラーが発生しました: " & strFileName
  end if
end repeat

|

SJIS2UTF考え中


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

  set ocidEncoding to refMe's CFString's CFStringConvertEncodingToNSStringEncoding(refMe's kCFStringEncodingShiftJIS)
  set ocidSjisStrings to (refMe's NSString's stringWithString:(jsonFontsExif))
  set ocidSjisData to (ocidSjisStrings's dataUsingEncoding:ocidEncoding)
  set ocidUTF8Strings to (refMe's NSString's alloc()'s initWithData:ocidSjisData encoding:(refMe's NSUTF8StringEncoding)) as text
  set ocidJsonData to (ocidUTF8Strings's dataUsingEncoding:(refMe's NSUTF8StringEncoding))
  
  
  set listJsonData to (refMe's NSJSONSerialization's JSONObjectWithData:(ocidJsonData) options:(refMe's NSJSONReadingMutableContainers) |error|:(reference))
  set ocidJsonData to ((item 1 of listJsonData)'s objectAtIndex:0)

|

全角テキストを半角に

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

#!/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 "AppKit"
use scripting additions

property refMe : a reference to current application

set strText to "012345ABEDFGhijk+*-/$%&()"



###テキストに
set ocidText to (refMe's NSString's stringWithString:strText)
####戻り値を半角にする
set ocidNSStringTransform to (refMe's NSStringTransformFullwidthToHalfwidth)
set ocidResponseHalfwidth to (ocidText's stringByApplyingTransform:ocidNSStringTransform |reverse|:false)


log ocidResponseHalfwidth as text


(*
NSStringTransformToLatin
NSStringTransformLatinToArabic
NSStringTransformLatinToCyrillic
NSStringTransformLatinToGreek
NSStringTransformLatinToHangul
NSStringTransformLatinToHebrew
NSStringTransformLatinToHiragana
NSStringTransformLatinToKatakana
NSStringTransformLatinToThai
NSStringTransformHiraganaToKatakana
NSStringTransformMandarinToLatin
NSStringTransformStripDiacritics
NSStringTransformStripCombiningMarks
NSStringTransformFullwidthToHalfwidth
NSStringTransformToUnicodeName
NSStringTransformToXMLHex




*)

|

[アルファベット]character id



####基本

set numChrID to (id of "A")

-->(*65*)

set strNextChr to character id (numChrID + 1)

-->(*B*)



set numChrID to (id of "A")

set listAalphabet to {}


repeat 52 times

  if numChrID > 90 then

    set strChr to character id (numChrID - 26)

    set strChr to "A" & strChr

  else

    set strChr to character id numChrID

  end if

  copy strChr to end of listAalphabet

  set numChrID to numChrID + 1

end repeat


log listAalphabet

-->(*A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U, V, W, X, Y, Z, AA, AB, AC, AD, AE, AF, AG, AH, AI, AJ, AK, AL, AM, AN, AO, AP, AQ, AR, AS, AT, AU, AV, AW, AX, AY, AZ*)

|

[Applescript]文字の置き換え

通常は


log doReplace("ABABBA", "B", "A")


to doReplace(theText, orgStr, newStr)
set oldDelim to AppleScript's text item delimiters
set AppleScript's text item delimiters to orgStr
set tmpList to every text item of theText
set AppleScript's text item delimiters to newStr
set tmpStr to tmpList as text
set AppleScript's text item delimiters to oldDelim
return tmpStr
end doReplace



NSStringだと
#!/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

log doReplace("ABABBA", "B", "A")

to doReplace(argOrignalText, argSearchText, argReplaceText)
set ocidOrignalText to (current application's NSString)'s stringWithString:argOrignalText
set ocidReplasetText to ocidOrignalText's stringByReplacingOccurrencesOfString:argSearchText withString:argReplaceText
set strReplasetText to ocidReplasetText as text
return strReplasetText
end doReplace

|

[AppleScript]英数 半角 全角 キャピタライズ(先頭大文字)変換

#!/usr/bin/env osascript
----+----1----+----2----+-----3----+----4----+----5----+----6----+----7
#
#
#error number -128
#
# 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 refNSMutableString : a reference to refMe's NSMutableString


set strText to "ABC 123 defg HIJK 456 lmn"

set ocidStringM to refNSMutableString's alloc()'s initWithCapacity:0
ocidStringM's setString:strText

###全部小文字 ローケース
set ocidLowCaseText to ocidStringM's lowercaseString()
log ocidLowCaseText as text
log className() of ocidLowCaseText as text
(*abc 123 defg hijk 456 lmn*)
(*__NSCFString*)

####全部大文字 アッパーケース
set ocidUpperCaseText to ocidStringM's uppercaseString()
log ocidUpperCaseText as text
log className() of ocidUpperCaseText as text
(*ABC 123 DEFG HIJK 456 LMN*)
(*__NSCFString*)

####先頭大文字キャピタライズ
set ocidCapCaseText to ocidStringM's capitalizedString()
log ocidCapCaseText as text
log className() of ocidCapCaseText as text
(*Abc 123 Defg Hijk 456 Lmn*)
(*__NSCFString*)

|

[% Decode] stringByRemovingPercentEncoding %デコード

#!/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

######ログ表示
doLogView()

property objMe : a reference to current application
property objNSString : a reference to objMe's NSString

## set text
set strURL to "http%3A%2F%2Ffoo%20bar%2F" as text

##Make NSString
set ocidNSString to objNSString's stringWithString:strURL
log ocidNSString as text
log ocidNSString's className() as text
-->(*__NSCFString*)

### Do Percent Encoding
set ocidEncodedURL to ocidNSString's stringByRemovingPercentEncoding()
log ocidEncodedURL as text
log ocidEncodedURL's className() as text
-->(*__NSCFString*)

return ocidEncodedURL as text
-->"http://foo bar/"




#########################ログ表示
to doLogView()

tell application "System Events"
set listAppList to title of (every process where background only is false)
end tell
repeat with objAppList in listAppList
set strAppList to objAppList as text
if strAppList is "スクリプトエディタ" then
tell application "Script Editor"
if frontmost is true then
try
tell application "System Events" to click menu item "ログを表示" of menu "表示" of menu bar item "表示" of menu bar 1 of application process "Script Editor"
end try
end if
end tell
end if
end repeat

end doLogView
#########################

|

[AppleScript]テキストの改行を取る

テキストの改行を取る手っ取り早い方法

(*
スクリプト本体の改行は
¬
NOT SIGN
Unicode:U+00AC
UTF-8:C2AC
*)


set strTextWithReturn to "美しい日本語\n\nオープンタイプ\nフォント"

log strTextWithReturn
###文節事にリストにして
set listParagraph to every paragraph of strTextWithReturn as list

###リストを潰すと出来上がり
set strTextWithOutReturn to listParagraph as text

log strTextWithOutReturn



#!/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

####ログ表示
doLogView()


property objMe : a reference to current application
property objNSString : a reference to objMe's NSString

set ocidText to objNSString's stringWithString:"美しい日本語\n\nオープンタイプ\nフォント\n"

###改行コードを定義
set ocidNSCFCharacterSet to objMe's NSCharacterSet's characterSetWithCharactersInString:"\n"
log className() of ocidNSCFCharacterSet as text

###改行コードでArray=リスト化
set ocidTaggedPointerString to ocidText's componentsSeparatedByCharactersInSet:ocidNSCFCharacterSet
log ocidTaggedPointerString as list
log className() of ocidTaggedPointerString as text

###リストをテキストに
set ocidOnewLineString to ocidTaggedPointerString's componentsJoinedByString:""
log ocidOnewLineString as text
log className() of ocidOnewLineString as text



#########################ログ表示
to doLogView()
tell application "System Events"
set listAppList to title of (every process where background only is false)
end tell
repeat with objAppList in listAppList
set strAppList to objAppList as text
if strAppList is "スクリプトエディタ" then
tell application "Script Editor"
if frontmost is true then
try
tell application "System Events" to click menu item "ログを表示" of menu "表示" of menu bar item "表示" of menu bar 1 of application process "Script Editor"
end try
end if
end tell
end if
end repeat

end doLogView
#########################

|

[URL encode] NSString %エンコードされた文字列を読める文字にデコードする

URLエンコード %エンコード

ダウンロード - urlencode.zip


#!/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.6"
use framework "Foundation"
use scripting additions

property objMe : a reference to current application
property objNSString : a reference to objMe's NSString
property objNSStringNSURL : a reference to objMe's NSURL


set strFileName to "%E7%BE%8E%E3%81%97%E3%81%84%E6%97%A5%E6%9C%AC%E8%AA%9E%E3%81%AE%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB%E5%90%8D" as text

set strEncod to urlDecode(strFileName) as text



on urlDecode(input)
tell objNSString to set rawUrl to stringWithString_(input)
set theEncodedURL to rawUrl's stringByRemovingPercentEncoding
return theEncodedURL as text
end urlDecode

|

[URL encode]python %エンコードされた文字列を読める文字にデコードする

URLエンコード %エンコード

ダウンロード - urlencode.zip


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


set strFileName to decodeURL("%E7%BE%8E%E3%81%97%E3%81%84%E6%97%A5%E6%9C%AC%E8%AA%9E%E3%81%AE%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB%E5%90%8D") as text


on decodeURL(theText)
set theResponce to (do shell script "python3 -c 'import urllib.parse;[print(urllib.parse.unquote(\"" & theText & "\",encoding=\"utf-8\"))]'") as text
return theResponce
end decodeURL

|

その他のカテゴリー

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