Mew4FAQ


Mew



Mew 4 に関する FAQ

Mew 4は何が新しいですか?

  • [Q] Mew 4は何が新しいですか?
  • [A] 要望の多かった機能はほとんど実現されました。

Summary モードの書式

  • 本文が右端に表示されるようになりました。
  • 左端にあったメッセージ番号がなくなりました。
  • リファイル・マークをつけると、どのフォルダにリファイルされようとしているのか、本文を上書きする形で右端に表示されるようになりました。
  • 書式を指定する 'mew-scan-form*' という変数の名前は、Mew 3 との共存を考えて、'mew-summary-form*' に変更されました。
  • メッセージ番号がないので、"j" は指定された行に飛ぶコマンドになりました。
  • Mew 2 からある機能なのになぜか知らない人が多いので書きますが、Draft モードにメッセージを添付するには、添付領域で "y" を使います。これで、現在 Summary や Message モードに表示しているメッセージが添付されます。メッセージ番号を指定する必要はありません。
  • ちなみに、ローカルフォルダでは "O" で番号詰めが可能です。結果は見えませんけれど。

新しいマークの仕組み

  • Emacs を終了させてもマークが消えなくなりました。
  • 未読マーク 'U' が導入されました。
  • 複数マーク '@' が廃止されました。
  • 複数のメッセージを取扱うには、'*' マークを使います。
  • '*' を一時的に保存するために、待避マーク '$' ができました。
  • 未読メッセージだけの Virtual モードを作るには、"C-um/" + 'U' とします。

Summary モード

  • リファイルの履歴が保存されるようになりました。Mail/Refilelog です。
  • リージョンに対して pick ("?") や grep ("'") できるようになりました。

Message モード

  • 長い To: や Cc: は、4 行を表示し、後は「ベール」で隠されるようになりました。ベールをとくには "zv" を使います。

Virtual モード

  • 1 つのフォルダから作られた Virtual モードでは、pick や grep ができるようになりました。
  • 1 つのフォルダから作られた Virtual モードに対し、スレッドが作れるようになりました。

Draft モード

  • 新しいアドレスの補完機能が実現されました。ユーザ名が同じでも、アドレス全体を補完のキーにします。(mew-use-full-alias)
  • 'ispell-message' がきちんと動作するように 'mew-make-message-hook' のバグが修正されました。

IMAP

  • 新しい名前空間が導入されました。もう、フォルダ名の前に "inbox." は不要です。
  • 送信したメッセージを IMAP フォルダにバックアップできます。(Fcc: %backup)
  • 無効キャッシュであるメッセージには、"#" マークが付くようになりました。
  • オンラインのリファイル("o")でも、無効キャッシュが作られるようになりました。
  • メッセージは、UID 番号でキャッシュされるようになりました。
  • (POP で取得した)ローカルのメッセージを IMAP サーバに格納するコマンドができました。(M-x mew-summary-from-local-to-imap)

NetNews?

  • 記事は、メッセージIDではなく、記事番号でキャッシュされるようになりました。

スパムフィルタ

  • 取得、あるいはスキャン時に、メッセージに 'o' や 'D' マークを付けることが可能になりました。(mew-inbox-action-alist)
  • pick のような感じでコマンドを呼び出して、スパムに '*' マークを付けることができます。('"')
  • IMAP サーバ内でスパムを削除/リファイルし、必要なメッセージだけをスキャンできるようになりました。('mew-imap-spam-field')
  • 現在のメッセージをスパム、あるいは非スパム(ハム)として学習させることができます。("ls" と "lh")

ネットワーク

  • POP/IMAP/SMTP/NNTP のコネクションが途中で切れても、次のコネクションが正常に動作するようになりました。

その他

  • フォルダを削除("Rd")したり、名前を変更("Rr")したりできるようになりました。
  • Mew 3 との共存を考えて、"mewls" は "mewl" になりました。

SSLの鍵ファイルはどのように作りますか?

  • [Q] SSLの鍵ファイルはどのように作りますか?
  • [A] 以下の様にして~/.certs以下にファイルを作成してください。
    % mkdir ~/.certs
    % openssl x509 -hash -noout -in cert.pem
    a6911e1f
    % cp cert.pem ~/.certs/a6911e1f.0
    a6911e1fはopensslを実行したときのハッシュ値です。これプラス'.0'のファイル名にします。a6911e1fの値はcert.pemによって異なります。

