Minor fix for eshell-previous-matching-input (Bug#7585).

* lisp/eshell/em-hist.el (eshell-previous-matching-input): Signal error
if point is not behind eshell-last-output-end (Bug#7585).
This commit is contained in:
Leo Liu 2010-12-17 19:04:40 +08:00 committed by Chong Yidong
parent 4bf3e46ed9
commit c33fa63197
2 changed files with 8 additions and 1 deletions

View file

@ -1,3 +1,8 @@
2010-12-17 Leo <sdl.web@gmail.com>
* eshell/em-hist.el (eshell-previous-matching-input): Signal error
if point is not behind eshell-last-output-end (Bug#7585).
2010-12-16 Chong Yidong <cyd@stupidchicken.com>
* textmodes/rst.el (rst-compile-pdf-preview)

View file

@ -837,6 +837,8 @@ With prefix argument N, search for Nth previous match.
If N is negative, find the next or Nth next match."
(interactive (eshell-regexp-arg "Previous input matching (regexp): "))
(setq arg (eshell-search-arg arg))
(if (> eshell-last-output-end (point))
(error "Point not located after prompt"))
(let ((pos (eshell-previous-matching-input-string-position regexp arg)))
;; Has a match been found?
(if (null pos)
@ -844,7 +846,7 @@ If N is negative, find the next or Nth next match."
(setq eshell-history-index pos)
(unless (minibuffer-window-active-p (selected-window))
(message "History item: %d" (- (ring-length eshell-history-ring) pos)))
;; Can't use kill-region as it sets this-command
;; Can't use kill-region as it sets this-command
(delete-region eshell-last-output-end (point))
(insert-and-inherit (eshell-get-history pos)))))