Text-Processing
將收到的郵件從 text/plain 修改為 text/html
我正在使用mutt來處理我的郵件。有一個發件人聲明了錯誤的內容類型。郵件到達
Content-Type: multipart/alternative; boundary=--…
並且有兩個部分。它們被聲明為:
Content-Type: text/plain; charset=utf-8
和
Content-Type: text/html; charset=utf-8
但是郵件的兩個部分是相同的。所以明文部分充滿了 HTML 標籤以及 HTML 部分。我試圖與發件人討論它,但他們使用某種無法更改這些設置的“企業”軟體。
所以我想在本地更改郵件,並可能刪除
text/plain
-part 或重寫text/plain
為text/html
.您認為最好的方法是什麼?我可以使用哪些工具來獲得可讀的郵件?
在 mutt 中,您可以鍵入
v
,然後選擇要顯示的替代項。您還可以使用 更改元件的內容類型Ctrl-E
。作為更通用的方法,您可以使用
mutt
’display_filter
設置:set display_filter=/path/to/mutt-filter
像
mutt-filter
這樣:#! /usr/bin/awk -f BEGIN { cmd="echo '[automatically converted from html to text]'; w3m -T text/html -dump" } {l=tolower($0)} l ~ /<html|<!doctype html/,l ~ /<\/html>/ { print | cmd next } {close(cmd); print}
這將導致(在
mutt
要顯示的內容中,而不是原始電子郵件中)在<html>
和</html>
通過w3m -T text/html -dump
(elinks -dump
或您更喜歡html
的text
轉換器)之間的任何事情。因為這可能會轉換它不應該轉換的東西(比如何時
<html>
出現在真正的text/plain
元件中),您可能需要對其進行調整,以便它只對那些發送虛假電子郵件的人的電子郵件進行操作,或者使用一些更奇特的方法,比如計算標籤數量並在達到門檻值時轉換…