Mercurial > emacs
changeset 111850:f2a5b5a7f017
In gdb, try to init comint history from gdbhist.
* lisp/progmodes/gdb-mi.el (gdb): Try to initialize comint input history
from gdb's history file. (Bug#7575)
author | Glenn Morris <rgm@gnu.org> |
---|---|
date | Tue, 07 Dec 2010 21:00:12 -0800 |
parents | 33e39f4c2506 |
children | dd83cbcddf69 |
files | lisp/ChangeLog lisp/progmodes/gdb-mi.el |
diffstat | 2 files changed, 19 insertions(+), 2 deletions(-) [+] |
line wrap: on
line diff
--- a/lisp/ChangeLog Tue Dec 07 19:47:27 2010 -0800 +++ b/lisp/ChangeLog Tue Dec 07 21:00:12 2010 -0800 @@ -1,5 +1,8 @@ 2010-12-08 Glenn Morris <rgm@gnu.org> + * progmodes/gdb-mi.el (gdb): Try to initialize comint input history + from gdb's history file. (Bug#7575) + * mail/emacsbug.el (report-emacs-bug): Try to handle some other mail clients.
--- a/lisp/progmodes/gdb-mi.el Tue Dec 07 19:47:27 2010 -0800 +++ b/lisp/progmodes/gdb-mi.el Tue Dec 07 21:00:12 2010 -0800 @@ -647,7 +647,22 @@ (gud-common-init command-line nil 'gud-gdbmi-marker-filter) (set (make-local-variable 'gud-minor-mode) 'gdbmi) (setq comint-input-sender 'gdb-send) - + (when (ring-empty-p comint-input-ring) ; cf shell-mode + (let (hfile) + (when (catch 'done + (dolist (file '(".gdbinit" "~/.gdbinit")) + (if (file-readable-p (setq file (expand-file-name file))) + (with-temp-buffer + (insert-file-contents file) + (and (re-search-forward + "^ *set history filename *\\(.*\\)" nil t) + (file-readable-p + (setq hfile (expand-file-name + (match-string 1) + (file-name-directory file)))) + (throw 'done t)))))) + (set (make-local-variable 'comint-input-ring-file-name) hfile) + (comint-read-input-ring t)))) (gud-def gud-tbreak "tbreak %f:%l" "\C-t" "Set temporary breakpoint at current line.") (gud-def gud-jump @@ -4191,5 +4206,4 @@ (provide 'gdb-mi) -;; arch-tag: 1b41ea2b-f364-4cec-8f35-e02e4fe01912 ;;; gdb-mi.el ends here