From mboxrd@z Thu Jan 1 00:00:00 1970 X-Msuck: nntp://news.gmane.io/gmane.emacs.gnus.general/68759 Path: news.gmane.org!not-for-mail From: Reiner Steib Newsgroups: gmane.emacs.devel,gmane.emacs.gnus.general Subject: Differences between mail-mode and message-mode (was: message-mode is now default?) Date: Sun, 19 Jul 2009 13:41:32 +0200 Message-ID: <874ot8zyqb.fsf@marauder.physik.uni-ulm.de> References: <878wimdbzp.fsf@catnip.gol.com> <87tz1av8ik.fsf@bzg.ath.cx> <83vdlqp0rt.fsf@gnu.org> Reply-To: Reiner Steib NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Trace: ger.gmane.org 1248003724 22719 80.91.229.12 (19 Jul 2009 11:42:04 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Sun, 19 Jul 2009 11:42:04 +0000 (UTC) Cc: ding@gnus.org, emacs-devel@gnu.org To: Eli Zaretskii Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Sun Jul 19 13:41:56 2009 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([199.232.76.165]) by lo.gmane.org with esmtp (Exim 4.50) id 1MSUmA-0003gH-T6 for ged-emacs-devel@m.gmane.org; Sun, 19 Jul 2009 13:41:55 +0200 Original-Received: from localhost ([127.0.0.1]:52991 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1MSUm9-0006rv-WB for ged-emacs-devel@m.gmane.org; Sun, 19 Jul 2009 07:41:54 -0400 Original-Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1MSUm4-0006ql-Rd for emacs-devel@gnu.org; Sun, 19 Jul 2009 07:41:48 -0400 Original-Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1MSUm0-0006n7-37 for emacs-devel@gnu.org; Sun, 19 Jul 2009 07:41:48 -0400 Original-Received: from [199.232.76.173] (port=44046 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1MSUlz-0006n4-Vl for emacs-devel@gnu.org; Sun, 19 Jul 2009 07:41:43 -0400 Original-Received: from mail.uni-ulm.de ([134.60.1.11]:32898) by monty-python.gnu.org with esmtps (TLS-1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.60) (envelope-from ) id 1MSUlv-0005Hv-RO; Sun, 19 Jul 2009 07:41:40 -0400 Original-Received: from bridgekeeper.physik.uni-ulm.de (bridgekeeper.physik.uni-ulm.de [134.60.10.175]) by mail.uni-ulm.de (8.14.2/8.14.2) with ESMTP id n6JBfZix009749; Sun, 19 Jul 2009 13:41:35 +0200 (MEST) Original-Received: from localhost (localhost [127.0.0.1]) by bridgekeeper.physik.uni-ulm.de (Postfix) with ESMTP id 0484F138FC; Sun, 19 Jul 2009 13:41:35 +0200 (CEST) X-Face: P05mdcZT&lL[-s2=mw~RsllZ0zZAb?vdE}.s, emacs-devel@gnu.org, ding@gnus.org User-Agent: Gnus/5.110011 (No Gnus v0.11) Emacs/22.1 (gnu/linux) X-DCC-debian-Metrics: poseidon 1169; Body=3 Fuz1=3 Fuz2=3 X-Virus-Scanned: by amavisd-new X-detected-operating-system: by monty-python.gnu.org: Genre and OS details not recognized. X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.devel:112747 gmane.emacs.gnus.general:68759 Archived-At: On Sat, Jul 18 2009, Eli Zaretskii wrote: > I had a few spare moments, so I compared mail-mode and message-mode. > The differences I found are below. > > Disclaimers: > > Please note that I don't necessarily think all of them should be > changed to match mail-mode, in order for message-mode to be > compatible. But I do think they all need to be _considered_. Thanks for your analysis. No matter in which direction a change will go, this list will be a good basis for NEWS entries (either for mail-mode or message-mode users). > I also don't pretend to have found all the important differences, > nor that all my conclusions below are correct. > Finally, what's below is based on inspection of the *Help* buffer > and defcustoms; I didn't actually try using message-mode, and > don't know anything about it, except what I saw just now. > > Here's what I found: [ key bindings ] Obviously the key bindings cannot be resolved without a change for either mail-mode or message-mode users. Maybe set the bindings depending on some compatibility variable? > . In mail-mode C-c C-f C-f moves to FCC; in message-mode C-c C-f C-f > moves to Followup-To, and C-c C-f C-w moves to FCC. > > . In mail-mode C-c C-f C-a moves to Mail-Reply-To; in message-mode > C-c C-f C-a runs the command > `message-generate-unsubscribed-mail-followup-to' and there doesn't > seem to be a command to move to Mail-Reply-To. > > . In mail-mode C-c C-f C-l moves to Mail-Followup-To; in message-mode > C-c C-f C-m moves to Mail-Followup-To and C-c C-f C-l is undefined > > . In mail-mode C-c C-t moves to message text; in message-mode this is > on C-c C-b, while C-c C-t runs `message-insert-to'. > > . In mail-mode C-c C-v runs `mail-sent-via'; in message-mode it runs > `message-delete-not-region'. What is "Sent-Via" about? Neither Google nor grepping through the RFCs gave me any useful result. [1] > . mail-mode runs `text-mode-hook' and `mail-mode-hook'; message-mode > says it runs `message-mode-hook' "in addition to any hooks its > parent mode `text-mode' might have run" -- it isn't clear to me if > these two are compatible wrt what text-mode does. This text is from `derived-mode-make-docstring'. message-mode is derived from text-mode. > . message-mode overrides the following global key bindings: > > - C-a runs `message-beginning-of-line' This is somewhat similar to C-a in the minibuffer. If you want to move beyond the mail header (e.g. "Subject: "), just press C-a again. > - TAB runs `message-tab' `message-tab' expand partially typed headers, cf. `message-completion-alist'. > - M-; runs `comment-region' AFAICS, in mail-mode, `M-;' runs `comment-dwim', which first asks for a comment syntax since none is defined. > . message-mode's default value of `message-generate-new-buffers' > seems to generate buffer names in a way that is different from what > mail-mode does. AFAICS, if I do `M-x message-mail RET', I get also get a "*mail*" buffer. > . message-mode's default value of `message-fill-column' overrides the > global value of `fill-column'. I used the recommendation from the relevant RFCs or GNKSA docs, IIRC. Unlike `fill-column' which affects the user (and his co-workers, ...), the fill column in mails (and news) should try to make sense for the recipients. > . mail-mode uses `mail-setup-hook'; message-mode uses > `message-setup-hook'. On Sat, Jul 18 2009, Miles Bader wrote: | One issue, of course is hook names; would it work to simply have | message-mode use the mail-mode hooks directly, and use variable-aliasing | to accommodate people that use the message-foo-hook names? Miles, is `defvaralias' what you have in mind? @@ -905,12 +923,13 @@ (defcustom message-setup-hook nil "Normal hook, run each time a new outgoing message is initialized. The function `message-setup' runs this hook." [...] +(defvaralias 'mail-setup-hook 'message-setup-hook) [...] > . mail-mode uses `mail-yank-hooks'; message-mode doesn't appear to > have such a facility. ,---- | ;; FIXME make it really obsolete. | (defvar mail-yank-hooks nil | "Obsolete hook for modifying a citation just inserted in the mail buffer. | Each hook function can find the citation between (point) and (mark t). | And each hook function should leave point and mark around the citation | text as modified. | | This is a normal hook, misnamed for historical reasons. | It is semi-obsolete and mail agents should no longer use it.") `---- Should we care about it if is obsolete? > . message-mode's default value of `message-citation-line-format' > seems to produce different results compared to what `r' in Rmail > produces. AFAICS, `r' doesn't cite at all and produce not citation line (neither does `C-c C-y' (`mail-yank-original'). > . message-mode's default values of `message-yank-cited-prefix' and > `message-yank-empty-prefix' are different from the results produced > by the default value of `mail-yank-prefix', and the names of the > options are also different. You mean the indentation? I think message mode's default are much better. > . message-mode's default value of `message-signature' is different > from mail-mode's `mail-signature', I think using ~/.signature by default is reasonable. > and the names of the options are different. See above -> Alias? > . mail-mode uses `mail-signature-file'; message-mode uses > `message-signature-file'. See above -> Alias? > . mail-mode uses `mail-default-directory' for auto-saving mail > buffers; message-mode uses `message-auto-save-directory', See above -> Alias? > and the default values are also different. message-mode tries to write all it's files under ~/Mail . Many users like to sync their mail stuff between different computers. message-mode's default makes this easier. > . mail-mode uses `mail-mode-syntax-table'; message-mode uses > `message-mode-syntax-table. The default values are also > different. I don't know why message mode additionally contains `>' and `<'. message-mode also copies `text-mode-syntax-table'. > . mail-mode uses `mail-send-hook'; message-mode uses > `message-send-mail-hook' and `message-send-hook'. See above -> Alias? > . mail-mode's `mail-bury' tries to show the Rmail buffer if > `mail-bury-selects-summary' is non-nil. message-mode's > `message-bury' doesn't seem to have a comparable feature. (This is > important when reading mail on a text terminal.) Probably we should call code like `mail-bury' to `message-bury' if `rmail-summary-buffer' is non-nil. > . message-mode doesn't seem to have an equivalent of `mail-use-dsn'. We could add the `mail-use-dsn' code to `message-send-mail-with-sendmail'. Bye, Reiner. [1] http://www.google.com/search?q=%2B"Sent-Via"+mail+header+rfc $ dpkg -l 'doc-rfc-*' [...] ii doc-rfc-0001-0999 20030621-1 Other RFCs ii doc-rfc-1000-1999 20030621-1 Other RFCs ii doc-rfc-2000-2999 20030621-1 Other RFCs ii doc-rfc-3000-3999 20030621-1 Other RFCs ii doc-rfc-experimental 20030621-1 Experimental RFCs ii doc-rfc-fyi-bcp 20030621-1 FYI and BCP RFCs ii doc-rfc-misc 20030621-1 Miscellaneous RFCs ii doc-rfc-old-std 20030621-1 Old Standard RFCs ii doc-rfc-std 20030621-1 Standard RFCs ii doc-rfc-std-proposed 20030621-1 Proposed Standard RFCs /usr/share/doc/RFC$ zgrep -ie Sent-Via */*.txt.gz /usr/share/doc/RFC$ -- ,,, (o o) ---ooO-(_)-Ooo--- | PGP key available | http://rsteib.home.pages.de/