Mutt: 引用メッセージの検出に独自のルールを定義できますか?

Mutt: 引用メッセージの検出に独自のルールを定義できますか?

最近、Gmail IMAP メール アドレスで mutt を使い始めました。

とても気に入ったので、大学のメール アドレスでも設定しました。残念ながら、これは大学の ICT チームによって Outlook Webapp でホストされており、メッセージの引用などのいくつかの基本的な標準に準拠していないようです。

私が使用したすべてのメール サービス (多くはありませんが) では、メッセージは次の方法で引用されます。

This is my new message
>this is 
>a quoted message
>> this is a 
>> quoted message inside the quoted message

または同様のもの。Mutt はこれを拾い上げて適切に色付けするようです。

ただし、Outlook Webapp には次の見積もりスキームがあります。

This is my new message

-----Original Message-----
From: Foo@Bar
Subject: Foobar
Date: 1st of Foo, 2012 20:18
To: Bar@Baz

this is 
a quoted message

-----Original Message-----
From: Bar@Baz
Subject: Foobar
Date: 1st of Foo, 2012 20:13
To: Foo@Bar

this is
a quoted message inside the quoted message

mutt にこれをどうやって取得するかを指示する方法はありますか?

異なるユーザーが Web アプリで異なる言語を設定している場合、これは引用にも反映されることに注意してください。たとえば、オランダ人の引用は-----Oorspronkelijk bericht-----英語ではなくオランダ語になり、そのように送信されます。そのため、混乱が生じる可能性があります。

このような単純な基準が尊重されていないことに悲しみを感じます。なぜなら、それによって生活が本来あるべきよりもずっと困難になるからです。

注: Outlook Web アプリの使用をやめたので、新しい Gmail アカウントを設定しました。Outlook Web メールはこの Gmail アカウントに転送され、Gmail Web アプリまたは mutt から通常の大学のメール アドレスを使用して返信できます。ただし、不適切なクォーティンは問題のままです。

答え1

colorまあ、複数行にわたって色情報を適用できるMutt のような構成ステートメントは見つかりませんでした。

おそらく、Outlook メッセージを処理する最も簡単な方法は、次のようなフィルターを設定することです。

$ awk '/-----Original Message-----/ { level++; }
       { for (i=0;i<level;++i) printf(">"); printf("%s%s", $0,"\n"); } '

muttさらにdisplay_filter指示:

設定すると、メッセージをフィルタリングするために使用されるコマンドを指定します。メッセージが表示されると、そのメッセージは標準入力として $display_filter に渡され、フィルタリングされたメッセージは標準出力から読み取られます。

おそらく、このコマンドを条件付きにすることができます(フック) - つまり、メッセージにOutlook固有のユーザーエージェントヘッダーがある場合にのみ実行します。おそらく、メッセージフック:

このコマンドは、メッセージに関する情報に基づいてメッセージを表示またはフォーマットする前に、任意の構成コマンドを実行するために使用できます。パターンが表示するメッセージと一致する場合にコマンドが実行されます。

関連情報