AppleScript, как найти шаблон и установить его для записи или списка?
В AppleScript я знаю, как сделать типичную находку с чем-то вроде:
tell application "BBEdit"
activate
open find window
find "memberFunction\\(\\)" searching in text 1 of text document "theFile" options {search mode:grep, wrap around:true} with selecting match
end tell
и я могу сделать поиск по нескольким файлам:
tell application "BBEdit"
activate
find "memberFunction\\(\\)" searching in {file "path:to:project.bbprojectd:"} options {search mode:grep, showing results:true}
end tell
но я хотел бы вернуть результат поиска нескольких и сохранить его в файл, поэтому я подумал, что мне нужно сохранить его в записи или списке, а затем повторить ввод, но когда я пытаюсь:
tell application "BBEdit"
activate
set findFunction to {}
set findFunction to {find "memberFunction\\(\\)" searching in {file "path:to:project.bbprojectd:"} options {search mode:grep, showing results:true}} as list
end tell
или же:
set findFunction to {find "memberFunction\\(\\)" searching in {file "path:to:project.bbprojectd:"} options {search mode:grep, showing results:true}} as record
Я получаю ошибку:
Никакой результат не был возвращен из некоторой части этого выражения.
Почему для поиска не указана запись или список? Есть ли способ, которым я могу установить, что делает поиск по нескольким файлам?
1 ответ
Ошибка в том, что вы положили find
Команда в списке.
Чтобы получить запись из команды поиска:
showing results
свойство должно быть ложным иreturning results
свойство должно быть истинным, иначе переменная findFunction будет неопределенной
Вот сценарий:
tell application "BBEdit"
set findFunction to find "memberFunction\\(\\)" searching in file "path:to:project.bbprojectd:" options {search mode:grep, showing results:false, returning results:true}
end tell