Menu

Skip to content
AppleScriptの穴
  • Home
  • Products
  • Books
  • Docs
  • Events
  • Forum
  • About This Blog
  • License
  • 仕事依頼

AppleScriptの穴

Useful & Practical AppleScript archive. Click '★Click Here to Open This Script' Link to download each AppleScript

月: 2019年2月

Finder上で選択中のAppleScriptの行数をカウントする

Posted on 2月 8, 2019 by Takaaki Naganoya

Finder上で選択中のAppleScript書類の行数や種別を取得して表UIで表示するAppleScriptです。

Myriad Tables Libを用いて結果を表UIで表示しています。

当初はAppleScript書類からソースを取得するのに/usr/bin/osadecompileコマンドを使っていたのですが、OSAKit経由で処理したほうが高速な印象があります。

–> Download Executable archive for macOS 10.14 (include Myriad Tables Lib)

macOS 10.14上で動作させるためには、Script Debugger上で本Scriptをオープンするか、本Scriptをバンドル形式で保存し、バンドル内(/Contents/Resources/Script Libraries フォルダ)にMyriad Tables Libを入れ、AppleScriptアプレットとして書き出す必要があります。

また、初回実行時には「セキュリティ」の承認ダイアログが表示されるため、これをOKする必要があります。AppleScriptアプレットはFinder上でアイコンをダブルクリックすると「Finder上で選択中のアイテム」を拾えないため(その瞬間、Finder上での選択アイテムはアプレット自身になってしまうため)、DockやmacOS標準装備のスクリプトメニューに登録して起動する必要があります。

AppleScript名:Finder上で選択中のAppleScriptの行数をカウントする v2.scpt
— Created 2019-02-04 by Takaaki Naganoya
— 2019 Piyomaru Software
use AppleScript version "2.4"
use scripting additions
use framework "Foundation"
use framework "OSAKit"
use script "Myriad Tables Lib" version "1.0.8" –https://www.macosxautomation.com/applescript/apps/Script_Libs.html#MyriadTablesLib

property |NSURL| : a reference to current application’s |NSURL|
property NSArray : a reference to current application’s NSArray
property NSString : a reference to current application’s NSString
property OSAScript : a reference to current application’s OSAScript
property NSPredicate : a reference to current application’s NSPredicate
property NSURLIsPackageKey : a reference to current application’s NSURLIsPackageKey
property NSURLIsDirectoryKey : a reference to current application’s NSURLIsDirectoryKey
property NSURLTypeIdentifierKey : a reference to current application’s NSURLTypeIdentifierKey

–Finder上で選択中のファイルのうちAppleScript書類のみ抽出
tell application "Finder"
  set inFiles to selection as alias list
  
if inFiles = {} then return
end tell
set filRes1 to filterAliasListByUTIList(inFiles, {"com.apple.applescript.script", "com.apple.applescript.script-bundle"}) of me
if filRes1 = {} then return

–AppleScript書類の種別判定および行数カウント
set outList to {}
repeat with i in filRes1
  set aName to (NSString’s stringWithString:i)’s lastPathComponent() as string
  
set sInfo to detectScriptIsPureASorASOC(i) of me
  
set sText to scriptSource of getASsourceFor(i) of me
  
set sNum to count every paragraph of sText
  
set sUTI to retUTIfromPath(i) of me
  
if sUTI = "com.apple.applescript.script" then
    set sKind to "Script"
  else if sUTI = "com.apple.applescript.script-bundle" then
    set sKind to "Script Bundle"
  else
    set sKind to "Other"
  end if
  
  
set the end of outList to {aName, sInfo, sKind, sNum}
end repeat

–結果を表UIで表示する
tell script "Myriad Tables Lib"
  set aDispBounds to my makeInitialBounds:1200 withHeight:500
  
set theTable to make new table with data outList column headings {"script name", "ASOC", "Script Kind", "lines"} with title "AppleScript Line Count" with prompt "Your Selected Scripts" with row numbering and empty selection allowed –and can add and delete
  
modify table theTable initial position aDispBounds column widths pattern {1, 2, 3, 4} with hidden cancel button
  
modify columns in table theTable user date format {user format full, user format full} entry alignment align left
  (
display table theTable)
end tell

–Alias listから指定UTI Listに含まれるものをPOSIX pathのリストで返す
on filterAliasListByUTIList(aList as list, targUTIList as list)
  set outList to {}
  
