(defvar letter-mode-init-done nil
  "Non-nil when one-time mh-e settings have made.")

(defun my-mh-letter-mode-hook ()
  "Hook to prepare letter for editing."
  (if (not letter-mode-init-done)	; only need to bind the keys once
      (progn
        ;; add-enriched-text defined in Example 19-5.
        (local-set-key "\C-c\C-tb" 'add-enriched-text)
        (local-set-key "\C-c\C-ti" 'add-enriched-text)
        (local-set-key "\C-c\C-tf" 'add-enriched-text)
        (local-set-key "\C-c\C-ts" 'add-enriched-text)
        (local-set-key "\C-c\C-tB" 'add-enriched-text)
        (local-set-key "\C-c\C-tu" 'add-enriched-text)
        (local-set-key "\C-c\C-tc" 'add-enriched-text)
        (setq letter-mode-init-done t)))
  (setq fill-prefix "  ")		; I find indented text easier to read
  (goto-char (point-max))		; go to end of message to
  (mh-insert-signature)			;   insert signature
  (beginning-of-buffer)			; go to beginning of message
  ;;; Emacs 19
  (search-forward-regexp "^$"))		;   and then past header
  ;;; Emacs 18
  ;;;   (re-search-forward "^$"))

(add-hook 'mh-letter-mode-hook 'my-mh-letter-mode-hook)
