; -*- Emacs Lisp -*- mew-1.95b27
(defun mew-summary-goto-folder (&optional arg fld)
(interactive "P")
(let* ((folder (or fld (mew-input-folder (mew-inbox-folder))))
(dir (mew-expand-folder folder))
new-folder)
(cond
((mew-folder-newsp folder)
(setq new-folder (mew-summary-switch-to-folder folder))
(mew-summary-ls t (or arg new-folder)))
((mew-folder-imapp folder)
(if (mew-folder-check folder)
(progn
(setq new-folder (mew-summary-switch-to-folder folder))
(mew-summary-ls t (or arg new-folder)))))
((mew-folder-virtualp folder)
(if (get-buffer folder)
(mew-summary-switch-to-folder folder)
(message "No such virtual folder: %s" folder)
(mew-folder-delete folder)))
(t ;; mail or local news
(if (null dir)
(message "Folder is wrong")
(if (not (file-directory-p dir))
(message "No such folder %s" folder)
(setq new-folder (mew-summary-switch-to-folder folder))
(mew-summary-ls t (or arg new-folder))))))))