repeat with i in targUTIList
    set j to contents of i
    
set aRes to filterAliasListByUTI(aList, j) of me
    
if aRes is not equal to {} then
      set outList to outList & aRes
    end if
  end repeat
  
return outList
end filterAliasListByUTIList

–Alias listから指定UTIに含まれるものをPOSIX pathのリストで返す
on filterAliasListByUTI(aList as list, targUTI)
  set newList to {}
  
repeat with i in aList
    set j to POSIX path of i
    
set tmpUTI to my retUTIfromPath(j)
    
set utiRes to my filterUTIList({tmpUTI}, targUTI)
    
if utiRes is not equal to {} then
      set the end of newList to j
    end if
  end repeat
  
return newList
end filterAliasListByUTI

–指定のPOSIX pathのファイルのUTIを求める
on retUTIfromPath(aPOSIXPath)
  set aURL to |NSURL|’s fileURLWithPath:aPOSIXPath
  
set {theResult, theValue} to aURL’s getResourceValue:(specifier) forKey:NSURLTypeIdentifierKey |error|:(missing value)
  
  
if theResult = true then
    return theValue as string
  else
    return theResult
  end if
end retUTIfromPath

–UTIリストが指定UTIに含まれているかどうか演算を行う
on filterUTIList(aUTIList, aUTIstr)
  set anArray to NSArray’s arrayWithArray:aUTIList
  
set aPred to NSPredicate’s predicateWithFormat_("SELF UTI-CONFORMS-TO %@", aUTIstr)
  
set bRes to (anArray’s filteredArrayUsingPredicate:aPred) as list
  
return bRes
end filterUTIList

on makeInitialBounds:(aTWidth as integer) withHeight:(aTHeight as integer)
  set aDispBounds to current application’s NSScreen’s mainScreen()’s frame()
  
if class of item 1 of aDispBounds = record then
    –macOS 10.10/10.11/10.12
    
set aWidth to (width of |size| of aDispBounds)
    
set aHeight to (height of |size| of aDispBounds)
  else
    –macOS 10.13 or later?
    
set aWidth to (item 1 of item 2 of aDispBounds)
    
set aHeight to (item 2 of item 2 of aDispBounds)
  end if
  
  
set xPos to (aWidth div 2) – (aTWidth div 2)
  
set yPos to (aHeight div 2) – (aTHeight div 2)
  
  
return {xPos, yPos, aTWidth, aTHeight}
end makeInitialBounds:withHeight:

–指定AppleScriptファイルがPure ASかASOCかを判定して返す
on detectScriptIsPureASorASOC(aFile)
  set sRes to getASsourceFor(aFile) of me
  
set sName to scriptKind of sRes –Name
  
set sText to scriptSource of sRes –Source
  
if sText = "" or sText = missing value then return missing value
  
  
if sName = "AppleScript" then
    if sText contains "use framework \"Foundation\"" then
      return true –ASOC
    else
      return false –Pure AppleScript
    end if
  else
    –JXAなど他のOSA言語の場合
    
return sName
  end if
end detectScriptIsPureASorASOC

–指定AppleScriptファイルのソースコードを取得する(実行専用Scriptからは取得できない)
on getASsourceFor(aPOSIXPath)
  set aURL to |NSURL|’s fileURLWithPath:(aPOSIXPath)
  
set theScript to current application’s OSAScript’s alloc()’s initWithContentsOfURL:aURL |error|:(missing value)
  
set scriptName to theScript’s |language|()’s |name|() as string
  
set theSource to theScript’s source() as text
  
return {scriptKind:scriptName, scriptSource:theSource}
end getASsourceFor

★Click Here to Open This Script 

Posted in file File path GUI OSA | Tagged 10.11savvy 10.12savvy 10.13savvy 10.14savvy NSArray NSPredicate NSString NSURL OSAScript | Leave a comment

Script Debuggerに必要な機能を追加する

Posted on 2月 8, 2019 by Takaaki Naganoya

毎日仕事で使っているAppleScript統合開発環境(IDE)、Late Night SoftwareのScript Debugger。大変リッチな機能を持っているものの、仕事で使えば使ったで不満が出てくるもので、機能を追加したくなってきました。

