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

[xyzzy:05801] Re: バージョンアップのお知らせ



前田さん、こんにちは。

	2000年12月27日(水)[16:05:03]の、
	[xyzzy:05800] Re: バージョンアップのお知らせ
	への返事です。

(eval-when (:compile-toplevel :load-toplevel :execute)
  (unless (find-package "elisp")
    (defpackage "elisp"
      (:use "lisp" "editor")
      (:nicknames "el"))))

(in-package "elisp")

(eval-when (:compile-toplevel :load-toplevel :execute)
  (shadow 'defun))

(defmacro defun (name (&rest lambda-list) &body body)
  (let (decl intr)
    (multiple-value-setq (decl body)
      (lisp::find-declaration body))
    (multiple-value-setq (intr body)
      (lisp::find-interactive body))
    `(lisp:defun ,name ,lambda-list
       ,@decl
       ,@(lisp:if (and intr (stringp (cadar intr)))
	          `((,@(car intr) :emacs t)) intr)
       ,@body)))

とかやっといて、

(in-package "elisp")

(defun foo (a b c)
  (interactive "p\nr")
  (msgbox "~a ~a ~a" a b c))

とすればできるつもりだったのですが、r が逆になってたり
しますね。直します(T^T)。

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

Index Home