>>>>> "BK" == Bradley M Kuhn <[EMAIL PROTECTED]> writes:
BK> I use Info-search (which is also bound to `s' as
BK> well as `M-s' in the Emacs Info) frequently, but I
BK> have always been annoyed that it didn't have two
BK> features:
BK> * There is no general rule for "repeat search". I
BK> can hit `s' again, and type in my search
BK> expression again (or pull it from the yank buffer
BK> or a register, if I remember to save it in one),
BK> but this isn't the same. Basically, I wish it
BK> acted more like C-s (isearch-forward) does in a
BK> plain Emacs buffer.
Hitting `s' by itself reuses the previous regexp.
Here is a patch to add this statement in the doc-string of
Info-search command. The patch is against info.el from
Emacs 20.6.
bash-2.03$ diff -c info.el-orig info.el
*** info.el-orig Thu Jun 15 19:56:44 2000
--- info.el Thu Jun 15 19:58:24 2000
***************
*** 952,958 ****
"Default regexp for \\<Info-mode-map>\\[Info-search] command to search for.")
(defun Info-search (regexp)
! "Search for REGEXP, starting from point, and select node it's found in."
(interactive "sSearch (regexp): ")
(if transient-mark-mode (deactivate-mark))
(if (equal regexp "")
--- 952,959 ----
"Default regexp for \\<Info-mode-map>\\[Info-search] command to search for.")
(defun Info-search (regexp)
! "Search for REGEXP, starting from point, and select node it's found in.
! Just hit RETURN to use the last REGEXP."
(interactive "sSearch (regexp): ")
(if transient-mark-mode (deactivate-mark))
(if (equal regexp "")
bash-2.03$
BK> * I would like a feature that works similar to what
BK> M-x grep would give me for searching a man page.
BK> I have never been able to find one in the Emacs
BK> browser. Basically, I'd like to search an info
BK> file for a particular string of text, and see a
BK> context of where they appear, and be able to
BK> browse via C-x ` for each location (like one does
BK> for grep's and compiles).
You could visit the `*' node then do `M-x occur' for
non-split info files. Alternately, you can use `M-x
grep'. In the *info* buffer, you should be able to type `g
*' to visit the `*' node, which simply means the whole
file. However, due to a bug, this does not work. For now you
can visit the `*' node by hitting `g ()*'.
The patch below fix allows `g *' to work. I've sent this to
RMS months before Emacs 20.6 came out. He acknowleged the
receipt of my patch. However, even Emacs 20.7 does not have
this patch. Perhaps this got lost somehow. So here it is.
This simply adds "*" to the node name completion list so
that subsequent use of the alist by completing-read function
with 'requie-match option turned on makes it work.
bash-2.03$ diff -c info.el-ryk1 info.el-ryk2
*** info.el-ryk1 Thu Jun 15 20:06:49 2000
--- info.el-ryk2 Thu Jun 15 20:07:36 2000
***************
*** 935,941 ****
(cons (list (buffer-substring (match-beginning 1)
(match-end 1)))
compl))))))))
! (setq Info-current-file-completions compl))))
(defun Info-restore-point (hl)
"If this node has been visited, restore the point value when we left."
--- 935,941 ----
(cons (list (buffer-substring (match-beginning 1)
(match-end 1)))
compl))))))))
! (setq Info-current-file-completions (cons '("*") compl)))))
(defun Info-restore-point (hl)
"If this node has been visited, restore the point value when we left."
bash-2.03$
BK> Emacs' Info Browser would be completely perfect for
BK> me if I had these things. :)
I hope Info Browser is `perfect' for you now.
If not, try `M-x info RET' followed by `M-x speedbar RET'.
But -speedbar-fetch-file-nodes