Microsoft удалось прервать перевод их почтовых программ на немецкий язык, что привело к появлению таких строчек, как «AW: AW: AW: AW: AW: Question», когда почта отправляется туда-сюда, и никто не обращает внимания на строку темы. Я считаю, что английская версия использует RE:, но удаляет его автоматически.

Я заметил, что OSX Mail.app довольно умный и удаляет несколько RE:, но он полностью игнорирует немецкую версию.

Есть ли где-нибудь небольшой параметр / инструмент / плагин, чтобы Mail.app тоже распознавал их?

1 ответ1

1

То же самое в голландском прогнозе: «Re: Betr .: Re: Doorgest .:» для «Re: Re: Re: Fw:», которое, вероятно, должно быть просто «Re:» тогда ...

Я не эксперт по AppleScript , но, основываясь на примерах в /Library/Scripts/Mail Scripts/Rule Actions , это может помочь вам (или кому-то из Super User) начать. Однако это совсем не рабочее решение, так как я не знаю, как заставить Почту сохранить изменения. Следующее изменит тему, как показано в списке сообщений, но не совпадает с тем, что показано над сообщением при его просмотре. Еще хуже: перезапуск Mail снова возвращает старый объект.

Я предполагаю, что нужно изменить фактический источник сообщения, а не только тему. И, возможно, AppleScript даже не может этого сделать, но это было пустой тратой времени, чтобы не публиковать здесь свои попытки. ;-)

(РЕДАКТИРОВАТЬ: попытки изменить свойство source сообщения "Mail got an error: AppleEvent handler failed." number -10000 ... Может быть, фактический файл .emlx должен быть изменен в файловой системе?)

Для тестирования проще всего создать сценарий, который запускается для текущего выбранного сообщения. Например: сохраните следующее в текстовом файле с именем, например, test-clean-subject.scp а затем дважды щелкните его, чтобы открыть редактор AppleScript. Затем просто нажмите кнопку воспроизведения:

tell application "Mail"
  set selectedMessages to selection

  if (count of selectedMessages) is equal to 0 then
    display alert "No Messages Selected" message ¬
      "Select one or more messages before running this script."
  else
    repeat with theMessage in selectedMessages
      -- Of course, handling just one prefix is NOT AT ALL sufficient:
      set thePrefix to "Aw: "
      set theNewSubject to subject of theMessage
      repeat
        if theNewSubject does not start with thePrefix then
          exit repeat
        end if
        set theNewSubject to text ((length of thePrefix) + 1) ¬
          through -1 of theNewSubject
      end repeat

      -- Testing only:
      display dialog "New subject: " & theNewSubject

      -- This only (temporarily) sets the Subject in the message list.
      -- Maybe change "source" instead...?
      set subject of theMessage to theNewSubject

    end repeat
  end if
end tell

Возможно, вам придется нажать на список сообщений, чтобы увидеть, что Почта изменила его. Опять же: вышесказанное еще не решает вашу проблему! Кроме того, когда выясняется, как сохранить измененную тему, поиск и удаление / замена должны быть намного более сложными, чем просто поиск единственного «Aw:».

Для истинного почтового правила все должно быть немного иначе. Скопируйте соответствующие части из рабочего автономного сценария в следующее, сохраните его и затем создайте новое правило в почте для каждого входящего сообщения (или для сообщений для определенного отправителя):

using terms from application "Mail"
  on perform mail action with messages theMessages for rule theRule
    tell application "Mail"
      repeat with theMessage in theMessages

        -- copy the actual script here...

      end repeat
    end tell
  end perform mail action with messages
end using terms from

См. Также Введение в создание сценариев почты в MacTech и некоторые примеры поиска и замены в MacScripter.

ОТКАЗ ОТ ОТВЕТСТВЕННОСТИ: ничего из перечисленного не было проверено много!

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .