[xyzzy:08505] Re: デバッグについて
- Subject: [xyzzy:08505] Re: デバッグについて
- From: "Seiya Suda" <seiya.suda@xxxxxxxxx>
- X-mailer: Microsoft Outlook IMO, Build 9.0.2416 (9.0.2911.0)
こんにちは。
> デバッグの手法がよくわかりません。
同じくよくわかりませんが、
.xyzzy に次を入れています。
これは今は亡き逸見さんの手法だったかもしれません。
入れておくとたぶん*stacktrace*というバッファが自動的に
できます。これを眺めます。
;==== DEBUG ====
;; トレース機能を有効にする
(defun make-my-trace-buf ()
(interactive)
(save-excursion
(setq *stack-trace-buf* (create-new-buffer "*stacktrace*"))
(set-buffer *stack-trace-buf*)
(make-local-variable 'need-not-save)
(setq need-not-save t)
(setq *error-output* (make-buffer-stream *stack-trace-buf*))
)
(setq si:*trace-on-error* t)
)
(export '(make-my-trace-buf))
;; デバッグ用トレース
(when (fboundp 'user::make-my-trace-buf)
(pushnew 'user::make-my-trace-buf *init-app-menus-hook*))
(defvar debug-trace-count 0)
(defun debug-print (db-string &optional element1 element2)
(let ((buf (selected-buffer)))
(switch-to-buffer "*Debug Output*")
(insert (format nil "~5D: ~A ~A\t~A ~A ~A\n" debug-trace-count buf
(point)
db-string element1 element2))
(setq debug-trace-count (1+ debug-trace-count))
(set-buffer buf)))
;usage: (debug-print "<hogehoge start> " arg1 arg2)
------------------
須田誠也(Seiya Suda)
seiya.suda@xxxxxxxxx
http://member.nifty.ne.jp/seiya-suda/