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

Re: [fwd: Bug#340125: octave-mode rebinds M-BS]



* Aaron M. Ucko <ucko@debian.org> [2005-11-21 14:29]:

> Rafael Laboissiere <rafael@debian.org> writes:
> 
> > I am forwarding below a bug report filed against the octave2.9-emacsen
> > package.  The submitter claims that the meta-backspace should not be
> > bound by octave-mode.
> 
> There is a subtle but important distinction between M-DEL (bound to
> backward-kill-word and not overriden in octave-mode AFAICT) and M-C-h
> (bound to mark-defun by default, and overriden to octave-mark-defun in
> octave-mode).  If backspace is generating C-h rather than DEL, then
> that's a misconfiguration on the user's part that will generally play
> badly with Emacs.

I think I found the source of the problem.  The bug submitter is using
XEmacs which, according to the Lispref documentation (Section 26.5 "Key
Sequences"), treats control-h and backspace likewise:

    For backward compatibility, a key sequence may also be represented by
    a string.  In this case, it represents the key sequence(s) that would
    produce that sequence of ASCII characters in a purely ASCII world.
    For example, a string containing the ASCII backspace character,
    `"\^H"', would represent two key sequences: `(control h)' and
    `backspace'. Binding a command to this will actually bind both of
    those key sequences.

According to the above, I think that the command:

    (define-key map "\M-\C-h" 'octave-mark-defun)

in octave-mod.el also forces the implicit binding:

    (define-key map [(meta backspace)] 'octave-mark-defun)
    
Could people in the debian-emacsen mailing list who are users of
XEmacs confirm this please?

-- 
Rafael



Reply to: