diff options
Diffstat (limited to 'emacs/.emacs.d/lisp/my/my-prog.el')
-rw-r--r-- | emacs/.emacs.d/lisp/my/my-prog.el | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/emacs/.emacs.d/lisp/my/my-prog.el b/emacs/.emacs.d/lisp/my/my-prog.el index faf20b6..92fcf21 100644 --- a/emacs/.emacs.d/lisp/my/my-prog.el +++ b/emacs/.emacs.d/lisp/my/my-prog.el @@ -442,6 +442,11 @@ overlay arrow in source buffer." ;; (accept-process-output (get-buffer-process gud-comint-buffer) .1))) ;; (gud-gdb-completions-1 gud-gdb-fetched-lines))) +(defun my-gud-watch-expr (expr) + (with-current-buffer gud-comint-buffer + (insert "watch -l " expr) + (comint-send-input))) + (defun my-gud-print-expr (expr) (with-current-buffer gud-comint-buffer (insert "p " expr) @@ -449,9 +454,11 @@ overlay arrow in source buffer." (defun my-gud-print-expr-region (b e) (interactive "r") - (if (eq (gdb-get-source-buffer) (current-buffer)) - (my-gud-print-expr (buffer-substring b e)) - (error "Not in the source buffer"))) + (unless (eq (gdb-get-source-buffer) (current-buffer)) + (error "Not in the source buffer")) + (if current-prefix-arg + (my-gud-watch-expr (buffer-substring b e)) + (my-gud-print-expr (buffer-substring b e)))) ;;; which-func (defun my-copy-which-func () |