В вашем коде есть несколько ошибок.Во-первых, вы никогда не запрашиваете текстовые примечания :-) Вы просто получаете необработанную строку.Во-вторых, set AppleScript's text item delimiters to "space"
устанавливает разделители текстовых элементов в буквальную строку space
.Так, например, выполнение
set AppleScript's text item delimiters to "space"
return text items of "THISspaceISspaceAspaceSTRING"
возвращает
{"THIS", "IS", "A", "STRING"}
Во-вторых, даже если у вас было " "
вместо "space"
, это разбило бы вашу строку на пробелы, и не переводы строки.Например, выполнение
set AppleScript's text item delimiters to " "
return text items of "This is a string
which is on two lines."
возвращает
{"This", "is", "a", "string
which", "is", "on", "two", "lines."}
Как видите, "string\nwhich"
- это отдельный элемент списка.
Чтобы делать то, что вы хотите, выможно просто использовать paragraphs of STRING
;например, запуск
return paragraphs of "This is a string
which is on two lines."
возвращает желаемое
{"This is a string", "which is on two lines."}
Теперь я не совсем понимаю, точно , что вы хотите сделать.Если вы хотите получить это для конкретного человека, вы можете написать
tell application "Address Book"
set n to the note of the first person whose name is "Antal S-Z"
return paragraphs of n
end tell
Вы должны разделить его на два оператора, потому что, я думаю, paragraphs of ...
- это команда, тогда как все в первой строкедоступ к собственности.(Честно говоря, я обычно обнаруживаю эти вещи методом проб и ошибок).
Если, с другой стороны, вы хотите получить этот список для каждого человека в группе, это немного сложнее.Одна большая проблема состоит в том, что люди без примечания получают missing value
за примечание, которое не является строкой.Если вы хотите игнорировать этих людей, то следующий цикл будет работать
tell application "Address Book"
set ns to {}
repeat with p in ¬
(every person in group "Test Group" whose note is not missing value)
set ns to ns & {paragraphs of (note of p as string)}
end repeat
return ns
end tell
Бит every person ...
делает именно то, что говорит, получая соответствующих людей;затем мы извлекаем абзацы их заметки (после напоминания AppleScript, что note of p
действительно является строкой).После этого ns
будет содержать что-то вроде {{"Test 1", "Test 2"}, {"Test 3", "Test 4"}}
.