Subject: 23.1.92; Info-index puts cursor at wrong position

From: enami tsugutomo <[email-masked]>
Date: Fri, 26 Feb 2010 10:26:06 +0900 (JST)

Info-index puts cursor at wrong position.  The key sequence in `Recent
input' below is the example when `save-excursion' is searched on emacs
lisp refernec manual.  Ideally (and acutually at least emacs 20.7 does)
it puts cursor at the line here:

 -- Special Form: save-excursion body...

.. but instead it puts 2 lines below.

I guess Info-index-next should be changed as follows:

=== modified file 'lisp/info.el'
*** lisp/info.el	2010-02-10 20:04:51 +0000
--- lisp/info.el	2010-02-26 00:46:14 +0000
***************
*** 3062,3068 ****
  	  num (1- num)))
    (Info-goto-node (nth 1 (car Info-index-alternatives)))
    (if (> (nth 3 (car Info-index-alternatives)) 0)
!       (forward-line (1- (nth 3 (car Info-index-alternatives))))
      (forward-line 3)			; don't search in headers
      (let ((name (car (car Info-index-alternatives))))
        (Info-find-index-name name)))
--- 3062,3069 ----
  	  num (1- num)))
    (Info-goto-node (nth 1 (car Info-index-alternatives)))
    (if (> (nth 3 (car Info-index-alternatives)) 0)
!       (forward-line (- (nth 3 (car Info-index-alternatives))
! 		       (line-number-at-pos)))
      (forward-line 3)			; don't search in headers
      (let ((name (car (car Info-index-alternatives))))
        (Info-find-index-name name)))

... when following change was done.

------------------------------------------------------------
revno: 91515
committer: Juri Linkov <[email-masked]>
timestamp: Sat 2008-10-18 23:04:38 +0000
message:
  (Info-find-node-2): Put initial point below the header line and breadcrumbs line.
------------------------------------------------------------

enami.

In GNU Emacs 23.1.92.1 (x86_64--netbsd)
 of 2010-02-24 on rplaca.sm.sony.co.jp
configured using `configure  'x86_64--netbsd' '--with-x=no' 'build_alias=x86_64--netbsd' 'host_alias=x86_64--netbsd' 'target_alias=x86_64--netbsd''

Important settings:
  value of $LC_ALL: nil
  value of $LC_COLLATE: nil
  value of $LC_CTYPE: nil
  value of $LC_MESSAGES: nil
  value of $LC_MONETARY: nil
  value of $LC_NUMERIC: nil
  value of $LC_TIME: nil
  value of $LANG: nil
  value of $XMODIFIERS: nil
  locale-coding-system: nil
  default enable-multibyte-characters: t

Major mode: Info

Minor modes in effect:
  menu-bar-mode: t
  file-name-shadow-mode: t
  global-font-lock-mode: t
  font-lock-mode: t
  auto-encryption-mode: t
  auto-compression-mode: t
  line-number-mode: t
  transient-mark-mode: t

Recent input:
ESC x i n f o RET C-s e l i s p C-a m RET i s a v e 
- e x c u r s i o n RET ESC x r e p o r TAB RET

Recent messages:
("emacs")
For information about GNU Emacs and the GNU system, type C-h C-a.
Source file `/home/enami/src/emacs/lisp/info.el' newer than byte-compiled file
Composing main Info directory...done
Mark saved where search started
Found `save-excursion' in Index.  (Only match)

Load-path shadows:
None found.

Features:
(shadow sort mail-extr message sendmail regexp-opt ecomplete rfc822 mml
mml-sec password-cache mm-decode mm-bodies mm-encode mailcap mail-parse
rfc2231 rfc2047 rfc2045 qp ietf-drums mailabbrev nnheader gnus-util
netrc time-date mm-util mail-prsvr gmm-utils wid-edit mailheader canlock
sha1 hex-util hashcash mail-utils emacsbug multi-isearch info tool-bar
easymenu ediff-hook vc-hooks lisp-float-type lisp-mode register page
menu-bar rfn-eshadow timer jit-lock font-lock syntax facemenu font-core
frame cham georgian utf-8-lang misc-lang vietnamese tibetan thai
tai-viet lao korean japanese hebrew greek romanian slovak czech european
ethiopic indian cyrillic chinese case-table epa-hook jka-cmpr-hook help
simple abbrev loaddefs button minibuffer faces cus-face files
text-properties overlay md5 base64 format env code-pages mule custom
widget hashtable-print-readable backquote make-network-process multi-tty
emacs)