[ESS-bugs] ess-mode 5.2.4; ess-help "s e" fails for Xemacs

Martin Maechler maechler at stat.math.ethz.ch
Wed Jan 5 14:11:33 CET 2005


Thank, you Stephen, for getting back so quickly!

>>>>> "StEgl" == Stephen Eglen <S.J.Eglen at damtp.cam.ac.uk>
>>>>>     on Wed, 5 Jan 2005 11:03:11 +0000 writes:

    >> I just found a (probably very old) bug :
    >> 
    >> The "s <key>" shortcuts in  `ess-help-mode' fail completely in
    >> Xemacs, {both in *help[R](..)* or  *help[S+6](..)* buffers.
    >> 
    >> Since I have never really used Xemacs, I hadn't seen this
    >> earlier.
    >> I use  "s e" (skip to the "Examples:" section) in ess -
    >> *help[.](.)" buffers ``all the time''.
    >> 
    --> of course now we need an Xemacs person to start to look into
    >> this; i.e., not me, if possible.
    >> 
    >> Martin
    >> 
    >> 
    >> Emacs  : XEmacs 21.4 (patch 9) "Informed Management" [Lucid]
    >> (i686-pc-linux, Mule) of Wed Oct 23 2002 on plessner 
    >> Package: ess-mode 5.2.4

    StEgl> hi Martin,
    StEgl> this is odd.  On Xemacs 21.4 (p 15), with ESS from SVN, if I do "?ls" in
    StEgl> an *R* buffer, switch to the help buffer, "s e" will then take me to
    StEgl> the Examples line!  
aah!
good to know it's not on Xemacs universally.   ..

    StEgl> What is the error you get?  Is it that the
    StEgl> keybinding "s" is not taken as a prefix command?

No, unfortunately not `as easy'; the message is

  Invalid section key: e
  ----------------------

and my keybindings look correct, i.e. also contain

    StEgl> s <             beginning-of-buffer
    StEgl> s >             end-of-buffer
    StEgl> s ?             ess-describe-sec-map
    StEgl> s D             ess-skip-to-help-section
    StEgl> s a             ess-skip-to-help-section
    StEgl> s d, s e        ess-skip-to-help-section
    StEgl> s n             ess-skip-to-help-section
    StEgl> s r, s s        ess-skip-to-help-section
    StEgl> s u, s v        ess-skip-to-help-section

As I just found,  "s <" , "s >"  and "s ?" do work correctly;
it's just all those that are bound to "ess-skip-to-help-section"
are failing and the above error message *is* from that function.

You may have noticed that "s" is *not* a prefix command as is
otherwise typical in emacs,
but rather the ess-skip-to-help-section works with
"last-command-char"  -- don't ask me why.

The *-alist looks ok, well, at least identical to the one I see
in GNU emacs :

>>     `ess-help-sec-keys-alist' is a variable declared in Lisp.
>>       -- loaded from "ess-cust"
>> 
>>     Value: ((97 . "\\s *Arguments:") (100 . "\\s *Description:") (68 . "\\s *Details:") (101 . "\\s *Examples:") (110 . "\\s *Note:") (114 . "\\s *References:") (115 . "\\s *See Also:") (117 . "\\s *Usage:") (118 . "\\s *Value[s]?"))
>> 
>>     This value is specific to the current buffer.
>> 
>>     Documentation:
>>     Alist of (key . string) pairs for use in section searching.

Could it be that my version of Xemacs doesn't give correct
values of `last-command-char' ?

Martin




More information about the ESS-bugs mailing list