Программирование → Отмечание просмотренных серий на MyShows.ru

Постановка задачи
Задача: автоматизировать рутинные действия по отмечанию просмотренных эпизодов на сайте myshows.ru. Поясню, после просмотра очередной серии Теории Большого Взрыва я открываю мои сериалы, нахожу сериал, нахожу просмотренный эпизод и отмечаю его как «просмотренный».
После обнаружения api.myshows.ru сразу зародилась идея серьезно упростить этот процесс. Хотелось бы, чтобы это выглядело так: вызываем контекстное меню файла с только что просмотренной серией и выбираем «Отметить на myshows.ru».
Qt Software → Экспорт в mail.app из приложения Qt
Возникла необходимость делать экспорт неких файлов в email (пользователи очень просят). Проблема в том как это сделать в Mac OS X. Ну предположим мы не предполагаем никаких других почтовиков кроме Mail.app. На developer.apple.com нашел описание как это делается без Qt. Первая попытка реализовать сие породила массу вопросов, ответов на которые в developer.apple.com не найти. Вобщем помучился я достаточно и тут выкладываю готовый рецепт реализации такой фичи при помощи Applescript.
Mac OS X → Изучаем иностранные выражения (и не только)
В этой заметке я расскажу как использовать GrowlNotify, Launchd и Applescript для периодического вывода всплывающих сообщений (на примере классических латинских выражений). Заметка рассчитана на новичков, профессионалы вряд ли найдут для себя что-то новое.Для всех вышеупомянутых инструментов дан краткий обзор, чтобы вы могли с минимальными усилиями сделать именно то, что вам нужно — напоминания о событиях, новых сообщениях из социальных сетей, мониторинг и диагностика сетевых сервисов и т.п. Либо можно просто сделать все так, как я описал, и через какое-то время похвастаться друзьям своим знанием латинских фраз. Scientia potentia est.
Персональные блоги → Интересное поведение Applescript
Интересные вещи выдает Applescript. Если, к примеру, мы обращаемся к объекту прочесть его свойство и затем хотим соотнести значение этого свойства с определенным множеством значений, то прийдется написать конструкцию типа
объект (свойство = 1) или (свойство = 0)
вместо достаточно очевидных
объект свойство = (1 or 0)
С данной особенностью я столкнулся при написании скрипта, который сам умеет проставлять значение настройки эквалайзера в зависимости от того, какой жанр у данной песни (песен). Скрипт выглядит так:
Если вы напишете
то Applescript-машина вас не поймет, хотя написано почти по-русски. И даже если поменять конструкцию с «or» на множество {...}, то снова ничего не получится. Такое вот интересное поведение.
объект (свойство = 1) или (свойство = 0)
вместо достаточно очевидных
объект свойство = (1 or 0)
С данной особенностью я столкнулся при написании скрипта, который сам умеет проставлять значение настройки эквалайзера в зависимости от того, какой жанр у данной песни (песен). Скрипт выглядит так:
-- определение настроек эквалайзера
property EQRock : "Рок"
property EQBlues : "Ритм-энд-блюз"
tell application "iTunes"
set EQ of (tracks whose (genre is "Rock") or (genre is "Alternative")) to EQRock
set EQ of (tracks whose genre is "Blues") to EQBlues
end tell
Если вы напишете
set EQ of (tracks whose genre is ("Rock" or "Alternative")) to EQRock
то Applescript-машина вас не поймет, хотя написано почти по-русски. И даже если поменять конструкцию с «or» на множество {...}, то снова ничего не получится. Такое вот интересное поведение.
Персональные блоги → Автоматизируем iTunes
Добавляя музыку в iTunes я столкнулся с тем, что большое число песен не имеют правильно прописанных тегов. Выглядит это примерно так
Детальный осмотр показал, что это не проблема кодировок. Теги в треках именно, что были забиты знаками '?'.
Детальный осмотр показал, что это не проблема кодировок. Теги в треках именно, что были забиты знаками '?'.
Персональные блоги → Автоматизируем переключение звука на хакинтоше
У маков есть особенность, логичная и осмысленная на родном железе, но раздражающая при использовании нестандартных конфигураций: звук идет или в колонки или в наушники.
Разъем 3.5 только один: воткнул наушники — смолкли колонки, выдернул — звук вернулся.
Это правильно и удобно. Если только системник не стоит под столом и у звуковой карты не гораздо больше выходов.
Чтобы каждый раз не запускать вручную «Системные настройки» и копаться в них, я написал небольшой эппл-скрипт:
Разъем 3.5 только один: воткнул наушники — смолкли колонки, выдернул — звук вернулся.
Это правильно и удобно. Если только системник не стоит под столом и у звуковой карты не гораздо больше выходов.
Чтобы каждый раз не запускать вручную «Системные настройки» и копаться в них, я написал небольшой эппл-скрипт:
Персональные блоги → Быстрая расстановка рейтинга в iTunes
Задача: сделать хоткей, при котором в iTunes устанавливался бы нужный рейтинг для играющей песни, как бонус — массовая простановка рейтинга для нескольких композиций.
Персональные блоги → Программное нажатие кнопки средствами Applescript
Задача: нажать кнопку в определенном окне. Хорошо, если программа имеет встроенные функции и нажатие кнопки можно командой через Applescript. Но если нам надо нажать кнопку в неизвестном окне, например в системных настройках? Ниже будет показано, как это сделать.
Разработка под Apple iOS → Укрощение iTunes с помощью XCode и scripting Bridge.
Прошлым летом случилось страшное… Накрылся винт в моем МакБуке. Все важные данные были легко восстановлены. Слава Машине Времени! А вот музыкальной коллекции, которую я кропотливо взращивал годами, не повезло. Саму музыку восстановить не проблема, а вот рейтинги и количество прослушиваний, чья история уходит корнями в самое появление iTunes под Windows, ой как жалко. Пережила фонотека многое, в том числе перенос с Windows на Хакинтош, а затем и на МакБук.
Благо мадиатека была потеряна не вся — остались рожки да ножки, а точнее заветный файл "iTunes Library". На днях я решился его реанимировать.
Очевидное решение — использовать Applescript. С помощью него практически любое приложение в Mac OS можно автоматизировать. Язык настолько близок к английскому и далек от других языков программирования, что ввел меня в ступор. Я не знал с какой стороны к нему подступиться.
Пришлось использовать XCode и немного знакомый Objective-C. Работа с XML не вызвала практически никаких проблем. NSXML… и MSXML оказались API очень похожими не только названием.
С общением с iTunes дела обстоят сложнее. Помимо собственно Applescript, который можно использовать в проектах XCode, я нашел всего два способа. Оба по сути являются обертками для Applescript.
Благо мадиатека была потеряна не вся — остались рожки да ножки, а точнее заветный файл "iTunes Library". На днях я решился его реанимировать.
Решение под Mac OS
Очевидное решение — использовать Applescript. С помощью него практически любое приложение в Mac OS можно автоматизировать. Язык настолько близок к английскому и далек от других языков программирования, что ввел меня в ступор. Я не знал с какой стороны к нему подступиться.Пришлось использовать XCode и немного знакомый Objective-C. Работа с XML не вызвала практически никаких проблем. NSXML… и MSXML оказались API очень похожими не только названием.
С общением с iTunes дела обстоят сложнее. Помимо собственно Applescript, который можно использовать в проектах XCode, я нашел всего два способа. Оба по сути являются обертками для Applescript.
Персональные блоги → AppleScript vs iSync (MacOS X 10.4)
Предыстория
iSync — программа для синхронизации адресной книги, календаря с телефоном. Мне, если честно, надоело открывать iSync и руками синхронизировать все с телефоном.
Задача
написать приложение/скрипт/workflow, который бы автоматически проводил синхронизацию. Идеальный вариант — синхронизация после внесения изменений в iCal/AddressBook