[xyzzy:04456] Re: my-open-xxx
- Subject: [xyzzy:04456] Re: my-open-xxx
- From: YAMAMOTO Shinji <sinj@xxxxxxxxxxxx>
- X-mailer: Denshin 8 Go V321.2b5
- X-yzzy-version: 0.2.0.137
藤本さん、こんにちは。
In message "[xyzzy:04452] my-open-xxx"
Soichiro Fujimoto <robotcat@xxxxxxx> wrote:
> 今は「既に開いてた」を表示しています。何かうまいやり方はありません
> でしょうか?
こんなのでどうでしょう。
*my-favorite-files*は適当に編集してください。
(defvar *my-favorite-files*
(list (concat (user-homedir-pathname) ".xyzzy")
(concat (si:system-root) "site-lisp/siteinit.l")))
(defun my-open-favorite-file ()
(interactive)
(let ((file (get-buffer-file-name (selected-buffer)))
name)
(if (or *prefix-args*
(not (member-if
#'(lambda (x)
(string-equal (string-downcase file)
(string-downcase
(merge-pathnames (file-namestring x)
(directory-namestring x)))))
*my-favorite-files*)))
(setq file (completing-read "File: " *my-favorite-files*
:must-match t :case-fold t)))
(setq name (file-namestring file))
(if (find-buffer name)
(switch-to-buffer
(if (and (not *prefix-args*)
(eq (selected-buffer) (find-buffer name)))
(other-buffer)
name))
(find-file file))))
--
山本真二 sinj@xxxxxxxxxxxx