X-Git-Url: https://code.delx.au/gnu-emacs/blobdiff_plain/fd5536d8e25c8de905a1a06ce96e8f0e233d9920..d235ca2ff8fab139ce797757fcb159d1e28fa7e0:/lisp/mh-e/mh-letter.el diff --git a/lisp/mh-e/mh-letter.el b/lisp/mh-e/mh-letter.el index 9d28ee4ec9..8b22d7dee0 100644 --- a/lisp/mh-e/mh-letter.el +++ b/lisp/mh-e/mh-letter.el @@ -1,7 +1,7 @@ ;;; mh-letter.el --- MH-Letter mode ;; Copyright (C) 1993, 1995, 1997, -;; 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. +;; 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc. ;; Author: Bill Wohler ;; Maintainer: Bill Wohler @@ -12,7 +12,7 @@ ;; GNU Emacs is free software; you can redistribute it and/or modify ;; it under the terms of the GNU General Public License as published by -;; the Free Software Foundation; either version 2, or (at your option) +;; the Free Software Foundation; either version 3, or (at your option) ;; any later version. ;; GNU Emacs is distributed in the hope that it will be useful, @@ -275,10 +275,8 @@ searching for `mh-mail-header-separator' in the buffer." ;;; MH-Letter Mode -(defvar mh-letter-buttons-init-flag nil) - ;; Shush compiler. -(eval-when-compile (mh-do-in-xemacs (defvar font-lock-defaults))) +(defvar font-lock-defaults) ; XEmacs ;; Ensure new buffers won't get this mode if default-major-mode is nil. (put 'mh-letter-mode 'mode-class 'special) @@ -312,12 +310,8 @@ order). (make-local-variable 'mh-sent-from-folder) (make-local-variable 'mh-sent-from-msg) (mh-do-in-gnu-emacs - (unless mh-letter-buttons-init-flag - (let ((load-path (mh-image-load-path-for-library "mh-e" "mh-logo.xpm")) - (image-load-path (mh-image-load-path-for-library - "mh-e" "mh-logo.xpm" 'image-load-path))) - (mh-tool-bar-letter-buttons-init) - (setq mh-letter-buttons-init-flag t))) + (unless mh-letter-tool-bar-map + (mh-tool-bar-letter-buttons-init)) (set (make-local-variable 'tool-bar-map) mh-letter-tool-bar-map)) (mh-do-in-xemacs (mh-tool-bar-init :letter)) @@ -399,24 +393,26 @@ message is not indented, and \"> \" is not inserted before each line. This command leaves the mark before the letter and point after it." (interactive (let* ((folder - (mh-prompt-for-folder "Message from" - mh-sent-from-folder nil)) + (mh-prompt-for-folder "Message from" mh-sent-from-folder nil)) (default - (if (and (equal folder mh-sent-from-folder) - (numberp mh-sent-from-msg)) - mh-sent-from-msg + (if (equal folder mh-sent-from-folder) + (or mh-sent-from-msg (nth 0 (mh-translate-range folder "cur"))) (nth 0 (mh-translate-range folder "cur")))) (message (read-string (concat "Message number" (or (and default (format " (default %d): " default)) - ": "))))) + ": ")) + nil nil + (if (numberp default) + (int-to-string default) + default)))) (list folder message current-prefix-arg))) + (if (equal message "") + (error "No message number given")) (save-restriction (narrow-to-region (point) (point)) (let ((start (point-min))) - (if (and (equal message "") (numberp mh-sent-from-msg)) - (setq message (int-to-string mh-sent-from-msg))) (insert-file-contents (expand-file-name message (mh-expand-file-name folder))) (when (not verbatim) @@ -848,7 +844,7 @@ body." (defun mh-position-on-field (field &optional ignored) "Move to the end of the FIELD in the header. Move to end of entire header if FIELD not found. -Returns non-nil iff FIELD was found. +Returns non-nil if FIELD was found. The optional second arg is for pre-version 4 compatibility and is IGNORED." (cond ((mh-goto-header-field field) @@ -870,15 +866,12 @@ downcasing the field name." "Do folder name completion in Fcc header field." (let* ((end (point)) (beg (mh-beginning-of-word)) - (folder (buffer-substring beg end)) + (folder (buffer-substring-no-properties beg end)) (leading-plus (and (> (length folder) 0) (equal (aref folder 0) ?+))) - (last-slash (mh-search-from-end ?/ folder)) - (prefix (and last-slash (substring folder 0 last-slash))) - (choices (mapcar #'(lambda (x) - (list (cond (prefix (format "%s/%s" prefix x)) - (leading-plus (format "+%s" x)) - (t x)))) + (choices (mapcar (lambda (x) (list x)) (mh-folder-completion-function folder nil t)))) + (unless leading-plus + (setq folder (concat "+" folder))) (mh-complete-word folder choices beg end))) ;;;###mh-autoload