[Mew-dist 05233] Re: mew-complete in Config: field

Kazu Yamamoto ( 山本和彦 ) kazu at example.com
1998年 6月 30日 (火) 17:49:33 JST


From: Akihiro Motoki <mokkun at example.com>
Subject: [Mew-dist 05212] mew-complete in Config: field
Date: Tue, 30 Jun 1998 09:22:35 +0900

> mew-1.93b42 でメールを編集中に、mew-draft-insert-config で
> Config: フィールドを挿入し、その後 Config:行の行末に移動し、
> C-cTAB で config を circulate させると最初の一回のみエラーが出ます。
> その後は正常に動作します。

僕のところでは再現しませんが、こうかなぁ。

--かず

-------------- next part --------------
Index: mew-complete.el
===================================================================
RCS file: /usr/local/cvsroot/Mew/mew/mew-complete.el,v
retrieving revision 1.13
retrieving revision 1.15
diff -c -r1.13 -r1.15
*** mew-complete.el	1998/06/25 17:54:17	1.13
--- mew-complete.el	1998/06/30 08:50:12	1.15
***************
*** 216,229 ****
       ((equal word nil) ;; @ doesn't exist.
        (if (null mew-mail-domain-list)
  	  (message "For domain circular completion, set mew-mail-domain-list")
! 	(insert "@")
! 	(insert (car mew-mail-domain-list))
  	(mew-complete-window-delete))
        )
       ((equal word t) ;; just after @
        (if (null mew-mail-domain-list)
  	  ()
! 	(insert (car mew-mail-domain-list))
  	(mew-complete-window-delete))
        )
       (t
--- 216,229 ----
       ((equal word nil) ;; @ doesn't exist.
        (if (null mew-mail-domain-list)
  	  (message "For domain circular completion, set mew-mail-domain-list")
! 	(mew-header-insert "@")
! 	(mew-header-insert (car mew-mail-domain-list))
  	(mew-complete-window-delete))
        )
       ((equal word t) ;; just after @
        (if (null mew-mail-domain-list)
  	  ()
! 	(mew-header-insert (car mew-mail-domain-list))
  	(mew-complete-window-delete))
        )
       (t
***************
*** 241,247 ****
    (let ((str (mew-delete-value here)))
      (if (null str)
  	(if (car clist)
! 	    (insert (car clist))
  	  (message "For circular completion, set %s" cname))
        (mew-complete
         str
--- 241,247 ----
    (let ((str (mew-delete-value here)))
      (if (null str)
  	(if (car clist)
! 	    (mew-header-insert (car clist))
  	  (message "For circular completion, set %s" cname))
        (mew-complete
         str
***************
*** 272,300 ****
       ;; already completed
       ((eq cmp t)
        (if EPAND-CHAR
! 	  (insert (cdr (assoc WORD ALIST))) ;; use cdr
! 	(insert WORD)) ;; use car
        (mew-complete-window-delete))
       ;; EXPAND
       ((and (mew-characterp EPAND-CHAR)
  	   (char-equal (aref WORD (1- len)) EPAND-CHAR)
  	   (assoc (substring WORD 0 (1- len)) ALIST))
!       (insert (cdr (assoc (substring WORD 0 (1- len)) ALIST))) ;; use cdr
        (mew-complete-window-delete))
       ;; just one candidate
       ((equal 1 (length all))
!       (insert cmp)
        (mew-complete-window-delete)
        (if (window-minibuffer-p (get-buffer-window (current-buffer)))
  	  (mew-temp-minibuffer-message " [Sole completion]")
  	(message "Sole completion")))
       ;; two or more candidates
       ((stringp cmp) ;; (length all) > 1
!       (insert cmp)
        (mew-complete-window-show all))
       ;; no candidate
       (t
!       (insert WORD)
        ;;(mew-complete-window-delete)
        (if (window-minibuffer-p (get-buffer-window (current-buffer)))
  	  (mew-temp-minibuffer-message (concat " No matching " MSG))
--- 272,301 ----
       ;; already completed
       ((eq cmp t)
        (if EPAND-CHAR
! 	  (mew-header-insert (cdr (assoc WORD ALIST))) ;; use cdr
! 	(mew-header-insert WORD)) ;; use car
        (mew-complete-window-delete))
       ;; EXPAND
       ((and (mew-characterp EPAND-CHAR)
  	   (char-equal (aref WORD (1- len)) EPAND-CHAR)
  	   (assoc (substring WORD 0 (1- len)) ALIST))
!       (mew-header-insert (cdr (assoc (substring WORD 0 (1- len)) ALIST)))
!       ;; use cdr
        (mew-complete-window-delete))
       ;; just one candidate
       ((equal 1 (length all))
!       (mew-header-insert cmp)
        (mew-complete-window-delete)
        (if (window-minibuffer-p (get-buffer-window (current-buffer)))
  	  (mew-temp-minibuffer-message " [Sole completion]")
  	(message "Sole completion")))
       ;; two or more candidates
       ((stringp cmp) ;; (length all) > 1
!       (mew-header-insert cmp)
        (mew-complete-window-show all))
       ;; no candidate
       (t
!       (mew-header-insert WORD)
        ;;(mew-complete-window-delete)
        (if (window-minibuffer-p (get-buffer-window (current-buffer)))
  	  (mew-temp-minibuffer-message (concat " No matching " MSG))
***************
*** 311,317 ****
    (let ((savemax (point-max)))
      (save-excursion
        (goto-char (point-max))
!       (insert m))
      (let ((inhibit-quit t))
        (sit-for 2)
        (delete-region savemax (point-max))
--- 312,318 ----
    (let ((savemax (point-max)))
      (save-excursion
        (goto-char (point-max))
!       (mew-header-insert m))
      (let ((inhibit-quit t))
        (sit-for 2)
        (delete-region savemax (point-max))
***************
*** 349,356 ****
        (forward-char 1)
      (beginning-of-line))
    (prog1
!       (cons (buffer-substring (point-min) (point))
! 	    (buffer-substring (point) (point-max)))
      (delete-region (point) (point-max))))
  
  (defun mew-delete-pattern ()
--- 350,357 ----
        (forward-char 1)
      (beginning-of-line))
    (prog1
!       (cons (mew-buffer-substring (point-min) (point))
! 	    (mew-buffer-substring (point) (point-max)))
      (delete-region (point) (point-max))))
  
  (defun mew-delete-pattern ()
***************
*** 383,389 ****
      (goto-char (match-end 0))
      (if (looking-at "[ \t]")
  	(forward-char 1)
!       (insert " "))
      (if (eolp)
  	nil
        (let ((start (point)) ret)
--- 384,390 ----
      (goto-char (match-end 0))
      (if (looking-at "[ \t]")
  	(forward-char 1)
!       (mew-header-insert " "))
      (if (eolp)
  	nil
        (let ((start (point)) ret)
***************
*** 392,398 ****
  	    (progn
  	      (setq start (1+ (point)))
  	      (end-of-line)))
! 	(setq ret (buffer-substring start (point)))
  	(delete-region start (point))
  	ret))))
  
--- 393,399 ----
  	    (progn
  	      (setq start (1+ (point)))
  	      (end-of-line)))
! 	(setq ret (mew-buffer-substring start (point)))
  	(delete-region start (point))
  	ret))))
  


Mew-dist メーリングリストの案内