phyrster 寫:Edward G.J. Lee 寫:那可能是 gmail 不支援?問一下 gmail 的人試試看。
我分别试了大陆新浪和亿唐的邮箱,结果也是不能正常显示。
webmail 據我所知,多數是不支援的。
我用rfc2047_parameters这个参数,是因为如果没有,在mutt中,附件的中文名字不能显示。加上后就好了。create_rfc2047_parameters这个参数据说要打补丁,不知道是否会改善附件中文名的问题?
正常是不會發生這種問題,mutt 可以自動處理 attachment 檔名的問題,可能是你哪個地方有設錯。
可以使用編輯器去開啟那個 email(mutt 裡頭看信時按 e),正常的 Content-Disposition: attachment; filename 是前加上 encoding 後使用 URL encoding。以 UTF-8 locale(中文檔名測試.utf8)為例:
- 代碼: 選擇全部
Content-Disposition: attachment; filename*=utf-8''%E4%B8%AD%E6%96%87%E6%AA%94%E5%90%8D%E6%B8%AC%E8%A9%A6%2Eutf8
edt1023:~$ echo '%E4%B8%AD%E6%96%87%E6%AA%94%E5%90%8D%E6%B8%AC%E8%A9%A6%2E'|sed 's/%/\\x/g'
\xE4\xB8\xAD\xE6\x96\x87\xE6\xAA\x94\xE5\x90\x8D\xE6\xB8\xAC\xE8\xA9\xA6\x2E
edt1023:~$ echo -e '\xE4\xB8\xAD\xE6\x96\x87\xE6\xAA\x94\xE5\x90\x8D\xE6\xB8\xAC\xE8\xA9\xA6\x2E'
中文檔名測試.
Content-Disposition 是郵件裡頭的內容,其下的是在 UTF-8 terminal 執行的。所以,MUA 必需要有能力解這個 URL encoding 才能看得到檔名。