Как изменить разделитель текстового элемента в расширенном тексте Keynote, чтобы точка и запятая не игнорировались (используя Javascript для автоматизации)?
Короче:
с объектами форматированного текста iWork разбиение текста на слова происходит из:
"Это... он сказал, это предложение!"
чтобы:
["Это", "он", "сказал", "есть", "а", "предложение"]
Итак: точки, запятая и восклицательный знак исчезли. Подобно ситуации с AppleScript, но с Javascript for Automation мне неясно, как установить разделитель текстового элемента (плюс: я надеюсь, что это может быть проще, чем в старые времена).
В деталях:
Я хотел бы изменить форматированный текст, как:
testing [value] units <ignore this>
>>>
also ignore this
<<<
etc.
Текст может содержать изменения в размере / цвете / весе, которые следует сохранить. Результат должен быть, например:
testing 123 units
etc.
Когда я перебираю слова (в моем случае: заметки докладчика в Keynote), я получаю:
["testing", "value", "units", "ignore", "this", "also", "ignore", "this", "etc"]
вместо:
["testing", "[value]", "units", "<ignore", "this>", ">>>", "also", "ignore", "this", "<<<", "etc."]
Итак: такие символы, как., [И> не отображаются, что делает невозможным поиск / замену.
Чтобы получить слова, я использую:
words = Application("Keynote").documents[0].slides[0].presenterNotes.words
Я также пытался использовать who () в сочетании с игнорированием / рассмотрением (регистр, дефис, пунктуация), но результат тот же.
Как я могу получить список слов, которые включают не алфавитно-цифровые символы?
1 ответ
Чтобы получить полный текст примечаний к слайду, используйте presenterNotes()
метод:
note = Application("Keynote").documents[0].slides[0].presenterNotes()
Это не совсем интуитивно для меня, но работает нормально.