Declaration of VAR

and some other stuff

Моя коллекция AppleScript

2016-05-19 16:47:39 +0200

2016-05-19 16:47:39 +0200 | Comments

А решил я тут заняться AppleScript. Создал репозиторий и напилил первый скрипт, который выводит количество писем во всех ящиках всех аккаунтов Mail.app.

Наверное, начать стоило с того, что в Mac OS есть приложение Script Editor, в котором можно писать скрипты, которые затем можно использовать в разных приложениях.

Первым скриптом я запилил вывод количества писем во всех почтовых ящиках всех аккаунтов в Mail.app. Опционально можно вывести только количество непрочитанных сообщений или количество сообщений с флагами. Вывод производится в лог, который находится на вкладке Messages панели результатов:

Сам скрипт вот:

-- working with Mail.app
tell application "Mail"
    
    set everyAccount to every account
    repeat with eachAccount in everyAccount
        set accountMailboxes to every mailbox of eachAccount
        repeat with eachMailBox in accountMailboxes
            
            -- count all messages
            set messageCount to (count of (messages of eachMailBox))
            
            -- count only unread messages
            --set messageCount to (count of (messages of eachMailBox whose read status is false))
            
            -- count only flagged messages
            --set messageCount to (count of (messages of eachMailBox whose flagged status is true))
            
            -- show only not empty mailboxes
            if messageCount > 0 then
                log name of eachAccount & " | " & name of eachMailBox & " | " & messageCount
            end if
            
        end repeat
    end repeat
    
end tell

Также скрипт можно сохранить на диск, файл будет иметь расширение *.scpt, и запускать его можно будет не только в Script Editor'е, но и в терминале через утиль osascript, например так:

osascript message-count.scpt

Новые скрипты буду выкладывать в репозитории.