Script Debugger自体もScriptableなアプリケーションなので、AppleScriptを記述して機能を追加できます。ScriptからはApple純正のスクリプトエディタとまったく同じことができるわけではありませんが、ある程度まではコントロールが可能です。

Script DebuggerのAppleScript用語辞書はスクリプトの分析機能がスクリプトエディタよりも大幅に高機能であり、比較にもなりません。ただし、スクリプト書類の書式(style runs)を取得できないため、構文色分けを利用した構文要素への分解ができませんでした。変数名のみ置換するとかハンドラ名のリストアップするといった、スクリプトエディタで10年以上前から利用している機能が使えないわけです(このあたりの処理をスクリプトエディタに依存せずに実行できるようになったのは、ほんのつい最近のことです)。マインドマップ上に各ハンドラの呼び出し関係を図示するような処理も10年ぐらい前からやっていますが、それもScript Debugger上では行えませんでした。一長一短です。

Script Debuggerは独自のScript Menuを持っており、~/Library/Application Support/Script Debugger 7/Scripts/フォルダ内に(Script Debuggerをコントロールする)各種AppleScriptを入れておくとScript Debugger内のScript Menuから呼び出して実行できるようになっています。

ここで紹介するのは「includeしているライブラリをすべてオープンする」Scriptと、「includeしているライブラリのScriptをすべてクローズする」Scriptです。

open all Script Library

スクリプトバンドルのAppleScriptで、バンドル内にAppleScriptライブラリを含んでいる場合に、それらをScript Debuggerでオープンします。機能を細分化して記述している場合に、全Scriptをチェックする必要が生じるとこのようにすべてオープンして確認する必要があります。本来、共通部分をライブラリ化しておく必要があるわけですが、突発的にこういう作業が発生したもので。

Close Script Libraries

「open all Script Library」スクリプトでオープンしたライブラリをクローズするAppleScriptです。Script Debugger上でメインのAppleScriptを選んでおくと、そのScript中でincludeしている(use)AppleScript Librariesをクローズします。

Script Debuggerで一番不満なのは動的に生成したWindowやMenuなどのイベントを拾ってくれないことですが、ほかにも、useコマンドで利用しているAppleScript Librariesでバンドル内に含めていないものをチェックしてバンドル内に入れる機能がないことでしょうか(動作確認して客先に送ったあとで焦ることがたびたび)。そのあたりもぼちぼち、、、、メーカーにリクエストを出して実装を待つよりも、自分でScriptを組んだほうが早いので、、、

AppleScript名:open all Script Library
tell application "Script Debugger"
  tell document 1
    set libList to (used script library files)
    
set aWin to script window of it
    
–> {script window id 13269 of application "Script Debugger"}
  end tell
  
  
set targWin to contents of first item of aWin
  
  
repeat with i in libList
    set j to contents of i
    
set jj to j as alias
    
    
try
      open jj in window targWin
    end try
  end repeat
end tell

★Click Here to Open This Script 

AppleScript名:Close Script Libraries
tell application "Script Debugger"
  tell front document
    set libList to (used script library files)
    
if libList = {} then return –No AppleScript Libraries
  end tell
  
  
set dList to every document
  
repeat with i in dList
    tell i
      set fSpec to file spec
      
if fSpec is in libList then
        ignoring application responses
          close with saving
        end ignoring
      end if
    end tell
  end repeat
end tell

★Click Here to Open This Script 

Posted in file OSA | Tagged 10.11savvy 10.12savvy 10.13savvy Script Debugger | Leave a comment

指定名称のワークシートを新規ワークブックにコピーしてセル形式を文字形式に変更して全データを取得

Posted on 2月 6, 2019 by Takaaki Naganoya

Microsoft Excelでオープン中の書類の指定名称のワークシート内の全データを文字列リストで取り出すAppleScriptです。

Microsoft Excel v14.7.7(Office 2011)、Excel v16.22(Office 2019)で動作確認しています。

Excelは表計算ソフトであり、表形式の構造データのセル内に文字列/数値のデータを保持するようにできています。

AppleScriptからExcelのデータにアクセスすることは容易ですが、数値データの場合にはExcelが保持できる数値の桁数のほうがAppleScriptの数値型変数よりも有効桁数が多いために、データの扱いが問題になります。

そのまま取り出すと指数表示の数値データになってしまうため、何らかの対策が必要です。

