;; check all text from comint-last-input-end to process-mark.
; FIXME: Add unwind-protect?
- (if dbgr-track-mode
+ (if (and dbgr-track-mode (dbgr-cmdbuf? (current-buffer)))
(let* ((cmd-buff (current-buffer))
(cmd-mark (point-marker))
(curr-proc (get-buffer-process cmd-buff))
(last-output-start (max comint-last-input-end
(- last-output-end dbgr-track-char-range))))
(dbgr-track-from-region last-output-start
- last-output-end cmd-mark cmd-buff)))
+ last-output-end cmd-mark cmd-buff
+ 't)))
)
(defun dbgr-track-eshell-output-filter-hook()
(cmd-mark (point-marker))
(loc (dbgr-track-from-region eshell-last-output-start
eshell-last-output-end cmd-mark)))
- (dbgr-track-loc-action loc cmd-buff)))
+ (dbgr-track-loc-action loc cmd-buff 't)))
)
-(defun dbgr-track-from-region(from to &optional cmd-mark opt-cmdbuf)
+(defun dbgr-track-from-region(from to &optional cmd-mark opt-cmdbuf
+ shortkey-on-tracing?)
"Find and position a buffer at the location found in the marked region.
You might want to use this function interactively after marking a
(let ((selected-frame
(or (not frame-num)
(eq frame-num (dbgr-cmdbuf-pat "top-frame-num")))))
- (dbgr-track-loc-action loc cmdbuf (not selected-frame))
+ (dbgr-track-loc-action loc cmdbuf (not selected-frame)
+ shortkey-on-tracing?)
(dbgr-cmdbuf-info-in-debugger?= 't)
(dbgr-cmdbuf-mode-line-update)
)
(interactive)
(dbgr-track-hist-fn-internal 'dbgr-loc-hist-oldest))
-(defun dbgr-track-loc-action (loc cmdbuf &optional not-selected-frame)
+(defun dbgr-track-loc-action (loc cmdbuf &optional not-selected-frame
+ shortkey-on-tracing?)
"If loc is valid, show loc and do whatever actions we do for
encountering a new loc."
(if (dbgr-loc? loc)
(with-current-buffer srcbuf
(dbgr-short-key-mode-setup
- (or dbgr-short-key-on-tracing? shortkey-mode?)))
+ (and shortkey-on-tracing?
+ (or dbgr-short-key-on-tracing? shortkey-mode?))
+ ))
;; Do we need to go back to the process/command buffer because other
;; output-filter hooks run after this may assume they are in that