[Mew-dist 11603] a patch for b7
Kazu Yamamoto ( 山本和彦 )
kazu at example.com
1999年 12月 2日 (木) 13:05:08 JST
あんまりハックできていないので、とりあえずパッチで流します。以下のパッ
チを1.95b7 に当てて下さい。sdic 問題が解決するのではないかと期待してい
ます。
--かず
-------------- next part --------------
? LOG
? LOGLESS
Index: 00changes
===================================================================
RCS file: /usr/home/kazu/cvsroot/Mew/mew/00changes,v
retrieving revision 1.485
retrieving revision 1.487
diff -c -r1.485 -r1.487
*** 00changes 1999/11/29 05:39:51 1.485
--- 00changes 1999/11/30 08:32:59 1.487
***************
*** 17,22 ****
--- 17,28 ----
- Customize
- Guess feature for Draft mode.
+ 1.95b8
+
+ * More friendly message for "I" and "C".
+ Shuichi KITAGUCHI <kit at example.com>
+ * A bug fix of window configurations for C-cC-c and C-cC-m.
+
1.95b7 (99/11/29) mew-dist release
* A bug fix for duplicate privacy marks.
Index: mew-attach.el
===================================================================
RCS file: /usr/home/kazu/cvsroot/Mew/mew/mew-attach.el,v
retrieving revision 1.78
retrieving revision 1.80
diff -c -r1.78 -r1.80
*** mew-attach.el 1999/11/29 05:24:31 1.78
--- mew-attach.el 1999/12/02 03:54:03 1.80
***************
*** 371,381 ****
(while (or (null frompath)
(file-directory-p (file-chase-links frompath)))
(setq frompath (mew-draft-input-file-name
! (concat (capitalize action) " from : ") default)))
(while (or (null efile)
(file-exists-p (expand-file-name efile attachdir)))
(setq tofile (mew-input-string
! (concat (capitalize action) " to %s(%s): ")
subdir
(file-name-nondirectory frompath)))
(setq efile (concat subdir tofile)))
--- 371,381 ----
(while (or (null frompath)
(file-directory-p (file-chase-links frompath)))
(setq frompath (mew-draft-input-file-name
! (concat (mew-capitalize action) " from : ") default)))
(while (or (null efile)
(file-exists-p (expand-file-name efile attachdir)))
(setq tofile (mew-input-string
! (concat (mew-capitalize action) " to %s(%s): ")
subdir
(file-name-nondirectory frompath)))
(setq efile (concat subdir tofile)))
***************
*** 559,565 ****
(message "Can't specify character set to %s" ct)
(if (null char) (setq char "guess"))
(setq charset (mew-input-type
! "Charset for %s (%s): "
file char
(cons "guess" mew-charset-list)))
(setq params (mew-delete param params))
--- 559,567 ----
(message "Can't specify character set to %s" ct)
(if (null char) (setq char "guess"))
(setq charset (mew-input-type
! (if (equal param "charset")
! "Output message charset for %s (%s): "
! "Input file charset for %s (%s): ")
file char
(cons "guess" mew-charset-list)))
(setq params (mew-delete param params))
Index: mew-complete.el
===================================================================
RCS file: /usr/home/kazu/cvsroot/Mew/mew/mew-complete.el,v
retrieving revision 1.43
retrieving revision 1.44
diff -c -r1.43 -r1.44
*** mew-complete.el 1999/11/16 04:53:40 1.43
--- mew-complete.el 1999/12/02 03:54:04 1.44
***************
*** 116,122 ****
(mew-complete-window-show mew-fields)
(mew-complete
word
! (mapcar (function (lambda (x) (list (concat (capitalize x) " "))))
mew-fields)
"field"
nil))))
--- 116,122 ----
(mew-complete-window-show mew-fields)
(mew-complete
word
! (mapcar (function (lambda (x) (list (concat (mew-capitalize x) " "))))
mew-fields)
"field"
nil))))
***************
*** 435,441 ****
(let ((pos (point)))
(beginning-of-line)
(prog1
! (capitalize (mew-buffer-substring (point) pos))
(delete-region (point) pos))))
(defun mew-delete-value (&optional here)
--- 435,441 ----
(let ((pos (point)))
(beginning-of-line)
(prog1
! (mew-capitalize (mew-buffer-substring (point) pos))
(delete-region (point) pos))))
(defun mew-delete-value (&optional here)
Index: mew-decode.el
===================================================================
RCS file: /usr/home/kazu/cvsroot/Mew/mew/mew-decode.el,v
retrieving revision 1.108
retrieving revision 1.109
diff -c -r1.108 -r1.109
*** mew-decode.el 1999/11/22 07:43:43 1.108
--- mew-decode.el 1999/12/02 03:54:04 1.109
***************
*** 165,171 ****
(while (not (eobp))
(if (not (looking-at mew-keyval))
(forward-line)
! (setq key (capitalize (mew-match 1)))
(setq beg (match-beginning 0))
(setq med (match-end 0))
(forward-line)
--- 165,171 ----
(while (not (eobp))
(if (not (looking-at mew-keyval))
(forward-line)
! (setq key (mew-capitalize (mew-match 1)))
(setq beg (match-beginning 0))
(setq med (match-end 0))
(forward-line)
***************
*** 251,257 ****
(while (not (eobp))
(if (not (looking-at mew-keyval))
(forward-line)
! (setq key (capitalize (mew-match 1)))
(setq med (match-end 0))
(forward-line)
(mew-header-goto-next)
--- 251,257 ----
(while (not (eobp))
(if (not (looking-at mew-keyval))
(forward-line)
! (setq key (mew-capitalize (mew-match 1)))
(setq med (match-end 0))
(forward-line)
(mew-header-goto-next)
***************
*** 530,536 ****
;; Mew allows text/plain and multipart/* for body.
;; If other CT: is embedded under message, it should be
;; encapsulated in multipart/mixed.
! (let ((head mew-encode-syntax-multi-head))
;; begin for multipart syntax is important because
;; the begin will be used by the parent to set hend
(mew-syntax-set-begin head (mew-syntax-get-begin syntax))
--- 530,536 ----
;; Mew allows text/plain and multipart/* for body.
;; If other CT: is embedded under message, it should be
;; encapsulated in multipart/mixed.
! (let ((head (mew-encode-syntax-multi-head)))
;; begin for multipart syntax is important because
;; the begin will be used by the parent to set hend
(mew-syntax-set-begin head (mew-syntax-get-begin syntax))
Index: mew-draft.el
===================================================================
RCS file: /usr/home/kazu/cvsroot/Mew/mew/mew-draft.el,v
retrieving revision 1.162
retrieving revision 1.163
diff -c -r1.162 -r1.163
*** mew-draft.el 1999/11/29 05:24:31 1.162
--- mew-draft.el 1999/11/29 11:26:10 1.163
***************
*** 993,1000 ****
(draft-mode-name))
;;;
;;;
! ;;;
(defun mew-draft-make-message (&optional privacy)
(interactive)
--- 993,1006 ----
(draft-mode-name))
;;;
+ ;;; Sending and Queuing
;;;
!
! (defmacro mew-draft-getback-window-config ()
! (if (mew-current-get 'window)
! (progn
! (set-window-configuration (mew-current-get 'window))
! (mew-current-set 'window nil))))
(defun mew-draft-make-message (&optional privacy)
(interactive)
***************
*** 1004,1009 ****
--- 1010,1016 ----
(if (mew-encode privacy)
(progn
(mew-encode-send-message fld msg 'justqueuing)
+ (mew-draft-getback-window-config)
(message "This message has been queued in %s." mew-queue-folder)))))
(defun mew-draft-send-message ()
***************
*** 1016,1025 ****
--- 1023,1069 ----
(if (mew-encode)
(progn
(mew-encode-send-message fld msg)
+ (mew-draft-getback-window-config)
(message "Sending in background ... "))))))
;; backward-compatibility
(fset 'mew-draft-send-letter (symbol-function 'mew-draft-send-message))
+
+ ;;;
+ ;;; Header mode
+ ;;;
+
+ (defun mew-header-mode ()
+ (interactive)
+ (auto-save-mode mew-draft-mode-auto-save)
+ (make-local-variable 'paragraph-start)
+ (setq paragraph-start (concat "^[ \t]*[-_][-_][-_]+$\\|" paragraph-start))
+ (make-local-variable 'paragraph-separate)
+ (setq paragraph-separate
+ (concat "^[ \t]*[-_][-_][-_]+$\\|" paragraph-separate))
+ (make-local-variable 'mail-header-separator)
+ (setq mail-header-separator mew-header-separator)
+ (setq major-mode 'mew-draft-mode)
+ (use-local-map mew-draft-mode-map)
+ (cd (expand-file-name mew-home))
+ (setq mode-name "Header")
+ (force-mode-line-update))
+
+ (defun mew-summary-send-to-others ()
+ (let* ((draft (mew-folder-new-message mew-draft-folder))
+ (attachdir (mew-attachdir draft)))
+ (mew-summary-msg-or-part
+ (mew-summary-display 'force)
+ (mew-summary-prepare-draft
+ (mew-draft-find-and-switch draft)
+ (mew-delete-directory-recursively attachdir)
+ (debug)
+ (mew-draft-header-insert mew-to: "")
+ (mew-draft-header-insert mew-cc: "")
+ (mew-header-prepared)
+ (goto-char (point-min))
+ (forward-char 4) ;; Don't use (end-of-line) since the value may exist.
+ (mew-header-mode)))))
(provide 'mew-draft)
Index: mew-encode.el
===================================================================
RCS file: /usr/home/kazu/cvsroot/Mew/mew/mew-encode.el,v
retrieving revision 1.128
retrieving revision 1.129
diff -c -r1.128 -r1.129
*** mew-encode.el 1999/11/29 05:24:31 1.128
--- mew-encode.el 1999/12/02 03:54:04 1.129
***************
*** 516,522 ****
(let (proto ct)
(while privacy
(goto-char (point-min))
! (setq ct (capitalize (nth 0 (car privacy))))
(setq proto (nth 1 (car privacy)))
(setq privacy (cdr privacy))
(cond
--- 516,522 ----
(let (proto ct)
(while privacy
(goto-char (point-min))
! (setq ct (mew-capitalize (nth 0 (car privacy))))
(setq proto (nth 1 (car privacy)))
(setq privacy (cdr privacy))
(cond
Index: mew-func.el
===================================================================
RCS file: /usr/home/kazu/cvsroot/Mew/mew/mew-func.el,v
retrieving revision 1.99
retrieving revision 1.101
diff -c -r1.99 -r1.101
*** mew-func.el 1999/11/27 02:07:47 1.99
--- mew-func.el 1999/12/02 04:00:44 1.101
***************
*** 293,298 ****
--- 293,318 ----
(substring str 0 last))
(substring str 0 width)))
+ (defun mew-capitalize (ostr)
+ "Syntax table independent version of capitailze.
+ Words are separated by '/' and '-'."
+ (let* ((len (length ostr))
+ (nstr (make-string len ?a))
+ (i 0) (topp t) c)
+ (while (< i len)
+ (setq c (aref ostr i))
+ (cond
+ (topp
+ (aset nstr i (upcase c))
+ (setq topp nil))
+ ((or (char-equal c ?/) (char-equal c ?-))
+ (aset nstr i c)
+ (setq topp t))
+ (t
+ (aset nstr i (downcase c))))
+ (setq i (1+ i)))
+ nstr))
+
;;
;; Insertion
;;
Index: mew-mark.el
===================================================================
RCS file: /usr/home/kazu/cvsroot/Mew/mew/mew-mark.el,v
retrieving revision 1.107
retrieving revision 1.108
diff -c -r1.107 -r1.108
*** mew-mark.el 1999/11/28 23:54:06 1.107
--- mew-mark.el 1999/12/02 03:54:04 1.108
***************
*** 264,270 ****
((mew-markdb-statefullp oldmark)
(if (or no-msg
(y-or-n-p (format "Already marked as '%s'. %s it? "
! oldname (capitalize newname))))
(progn
(setq case 4)
(mew-summary-undo-one no-msg)
--- 264,270 ----
((mew-markdb-statefullp oldmark)
(if (or no-msg
(y-or-n-p (format "Already marked as '%s'. %s it? "
! oldname (mew-capitalize newname))))
(progn
(setq case 4)
(mew-summary-undo-one no-msg)
Index: mew-mime.el
===================================================================
RCS file: /usr/home/kazu/cvsroot/Mew/mew/mew-mime.el,v
retrieving revision 1.76
retrieving revision 1.77
diff -c -r1.76 -r1.77
*** mew-mime.el 1999/11/22 07:43:44 1.76
--- mew-mime.el 1999/12/02 03:54:04 1.77
***************
*** 21,27 ****
(` (mew-assoc-match2 (, ct) mew-mime-content-type 1)))
(defmacro mew-ctdb-ct (attr)
! (` (capitalize (nth 0 (, attr)))))
(defmacro mew-ctdb-regex (attr)
(` (nth 1 (, attr))))
--- 21,27 ----
(` (mew-assoc-match2 (, ct) mew-mime-content-type 1)))
(defmacro mew-ctdb-ct (attr)
! (` (mew-capitalize (nth 0 (, attr)))))
(defmacro mew-ctdb-regex (attr)
(` (nth 1 (, attr))))
Index: mew-syntax.el
===================================================================
RCS file: /usr/home/kazu/cvsroot/Mew/mew/mew-syntax.el,v
retrieving revision 1.104
retrieving revision 1.105
diff -c -r1.104 -r1.105
*** mew-syntax.el 1999/11/15 04:04:08 1.104
--- mew-syntax.el 1999/12/02 03:54:04 1.105
***************
*** 121,129 ****
;; for content parameters
! (defun mew-syntax-get-value (ctl &optional capitalize)
! (if capitalize
! (capitalize (car ctl))
(car ctl)))
(defmacro mew-syntax-get-params (ctl)
--- 121,129 ----
;; for content parameters
! (defun mew-syntax-get-value (ctl &optional capitalizep)
! (if capitalizep
! (mew-capitalize (car ctl))
(car ctl)))
(defmacro mew-syntax-get-params (ctl)
***************
*** 386,391 ****
--- 386,393 ----
;; mew-decode-syntax
;;
+ ;; MUST generate a new vector
+
(defun mew-decode-syntax-rfc822 (&optional msg-head)
;; msg-head may include CD:
(if (null msg-head) (setq msg-head (mew-decode-syntax-rfc822-head t)))
***************
*** 400,406 ****
(defun mew-decode-syntax-text ()
(vector 'single (point) (point-max) nil mew-type-txt nil nil nil nil))
! (defconst mew-encode-syntax-multi-head
(vector 'multi nil nil nil mew-type-mlm nil nil nil nil))
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
--- 402,408 ----
(defun mew-decode-syntax-text ()
(vector 'single (point) (point-max) nil mew-type-txt nil nil nil nil))
! (defun mew-encode-syntax-multi-head ()
(vector 'multi nil nil nil mew-type-mlm nil nil nil nil))
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
Index: mew-vars.el
===================================================================
RCS file: /usr/home/kazu/cvsroot/Mew/mew/mew-vars.el,v
retrieving revision 1.211
retrieving revision 1.212
diff -c -r1.211 -r1.212
*** mew-vars.el 1999/11/29 05:24:31 1.211
--- mew-vars.el 1999/12/02 03:54:04 1.212
***************
*** 132,141 ****
"(field enc dec)")
(defmacro mew-field-type-for-encoding (key)
! (` (or (nth 1 (assoc (capitalize (, key)) mew-field-database)) 'unstruct)))
(defmacro mew-field-type-for-decoding (key)
! (` (or (nth 2 (assoc (capitalize (, key)) mew-field-database)) 'text)))
(defconst mew-syntax-magic
(+ (length [key beg end pri]) (length mew-mime-fields)))
--- 132,141 ----
"(field enc dec)")
(defmacro mew-field-type-for-encoding (key)
! (` (or (nth 1 (assoc (mew-capitalize (, key)) mew-field-database)) 'unstruct)))
(defmacro mew-field-type-for-decoding (key)
! (` (or (nth 2 (assoc (mew-capitalize (, key)) mew-field-database)) 'text)))
(defconst mew-syntax-magic
(+ (length [key beg end pri]) (length mew-mime-fields)))
Mew-dist メーリングリストの案内