[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

info-lookup-symbol index case sensitivity

From: Kevin Ryde
Subject: info-lookup-symbol index case sensitivity
Date: Wed, 04 Dec 2002 10:19:19 +1000
User-agent: Gnus/5.090008 (Oort Gnus v0.08) Emacs/21.1 (i386-debian-linux-gnu)

In GNU Emacs 21.1.1 (i386-debian-linux-gnu, X toolkit, Xaw3d scroll bars)
 of 2001-12-07 on raven, modified by Debian
configured using `configure  i386-debian-linux-gnu --prefix=/usr 
--sharedstatedir=/var/lib --libexecdir=/usr/lib --localstatedir=/var/lib 
--infodir=/usr/share/info --mandir=/usr/share/man --with-pop=yes --with-x=yes 
--with-x-toolkit=athena --without-gif'
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
  locale-coding-system: nil
  default-enable-multibyte-characters: t

When the help-data in info-lookup-alist specifies that symbols are
case-sensitive, the index search performed by info-lookup-symbol (C-h
C-i) is instead case-insensitive when searching through index entries.

I'm not aware of any of the manuals in the supplied info-look.el which
have two index entries differing only in case.  But I encountered the
problem while setting up some sh-mode data.  bash.info has a variable
"GROUPS", and sh-utils.info has the program "groups".

The problem can be illustrated with a contrived foo.info below, having
index entries "foo" and "FOO".  Put it and the foo.el below in an
otherwise empty directory and run

        emacs -q -no-site-file -l foo.el

foo.el sets up foo.info as case-sensitive help for fundamental-mode,
and leaves such a buffer with "FOO" and "foo" ready to be looked up
with C-h C-i.

Press C-h C-i on either "FOO" or "foo" and notice that both bring up
the node for lower case "foo", whereas I believe for "FOO" it ought to
bring up the upper case FOO node.

I think this is just a problem with the searching in info-lookup,
since info-lookup-cache records the available index entries in their
correct case.

In fact I believe the use of Info-menu in info-lookup might be the
problem, since it forcibly binds case-fold-search to t.  No doubt
that's good for interactive use, but it's not what info-lookup wants.

I get some joy from the info-lookup.el.diff below, doing a
case-sensitive search in the index node to get to the right spot.

        * info-look.el (info-lookup): Replace Info-menu call with a case
        sensitive search of the index, to preserve sensitivity requested
        by the help data.

I believe this is correct for case-insensitive help modes too, since
the index entries in info-lookup-cache are recorded with their case
unchanged, only the symbols to which they refer are downcased.

Attachment: foo.info
Description: Binary data

Attachment: foo.el
Description: application/emacs-lisp

Attachment: info-look.el.diff
Description: Text document

reply via email to

[Prev in Thread] Current Thread [Next in Thread]