From: Stefan Kangas <stefankangas@gmail.com>
Date: Tue, 18 Feb 2025 05:11:24 +0000 (+0100)
Subject: Prefer defvar-keymap in tcl.el
X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=cb55fa35c1df57d4a9be35337432cf907d0cc2ad;p=emacs.git

Prefer defvar-keymap in tcl.el

* lisp/progmodes/tcl.el (tcl-mode-map, inferior-tcl-mode-map): Prefer
defvar-keymap.

(cherry picked from commit c180966b313c87fd8a3a48218340b48ac0b933f2)
---

diff --git a/lisp/progmodes/tcl.el b/lisp/progmodes/tcl.el
index faf5b583617..c4b40f4a170 100644
--- a/lisp/progmodes/tcl.el
+++ b/lisp/progmodes/tcl.el
@@ -201,26 +201,24 @@ quoted for Tcl."
 ;; Keymaps, abbrevs, syntax tables.
 ;;
 
-(defvar tcl-mode-map
-  (let ((map (make-sparse-keymap)))
-    (define-key map "{" 'tcl-electric-char)
-    (define-key map "}" 'tcl-electric-brace)
-    (define-key map "[" 'tcl-electric-char)
-    (define-key map "]" 'tcl-electric-char)
-    (define-key map ";" 'tcl-electric-char)
-    (define-key map "#" 'tcl-electric-hash) ;Remove?  -stef
-    (define-key map "\e\C-q" 'tcl-indent-exp)
-    (define-key map "\177" 'backward-delete-char-untabify)
-    (define-key map "\t" 'tcl-indent-command)
-    (define-key map "\M-\C-x" 'tcl-eval-defun)
-    (define-key map "\C-c\C-i" 'tcl-help-on-word)
-    (define-key map "\C-c\C-v" 'tcl-eval-defun)
-    (define-key map "\C-c\C-f" 'tcl-load-file)
-    (define-key map "\C-c\C-t" 'inferior-tcl)
-    (define-key map "\C-c\C-x" 'tcl-eval-region)
-    (define-key map "\C-c\C-s" 'switch-to-tcl)
-    map)
-  "Keymap used in `tcl-mode'.")
+(defvar-keymap tcl-mode-map
+  :doc "Keymap used in `tcl-mode'."
+  "{"       #'tcl-electric-char
+  "}"       #'tcl-electric-brace
+  "["       #'tcl-electric-char
+  "]"       #'tcl-electric-char
+  ";"       #'tcl-electric-char
+  "#"       #'tcl-electric-hash ;Remove?  -stef
+  "C-M-q"   #'tcl-indent-exp
+  "DEL"     #'backward-delete-char-untabify
+  "TAB"     #'tcl-indent-command
+  "C-M-x"   #'tcl-eval-defun
+  "C-c C-i" #'tcl-help-on-word
+  "C-c C-v" #'tcl-eval-defun
+  "C-c C-f" #'tcl-load-file
+  "C-c C-t" #'inferior-tcl
+  "C-c C-x" #'tcl-eval-region
+  "C-c C-s" #'switch-to-tcl)
 
 (defvar tcl-mode-syntax-table
   (let ((st (make-syntax-table)))
@@ -249,23 +247,21 @@ quoted for Tcl."
     st)
   "Syntax table in use in `tcl-mode' buffers.")
 
-(defvar inferior-tcl-mode-map
+(defvar-keymap inferior-tcl-mode-map
+  :doc "Keymap used in `inferior-tcl-mode'."
   ;; FIXME we override comint keybindings here.
   ;; Maybe someone has a better set?
-  (let ((map (make-sparse-keymap)))
-    ;; Will inherit from `comint-mode-map' thanks to define-derived-mode.
-    (define-key map "\t" #'completion-at-point)
-    (define-key map "\M-?" #'comint-dynamic-list-filename-completions)
-    (define-key map "\177" #'backward-delete-char-untabify)
-    (define-key map "\M-\C-x" #'tcl-eval-defun)
-    (define-key map "\C-c\C-i" #'tcl-help-on-word)
-    (define-key map "\C-c\C-v" #'tcl-eval-defun)
-    (define-key map "\C-c\C-f" #'tcl-load-file)
-    (define-key map "\C-c\C-t" #'inferior-tcl)
-    (define-key map "\C-c\C-x" #'tcl-eval-region)
-    (define-key map "\C-c\C-s" #'switch-to-tcl)
-    map)
-  "Keymap used in `inferior-tcl-mode'.")
+  ;; Will inherit from `comint-mode-map' thanks to define-derived-mode.
+  "TAB"     #'completion-at-point
+  "M-?"     #'comint-dynamic-list-filename-completions
+  "DEL"     #'backward-delete-char-untabify
+  "C-M-x"   #'tcl-eval-defun
+  "C-c C-i" #'tcl-help-on-word
+  "C-c C-v" #'tcl-eval-defun
+  "C-c C-f" #'tcl-load-file
+  "C-c C-t" #'inferior-tcl
+  "C-c C-x" #'tcl-eval-region
+  "C-c C-s" #'switch-to-tcl)
 
 (easy-menu-define tcl-mode-menu tcl-mode-map "Menu used in `tcl-mode'."
   '("Tcl"