Subject: Re: bug#26658: 25.2; cc-mode doesn't use prog-mode-map as parent for c-mode-base-map

From: Alan Mackenzie <[email-masked]>
Date: Wed, 12 Jul 2017 17:50:03 +0000

Hello, Vasilij.

On Sun, May 07, 2017 at 15:58:34 +0200, Vasilij Schneidermann wrote:
[ .... ]

> > Do you have commit access to the Emacs repository?

> No and I doubt I'll ever get it because I don't understand the commit
> message rules at all.  They appear to be loosely based upon GNU
> changelog guidelines, but with everyone I send patches to interpreting
> them differently, probably because there isn't much substance to them in
> the first place.  I've resorted to using M-x add-change-log-entry,
> copying the result into the commit message and adjusting it describing
> my changes, but there's apparently more to it than that.

I've committed your patch, slightly altered, and am closing the bug.  I
suspect that the commit message I used will be yet another variant.  ;-(
Thanks again for that patch.

> Anyway, here's an updated patch.

> >>From 1e4a92e05b78edb2f58c138aa7792d39a6d9a9cb Mon Sep 17 00:00:00 2001
> From: Vasilij Schneidermann <[email-masked]>
> Date: Sun, 7 May 2017 15:55:49 +0200
> Subject: [PATCH] Make prog-mode-map the parent of c-mode-base-map

> Fixes #26658.

> * lisp/progmodes/cc-mode.el (c-mode-base-map): Make prog-mode-map the
>   parent of c-mode-map if possible.
> ---
>  lisp/progmodes/cc-mode.el | 3 +++
>  1 file changed, 3 insertions(+)

> diff --git a/lisp/progmodes/cc-mode.el b/lisp/progmodes/cc-mode.el
> index 20c63d4dbe..8f9e40bb0d 100644
> --- a/lisp/progmodes/cc-mode.el
> +++ b/lisp/progmodes/cc-mode.el
> @@ -276,6 +276,9 @@ c-bind-special-erase-keys
>      nil

>    (setq c-mode-base-map (make-sparse-keymap))
> +  (when (and (cc-bytecomp-fboundp 'set-keymap-parent)
> +	     (boundp 'prog-mode-map))
> +    (set-keymap-parent c-mode-base-map prog-mode-map))

>    ;; Separate M-BS from C-M-h.  The former should remain
>    ;; backward-kill-word.
> -- 
> 2.12.2

-- 
Alan Mackenzie (Nuremberg, Germany).