Sync up with the latest semi-1_13. semi-pgpgpg_19
authoryamaoka <yamaoka>
Tue, 27 Jul 1999 06:26:13 +0000 (06:26 +0000)
committeryamaoka <yamaoka>
Tue, 27 Jul 1999 06:26:13 +0000 (06:26 +0000)
12 files changed:
ChangeLog
Makefile
NEWS
README.en
SEMI-CFG
SEMI-MK
VERSION
ftp.in
mime-edit.el
mime-play.el
mime-view.el
semi-def.el

index 75d3006..9b5ea79 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,62 @@
+1999-07-27  MORIOKA Tomohiko  <tomo@m17n.org>
+
+       * SEMI: Version 1.13.5 (Meih\e-Dò)\e-A released.
+
+1999-07-27  MORIOKA Tomohiko  <tomo@m17n.org>
+
+       * NEWS (Don't expect raw-buffer): New subsection.
+       (Now acting-method must not expect to run in raw-buffer): Changed
+       as a subsubsection of subsection `Don't expect raw-buffer'.
+       (Don't refer variable `mime-raw-buffer'): New subsubsection.
+       (Don't refer variable `mime-preview-buffer'): New subsubsection.
+
+       * NEWS (Requires FLIM 1.13 API): New subsection.
+
+1999-07-23  MORIOKA Tomohiko  <tomo@m17n.org>
+
+       * README.en (Required environment): Change required FLIM to
+       1.13.1; change location of APEL and FLIM.
+
+\f
+1999-07-22  MORIOKA Tomohiko  <tomo@m17n.org>
+
+       * REMI: Version 1.13.1 (Kubiki) released.
+
+1999-07-22  MORIOKA Tomohiko  <tomo@m17n.org>
+
+       * mime-play.el
+       (mime-preview-quitting-method-for-mime-show-message-mode): Don't
+       refer `mime-raw-buffer'.
+
+1999-07-21  MORIOKA Tomohiko  <tomo@m17n.org>
+
+       * mime-play.el (mime-store-message/partial-piece): Don't refer
+       `mime-preview-buffer'.
+
+\f
+1999-07-21  MORIOKA Tomohiko  <tomo@m17n.org>
+
+       * REMI: Version 1.13.0 (Saigata) released.
+
+1999-07-21  MORIOKA Tomohiko  <tomo@m17n.org>
+
+       * Makefile (EXEC_PREFIX): Deleted.
+       (elc): Change command-line interface to delete `EXEC_PREFIX'.
+       (install-elc): Likewise.
+
+       * SEMI-MK (config-semi): Change command-line interface to delete
+       `EXEC_PREFIX'.
+
+       * SEMI-CFG (EXEC_PREFIX): Deleted.
+
+1999-07-07  Daiki Ueno  <ueno@ueda.info.waseda.ac.jp>
+
+       * mime-edit.el (mime-edit-quitting-method): Don't refer
+       `mime-raw-buffer'.
+
+       * mime-view.el (mime-preview-follow-current-entity): Don't refer
+       `mime-raw-buffer'.
+
 1999-06-17  MORIOKA Tomohiko  <tomo@m17n.org>
 
        * mime-edit.el (mime-edit-user-agent-value): Modify for XEmacs
@@ -8,6 +67,23 @@
        * mime-edit.el (mime-edit-user-agent-value): Modify code to get
        version number of XEmacs. [cf. <tm-ja:4561>]
 
+1999-05-22  MORIOKA Tomohiko  <tomo@m17n.org>
+
+       * mime-view.el (mime-entity-situation): Don't refer `major-mode'
+       of a mime-entity-buffer.
+       (mime-display-multipart/mixed): Add `major-mode' of SITUATION to
+       default-situation of children.
+       (mime-display-multipart/alternative): Likewise.
+       (mime-display-entity): Don't refer `raw-buffer'; use
+       `mime-goto-header-start-point'.
+       (mime-display-message): Add new optional argument
+       `original-major-mode'; don't refer `raw-buffer'; use
+       `mime-entity-name' to make name of `preview-buffer'; don't set up
+       `mime-raw-buffer' of `preview-buffer'; use `original-major-mode'
+       as value of `major-mode' field of default-situation; don't pop up
+       `preview-buffer' in suitable window; return `preview-buffer'.
+       (mime-view-buffer): Pop up `preview-buffer' in suitable window.
+
 1999-05-31  Keiichi Suzuki  <keiichi@nanap.org>
 
        * mime-play.el (mime-show-echo-buffer): Bind `buffer-read-only' to
index b46e356..7c97557 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -4,7 +4,9 @@
 
 PACKAGE = semi
 API    = 1.13
-RELEASE = 4
+RELEASE = 5
+
+FLIM_API= 1.13
 
 TAR    = tar
 RM     = /bin/rm -f
@@ -15,7 +17,6 @@ XEMACS        = xemacs
 FLAGS   = -batch -q -no-site-file -l SEMI-MK
 
 PREFIX = NONE
-EXEC_PREFIX = NONE
 LISPDIR = NONE
 PACKAGEDIR = NONE
 VERSION_SPECIFIC_LISPDIR = NONE
@@ -23,18 +24,16 @@ VERSION_SPECIFIC_LISPDIR = NONE
 GOMI   = *.elc
 
 VERSION        = $(API).$(RELEASE)
-ARC_DIR = /pub/mule/semi/semi-$(API)-for-flim-1.12
+ARC_DIR = /pub/mule/semi/semi-$(API)-for-flim-$(FLIM_API)
 
 
 elc:
        $(EMACS) $(FLAGS) -f compile-semi \
-               $(PREFIX) $(EXEC_PREFIX) $(LISPDIR) \
-               $(VERSION_SPECIFIC_LISPDIR)
+               $(PREFIX) $(LISPDIR) $(VERSION_SPECIFIC_LISPDIR)
 
 install-elc:   elc
        $(EMACS) $(FLAGS) -f install-semi \
-               $(PREFIX) $(EXEC_PREFIX) $(LISPDIR) \
-               $(VERSION_SPECIFIC_LISPDIR)
+               $(PREFIX) $(LISPDIR) $(VERSION_SPECIFIC_LISPDIR)
 
 install:       install-elc
 
@@ -62,7 +61,8 @@ tar:
        cd /tmp; $(TAR) cvzf $(PACKAGE)-$(VERSION).tar.gz $(PACKAGE)-$(VERSION)
        cd /tmp; $(RM) -r $(PACKAGE)-$(VERSION)
        sed "s/VERSION/$(VERSION)/" < ftp.in | sed "s/API/$(API)/" \
-               | sed "s/PACKAGE/$(PACKAGE)/" > ftp
+               | sed "s/PACKAGE/$(PACKAGE)/" \
+               | sed "s/FLIM_API/$(FLIM_API)/" > ftp
 
 release:
        -$(RM) $(ARC_DIR)/$(PACKAGE)-$(VERSION).tar.gz
diff --git a/NEWS b/NEWS
index 6e505fb..b1c87da 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -11,6 +11,32 @@ Copyright (C) 1998,1999 Free Software Foundation, Inc.
 editing or viewing has never changed.
 
 
+** Requires FLIM 1.13 API
+
+
+** Don't expect raw-buffer
+
+In FLIM 1.13 API, existence of a raw-buffer corresponding to each
+entity is not guaranteed.
+
+*** Now acting-method must not expect to run in raw-buffer
+
+Function `mime-play-entity' was changed to permit to run in any buffer
+(may be called in preview-buffer).  So each acting-method is called in
+any buffer.
+
+*** Don't refer variable `mime-raw-buffer'
+
+Preview-buffer's local variable `mime-raw-buffer' is deleted.  So
+don't refer it.
+
+*** Don't refer variable `mime-preview-buffer'
+
+There are no guarantee about existence of a raw-buffer corresponding
+to each entity, so don't refer buffer local variables of the
+raw-buffer, e.g. `mime-preview-buffer'.
+
+
 ** Function `mime-play-entity'
 
 Function `mime-play-entity' was renamed from `mime-raw-play-entity'
@@ -24,13 +50,6 @@ Please use `situation' if you would like to specify `mode' and
 `ignore-examples'.
 
 
-** Now acting-method must not expect to run in raw-buffer
-
-Function `mime-play-entity' was changed to permit to run in any buffer
-(may be called in preview-buffer).  So each acting-method is called in
-any buffer.
-
-
 ** Text property `mime-view-entity-{header|body}'
 
 Now mime-view put text property `mime-view-entity-header' and
@@ -46,6 +65,7 @@ In addition, now it is cleared that current point means beginning of
 header when `mime-display-entity' runs `mime-display-header-hook'.
 Therefore header-presentation-method must not change current point.
 
+
 \f
 * Changes in SEMI 1.12
 
index db22bb4..d40499e 100644 (file)
--- a/README.en
+++ b/README.en
@@ -40,15 +40,15 @@ Required environment
   19.14.  SEMI also does not support Emacs 19.29 to 19.34, XEmacs
   19.15 or XEmacs 20.2 without mule, but SEMI may work with them.
 
-  SEMI requires APEL (9.20 or later) and FLIM (1.12.5 or later)
+  SEMI requires APEL (9.20 or later) and FLIM (1.13.1 or later)
   package.  Please install them before installing it.  APEL package is
   available at:
 
-       ftp://ftp.jaist.ac.jp/pub/GNU/elisp/apel/
+       ftp://ftp.etl.go.jp/pub/mule/apel/
 
   and FLIM package is available at:
 
-       ftp://ftp.jaist.ac.jp/pub/GNU/elisp/flim/
+       ftp://ftp.etl.go.jp/pub/mule/flim/flim-1.13/
 
   PGP/MIME and application/pgp require Mailcrypt or tiny-pgp package.
   In addition, if you want to use PGP 5.0i or GnuPG for PGP/MIME, it
index c05df10..9847f86 100644 (file)
--- a/SEMI-CFG
+++ b/SEMI-CFG
 (defvar PREFIX install-prefix)
 ;;(setq PREFIX "~/")
 
-;; Please specify install path prefix for binaries.
-(defvar EXEC_PREFIX
-  (if (or running-emacs-18 running-xemacs)
-      (expand-file-name "../../.." exec-directory)
-    (expand-file-name "../../../.." exec-directory)
-    ))
-
 ;; Please specify emu prefix [optional]
 (setq EMU_PREFIX
       (if (string-match "XEmacs" emacs-version)
 ;;; @ executables
 ;;;
 
-;; Please specify binary path.
-(defvar BIN_DIR (expand-file-name "bin" EXEC_PREFIX))
-
 ;; Please specify binary path. (for external method scripts)
 (setq METHOD_DIR (expand-file-name "share/semi" PREFIX))
 
diff --git a/SEMI-MK b/SEMI-MK
index d74efc4..bd5f525 100644 (file)
--- a/SEMI-MK
+++ b/SEMI-MK
             (defvar PREFIX prefix)
             ))
     (setq command-line-args-left (cdr command-line-args-left))
-    (and (setq exec-prefix (car command-line-args-left))
-        (or (string-equal "NONE" exec-prefix)
-            (defvar EXEC_PREFIX exec-prefix)
-            ))
-    (setq command-line-args-left (cdr command-line-args-left))
     (and (setq lisp-dir (car command-line-args-left))
         (or (string-equal "NONE" lisp-dir)
             (defvar LISPDIR lisp-dir)
@@ -32,8 +27,8 @@
     )
   (load-file "SEMI-CFG")
   (load-file "SEMI-ELS")
-  (princ (format "PREFIX=%s\tEXEC_PREFIX=%s
-LISPDIR=%s\n" PREFIX EXEC_PREFIX LISPDIR))
+  (princ (format "PREFIX=%s
+LISPDIR=%s\n" PREFIX LISPDIR))
   )
 
 (defun directory= (dir1 dir2)
diff --git a/VERSION b/VERSION
index 525fa02..a4bf0d8 100644 (file)
--- a/VERSION
+++ b/VERSION
 1.8.3  Ecch\e-Dþ-Nakagawa\e-A            \e$(B1[CfCf@n\e(B
 1.8.4  Takaoka                 \e$(B9b2,\e(B     ; = JR \e$(BKLN&K\@~!">kC<@~\e(B
 
+;;-------------------------------------------------------------------------
+;;     Hokuetsu Express        \e$(BKL1[5^9T\e(B
+;;             http://www.tiara.or.jp/~tokamaci/hokuhoku/hokuhoku.html
+;;     Hokuhoku Line           \e$(B$[$/$[$/@~\e(B
+;;-------------------------------------------------------------------------
+1.13.0 Saigata                 \e$(B:T3c\e(B     ; = JR \e$(B?.1[K\@~\e(B
+1.13.1 Kubiki                  \e$(B$/$S$-\e(B
+
 
 [etc.]
 
diff --git a/ftp.in b/ftp.in
index 9da2fb4..40dd727 100644 (file)
--- a/ftp.in
+++ b/ftp.in
@@ -2,12 +2,12 @@
 
   It is available from
 
-    ftp://ftp.etl.go.jp/pub/mule/semi/semi-API-for-flim-1.12
+    ftp://ftp.etl.go.jp/pub/mule/semi/semi-API-for-flim-FLIM_API
 
 --[[message/external-body;
        access-type=anon-ftp;
        site="ftp.etl.go.jp";
-       directory="/pub/mule/semi/semi-API-for-flim-1.12";
+       directory="/pub/mule/semi/semi-API-for-flim-FLIM_API";
        name="PACKAGE-VERSION.tar.gz";
        mode=image]]
 Content-Type: application/octet-stream;
index 94883c7..b260183 100644 (file)
@@ -2585,8 +2585,9 @@ Content-Type: message/partial; id=%s; number=%d; total=%d\n%s\n"
 
 (defun mime-edit-quitting-method ()
   "Quitting method for mime-view."
-  (let ((temp mime-raw-buffer)
-       buf)
+  (let* ((entity (get-text-property (point-min) 'mime-view-entity))
+        (temp (mime-entity-buffer entity))
+        buf)
     (mime-preview-kill-buffer)
     (set-buffer temp)
     (setq buf mime-edit-buffer)
index 70fb849..e75705c 100644 (file)
@@ -531,10 +531,11 @@ SUBTYPE is symbol to indicate subtype of media-type.")
 (defun mime-preview-quitting-method-for-mime-show-message-mode ()
   "Quitting method for mime-view.
 It is registered to variable `mime-preview-quitting-method-alist'."
-  (let ((mother mime-mother-buffer)
-       (win-conf mime-preview-original-window-configuration)
-       )
-    (kill-buffer mime-raw-buffer)
+  (let ((raw-buffer (mime-entity-buffer
+                    (get-text-property (point-min) 'mime-view-entity)))
+       (mother mime-mother-buffer)
+       (win-conf mime-preview-original-window-configuration))
+    (kill-buffer raw-buffer)
     (mime-preview-kill-buffer)
     (set-window-configuration win-conf)
     (pop-to-buffer mother)
@@ -566,33 +567,28 @@ It is registered to variable `mime-preview-quitting-method-alist'."
         (number (cdr (assoc "number" cal)))
         (total (cdr (assoc "total" cal)))
         file
-        (mother (current-buffer))
-        )
+        (mother (current-buffer)))
     (or (file-exists-p root-dir)
-       (make-directory root-dir)
-       )
+       (make-directory root-dir))
     (setq id (replace-as-filename id))
     (setq root-dir (concat root-dir "/" id))
     (or (file-exists-p root-dir)
-       (make-directory root-dir)
-       )
+       (make-directory root-dir))
     (setq file (concat root-dir "/FULL"))
     (if (file-exists-p file)
        (let ((full-buf (get-buffer-create "FULL"))
              (pwin (or (get-buffer-window mother)
                        (get-largest-window)))
-             )
+             pbuf)
          (save-window-excursion
            (set-buffer full-buf)
            (erase-buffer)
            (as-binary-input-file (insert-file-contents file))
            (setq major-mode 'mime-show-message-mode)
            (mime-view-buffer (current-buffer) nil mother)
+           (setq pbuf (current-buffer))
            )
-         (set-window-buffer pwin
-                            (save-excursion
-                              (set-buffer full-buf)
-                              mime-preview-buffer))
+         (set-window-buffer pwin pbuf)
          (select-window pwin)
          )
       (setq file (concat root-dir "/" number))
index 2a30e18..80ef939 100644 (file)
@@ -212,12 +212,12 @@ mother-buffer."
                    situation)))
 
     ;; major-mode
-    (or (assq 'major-mode situation)
-       (setq situation
-             (cons (cons 'major-mode
-                         (with-current-buffer (mime-entity-buffer entity)
-                           major-mode))
-                   situation)))
+    ;; (or (assq 'major-mode situation)
+    ;;     (setq situation
+    ;;           (cons (cons 'major-mode
+    ;;                       (with-current-buffer (mime-entity-buffer entity)
+    ;;                         major-mode))
+    ;;                 situation)))
     
     situation))
 
@@ -536,8 +536,14 @@ Each elements are regexp of field-name.")
 
 (defun mime-display-multipart/mixed (entity situation)
   (let ((children (mime-entity-children entity))
+       (original-major-mode (cdr (assq 'major-mode situation)))
        (default-situation
          (cdr (assq 'childrens-situation situation))))
+    (if original-major-mode
+       (setq default-situation
+             (cons (cons 'major-mode original-major-mode)
+                   default-situation))
+      )
     (while children
       (mime-display-entity (car children) nil default-situation)
       (setq children (cdr children))
@@ -561,12 +567,19 @@ MEDIA-TYPE must be (TYPE . SUBTYPE), TYPE or t.  t means default."
 
 (defun mime-display-multipart/alternative (entity situation)
   (let* ((children (mime-entity-children entity))
+        (original-major-mode (cdr (assq 'major-mode situation)))
         (default-situation
           (cdr (assq 'childrens-situation situation)))
         (i 0)
         (p 0)
         (max-score 0)
-        (situations
+        situations)
+    (if original-major-mode
+       (setq default-situation
+             (cons (cons 'major-mode original-major-mode)
+                   default-situation))
+      )
+    (setq situations
          (mapcar (function
                   (lambda (child)
                     (let ((situation
@@ -597,7 +610,7 @@ MEDIA-TYPE must be (TYPE . SUBTYPE), TYPE or t.  t means default."
                       (setq i (1+ i))
                       situation)
                     ))
-                 children)))
+                 children))
     (setq i 0)
     (while children
       (let ((child (car children))
@@ -735,11 +748,8 @@ MEDIA-TYPE must be (TYPE . SUBTYPE), TYPE or t.  t means default."
                                   default-situation preview-buffer)
   (or preview-buffer
       (setq preview-buffer (current-buffer)))
-  (let* ((raw-buffer (mime-entity-buffer entity))
-        (start (mime-entity-point-min entity))
-        e nb ne nhb nbb)
-    (set-buffer raw-buffer)
-    (goto-char start)
+  (let* (e nb ne nhb nbb)
+    (mime-goto-header-start-point entity)
     (in-calist-package 'mime-view)
     (or situation
        (setq situation
@@ -942,7 +952,8 @@ MEDIA-TYPE must be (TYPE . SUBTYPE), TYPE or t.  t means default."
 
 ;;;###autoload
 (defun mime-display-message (message &optional preview-buffer
-                                    mother default-keymap-or-function)
+                                    mother default-keymap-or-function
+                                    original-major-mode)
   "View MESSAGE in MIME-View mode.
 
 Optional argument PREVIEW-BUFFER specifies the buffer of the
@@ -956,17 +967,18 @@ 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)))
+        ;; (raw-buffer (mime-entity-buffer message))
+       )
     (or preview-buffer
        (setq preview-buffer
-             (concat "*Preview-" (buffer-name raw-buffer) "*")))
-    (set-buffer raw-buffer)
-    (setq mime-preview-buffer preview-buffer)
+             (concat "*Preview-" (mime-entity-name message) "*")))
+    ;; (set-buffer raw-buffer)
+    ;; (setq mime-preview-buffer preview-buffer)
     (let ((inhibit-read-only t))
       (set-buffer (get-buffer-create preview-buffer))
       (widen)
       (erase-buffer)
-      (setq mime-raw-buffer raw-buffer)
+      ;; (setq mime-raw-buffer raw-buffer)
       (if mother
          (setq mime-mother-buffer mother)
        )
@@ -974,8 +986,9 @@ keymap of MIME-View mode."
       (setq major-mode 'mime-view-mode)
       (setq mode-name "MIME-View")
       (mime-display-entity message nil
-                          '((entity-button . invisible)
-                            (header . visible))
+                          `((entity-button . invisible)
+                            (header . visible)
+                            (major-mode . ,original-major-mode))
                           preview-buffer)
       (mime-view-define-keymap default-keymap-or-function)
       (let ((point
@@ -988,16 +1001,7 @@ keymap of MIME-View mode."
       (run-hooks 'mime-view-mode-hook)
       (set-buffer-modified-p nil)
       (setq buffer-read-only t)
-      (or (get-buffer-window preview-buffer)
-         (let ((r-win (get-buffer-window raw-buffer)))
-           (if r-win
-               (set-window-buffer r-win preview-buffer)
-             (let ((m-win (and mother (get-buffer-window mother))))
-               (if m-win
-                   (set-window-buffer m-win preview-buffer)
-                 (switch-to-buffer preview-buffer)
-                 )))))
-      )))
+      preview-buffer)))
 
 ;;;###autoload
 (defun mime-view-buffer (&optional raw-buffer preview-buffer mother
@@ -1026,9 +1030,18 @@ message.  It must be nil, `binary' or `cooked'.  If it is nil,
   (if (eq representation-type 'binary)
       (setq representation-type 'buffer)
     )
-  (mime-display-message
-   (mime-open-entity representation-type raw-buffer)
-   preview-buffer mother default-keymap-or-function))
+  (setq preview-buffer (mime-display-message
+                       (mime-open-entity representation-type raw-buffer)
+                       preview-buffer mother default-keymap-or-function))
+  (or (get-buffer-window preview-buffer)
+      (let ((r-win (get-buffer-window raw-buffer)))
+       (if r-win
+           (set-window-buffer r-win preview-buffer)
+         (let ((m-win (and mother (get-buffer-window mother))))
+           (if m-win
+               (set-window-buffer m-win preview-buffer)
+             (switch-to-buffer preview-buffer)
+             ))))))
 
 (defun mime-view-mode (&optional mother ctl encoding
                                 raw-buffer preview-buffer
@@ -1175,7 +1188,7 @@ It calls following-method selected from variable
              (format "%s-%s" (buffer-name) (reverse entity-node-id)))
             new-buf
             (the-buf (current-buffer))
-            (a-buf mime-raw-buffer)
+            (a-buf (mime-entity-buffer entity))
             fields)
        (save-excursion
          (set-buffer (setq new-buf (get-buffer-create new-name)))
index bdb5adb..0c5e78d 100644 (file)
@@ -1,4 +1,4 @@
-;;; semi-def.el --- definition module for SEMI
+;;; semi-def.el --- definition module for SEMI -*- coding: iso-8859-4; -*-
 
 ;; Copyright (C) 1995,1996,1997,1998,1999 Free Software Foundation, Inc.
 
@@ -30,7 +30,7 @@
 
 (require 'custom)
 
-(defconst mime-user-interface-product ["SEMI" (1 13 5) "Meih\e.D\8eò"]
+(defconst mime-user-interface-product ["SEMI" (1 13 5) "Meihò"]
   "Product name, version number and code name of MIME-kernel package.")
 
 (autoload 'mule-caesar-region "mule-caesar"