2009年11月 3日

[mew-dist 29050] Re:blockquoteの扱いについて

白井です。

From: Hideyuki SHIRAI (白井秀行) <shirai@xxxxx> 曰く
Subject: [mew-dist 29045] Re: blockquoteの扱いについて
Message-ID: <20091102.171449.183925545.shirai.hideyuki@xxxxx>
Date: Mon, 02 Nov 2009 17:14:49 +0900 (JST)

> また、なるたけ複雑な引用をしていて、ぼくがみても問題ないメールが

> あったら個人宛に送って下さると嬉しいです。

送っていただきありがとうございます。

AOLタイプの引用(blockquote + <br>) と Thunderbirdタイプの引用
(blockquote + <pre>〜</pre>)には対応できたと思います。また、「他
にもこういうのがあるよ」ってありましたら教えて貰えると嬉しいです。

emacs-w3m の CVS にはコミットしましたが、昨日の mew-w3m.el との
diff をつけておきます。

--
白井秀行 (mailto:shirai@xxxxx)

Content-Disposition: inline; filename="mew-w3m.el.diff"

Index: mew-w3m.el
===================================================================
RCS file: /storage/cvsroot/emacs-w3m/mew-w3m.el,v
retrieving revision 1.66
retrieving revision 1.68
diff -u -r1.66 -r1.68
--- mew-w3m.el 2 Nov 2009 07:01:11 -0000 1.66
+++ mew-w3m.el 3 Nov 2009 03:51:11 -0000 1.68
@@ -108,10 +108,11 @@
:type 'hook)

(defcustom mew-w3m-region-cite-mark "> "
- "*If non-nil, replace `blockquote' to the cite mark."
+ "*Method of converting `blockquote'."
:group 'mew-w3m
- :type '(choice (const :tag "No Cite Mark" nil)
- (string :tag "Cite Mark")))
+ :type '(choice (const :tag "Use Indent" nil)
+ (const :tag "Use Cite Mark \"> \"" "> ")
+ (string :tag "Use Other Mark")))

(defconst mew-w3m-safe-url-regexp "\\`cid:")

@@ -178,22 +179,37 @@
(setq tagend1 (match-end 0))
(setq lines (buffer-substring tagend0 tagbeg1))
(delete-region tagbeg0 tagend1)
- (insert "<br>\n")
- (setq pos (point))
- (insert "\n<br>\n")
- (goto-char pos)
(insert (with-temp-buffer
(insert lines)
+ (goto-char (point-min))
+ (if (and (w3m-search-tag "pre")
+ (setq tagbeg0 (match-beginning 0))
+ (setq tagend0 (match-end 0))
+ (w3m-search-tag "/pre")
+ (setq tagbeg1 (match-beginning 0))
+ (setq tagend1 (match-end 0)))
+ (progn
+ (delete-region tagbeg1 tagend1)
+ (delete-region tagbeg0 tagend0))
+ ;; delete <br>
+ (goto-char (point-min))
+ (while (w3m-search-tag "br")
+ (delete-region (match-beginning 0) (match-end 0))
+ (unless (looking-at "[\n\r]") (insert "\n"))))
(goto-char (point-max))
(skip-chars-backward " \t\n\f\r")
(delete-region (point) (point-max))
(goto-char (point-min))
(skip-chars-forward " \t\n\f\r")
- (insert mew-w3m-region-cite-mark)
- (while (and (w3m-search-tag "br")
- (not (eobp)))
- (skip-chars-forward " \t\n\f\r")
- (insert mew-w3m-region-cite-mark))
+ (delete-region (point-min) (point))
+ (goto-char (point-min))
+ (while (not (eobp))
+ (insert mew-w3m-region-cite-mark)
+ (forward-line 1))
+ (goto-char (point-min))
+ (insert "<pre>\n")
+ (goto-char (point-max))
+ (insert "\n</pre>\n")
(buffer-substring (point-min) (point-max)))))))
(w3m-region (point-min) (point-max) url charset))))

投稿者 xml-rpc : 2009年11月 3日 13:01
役に立ちました?:
過去のフィードバック 平均:(0) 総合:(0) 投票回数:(0)
本記事へのTrackback: http://hoop.euqset.org/blog/mt-tb2006.cgi/89976
トラックバック
コメント
コメントする




画像の中に見える文字を入力してください。