From d76871064e653ab5d23a4e0e6b2272cb46a1cf99 Mon Sep 17 00:00:00 2001 From: yamaoka Date: Fri, 13 Jul 2001 03:49:25 +0000 Subject: [PATCH] Synch with Oort Gnus. --- lisp/ChangeLog | 6 ++++++ lisp/mm-decode.el | 31 ++++++++++++++++++++++++------- 2 files changed, 30 insertions(+), 7 deletions(-) diff --git a/lisp/ChangeLog b/lisp/ChangeLog index 7505091..3f17a18 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -1,3 +1,9 @@ +2001-07-12 15:00:00 ShengHuo ZHU + + * mm-decode.el (mm-external-terminal-program): New variable. + (mm-display-external): Use it. Use term to display when no + window-system. + 2001-07-12 Bj,Av(Brn Torkelsson * gnus-srvr.el (gnus-browse-make-menu-bar): Changed one of the diff --git a/lisp/mm-decode.el b/lisp/mm-decode.el index 78d0cb1..ff89739 100644 --- a/lisp/mm-decode.el +++ b/lisp/mm-decode.el @@ -35,7 +35,8 @@ (require 'mail-parse) (require 'gnus-mailcap) (require 'mm-bodies) -(eval-when-compile (require 'cl)) +(eval-when-compile (require 'cl) + (require 'term)) (eval-and-compile (autoload 'mm-inline-partial "mm-partial") @@ -278,6 +279,11 @@ If not set, `default-directory' will be used." :type 'directory :group 'mime-display) +(defcustom mm-external-terminal-program "xterm" + "The program to start an external terminal." + :type 'string + :group 'mime-display) + ;;; Internal variables. (defvar mm-dissection-list nil) @@ -617,12 +623,23 @@ external if displayed external." (message "Viewing with %s" method) (cond (needsterm (unwind-protect - (start-process "*display*" nil - "xterm" - "-e" shell-file-name - shell-command-switch - (mm-mailcap-command - method file (mm-handle-type handle))) + (if window-system + (start-process "*display*" nil + mm-external-terminal-program + "-e" shell-file-name + shell-command-switch + (mm-mailcap-command + method file (mm-handle-type handle))) + (require 'term) + (switch-to-buffer + (make-term "display" + shell-file-name + nil + shell-command-switch + (mm-mailcap-command + method file (mm-handle-type handle)))) + (term-mode) + (term-char-mode)) (mm-handle-set-external-undisplayer handle (cons file buffer))) (message "Displaying %s..." (format method file)) 'external) -- 1.7.10.4