unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
From: "Drew Adams" <drew.adams@ORACLE.COM>
To: <emacs-pretest-bug@gnu.org>
Subject: RE: 23.0.60; kbd returns wrong value
Date: Fri, 16 May 2008 00:14:30 -0700	[thread overview]
Message-ID: <004201c8b724$7c7cabb0$0200a8c0@us.oracle.com> (raw)
In-Reply-To: <003e01c8b534$31cbdd30$0200a8c0@us.oracle.com>

This problem is more widespread than I thought. Menu items can of course contain
spaces: <My Foobar>, and when used in submenus the same problem arises as for
<Brazilian Portuguese> in a <Describe> submenu.

An there are other keys that have spaces and so could make `edmacro-parse-keys'
choke in the same way (e.g. if in a submenu). In my `global-map', for instance,
I see these keys that contain spaces:

<RHP of Latin-1>
<RHP of Latin-2>
<RHP of Latin-3>
<RHP of Latin-4>
<RHP of TIS620>
<RHP of ISO8859/7>
<RHP of ISO8859/6>
<RHP of ISO8859/8>
<JISX0201 Katakana>
<JISX0201 Roman>
<RHP of ISO8859/5>
<RHP of Latin-5>
<RHP of Latin-9>
<RHP of Latin-8>
<Big5 (Level-1)>
<Big5 (Level-2)>
<VISCII lower>
<VISCII upper>
<Arabic digit>
<Arabic 1-col>
<rev ASCII>
<Arabic 2-col>
<IS 13194>
<Indian glyph>
<Tibetan 1-col>
<Unicode subset 2>
<Unicode subset 3>
<Unicode subset>
<Indian 2-col>
<Tibetan 2-col>

The bug is thus with `edmacro-parse-keys', not with the fact of having keys with
spaces.

> From: Drew Adams Sent: Tuesday, May 13, 2008 1:02 PM
> This is a menu item in menu-bar-help-menu:
> <describe> <describe-language-environment> <European> 
> <Brazilian Portuguese>
>  
> Evaluating this:
> (kbd "<describe> <describe-language-environment> <European> <Brazilian
> Portuguese>")
>  
> produces the following incorrect result:
>  
> [describe describe-language-environment European
>  60 66 114 97 122 105 108 105 97 110 80 111 114
>  116 117 103 117 101 115 101 62]
>  
> After tracing edmacro-parse-keys, the problem seems to be here:
>  
> (while (and (< pos (length string))
>   (string-match "[^ \t\n\f]+" string pos))
>       (let ((word (substring string (match-beginning 0) 
> (match-end 0)))
>  
> The sexp (substring "<describe> 
> <describe-language-environment> <European>
> <Brazilian Portuguese>" 54 64) returns "<Brazilian", which is 
> only half of the
> entry.
>  
> IOW, the code is not expecting a space char. Which is the problem: the
> edmacro-parse-keys code or the definition of the key itself,
> <Brazilian Portuguese>, which includes a space char?
> 
> This problem is not new with Emacs 23, BTW.
>  
> 
> In GNU Emacs 23.0.60.1 (i386-mingw-nt5.1.2600)
>  of 2008-05-04 on LENNART-69DE564
> Windowing system distributor `Microsoft Corp.', version 5.1.2600
> configured using `configure --with-gcc (3.4) --no-opt 
> --cflags -Ic:/g/include
> -fno-crossjumping'
>  
> 
> 
> 
> 





  reply	other threads:[~2008-05-16  7:14 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-05-13 20:01 23.0.60; kbd returns wrong value Drew Adams
2008-05-16  7:14 ` Drew Adams [this message]
2008-05-16  9:32   ` David Kastrup
2008-05-17 15:13     ` Drew Adams
2008-05-17 23:46       ` Drew Adams
2008-05-18  0:00         ` Drew Adams
2008-05-18  3:12     ` Stefan Monnier
2008-05-18  5:32       ` Drew Adams
2008-05-18  9:26         ` More key strangeness (was: 23.0.60; kbd returns wrong value) David Kastrup
2008-05-19  8:20           ` More key strangeness Stefan Monnier

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.gnu.org/software/emacs/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='004201c8b724$7c7cabb0$0200a8c0@us.oracle.com' \
    --to=drew.adams@oracle.com \
    --cc=emacs-pretest-bug@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).