xyzzy のコマンドを作ったりしてるときはよく、
(msgbox "~S" hoge)
とかしてデバッグプリントしてたりする。実に原始的だ。
(べつにダイアログボックスに出さんでも、一時バッファに流したりすればいいんだが、それはそれでめんどくさい)
しかしこの msgbox、デバッグ用に使うにはちょっと勝手が悪い。
出力形式は常にS式でいいし、引数も任意の個数取れたほうがいい。
というわけでデバッグ専用の msgbox をでっち上げてみた。激しくガイシュツくさいが…。
;;; @@@ msgbox for lisp debug
;;; usage: (dbg-msgbox args)
(defmacro dbg-msgbox (&rest vars)
`(msgbox
(concat ,@(make-list (length vars) :initial-element "~S\n"))
,@vars))
こういうのが数行で書ける LISP って神としか思えん。
にしても本当は Emacs みたいに edebug がほしいなあ。
0 コメント :
コメントを投稿