Tengo una "prueba" de documento de Pages con un cuadro de texto que tiene el texto "Notas al pie". Este texto está marcado como texto de marcador de posición.
Quiero cambiar este texto usando AppleScript. Esto es lo que tengo hasta ahora:
tell application "Pages"
activate
tell document "test"
tell current page
set thistext to every text item whose object text contains "Footnotes"
tell thistext
tell its object text
set every word to mytext
end tell
end tell
end tell
end tell
end tell
Ejecutar esto resultará en el siguiente error:
error "No se puede obtener el texto del objeto de {elemento de texto 1 de la página 1 del ID del documento \"EB865803-005B-4C5D-A740-398B41B767F5\" de la aplicación \"Páginas\"}". número -1728 de «clase pDTx» de {«clase shtx» 1 de «clase cPag» 1 de id de documento "EB865803-005B-4C5D-A740-398B41B767F5"}
El editor de secuencias de comandos también marca las siguientes líneas:
tell its object text
set every word to mytext
end tell
¿Algunas ideas? El objetivo es llenar el texto del marcador de posición en esa página con una nota al pie personalizada.
set … to every …
establece la variable en una lista. Eso significa thistext
que es una lista, por lo que no puede realizar operaciones destinadas a los elementos en la lista en sí. Necesitas un bucle:
repeat with thistext in (every text item whose object text contains "Footnotes")
…
end repeat
El guion completo es:
tell application "Pages"
activate
tell document "test"
tell current page
repeat with thistext in (every text item whose object text contains "Footnotes")
tell thistext
tell its object text
set every word to mytext
end tell
end tell
end repeat
end tell
end tell
end tell
walterbeiter
set thistext to the first text item whose object text contains "Footnotes"
también trabajógrg