[Mew-dist 03521] Re: draft/mime directory can't override.
Mito
mit at example.com
1998年 1月 28日 (水) 10:25:09 JST
※ "山" こと Kazu at example.com さんの
『[Mew-dist 03517] Re: draft/mime directory can't override.』
からの引用です。
山> ああ、要するに mew-encoding-syntax ごと上書きしたいのですね。
# s/encoding/encode/ ですよね。
そうです。
山> - c で file1 をコピーする
山> - c で file2 を file1 へ上書きする
山> このとき、最初の file1 に対する Mew 内部の mew-encoding-syntax はどちらを
山> 優先すべきなのかと。
[Mew-dist 3192] の修正では file1 の mew-encode-syntax をひき
つぐだけだから、file1 と file2 が違う syntax の場合は危険か
もしれませんね。
syntax の決めかたは深く追ってなかったのですが、tofile のサ
フィックスできまるものと思い、tofile 自体は同じ名前だから
syntaxも同じとはずと思い mew-decode-syntax は更新しないよう
にしたんだと思います。
山> c は、ファイルが存在した場合内部で d と同じ処理をするというのなら、一
山> 貫性は取れるのですが、逆に上書きが簡単になって、危険ではありませんか?
いったん削除するようにしてみました。
# β9はインストールしていないので、β8 へのパッチです。
こんなかんじならOKでしょうか?
--
1/28 10:23頃
NECソフトウェア新潟 水戸
mailto:mit at example.com
-------------- next part --------------
--- mew-attach.el 1998/01/28 00:41:20 1.1
+++ mew-attach.el 1998/01/28 01:00:29
@@ -400,13 +400,22 @@
"link to %s(%s): "
subdir
(file-name-nondirectory fromfile))))
- (efile (concat subdir tofile)))
- (while (file-exists-p (expand-file-name efile mimedir))
- (setq tofile (mew-input-string
- (concat (format "%s exists. " efile)"link to %s(%s): ")
- subdir
- (file-name-nondirectory fromfile)))
- (setq efile (concat subdir tofile)))
+ (efile (concat subdir tofile))
+ (force nil))
+ (while (and (not force)
+ (file-exists-p (expand-file-name efile mimedir)))
+ (if (y-or-n-p (format "%s exists. Overwrite it? " efile))
+ (setq force t)
+ (setq tofile (mew-input-string
+ (concat (format "%s exists. " efile)"link to %s(%s): ")
+ subdir
+ (file-name-nondirectory fromfile)))
+ (setq efile (concat subdir tofile))))
+ (if (not force)
+ ()
+ (delete-file (expand-file-name efile mimedir))
+ (setq mew-encode-syntax
+ (mew-syntax-remove-entry mew-encode-syntax nums)))
(mew-symbolic-link fromfile (expand-file-name efile mimedir))
(setq mew-encode-syntax
(mew-syntax-insert-entry
@@ -425,20 +434,28 @@
(let* ((nums (mew-attach-nums))
(subdir (mew-attach-expand-path mew-encode-syntax nums))
(mimedir (mew-expand-folder (mew-draft-to-mime (buffer-name))))
- (fromfile (or from (mew-input-file-name "Copy from : ")))
- (tofile (or to
+ (fromfile (or from (mew-input-file-name "Copy from : ")))
+ (tofile (or to
(mew-input-string
"Copy to %s(%s): "
subdir
(file-name-nondirectory fromfile))))
- (efile (concat subdir tofile)))
- (while (file-exists-p (expand-file-name efile mimedir))
- (setq tofile (mew-input-string
- (concat (format "%s exists. " efile) "Copy to %s(%s): ")
- subdir
- (file-name-nondirectory fromfile)))
- (setq efile (concat subdir tofile)))
- (copy-file fromfile (expand-file-name efile mimedir))
+ (efile (concat subdir tofile))
+ (force nil))
+ (while (and (not force)
+ (file-exists-p (expand-file-name efile mimedir)))
+ (if (y-or-n-p (format "%s exists. Overwrite it? " efile))
+ (setq force t)
+ (setq tofile (mew-input-string
+ (concat (format "%s exists. " efile)
+ "Copy to %s(%s): ")
+ subdir
+ (file-name-nondirectory fromfile)))
+ (setq efile (concat subdir tofile))))
+ (copy-file fromfile (expand-file-name efile mimedir) t)
+ (if force
+ (setq mew-encode-syntax
+ (mew-syntax-remove-entry mew-encode-syntax nums)))
(setq mew-encode-syntax
(mew-syntax-insert-entry
mew-encode-syntax
Mew-dist メーリングリストの案内