* wl-vars.el (wl-from): Changed default value.
* wl-util.el (toplevel): Don't require tm-edit.
* wl-draft.el (wl-draft): Changed order of `elmo-init' and
`wl-folder-init';
Don't set mark on mail body.
(wl-draft-reedit): Ditto.
* wl-address.el (wl-address-quote-specials): Define as an alias for
elmo-address-quote-specials.
* elmo-util.el (elmo-address-quote-specials): New function;
Renamed from `wl-address-quote-specials'.
+2001-09-20  Yuuichi Teranishi  <teranisi@gohome.org>
+
+       * elmo-util.el (elmo-address-quote-specials): New function;
+       Renamed from `wl-address-quote-specials'.
+
 2001-09-18  TAKAHASHI Kaoru  <kaoru@kaisei.org>
 
        * elmo-version.el (elmo-version): Up to 2.7.4.
 
     (defalias 'elmo-field-body 'std11-fetch-field) ;;no narrow-to-region
   (defalias 'elmo-field-body 'std11-field-body))
 
+(defun elmo-address-quote-specials (word)
+  "Make quoted string of WORD if needed."
+  (let ((lal (std11-lexical-analyze word)))
+    (if (or (assq 'specials lal)
+           (assq 'domain-literal lal))
+       (prin1-to-string word)
+      word)))
+
 (defmacro elmo-string (string)
   "STRING without text property."
   (` (let ((obj (copy-sequence (, string))))
 
+2001-09-20  Yuuichi Teranishi  <teranisi@gohome.org>
+
+       * wl.el (wl-check-environment): Undo last change.
+
+       * wl-vars.el (wl-from): Changed default value.
+
+       * wl-util.el (toplevel): Don't require tm-edit.
+
+       * wl-draft.el (wl-draft): Changed order of `elmo-init' and
+       `wl-folder-init';
+       Don't set mark on mail body.
+       (wl-draft-reedit): Ditto.
+
+       * wl-address.el (wl-address-quote-specials): Define as an alias for
+       elmo-address-quote-specials.
+
 2001-09-18  Yuuichi Teranishi  <teranisi@gohome.org>
 
        * wl.el (wl-check-environment): If `wl-from' is nil, use default value.
 
        (completing-read "To: " cl)
       (read-string "To: "))))
 
-(defun wl-address-quote-specials (word)
-  "Make quoted string of WORD if needed."
-  (let ((lal (std11-lexical-analyze word)))
-    (if (or (assq 'specials lal)
-           (assq 'domain-literal lal))
-       (prin1-to-string word)
-      word)))
+(defalias 'wl-address-quote-specials 'elmo-address-quote-specials)
 
 (defun wl-address-make-completion-list (address-list)
   (let (addr-tuple cl)
 
     (require 'wl))
   (unless wl-init
     (wl-load-profile)
-    (elmo-init)
-    (wl-folder-init))
-  (wl-init) ;; returns immediately if already initialized.
+    (wl-folder-init)
+    (elmo-init))
+  (wl-init) ; returns immediately if already initialized.
   (if (interactive-p)
       (setq summary-buf (wl-summary-get-buffer (wl-summary-buffer-folder-name))))
   (let ((draft-folder (wl-folder-get-elmo-folder wl-draft-folder))
                           (1- (point)))
                         'category 'mail-header-separator)
       (and body (insert body)))
-    (push-mark (point) t t)
     (as-binary-output-file
      (write-region (point-min)(point-max) wl-draft-buffer-file-name
                   nil t))
     (goto-char (point-min))
     (or (re-search-forward "\n\n" nil t)
        (search-forward (concat mail-header-separator "\n") nil t))
-    (push-mark (point) t t)
     (write-region (point-min)(point-max) wl-draft-buffer-file-name
                  nil t)
     (wl-draft-overload-functions)
 
 (eval-when-compile
   (require 'elmo-util))
 
-(condition-case nil (require 'tm-edit) (error nil))
 (condition-case nil (require 'pp) (error nil))
 
 (eval-when-compile
 
 (defvar wl-use-semi (module-installed-p 'mime-view) ; If nil, use tm.
   "*Use SEMI or not.")
 
-(defcustom wl-from nil
+(defcustom wl-from (and user-mail-address
+                       (concat (and user-full-name
+                                    (concat (elmo-address-quote-specials
+                                             user-full-name)
+                                            " "))
+                               "<" user-mail-address ">"))
   "*From string used in draft."
-  :type  '(choice (const :tag "Use default value" nil)
-                 string)
+  :type  'string
   :group 'wl
   :group 'wl-setting)
 
 
     (run-hooks 'wl-init-hook)))
 
 (defun wl-check-environment (no-check-folder)
-  (unless wl-from
-    (setq wl-from
-         (concat (wl-address-quote-specials (user-full-name))
-                 " <" user-mail-address ">")))
+  (unless wl-from (error "Please set `wl-from'"))
   ;; Message-ID
   (unless (string-match "[^.]\\.[^.]" (or wl-message-id-domain
                                          (if wl-local-domain