[Mew-dist 931] Re: attach
Shunichi GOTO
gotoh at example.com
1997年 4月 25日 (金) 16:25:12 JST
後藤です
>>>>> From: tamura at example.com (SHINJI Tamura/田村 進司)
たむら> えーと、mew で、ファイルを添付する時、いちいち、Description を書くのが
たむら> 面倒なのと、マルチパートで来たメールのパートの部分をセーブする時に、
たむら> ファイル名を書くのが面倒だったので、こんなパッチを作って見ました。
いいですね。
この操作はおきまりの作業なので、「楽」ができます。
たむら> もっとうまい方法があるかも知れませんが、いかがなもんでしょうか?
これだと、CD: がないときにsubstringでエラーになってしまいますね。
それから、CT: に name="file.ext" パラメータがある時、これを使うような
仕様が嬉しいので、アイディアだけ拝借して、ちょっと改造してみました。
見苦しいコードを添付します。
田村さんのコードではなく、オリジナル(?)に対する差分です
p.s.
本当は Content-Disposition: の情報を取りたいのですが。。。
name= あたりはMewのポリシーを逸脱してしまう可能性も心配?
あと、漢字ファイル名は問題もあるかも知れないし、ややこしいので、
とりあえず何も考えず、デコードも行なわないようにしてます。
--- Regards,
Shun-ichi Goto <gotoh at example.com>
-------------- next part --------------
--- mew-summary.el.orig Wed Apr 23 18:24:38 1997
+++ mew-summary.el Fri Apr 25 16:10:22 1997
@@ -1718,6 +1718,24 @@
(if (not (or msg part))
(message "No message or part here")
(setq file (mew-input-filename))
+ (let* ((ent (mew-syntax-get-entry-strnum
+ (mew-cache-decode-syntax
+ (mew-current-get 'cache)) part))
+ (ct (mew-syntax-get-ct ent))
+ (cd (mew-syntax-get-cd ent))
+ (fn nil))
+ ;; check ct: name= parameter
+ (while (and (not fn) ct)
+ (if (string-match "^name=\\(.*\\)" (car ct))
+ (setq fn (mew-match 1 (car ct)))
+ (setq ct (cdr ct))))
+ ;; check cd: as filename
+ (if (and (not fn) cd)
+ (setq fn cd))
+ (if (and fn (string-match "^\"\\(.*\\)\"$" fn))
+ (setq fn (mew-match 1 fn)))
+ (setq file (mew-input-filename nil fn)))
+
(if (file-exists-p file)
(if (null mew-file-append-p)
(setq action "Overwrite")
Mew-dist メーリングリストの案内