MH-E: set default-directory to HOME on entry

* lisp/mh-e/mh-e.el (mh-default-directory, mh-set-default-directory):
New variable (defaults to "~/"), new function to use it.
* lisp/mh-e/mh-folder.el (mh-rmail, mh-nmail): Call
mh-set-default-directory on entry to MH-E (closes: bug#77263).
This commit is contained in:
Stephen Gildea 2025-03-27 14:54:47 -07:00
parent 364c3dbc12
commit 01f4a0cb6c
2 changed files with 17 additions and 3 deletions

View file

@ -144,6 +144,10 @@ This directory contains, among other things, the mhl program.")
;;;###autoload
(put 'mh-lib-progs 'risky-local-variable t)
(defvar mh-default-directory "~/"
"Default directory for MH-E folder buffers.
Set to nil to have MH-E buffers inherit default-directory.")
;; Profile Components
(defvar mh-draft-folder nil
@ -438,6 +442,12 @@ gnus-version)
(error "Bad element: %s" element))))
new-list))
(defun mh-set-default-directory ()
"Set `default-directory' to `mh-default-directory' unless it is nil."
(when (stringp mh-default-directory)
(setq default-directory (file-name-as-directory
(expand-file-name mh-default-directory)))))
;;; MH-E Process Support

View file

@ -51,9 +51,12 @@ the MH mail system."
(interactive "P")
(mh-find-path)
(if arg
(call-interactively 'mh-visit-folder)
(progn
(call-interactively 'mh-visit-folder)
(mh-set-default-directory))
(unless (get-buffer mh-inbox)
(mh-visit-folder mh-inbox (symbol-name mh-unseen-seq)))
(mh-visit-folder mh-inbox (symbol-name mh-unseen-seq))
(mh-set-default-directory))
(mh-inc-folder)))
;;;###autoload
@ -67,7 +70,8 @@ the MH mail system."
(mh-find-path) ; init mh-inbox
(if arg
(call-interactively 'mh-visit-folder)
(mh-visit-folder mh-inbox)))
(mh-visit-folder mh-inbox))
(mh-set-default-directory))
;;; Desktop Integration