そこで、指定ワークシートの書式を文字書式に設定し、データを取得することでデータが欠損することを防ぐことが可能です。事実、この手段は割と他のOSプラットフォーム(Windowsとか)でも利用されているようです。

ただ、作業対象のワークシートのセル書式を書き換えてしまうと、繰り返しテストやプログラム作成を行ううえで問題が出る(めんどくさい)ので、元データを破壊しないでセル書式を書き換える必要に迫られます。

そこで、

 (1)作業対象Excel書類の末尾に作業対象シートのコピーを作成し、セル書式を書き換えてデータ取得。終了後にコピーしたシートを削除

 (2)新規Excel書類を作成し、作業対象Excel書類の作業対象シートのコピーを新規作成書類に作成。新規Excel書類のセル書式を書き換えてデータ取得。終了後に未保存のExcel書類を破棄

の2通りを実験。元データを一切改変しない(2)の方法を採用したものが本Scriptです。

一応、

 (3)作業対象Excel書類をまるごとファイルコピーして、セル書式を改変してデータ取得して破棄してファイル削除

という方法もあり、こちらも「アリ」でしょう。

AppleScript名:指定名称のワークシートを新規ワークブックにコピーしてセル形式を文字形式に変更して全データを取得
—
–  Created by: Takaaki Naganoya
–  Created on: 2019/02/01
—
–  Copyright © 2019 Piyomaru Software, All Rights Reserved
—
use AppleScript version "2.5"
use scripting additions
use framework "Foundation"

tell application id "com.microsoft.excel"
  set wCount to count every workbook
  
if wCount = 0 then return
  
  
–コピー元のWorksheetを特定
  
tell active workbook
    set aNameList to name of every sheet
    
set origSheetName to contents of first item of (choose from list aNameList)
  end tell
end tell

set aList to getASheetDatAsStringFormat(origSheetName) of me

–現在オープン中のExcel Workbook(書類)中の指定名称のワークシートの内容を新規ワークブックにコピーし、全セルの内容をテキスト形式に変更して内容を取得
on getASheetDatAsStringFormat(origSheetName)
  tell application id "com.microsoft.excel"
    –コピー元のWorksheetを特定
    
tell active workbook –コピー元のワークブック
      set wbName to name of it
    end tell
    
    
set origSheet to sheet origSheetName of workbook wbName
    
    
–コピー先の新規ワークブックを作成してそこに指定ワークシートのデータをフルコピー
    
set distSheet to (worksheet 1 of (make new workbook))
    (
copy worksheet origSheet before distSheet) –ここでのbefore/after指定に意味はないが、指定しないと構文確認をパスしないので指定
    
    
–コピーしたWorksheetのセルのフォーマットをstring valueに変更してデータ取得
    
tell active workbook –新規作成してデータをコピーした未保存ワークブック
      tell active sheet
        set number format of used range to "@"
        
set aList to string value of used range –データ取得
      end tell
      
      
close without saving –新規作成したワークブックを保存せずに破棄
    end tell
  end tell
  
  
return aList
end getASheetDatAsStringFormat

★Click Here to Open This Script 

Posted in list | Leave a comment

指定色で塗りつぶし角丸画像を作成

Posted on 2月 5, 2019 by Takaaki Naganoya

指定の矩形に対して、指定色で、指定半径の角丸で、指定ファイルパスに角丸ぬりつぶしPNG画像を作成するAppleScriptです。

色選択のポップアップメニュー中に入れるNSImage作成用に作ったものですが、ねんのために(動作確認のために)ファイル出力させてみました。

AppleScript名:指定色で塗りつぶし角丸画像を作成.scptd
—
–  Created by: Piyomaru Software
–  Created on: 2019/01/29
—
–  Copyright © 2019 Piyomaru Software, All Rights Reserved
—
use AppleScript version "2.4" — Yosemite (10.10) or later
use framework "Foundation"
use scripting additions
use framework "AppKit"

property |NSURL| : a reference to current application’s |NSURL|
property NSColor : a reference to current application’s NSColor
property NSString : a reference to current application’s NSString
property NSImage : a reference to current application’s NSImage
property NSScreen : a reference to current application’s NSScreen
property NSBezierPath : a reference to current application’s NSBezierPath
property NSPNGFileType : a reference to current application’s NSPNGFileType
property NSBitmapImageRep : a reference to current application’s NSBitmapImageRep

