[xyzzy:01979] デバッグの小知恵
- Subject: [xyzzy:01979] デバッグの小知恵
- From: Yamamoto Shinji <sinj@xxxxxxxxxxxx>
- X-mailer: Denshin 8 Go V321.2b5
- X-yzzy-version: 0.0.0.73
山本です。
info.el の移植でやってた小ネタです。
(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)))
というのを用意しておいて、
(debug-print "<hogehoge start> " arg1 arg2)
のようなのを適当なところに埋めておきました。
C言語で苦し紛れにやる
#indef DEBUG
printf("hogehoge");
#endif
みたいなもんです。
xyzzy の本体で上のもっとまともな奴と、関数呼び出しのトレース表示
が出来れば大規模なプログラムのデバックも可能になるんですが、如何
でしょう?
--
山本真二 sinj@xxxxxxxxxxxx