From: yamaoka Date: Tue, 26 Jan 1999 22:04:25 +0000 (+0000) Subject: * Sync up with the latest semi-1_13. X-Git-Tag: wemi-199901271900 X-Git-Url: http://git.chise.org/gitweb/?a=commitdiff_plain;h=1f479a412d1dc32f43c7ed9c2916c82077ada0bb;p=elisp%2Fsemi.git * Sync up with the latest semi-1_13. --- diff --git a/ChangeLog b/ChangeLog index 78906ba..6bc7c1d 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,30 @@ 1999-01-26 Katsumi Yamaoka + * README.en: Notice that 1.12.5 or later of FLIM is required. + +1999-01-26 MORIOKA Tomohiko + + * mime-play.el (mime-preview-play-current-entity): Add autoload + cookie. + (mime-play-entity): Likewise. + + * mime-view.el (mime-display-message): Add autoload cookie; add + DOC-string. + (mime-view-buffer): Add autoload cookie. + +1999-01-26 MORIOKA Tomohiko + + * mime-play.el (mime-reduce-acting-situation-examples): New + implementation. + +1999-01-26 MORIOKA Tomohiko + + * mime-play.el (mime-view-caesar): Select window which displays + current-buffer if it is not selected . + +1999-01-26 Katsumi Yamaoka + * mime-edit.el (mime-edit-decode-single-part-in-buffer): Limit the search bound for the end of "Content-Transfer-Encoding" field. diff --git a/README.en b/README.en index ef81d3f..62495bb 100644 --- a/README.en +++ b/README.en @@ -44,7 +44,7 @@ Required environment 19.14. WEMI also does not support Emacs 19.29 to 19.34, XEmacs 19.15 or XEmacs 20.2 without mule, but WEMI may work with them. - SEMI requires APEL (9.11 or later) and FLIM (1.12.4 or later) + SEMI requires APEL (9.11 or later) and FLIM (1.12.5 or later) package. Please install them before installing it. APEL package is available at: diff --git a/mime-play.el b/mime-play.el index 66e38f3..aa025df 100644 --- a/mime-play.el +++ b/mime-play.el @@ -64,56 +64,91 @@ (add-hook 'kill-emacs-hook 'mime-save-acting-situation-examples) (defun mime-reduce-acting-situation-examples () - (let* ((rest mime-acting-situation-example-list) - (min-example (car rest)) - (min-score (cdr min-example))) - (while rest - (let* ((example (car rest)) - (score (cdr example))) - (cond ((< score min-score) - (setq min-score score - min-example example) - ) - ((= score min-score) - (if (<= (length (car example))(length (car min-example))) - (setq min-example example) - )) - )) - (setq rest (cdr rest))) - (setq mime-acting-situation-example-list - (delq min-example mime-acting-situation-example-list)) - (setq min-example (car min-example)) - (let ((examples mime-acting-situation-example-list) - (max-score 0) - max-examples) - (while examples - (let* ((ret (mime-compare-situation-with-example min-example - (caar examples))) - (ret-score (car ret))) - (cond ((> ret-score max-score) - (setq max-score ret-score - max-examples (list (cdr ret))) + (let ((len (length mime-acting-situation-example-list)) + i ir ic j jr jc ret + dest d-i d-j + (max-sim 0) sim + min-det-ret det-ret + min-det-org det-org + min-freq freq) + (setq i 0 + ir mime-acting-situation-example-list) + (while (< i len) + (setq ic (car ir) + j 0 + jr mime-acting-situation-example-list) + (while (< j len) + (unless (= i j) + (setq jc (car jr)) + (setq ret (mime-compare-situation-with-example (car ic)(car jc)) + sim (car ret) + det-ret (+ (length (car ic))(length (car jc))) + det-org (length (cdr ret)) + freq (+ (cdr ic)(cdr jc))) + (cond ((< max-sim sim) + (setq max-sim sim + min-det-ret det-ret + min-det-org det-org + min-freq freq + d-i i + d-j j + dest (cons (cdr ret) freq)) ) - ((= ret-score max-score) - (setq max-examples (cons (cdr ret) max-examples)) - ))) - (setq examples (cdr examples))) - (while max-examples - (let* ((example (car max-examples)) - (cell (assoc example mime-acting-situation-example-list))) - (if cell - (setcdr cell (1+ (cdr cell))) - (setq mime-acting-situation-example-list - (cons (cons example 0) - mime-acting-situation-example-list)) - )) - (setq max-examples (cdr max-examples)) - )))) + ((= max-sim sim) + (cond ((> min-det-ret det-ret) + (setq min-det-ret det-ret + min-det-org det-org + min-freq freq + d-i i + d-j j + dest (cons (cdr ret) freq)) + ) + ((= min-det-ret det-ret) + (cond ((> min-det-org det-org) + (setq min-det-org det-org + min-freq freq + d-i i + d-j j + dest (cons (cdr ret) freq)) + ) + ((= min-det-org det-org) + (cond ((> min-freq freq) + (setq min-freq freq + d-i i + d-j j + dest (cons (cdr ret) freq)) + )) + )) + )) + )) + ) + (setq jr (cdr jr) + j (1+ j))) + (setq ir (cdr ir) + i (1+ i))) + (if (> d-i d-j) + (setq i d-i + d-i d-j + d-j i)) + (setq jr (nthcdr (1- d-j) mime-acting-situation-example-list)) + (setcdr jr (cddr jr)) + (if (= d-i 0) + (setq mime-acting-situation-example-list + (cdr mime-acting-situation-example-list)) + (setq ir (nthcdr (1- d-i) mime-acting-situation-example-list)) + (setcdr ir (cddr ir)) + ) + (if (setq ir (assoc (car dest) mime-acting-situation-example-list)) + (setcdr ir (+ (cdr ir)(cdr dest))) + (setq mime-acting-situation-example-list + (cons dest mime-acting-situation-example-list)) + ))) ;;; @ content decoder ;;; +;;;###autoload (defun mime-preview-play-current-entity (&optional ignore-examples mode) "Play current entity. It decodes current entity to call internal or external method. The @@ -198,6 +233,7 @@ If MODE is specified, play as it. Default MODE is \"play\"." (cons match example) )) +;;;###autoload (defun mime-play-entity (entity &optional situation ignored-method) "Play entity specified by ENTITY. It decodes the entity to call internal or external method. The method @@ -670,7 +706,12 @@ It is registered to variable `mime-preview-quitting-method-alist'." (mule-caesar-region (point-min) (point-max)) (set-buffer-modified-p nil) ) + (let ((win (get-buffer-window (current-buffer)))) + (or (eq (selected-window) win) + (select-window (or win (get-largest-window))) + )) (view-buffer buf) + (goto-char (point-min)) )) diff --git a/mime-view.el b/mime-view.el index b59a27c..cc80b6e 100644 --- a/mime-view.el +++ b/mime-view.el @@ -934,8 +934,20 @@ MEDIA-TYPE must be (TYPE . SUBTYPE), TYPE or t. t means default." (defvar mime-view-redisplay nil) +;;;###autoload (defun mime-display-message (message &optional preview-buffer mother default-keymap-or-function) + "View MESSAGE in MIME-View mode. + +Optional argument PREVIEW-BUFFER specifies the buffer of the +presentation. It must be either nil or a name of preview buffer. + +Optional argument MOTHER specifies mother-buffer of the preview-buffer. + +Optional argument DEFAULT-KEYMAP-OR-FUNCTION is nil, keymap or +function. If it is a keymap, keymap of MIME-View mode will be added +to it. If it is a function, it will be bound as default binding of +keymap of MIME-View mode." (mime-maybe-hide-echo-buffer) (let ((win-conf (current-window-configuration)) (raw-buffer (mime-entity-buffer message))) @@ -981,6 +993,7 @@ MEDIA-TYPE must be (TYPE . SUBTYPE), TYPE or t. t means default." ))))) ))) +;;;###autoload (defun mime-view-buffer (&optional raw-buffer preview-buffer mother default-keymap-or-function representation-type)