set tCol to choose color
copy tCol to {rVal, gVal, bVal}

set aRadius to 12
set aNSColor to makeNSColorFromRGBAval(rVal, gVal, bVal, 65535, 65535) of me
set aNSImage to makeRoundedNSImageWithFilledWithColor(100, 100, aNSColor, aRadius) of me

set aPath to NSString’s stringWithString:(POSIX path of (choose file name))
set bPath to aPath’s stringByAppendingPathExtension:"png"
set aRes to saveNSImageAtPathAsPNG(aNSImage, bPath) of me

–指定サイズのNSImageを作成し、指定色で塗ってNSImageで返す、anRadiusの半径の角丸で
on makeRoundedNSImageWithFilledWithColor(aWidth, aHeight, fillColor, anRadius as real)
  set anImage to NSImage’s alloc()’s initWithSize:(current application’s NSMakeSize(aWidth, aHeight))
  
anImage’s lockFocus()
  
—
  
set theRect to {{x:0, y:0}, {height:aHeight, width:aWidth}}
  
set theNSBezierPath to NSBezierPath’s bezierPathWithRoundedRect:theRect xRadius:anRadius yRadius:anRadius
  
—
  
fillColor’s |set|() –色設定
  
theNSBezierPath’s fill() –ぬりつぶし
  
—
  
anImage’s unlockFocus()
  
  
return anImage
end makeRoundedNSImageWithFilledWithColor

–aMaxValを最大値とする数値でNSColorを作成して返す
on makeNSColorFromRGBAval(redValue as integer, greenValue as integer, blueValue as integer, alphaValue as integer, aMaxVal as integer)
  set aRedCocoa to (redValue / aMaxVal) as real
  
set aGreenCocoa to (greenValue / aMaxVal) as real
  
set aBlueCocoa to (blueValue / aMaxVal) as real
  
set aAlphaCocoa to (alphaValue / aMaxVal) as real
  
set aColor to NSColor’s colorWithCalibratedRed:aRedCocoa green:aGreenCocoa blue:aBlueCocoa alpha:aAlphaCocoa
  
return aColor
end makeNSColorFromRGBAval

–NSImageを指定パスにPNG形式で保存
on saveNSImageAtPathAsPNG(anImage, outPath)
  set imageRep to anImage’s TIFFRepresentation()
  
set aRawimg to NSBitmapImageRep’s imageRepWithData:imageRep
  
  
set pathString to NSString’s stringWithString:outPath
  
set newPath to pathString’s stringByExpandingTildeInPath()
  
  
set myNewImageData to (aRawimg’s representationUsingType:(NSPNGFileType) |properties|:(missing value))
  
set aRes to (myNewImageData’s writeToFile:newPath atomically:true) as boolean
  
  
return aRes –成功ならtrue、失敗ならfalseが返る
end saveNSImageAtPathAsPNG

★Click Here to Open This Script 

Posted in file Image | Tagged 10.11savvy 10.12savvy 10.13savvy 10.14savvy NSBezierPath NSColor NSImage NSScreen NSString NSURL | Leave a comment

2D List中から、複数アイテムが存在するマーカーのx番目のXYマーカーの交点のデータを返す v1

Posted on 2月 3, 2019 by Takaaki Naganoya

2D List中から、ヘッダー行とヘッダー列の(はずの)場所からマーカーを特定し、Xマーカー、Yマーカーの交点座標の値をピックアップして返すAppleScriptです。

