Al responder esta pregunta He escrito este script:
global presenterNotes
tell application "Keynote"
activate
open (choose file)
tell front document
set presenterNotes to presenter notes of every slide as text
set the clipboard to presenterNotes
do shell script "pbpaste > ~/keynote-notes.txt"
end tell
quit application "Keynote" end tell
Mi pregunta es: en el ejemplo anterior cuando reemplazo la declaración "shell script" con la declaración de abajo por qué funciona esta declaración:
tell application "TextEdit"
activate
make new document
set text of front document to presenterNotes
quit application "TextEdit"
end tell
Ejemplo 1: pero éste no:
tell application "TextEdit"
activate
make new document with data presenterNotes as text
Ejemplo 2: tampoco:
make new document with presenterNotes
Sé que hay otras formas de hacer que funcione como copiar al portapapeles y luego emitir un comando+c.
Me gustaría entender por qué la variable global no se transfiere al documento textEdit, en particular en el ejemplo 1 anterior, ya que applescript no lanza un error.