メールサーバにスパムフィルタを入れられないんですが。

  • [Q] メールサーバにスパムフィルタを入れられないんですが。
  • [A] いくつか方法が考えられます。
  1. サマリバッファからスパムコマンドを実行する。これは同期でも非同期でも実行することができるとおもいますが、mewからスパムコマンドを呼び出すlispをどう書くかによります。
  2. 一旦ローカルマシンにメールをもってきてスパムフィルタにかける。
  3. POPを理解するスパムフィルタをメールサーバとmewの間にはさむ。このタイプのスパムフィルタにはPOPFileやbsfilterなどがあります。 bsfilterをつかった場合の設定は、たとえば次のようになります。
  • スパムフィルタの起動
    % bsfilter --pop --pop-proxy-if 127.0.0.1 ?
               --pop-proxy-set POPSERVER:110:127.0.0.1:10110 ?
               --auto-update --insert-flag --insert-probability
  • .mewの設定
    (setq mew-pop-proxy-server "localhost")
    (setq mew-pop-proxy-port  "10110")
    (defun mew-bsfilter (val)
       (let ((case-fold-search t))
          (if (string-match "yes" val) "+spam")))
    (setq mew-scan-fields (delete mew-spam: mew-scan-fields))
    (setq mew-scan-fields (delete "Body" mew-scan-fields))
    (setq mew-spam: "X-Spam-Flag:")
    (setq mew-scan-fields (append mew-scan-fields (list mew-spam: "Body")))
    (setq mew-inbox-action-alist
          '(("X-Spam-Flag:" mew-bsfilter)))
  • .mewの設定 for Mew5
    (setq mew-pop-proxy-server "localhost")
    (setq mew-pop-proxy-port  "10110")
    (defun mew-bsfilter (val)
       (let ((case-fold-search t))
          (if (string-match "yes" val) "+spam")))
    (setq mew-spam: "X-Spam-Flag:")
    (setq mew-inbox-action-alist
          '(("X-Spam-Flag:" mew-bsfilter)))

To:やCc:の4つ目以降が...と省略されてしまいます。

  • [Q] To:やCc:の4つ目以降が...と省略されてしまいます。
  • [A] z vで表示がトグルされます。省略の個数や省略表示の有無を変えたいときには以下の変数を設定します。
    (setq mew-use-header-veil nil)
    (setq mew-header-veil-count 10)

+foo/bar,+foo/bazにrefileしたいが,+fooにはrefileしたくない.

  • [Q] +foo/bar,+foo/bazにrefileしたいが,+fooにはrefileしたくない.
  • [A] 以下の設定を入れると,中間のフォルダがrefileの候補にならなくなります.
    (setq mew-use-node-folder nil)
    (setq mew-use-fast-refile t)

Summaryバッファにメッセージ番号を表示したいのですが。

  • [Q] Summaryバッファにメッセージ番号を表示したいのですが。
  • [A] mew-summary-formをカスタマイズします。 但し、メッセージ番号を入れるようカスタマイズした場合には、番号が桁溢れしたり、Virtualモードでの番号を決めたりといったことへのケアはありません。[mew-dist 23205]
(defun mew-summary-form-num ()
  (MEW-NUM))

(setq mew-summary-form
      `((-5 num) type (5 date) " " (14 from) " " t (30 subj)
        ,mew-summary-form-body-starter (0 body)))

MLからの接頭文字列を抑制したいのですが。

  • [Q] Summaryバッファに本文が表示されるようになったので、MLの[mew-dist xxxx]というSubject:の接頭文字列は,Subject:表示領域の大半を占めて嫌です。
  • [A] mew-summary-form-listをカスタマイズします。[mew-dist 23370](改)
(setq mew-summary-form-body-starter "|")
(setq mew-summary-form-list
      `(("[+]??(draft??|queue??|postq??)"
         (type (5 date) " " (14 from) " " t (26 subj)
          ,mew-summary-form-body-starter (0 body)))
        (t
         (type (5 date) " " (14 from) " " t (26 my-subj)
          ,mew-summary-form-body-starter (0 body)))))
(defun mew-summary-form-my-subj ()
  "A function to return simplified Subject:."
  (let ((subj (mew-summary-form-subj)))
    ;; remove ML label
    (while (string-match "^??(Re: *??)*??([[(][a-zA-Z0-9._-]+[ :,][0-9]+[])] *??)" subj)
      (setq subj (concat (substring subj 0 (match-beginning 2))
                         (substring subj (match-end 2)))))
    ;; remove Re: Re: ...
    (while (string-match "^??(Re: *??)??(Re: *??)+" subj)
      (setq subj (concat (substring subj 0 (match-beginning 2))
                         (substring subj (match-end 2)))))
    ;; remove (was...)
    (while (string-match (concat "^.*??(" mew-was-regex "??)") subj)
      (setq subj (substring subj 0 (match-beginning 1))))
    subj))

大きなファイルを分割送信したい。

[mew-dist 23538]
(imputを利用)


全部のフォルダの .mew-summary を一気に更新したい。

  • [Q] 全部のフォルダの .mew-summary を一気に更新したい。
  • [A] [mew-dist 21213] で出来ます。ただし、以下の変数を設定してください。
(setq mew-touch-folder-p t)
(setq file-writable-p t)

Mew 3 と Mew 4 の共存

  • [Q] Mew 3 と Mew 4 は共存できますか?
  • [A] はい、できます。Mew 3 と Mew 4 のそれぞれの *.el/*.elc を別のディレクトリにインストールしてください。そして、起動したい Mew が load-path に入るようにすればよいでしょう。共存できるのは、以下のような方針が採られているからです。
    • Mew 4 では、Mew 3 で利用している変数を別の意味で再利用していません。必ず新しい変数を導入しています。たとえば、mew-scan-form* は mew-summary-form* という名前に変更されています。
    • Mew 3 の mewls は、Mew 4 では mewl と名前が変っています。これは、要求される機能が変ったためです。
    • Summary モードのキャッシュファイルも Mew 3 では .mew-cache でしたが、Mew 4 では .mew-summary になりました。

Summary に表示される本文の対象範囲を拡大したい

  • [Q] 大量の引用行等の後で本文が始まると、summary に本文が表示されないことがある。本文を探す対象範囲を拡大できないか?
  • [A] (setq mew-scan-max-body-length 30) のように何行までを探索範囲とするかを設定できます。(デフォルト値は 20 です。)値を大きくすると、多くの行を扱えるようにはなりますが、その分 scan 速度が低下することになります。

"j" (mew-summary-goto-line)を有効に利用するには

  • [Q] summary モードで "j" を使おうとしますが、目的とするメッセージの行番号がわかりません。
  • [A] setnu.el ( http://www.wonderworks.com/ ) や wb-line-number ( http://homepage1.nifty.com/blankspace/emacs/wb-line-number.html ) などを併用すると良いでしょう。ただし、setnu.el には「メッセージの削除」や「メッセージの移動」を行うと表示が乱れるという問題があります。乱れた場合は、一旦 setnu 機能を off->on すれば正常に戻ります。

Messageバッファに表示されるヘッダを減らしたい

  • [Q] 最近M$系のUAが付加していると思われる、Thread-ほげ なるヘッダをMessageバッファから消したい。
  • [A] mew-field-specにこれらのヘッダ情報を追加して「非表示」設定にすれば見えなくなり(上に隠れ)ます。
    (mew-dist 11406参照)
    (mew-insert-after mew-field-spec '("^Thread-" nil) "^Status:$")
    (mew-insert-after mew-field-spec '("^Importance" nil) "^Status:$")

Message バッファにある URL をクリックしてもカーソルが移動しないようにしたい

  • [Q] Message バッファにある URL をクリックすると Summary バッファにあったカーソルが Message バッファに移動してしまうのですがこれを抑制する方法はありますか?
  • [A] ~/.mew に以下のように書くと URL をクリックしてもカーソルは Summary バッファにあるままとなり非常に便利です(emacs-22.0.50 で確認)。
(defun my-browse-url-at-mouse (event)
 (interactive "e")
 (let ((buf (current-buffer)))
   (browse-url-at-mouse event)
   (pop-to-buffer buf)))
(define-key mew-message-mode-map [mouse-2] 'my-browse-url-at-mouse)

一部の emacs のバージョンや meadow では上記の設定が動かないかもしれません。その場合は以下の設定を試してみてください。

(or (featurep 'browse-url)
    (require 'browse-url))
(defun browse-url-at-mouse-fake (event)
  (interactive "e")
  (save-excursion
    (set-buffer (window-buffer (posn-window (event-start event))))
    (goto-char (posn-point (event-start event)))
    (browse-url-at-point)))
(defalias 'browse-url-at-mouse 'browse-url-at-mouse-fake)

※この機能は mew-4.2.51 で mew の側で取り入れられたので ~/.mew に個別に書く必要はなくなりました。

Message バッファ中で認識される URL の種類を増やしたい

  • [Q] URL の種類により Message バッファにある URL がハイライトされず、クリックしても何も起りません。 http://mew.org/ 等は希望通りに動くので、私が URL と考えるものの一部が Mew に URL と認識されないせいだと思います。 どうすれば認識されますか?
  • [A] ハイライトさせるためには mew-regex-url のカスタマイズが必要です。 クリックしたとき URL の種類に応じた動作をさせるためには thing-at-point-url-regexp のカスタマイズが必要です。 いずれも、ほんの少し Emacs-lisp の知識が必要です。
  • ハイライトさせる設定

    mew-regex-url は mew4 の mew-vars.el で定義された変数です。 まず describe-variable 等で、現在の値を確認してください。 例えば以下の内容です。 (本当は、途中で改行されていません)

    "\\b\\(s?https?\\|ftp\\|file\\|gopher\\|news\\|telnet\\|wais\\|mailto\\):
    \\(//[-a-zA-Z0-9_.]+:[0-9]*\\)?[-a-zA-Z0-9_=?#$@~`%&*+|\\/.,:;]*[-a-zA-Z0-9_=#$@~`%&*+|\\/]"
    この正規表現にマッチする文字列が URL としてハイライトされます。 ~/.mew.el で希望する内容を setq してください。 例えば Notes:///XXXXXXXXX/XXXXXXXXX をURLとしてハイライトさせる場合は以下の様に「\\|notes」を現在値に追加すればいいです。 (2行目と 3行目は、本当は 1行です。 空白も入れずに続けます)
    (setq mew-regex-url
     "\\b\\(s?https?\\|ftp\\|file\\|gopher\\|news\\|telnet\\|wais\\|mailto\\|notes\\):
      \\(//[-a-zA-Z0-9_.]+:[0-9]*\\)?[-a-zA-Z0-9_=?#$@~`%&*+|\\/.,:;]*[-a-zA-Z0-9_=#$@~`%&*+|\\/]")
  • クリックで動作させる設定

    thing-at-point-url-regexp は 各Emacs の thingatpt.el で定義された変数です。 describe-variable 等で現在の値を確認してください。 例えば以下の内容です。 (本当は、途中で改行されていません)

    "\\<\\(https?://\\|ftp://\\|gopher://\\|telnet://\\|wais://\\|file:/\\|s?news:\\|mailto://\\)
    [^]	\n \"'()<>[^`{}]*[^]	\n \"'()<>[^`{}.,;]+"
    mew 以外からも使用される場合に備えて ~/.emacs で setq する方が良いでしょう。 同じく Notes:///XXXXXXXXX/XXXXXXXXX を処理させる例です。(2行目と 3行目の間の改行・空白は削除)
    (setq thing-at-point-url-regexp
     "\\<\\(https?://\\|ftp://\\|gopher://\\|telnet://\\|wais://\\|file:/\\|s?news:\\|mailto:\\|notes:///\\)
      [^]	\n \"'()<>[^`{}]*[^]	\n \"'()<>[^`{}.,;]+")
    この例の様に protocol 部分だけの変更なら、以下の方が良いかも知れません。
    (eval-after-load "thingatpt"
     `(progn
       (setq thing-at-point-url-regexp
        (concat
         "\\<\\(https?://\\|ftp://\\|gopher://\\|telnet://\\|wais://\\|file:/\\|s?news:\\|mailto:\\|notes:///\\)"
     thing-at-point-url-path-regexp))))

Mac OS X の Universal Binary を作るには?

configure, make 時に次のような引数を与えます。

env CFLAGS="-arch i386 -arch ppc -isysroot /Developer/SDKs/MacOSX10.4u.sdk" ./configure
make LDFLAGS="-arch i386 -arch ppc -isysroot /Developer/SDKs/MacOSX10.4u.sdk"
make info jinfo install install-jinfo
	

"*"や"$"マーク後のフォーカスに「next」を適用したい

  • [Q] サマリモードで、"*"や"$"マークを行なうと、フォーカスはその行に留まります。連続してマークしたい場合に不便なので、"o"や"D"マークのように「next」を適用したいのですが、どうしたらよいでしょうか?
  • [A] mew-mark-afterstep-spec をカスタマイズしてください。たとえば以下のようにします。
(mew-replace-with
 mew-mark-afterstep-spec
 (list mew-mark-review 2 0 0 0 0 0 0)
 mew-mark-review)

Mew

* Mewのコンテンツ

最新の20件

2020-03-02 2014-10-06 2014-07-25 2014-07-17 2014-07-03 2013-11-23 2009-10-30 2009-06-11 2009-04-10 2009-01-31 2008-12-16 2007-09-18
  • Mew4FAQ
2006-11-13 2006-05-24 2005-09-24

人気の10件

  • counter: 73736
  • today: 1
  • yesterday: 0
  • online: 1