これまでにも、2D List(2次元配列9からXマーカー、Yマーカーを個別に指定して、交点座標の値をピックアップするScriptは使っていました。

ところが、実際に投入してみたところXマーカーに該当する文字列が複数ピックアップされる例が出てきたため、「何個目のマーカーを使用するか」「ヘッダー行の何行目までサーチするか」といった追加の機能が必要になってきました。そのための試作品です。

ヘッダー行がユニーク化されていないCSVとか、驚きでアゴが外れそうになるデータにお目にかかったので、その対策のために作ったものです。

AppleScript名:2D List中から、複数アイテムが存在するマーカーのx番目のXYマーカーの交点のデータを返す v1
—
–  Created by: Takaaki Naganoya
–  Created on: 2019/01/24
—
–  Copyright © 2019 Piyomaru Software, All Rights Reserved
—
use AppleScript version "2.4" — Yosemite (10.10) or later
use framework "Foundation"
use scripting additions
use Bplus : script "BridgePlus" –https://www.macosxautomation.com/applescript/apps/BridgePlus.html

set anXItem to "a"
set anXItemNum to 3
set anYItem to "z"
set anYItemNum to 1
set aList to {{"b", "a", "a", "a"}, {"x", "1x", "2x", "3x"}, {"y", "1y", "2y", "3y"}, {"z", "1z", "2z", "3z"}}

set aRes to getItemFromList(aList, anXItem, anXItemNum, anYItem, anYItemNum) of me
–> "3z"

on getItemFromList(aList as list, anXItem, anXItemNum as integer, anYItem, anYItemNum as integer)
  set xRes to findDataFrom2DList(anXItem, aList, 2) of me –> {{2, 1}, {4, 1}}
  
if length of xRes < anXItemNum then error "X-item Fewer Hits"
  
  
set yRes to findDataFrom2DList(anYItem, aList, -1) of me –> {{1, 4}}
  
if length of yRes < anYItemNum then error "Y-item Fewer Hits"
  
  
set xPosRes to item 1 of contents of item anXItemNum of xRes
  
set yPosRes to item 2 of contents of item anYItemNum of yRes
  
  
set aRes to item xPosRes of item yPosRes of aList
  
  
return aRes
end getItemFromList

on findDataFrom2DList(anItem, aList as list, yMax as integer)
  script spd
    property aList : {}
    
property resList : {}
  end script
  
  
set (aList of spd) to aList
  
set (resList of spd) to {}
  
  
set yCount to 1
  
  
repeat with i in (aList of spd)
    
    
set aResList to (Bplus’s indexesOfItem:anItem inList:i inverting:false) as list
    
    
set tmpList to {}
    
if aResList is not equal to {} then
      repeat with ii in aResList
        set jj to contents of ii
        
set the end of tmpList to {jj, yCount}
      end repeat
      
set (resList of spd) to (resList of spd) & tmpList
    end if
    
    
set yCount to yCount + 1
    
if (yMax is not equal to -1) and (yCount > yMax) then exit repeat
  end repeat
  
  
return (resList of spd) –return {{x, y}…..} item list (1-based)
end findDataFrom2DList

★Click Here to Open This Script 

Posted in list | Tagged 10.11savvy 10.12savvy 10.13savvy 10.14savvy | Leave a comment

Post navigation

  • Newer posts

電子書籍(PDF)をオンラインストアで販売中!

Google Search

Popular posts

  • macOS 13, Ventura(継続更新)
  • アラートダイアログ上にWebViewで3Dコンテンツを表示(WebGL+three.js)v3
  • Xcode 14.2でAppleScript App Templateを復活させる
  • UI Browserがgithub上でソース公開され、オープンソースに
  • macOS 13 TTS Voice環境に変更
  • 2022年に書いた価値あるAppleScript
  • ChatGPTで文章のベクトル化(Embedding)
  • 新発売:AppleScriptからSiriを呼び出そう!
  • iWork 12.2がリリースされた
  • 従来と異なるmacOS 13の性格?
  • 新発売:CotEditor Scripting Book with AppleScript
  • macOS 13対応アップデート:AppleScript実践的テクニック集(1)GUI Scripting
  • AS関連データの取り扱いを容易にする(はずの)privateDataTypeLib
  • macOS 13でNSNotFoundバグふたたび
  • macOS 12.5.1、11.6.8でFinderのselectionでスクリーンショット画像をopenできない問題
  • 新発売:iWork Scripting Book with AppleScript
  • ChatGPTでchatに対する応答文を取得
  • Finderの隠し命令openVirtualLocationが発見される
  • macOS 13.1アップデートでスクリプトエディタの挙動がようやくまともに
  • あのコン過去ログビューワー(暫定版)

Tags

10.11savvy (1101) 10.12savvy (1242) 10.13savvy (1390) 10.14savvy (586) 10.15savvy (434) 11.0savvy (277) 12.0savvy (186) 13.0savvy (59) CotEditor (60) Finder (47) iTunes (19) Keynote (99) NSAlert (60) NSArray (51) NSBezierPath (18) NSBitmapImageRep (20) NSBundle (20) NSButton (34) NSColor (51) NSDictionary (27) NSFileManager (23) NSFont (18) NSImage (41) NSJSONSerialization (21) NSMutableArray (62) NSMutableDictionary (21) NSPredicate (36) NSRunningApplication (56) NSScreen (30) NSScrollView (22) NSString (117) NSURL (97) NSURLRequest (23) NSUTF8StringEncoding (30) NSView (33) NSWorkspace (20) Numbers (57) Pages (38) Safari (41) Script Editor (20) WKUserContentController (21) WKUserScript (20) WKUserScriptInjectionTimeAtDocumentEnd (18) WKWebView (23) WKWebViewConfiguration (22)

カテゴリー

  • 2D Bin Packing
  • 3D
  • AirDrop
  • AirPlay
  • Animation
  • AppleScript Application on Xcode
  • beta
  • Bluetooth
  • Books
  • boolean
  • bounds
  • Bug
  • Calendar
  • call by reference
  • Clipboard
  • Code Sign
  • Color
  • Custom Class
  • dialog
  • drive
  • exif
  • file
  • File path
  • filter
  • folder
  • Font
  • Font
  • GAME
  • geolocation
  • GUI
  • GUI Scripting
  • Hex
  • History
  • How To
  • iCloud
  • Icon
  • Image
  • Input Method
  • Internet
  • iOS App
  • JavaScript
  • JSON
  • JXA
  • Keychain
  • Keychain
  • Language
  • Library
  • list
  • Locale
  • Machine Learning
  • Map
  • Markdown
  • Menu
  • Metadata
  • MIDI
  • MIME
  • Natural Language Processing
  • Network
  • news
  • Noification
  • Notarization
  • Number
  • Object control
  • OCR
  • OSA
  • PDF
  • Peripheral
  • PRODUCTS
  • QR Code
  • Raw AppleEvent Code
  • Record
  • rectangle
  • recursive call
  • regexp
  • Release
  • Remote Control
  • Require Control-Command-R to run
  • REST API
  • Review
  • RTF
  • Sandbox
  • Screen Saver
  • Script Libraries
  • sdef
  • search
  • Security
  • selection
  • shell script
  • Shortcuts Workflow
  • Sort
  • Sound
  • Spellchecker
  • Spotlight
  • SVG
  • System
  • Tag
  • Telephony
  • Text
  • Text to Speech
  • timezone
  • Tools
  • Update
  • URL
  • UTI
  • Web Contents Control
  • WiFi
  • XML
  • XML-RPC
  • イベント(Event)
  • 未分類

アーカイブ

  • 2023年9月
  • 2023年8月
  • 2023年7月
  • 2023年6月
  • 2023年5月
  • 2023年4月
  • 2023年3月
  • 2023年2月
  • 2023年1月
  • 2022年12月
  • 2022年11月
  • 2022年10月
  • 2022年9月
  • 2022年8月
  • 2022年7月
  • 2022年6月
  • 2022年5月
  • 2022年4月
  • 2022年3月
  • 2022年2月
  • 2022年1月
  • 2021年12月
  • 2021年11月
  • 2021年10月
  • 2021年9月
  • 2021年8月
  • 2021年7月
  • 2021年6月
  • 2021年5月
  • 2021年4月
  • 2021年3月
  • 2021年2月
  • 2021年1月
  • 2020年12月
  • 2020年11月
  • 2020年10月
  • 2020年9月
  • 2020年8月
  • 2020年7月
  • 2020年6月
  • 2020年5月
  • 2020年4月
  • 2020年3月
  • 2020年2月
  • 2020年1月
  • 2019年12月
  • 2019年11月
  • 2019年10月
  • 2019年9月
  • 2019年8月
  • 2019年7月
  • 2019年6月
  • 2019年5月
  • 2019年4月
  • 2019年3月
  • 2019年2月
  • 2019年1月
  • 2018年12月
  • 2018年11月
  • 2018年10月
  • 2018年9月
  • 2018年8月
  • 2018年7月
  • 2018年6月
  • 2018年5月
  • 2018年4月
  • 2018年3月
  • 2018年2月

https://piyomarusoft.booth.pm/items/301502

メタ情報

  • ログイン
  • 投稿フィード
  • コメントフィード
  • WordPress.org

Forum Posts

  • 人気のトピック
  • 返信がないトピック

メタ情報

  • ログイン
  • 投稿フィード
  • コメントフィード
  • WordPress.org
Proudly powered by WordPress
Theme: Flint by Star Verte LLC