He creado un inicio para registrar una "hora de inicio" y guardar en un archivo plist, y un otro script para leer la hora de inicio y calcular el número de tiempo transcurrido desde la hora de inicio y ahora (tiempo de lectura).
primer script (tiempo de registro en plist) :
set myDate to date string of (current date)
set [dayLetter, dayNumber, MonthLetter, yearNumber] to the words of myDate
set t to (time string of (current date))
set [hoursInNumber, minutesInNumber, secondInNumber] to the words of t
set startTimeValue to (current date)
set startTimeClear to dayLetter & " " & dayNumber & " " & MonthLetter & " at " & hoursInNumber & ":" & minutesInNumber
set plistR to {startTime:startTimeValue, startTimeClear:startTimeClear}
tell application "System Events"
set plistf to make new property list file ¬
with properties {name:"~/Desktop/myTime.plist"}
set plistf's value to plistR
end tell
segundo script (leer plist)
set NowTimeValue to (current date)
set the plistfile_path to "~/Desktop/myTime.plist"
tell application "System Events"
set p_list to property list file (plistfile_path)
-- read the plist data
set startTimeValue to value of property list item "startTime" of p_list
end tell
set Elapsed to startTimeValue - NowTimeValue
El principal problema es que el tiempo indicado es en segundos, y si intento dividirlo por 60 me da una hora.
¿cómo puedo obtener este tiempo en minutos / horas en su lugar?