apple scripts I
Добавлено: 22 ноя 2004, 06:01
несколько недель назад у меня спросили, есть ли под линуксом что-то типа COM, MFC или WinAPI, человек задумал пересесть с виндов на линукс и не знал, с чего начать. я был смущен вопросом и не знал, что ему ответить. предложил ему почитать POSIX и дальше в ответе не ушел.
и ведь действительно, если в виндах существует единый интерфейс для разработки GUI да и всего остального, сетевых подключений, например, то в линуксе такого нет. хочешь писать под gnome - под fwvm софт не запустится, а gnome-ppp не работает (проверял месяц назад) ни в одной версии gnome, кроме как 2.6.
а сегодня ночью мне захотелось освободить три гигабайта на винчестере, которые заслуженно, но совершенно неуместно были заняты творчеством "аквариума". вот я и взялся посмотреть, что такое applescript.
applescript - это что-то типа бейсика под виндами, только по-другому. во-первых, он сильно похож на натуральные языки. пример:
во-вторых - у большинства приложений apple существуют интерфейсы к нему. то есть, с его помощью можно управлять iTunes, Mail.
в третьих - он очень прост. пример:
в четвертых - он может быть вызван из коммандной строки.
в пятых - он сам может вызывать любые команды и получать вывод от них.
в шестых - он может быть использован любым приложением с помощью нехитрого framework
в седьмых - на нем можно писать программы с GUI.
и еще очень много всего.
причем - написание скриптов на нем - одно удовольствие. я полчаса искал в документации, как вызвать окно выбора файла, как оказалось:
любое из приложений, поддерживающих applescript'ing можно отрыть как словарь и посмотреть, что оно поддерживает.
лирическое отступление: пару месяцев назад я открыл для себя pipe прямо в буфер обмена. в силу проприетарности системы и наличествования всего одного буфера, вывод любой команды из терминала можно перенаправить в буфер, добавив позади.
и ведь действительно, если в виндах существует единый интерфейс для разработки GUI да и всего остального, сетевых подключений, например, то в линуксе такого нет. хочешь писать под gnome - под fwvm софт не запустится, а gnome-ppp не работает (проверял месяц назад) ни в одной версии gnome, кроме как 2.6.
а сегодня ночью мне захотелось освободить три гигабайта на винчестере, которые заслуженно, но совершенно неуместно были заняты творчеством "аквариума". вот я и взялся посмотреть, что такое applescript.
applescript - это что-то типа бейсика под виндами, только по-другому. во-первых, он сильно похож на натуральные языки. пример:
Код: Выделить всё
tell theDataSource
set parentItem to make new data item at end of data items of theDataSource
set contents of data cell "name" of parentItem to theFile
set contents of data cell "value" of parentItem to "--"
end tell
в третьих - он очень прост. пример:
Код: Выделить всё
tell application "iTunes"
pause
end tell
в пятых - он сам может вызывать любые команды и получать вывод от них.
в шестых - он может быть использован любым приложением с помощью нехитрого framework
в седьмых - на нем можно писать программы с GUI.
и еще очень много всего.
причем - написание скриптов на нем - одно удовольствие. я полчаса искал в документации, как вызвать окно выбора файла, как оказалось:
Код: Выделить всё
set theFileList to (choose folder) as list
лирическое отступление: пару месяцев назад я открыл для себя pipe прямо в буфер обмена. в силу проприетарности системы и наличествования всего одного буфера, вывод любой команды из терминала можно перенаправить в буфер, добавив позади
Код: Выделить всё
"| pbcopy"