summaryrefslogtreecommitdiff
path: root/lisp/info.el
diff options
context:
space:
mode:
authorJuri Linkov <juri@jurta.org>2008-12-19 00:20:48 +0000
committerJuri Linkov <juri@jurta.org>2008-12-19 00:20:48 +0000
commit74a131b6a120994b4851b1608166370cc14e27dd (patch)
tree16b4c8a075247a683af435f0cfc75e4201f2adff /lisp/info.el
parent73ef3bde2124bc05c093a37d7f6634a59587ded4 (diff)
downloademacs-74a131b6a120994b4851b1608166370cc14e27dd.tar.gz
(Info-isearch-search): Implement lax version of
incremental word search in Info. (Info-isearch-start): Set Info-isearch-initial-node to the current node when search is nonincremental to not stop at the initial node in this case. (Info-mode-map): Unbind "\M-s" from `Info-search'.
Diffstat (limited to 'lisp/info.el')
-rw-r--r--lisp/info.el14
1 files changed, 10 insertions, 4 deletions
diff --git a/lisp/info.el b/lisp/info.el
index b120d3d7379..f45aa41de30 100644
--- a/lisp/info.el
+++ b/lisp/info.el
@@ -1815,7 +1815,12 @@ If DIRECTION is `backward', search in the reverse direction."
(replace-regexp-in-string
"^\\W+\\|\\W+$" "" string)
nil t)
- "\\b")
+ ;; Lax version of word search
+ (if (or isearch-nonincremental
+ (eq (length string)
+ (length (isearch-string-state
+ (car isearch-cmds)))))
+ "\\b"))
bound noerror count
(unless isearch-forward 'backward))
(Info-search (if isearch-regexp string (regexp-quote string))
@@ -1845,7 +1850,10 @@ If DIRECTION is `backward', search in the reverse direction."
(progn (Info-find-node file node) (sit-for 0))))
(defun Info-isearch-start ()
- (setq Info-isearch-initial-node nil))
+ (setq Info-isearch-initial-node
+ ;; Don't stop at initial node for nonincremental search.
+ ;; Otherwise this variable is set after first search failure.
+ (and isearch-nonincremental Info-current-node)))
(defun Info-isearch-filter-predicate (beg-found found)
"Skip invisible text, node header line and Tag Table node."
@@ -3241,8 +3249,6 @@ If FORK is non-nil, it is passed to `Info-goto-node'."
(define-key map "r" 'Info-history-forward)
(define-key map "s" 'Info-search)
(define-key map "S" 'Info-search-case-sensitively)
- ;; For consistency with Rmail.
- (define-key map "\M-s" 'Info-search)
(define-key map "\M-n" 'clone-buffer)
(define-key map "t" 'Info-top-node)
(define-key map "T" 'Info-toc)