BBEdit AppleScript для переформатирования нескольких файлов - PullRequest
2 голосов
/ 26 июля 2011

Я хочу написать Applescript, который будет использовать BBEdit - перебирать тонны HTML-файлов и автоматически их форматировать (чтобы легче было читать отступы).

Пока у меня есть:

tell application "BBEdit"
    activate
    open {file "Macintosh HD:TEST DIRECTORY:testfile copy 2.html"} with LF translation
    (format mode hierarchical)
    beep 
    display alert "Finished!"
end tell

Это применяет преобразование к одному файлу, но есть ли у кого-нибудь предложения, как применить это к неизвестному количеству файлов HTML?

Ответы [ 3 ]

3 голосов
/ 26 июля 2011

Вы почти получили это; хитрость в том, что вы хотите перебрать файлы, возвращаемые open. Таким образом, вам нужно что-то вроде этого:

tell application "BBEdit"
    set docs to open LIST_OF_FILES with LF translation
    repeat with doc in docs
        -- format doc
        save doc
    end repeat
    beep -- Or even `say "Finished!" without waiting until completion`
         -- if you want your computer to talk to you
    display alert "Finished!"
end tell

Как видите, все, что вам нужно сделать, это поместить свой код форматирования в этот цикл (и не забудьте сохранить файлы!); цикл по очереди устанавливает doc для каждого элемента списка docs и запускает тело с этим элементом. Если вы не уверены, как выбрать файлы, один из способов - choose file with multiple selections allowed; появится диалоговое окно, которое позволит вам выбрать столько файлов, сколько вы хотите. Чтобы использовать его, просто замените LIST_OF_FILES на (choose file with multiple selections allowed).

0 голосов
/ 26 марта 2015

Для этого вы должны использовать функцию Text Factory. В разделе «Файл> Создать> Текстовая фабрика». Любая операция, которую вы можете выполнить с одним файлом, может быть выполнена с любым количеством файлов, и вы можете сохранить эту операцию для дальнейшего использования.

0 голосов
/ 06 января 2012

BBEdit выполнит поиск / замену для любой группы файлов, которую вы хотите.Просто нажмите Ctrl + Shift + F, чтобы вызвать поиск по нескольким файлам вместо основного окна поиска / замены.

Если у вас более одного набора команд поиска / замены, которые необходимо выполнить одновременно, вам нужна текстовая фабрика.Подробнее о том, как его настроить, см. Здесь: http://www.barebones.com/products/bbedit/benefitsexercise.html

Помогает ли это?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...