[cmake-developers] [CMake 0014576]: cmake-mode.el is using an illegal keymap

Mantis Bug Tracker mantis at public.kitware.com
Sun Nov 17 18:26:28 EST 2013


The following issue has been SUBMITTED. 
====================================================================== 
http://www.cmake.org/Bug/view.php?id=14576 
====================================================================== 
Reported By:                Paul Smith
Assigned To:                
====================================================================== 
Project:                    CMake
Issue ID:                   14576
Category:                   CMake
Reproducibility:            always
Severity:                   minor
Priority:                   normal
Status:                     new
====================================================================== 
Date Submitted:             2013-11-17 18:26 EST
Last Modified:              2013-11-17 18:26 EST
====================================================================== 
Summary:                    cmake-mode.el is using an illegal keymap
Description: 
The GNU Emacs manual describes the keys in the map C-c <letter> as reserved for
use by the user, where modes should not infringe.  See
http://www.gnu.org/software/emacs/manual/html_node/elisp/Key-Binding-Conventions.html
second bullet:

> Don't define C-c _letter_ as a key in Lisp programs. Sequences
> consisting of C-c and a letter (either upper or lower case) are
> reserved for users; they are the only sequences reserved for users, so
> do not block them.
> Changing all the Emacs major modes to respect this convention was a
> lot of work; abandoning this convention would make that work go to
> waste, and inconvenience users. Please comply with it.

However, in the cmake-mode.el that comes with cmake, it defines a map that uses
those reserved keys:

  (defvar cmake-mode-map
    (let ((map (make-sparse-keymap)))
      (define-key map "\C-ch" 'cmake-help-command)
      (define-key map "\C-cl" 'cmake-help-list-commands)
      (define-key map "\C-cu" 'unscreamify-cmake-buffer)
      map)
    "Keymap used in cmake-mode buffers.")

This map needs to be changed to use some other set of keys, that don't match the
C-c <letter> reserved list.
====================================================================== 

Issue History 
Date Modified    Username       Field                    Change               
====================================================================== 
2013-11-17 18:26 Paul Smith     New Issue                                    
======================================================================




More information about the cmake-developers mailing list