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

[xyzzy:08505] Re: デバッグについて



こんにちは。

> デバッグの手法がよくわかりません。

同じくよくわかりませんが、
.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/

Index Home