[Date Prev] [Date Index] [Date Next]
[Thread Prev] [Thread Index] [Thread Next]

[xyzzy:07365] Re: *scratch* バッファの削除と自動生成



春原さん、こんにちは。

	2001年7月23日(月)[17:57:58]の、
	[xyzzy:07361] *scratch* バッファの削除と自動生成
	への返事です。

|     作ってもいいのですが、*scratch* バッファを kill-buffer
|     した場合に(Emacs のように)バッファの内容だけ消えるような
|     うまい設定はできますか。

設定ではたぶんどうにもなりませんが、まあこんな感じで。

(defun kill-buffer (buffer)
  (interactive "bKill buffer: " :default0 (selected-buffer))
  (and (need-buffer-save-p buffer)
       (not (no-or-yes-p "~sは変更されています。変更内容を破棄しますか?" buffer))
       (return-from kill-buffer nil))
  (if (equal (buffer-name buffer) "*scratch*")
      (erase-buffer buffer)
    (prog1
	(delete-buffer buffer)
      (or (deleted-buffer-p buffer)
	  (and (equal (buffer-name buffer) "*scratch*")
	       (setq buffer-read-only nil))))))

| (2) リードオンリーのバッファがひとつだけある状態でそのバッフ
|     ァを kill-buffer すると、自動生成された *scratch* バッフ
|     ァもリードオンリーになるのは仕様でしょうか? とりあえず、

や、なんも考えてませんでした。

-- 
亀井哲弥(KAMEI Tetsuya)
kamei@xxxxxxxxxxxx

Index Home