[mew-dist 27760] Re: longlines-modeでメッセージ表示?

Hideyuki SHIRAI ( 白井秀行 ) shirai at example.com
2007年 8月 2日 (木) 11:55:18 JST


白井です。

# 息抜きしちゃるぞ!!

From: Hiroki Suguri 須栗 裕樹 <suguri at example.com> さん曰く
Subject: [mew-dist 27755] Re: longlines-modeでメッセージ表示?
Message-ID: <20070802.104813.260805154.suguri at example.com>
Date: Thu, 02 Aug 2007 10:48:13 +0900 (JST)

> >   (add-hook 'mew-message-hook 'longlines-mode)
> 
> これだと、longlines-modeがトグルしてしまうので、それが悪さをするのでは
> ないでしょうか。次のようにすればよいと思います。
> 
> (add-hook 'mew-message-hook (function (lambda () (longlines-mode t))))

これだと、

(1) Header 領域まで longlines するため、結構重要な header が壊れ
    てしまい、返信するときに困るときがあったりする。

(2) 大抵のメールはちゃんと改行してあるので、普段は longlines し
    ない方が見やすくて良いかも。

というわけで、↓なの作ってみました。

summary で "ll" すると(一時的にそのメッセージだけ)longlines がか
かります。もし、いつでも longlines したいんだったら、

(add-hook 'mew-message-hook 'mew-message-longlines)

です。

# 最初 narrowing すりゃよいやと思ったら、longlines-mode で
# winden されていた。。。まぁ、後で編集する事を考えれば当然の処
# 理だけど、Mew のメッセージには必要ないし。。。


(add-hook 'mew-summary-mode-hook
	  (lambda ()
	    (define-key mew-summary-mode-map "ll" 'mew-summary-longlines)))

(defun mew-summary-longlines ()
  (interactive)
  (mew-summary-msg-or-part
   (save-excursion
     (when (mew-buffer-message)
       (set-buffer (mew-buffer-message))
       (mew-message-longlines)))))

(defun mew-message-longlines ()
  (let ((buffer-read-only nil)
	beg end)
    (setq beg (progn (goto-char (point-min))
		     (when (mew-header-end)
		       (re-search-forward mew-eoh nil t)
		       (forward-line 1))
		     (point)))
    (setq end (point-max))
    (save-restriction
      (narrow-to-region beg end)
      ;; (use-hard-newlines 1 'never)
      (unless (fboundp 'longlines-decode-buffer)
	(require 'longlines))
      (longlines-decode-buffer)
      (longlines-wrap-region (point-min) (point-max))))
  (set-buffer-modified-p nil))

-- 
白井秀行 (mailto:shirai at example.com)



Mew-dist メーリングリストの案内