Subject: some files bind to global-map "C-x" instead of ctl-x-map
From: Teika Kazura <[email-masked]>
To: [email-masked]
Date: Fri, 20 Jan 2012 21:23:42 +0900 (JST)
List-Id: <debbugs-submit.debbugs.gnu.org>

Hi, Emacs developers.

In recent versions of emacs - at least in 23.3.3 and 24.0.92 -
some files do
  (define-key global-map "\C-x\C-j" 'some-command)
but it has to be
  (define-key ctl-x-map "\C-j" 'some-command)
If you bind "C-x" to non-keymap, you'll receive an error.

I've searched for "define-key.*global.*C-x" with the tool "ack" (it's
 like grep) in emacs-24.0.92/lisp/, and all hits are:
------------------------------------------------------------------------
obsolete/iso-insert.el:624:      (define-key global-map "\C-x8" 8859-1-map))
dired-x.el:88:               (define-key global-map "\C-x\C-j" 'dired-jump)
dired-x.el:89:               (define-key global-map "\C-x4\C-j" 'dired-jump-other-window))
dired-x.el:91:               (define-key global-map "\C-x\C-j" nil))
dired-x.el:93:               (define-key global-map "\C-x4\C-j" nil))))
vc/vc-hooks.el:944:(define-key global-map "\C-xv" 'vc-prefix-map)
------------------------------------------------------------------------

There's also lookup-key, but I don't know how to fix some of them.
All occurrences are:
------------------------------------------------------------------------
eshell/em-term.el:221:;     (lookup-key (current-global-map) "\C-x"))
eshell/em-term.el:244:;       (copy-keymap (lookup-key (current-global-map) "\C-x")))
term.el:911:    (copy-keymap (lookup-key (current-global-map) "\C-x")))
term.el:3484:   (lookup-key (current-global-map) "\C-x"))
obsolete/iso-insert.el:623:   (if (not (lookup-key global-map "\C-x8"))
dired-x.el:90:           (if (eq 'dired-jump (lookup-key global-map "\C-x\C-j"))
dired-x.el:92:           (if (eq 'dired-jump-other-window (lookup-key global-map "\C-x4\C-j"))
------------------------------------------------------------------------

Thank you very much for developing Emacs.

Sincerely,
Teika (Teika kazura)