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
Другие вопросы по тегам