El siguiente AppleScript código puede ser utilizado en un Ejecutar AppleScript acción como un Automator Servicio, y asignar un método abreviado de teclado para actuar en una palabra seleccionada para abrir en el Diccionario, y de registro, si no está ya en el archivo de registro.
on run {input, parameters}
try
considering diacriticals
if first character of (input as text) is not in "abcdefghijklmnopqrstuvwxyz" then
tell current application
activate
display dialog "The selected text starts with a non-valid character." & return & return & ¬
"Make a different selection and try again." buttons {"OK"} default button 1 ¬
with title "Dictionary Look Up Logging Service"
end tell
return
end if
end considering
open location "dict://" & input
set theDictionaryHistoryFilename to "Dictionary Look Up Service History Log File.txt"
set theTargetFilename to quoted form of (POSIX path of (path to documents folder as string) & theDictionaryHistoryFilename)
set foundSelectedWord to (do shell script "grep '^" & input & "$' " & theTargetFilename & " > /dev/null; echo $?") as integer
if foundSelectedWord is greater than 0 then
do shell script "echo \"" & input & "\" >> " & theTargetFilename
end if
end try
end run
Tenga en cuenta que si el archivo de registro está abierto cuando se ejecute el servicio, el agregado de la palabra no puede aparecer hasta que cierre y vuelva a abrir el archivo de registro, dependiendo de qué aplicación tiene el archivo de registro abierto.