+1999-07-27 Katsumi Yamaoka <yamaoka@jpl.org>
+
+ * WEMI: Version 1.13.5 (Fijieda) 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.
+
+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'.
+
+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-07-08 Katsumi Yamaoka <yamaoka@jpl.org>
* semi-def.el (TopLevel): Require `widget' for old Emacsen.
* 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
PACKAGE = wemi
API = 1.13
-RELEASE = 4
+RELEASE = 5
+
+FLIM_API= 1.13
TAR = tar
RM = /bin/rm -f
FLAGS = -batch -q -no-site-file -l SEMI-MK
PREFIX = NONE
-EXEC_PREFIX = NONE
LISPDIR = NONE
PACKAGEDIR = NONE
VERSION_SPECIFIC_LISPDIR = NONE
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
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
* Changes in SEMI 1.13
+** 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'
`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
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
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.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.
(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))
(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)
)
(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)
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.]
(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)
(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)
(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))
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))
(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))
(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
(setq i (1+ i))
situation)
))
- children)))
+ children))
(setq i 0)
(while children
(let ((child (car children))
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
;;;###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
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)
)
(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
(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
(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
(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)))
-;;; semi-def.el --- definition module for WEMI
+;;; semi-def.el --- definition module for WEMI -*- coding: iso-8859-4; -*-
;; Copyright (C) 1995,1996,1997,1998,1999 Free Software Foundation, Inc.
;; Author: MORIOKA Tomohiko <tomo@m17n.org>
;; Keywords: definition, MIME, multimedia, mail, news
-;; This file is part of WEMI (Widget based Emacs MIME Interfaces).
+;; This file is part of WEMI (Widget based Emacs MIME Implementation).
;; This program is free software; you can redistribute it and/or
;; modify it under the terms of the GNU General Public License as