Skip to content

Commit c95dd9a

Browse files
committed
Simplify keymap defintion using defvar-keymap (godotengine#208)
* Simplify keymap with defvar-keymap macro * Update requires to 29.1 * Replace C-c i with C-c C-i (See godotengine#210) * Replace C-c n with C-c C-n (See godotengine#210)
1 parent 0e08f18 commit c95dd9a

1 file changed

Lines changed: 45 additions & 48 deletions

File tree

gdscript-mode.el

Lines changed: 45 additions & 48 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
;; Maintainer: Jen-Chieh Shen <jcs090218@gmail.com>
88
;; URL: https://github.com/godotengine/emacs-gdscript-mode/
99
;; Version: 1.5.0
10-
;; Package-Requires: ((emacs "28.1"))
10+
;; Package-Requires: ((emacs "29.1"))
1111
;; Created: Jan 2020
1212
;; Keywords: languages
1313

@@ -63,53 +63,50 @@
6363
(push (cons 'gdscript-mode #'gdscript-eglot-contact)
6464
eglot-server-programs)))
6565

66-
(defvar gdscript-mode-map
67-
(let ((map (make-sparse-keymap)))
68-
;; Movement
69-
(define-key map [remap backward-sentence] 'gdscript-nav-backward-block)
70-
(define-key map [remap forward-sentence] 'gdscript-nav-forward-block)
71-
(define-key map [remap backward-up-list] 'gdscript-nav-backward-up-list)
72-
(define-key map [remap mark-defun] 'gdscript-mark-defun)
73-
(define-key map (kbd "C-c C-j") 'imenu)
74-
;; Indent specific
75-
(define-key map (kbd "<backspace>") 'gdscript-indent-dedent-line-backspace)
76-
(define-key map (kbd "<backtab>") 'gdscript-indent-dedent-line)
77-
;; Insertion.
78-
(define-key map (kbd "C-c i") 'gdscript-completion-insert-file-path-at-point)
79-
;; Formatting.
80-
(define-key map (kbd "C-c C-f r") 'gdscript-format-region)
81-
(define-key map (kbd "C-c C-f b") 'gdscript-format-buffer)
82-
;; Run in Godot.
83-
(define-key map (kbd "C-c C-r p") 'gdscript-godot-open-project-in-editor)
84-
(define-key map (kbd "C-c C-r r") 'gdscript-godot-run-project)
85-
(define-key map (kbd "<f5>") 'gdscript-godot-run-project)
86-
(define-key map (kbd "C-c C-r d") 'gdscript-godot-run-project-debug)
87-
(define-key map (kbd "C-c C-r s") 'gdscript-godot-run-current-scene)
88-
(define-key map (kbd "<f6>") 'gdscript-godot-run-current-scene)
89-
(define-key map (kbd "C-c C-r q") 'gdscript-godot-run-current-scene-debug)
90-
(define-key map (kbd "C-c C-r e") 'gdscript-godot-edit-current-scene)
91-
(define-key map (kbd "C-c C-r x") 'gdscript-godot-run-current-script)
92-
;; Docs.
93-
(define-key map (kbd "C-c C-b a") 'gdscript-docs-browse-api)
94-
(define-key map (kbd "C-c C-b o") 'gdscript-docs-browse-symbol-at-point)
95-
(define-key map (kbd "C-c C-b s") 'gdscript-docs-online-search-api)
96-
;; Hydra
97-
(define-key map (kbd "C-c r") 'gdscript-hydra-show)
98-
;; Debugger
99-
(define-key map (kbd "C-c C-d C-d s") 'gdscript-debug-display-stack-frame-vars-buffer)
100-
(define-key map (kbd "C-c C-d C-d d") 'gdscript-debug-display-stack-dump-buffer)
101-
(define-key map (kbd "C-c C-d C-d b") 'gdscript-debug-display-breakpoint-buffer)
102-
(define-key map (kbd "C-c C-d C-d i") 'gdscript-debug-display-inspector-buffer)
103-
(define-key map (kbd "<f9>") 'gdscript-debug-toggle-breakpoint)
104-
(define-key map (kbd "C-c C-d q") 'gdscript-debug-make-server)
105-
(define-key map (kbd "C-c C-d n") 'gdscript-debug-next)
106-
(define-key map (kbd "C-c C-d c") 'gdscript-debug-continue)
107-
(define-key map (kbd "<f7>") 'gdscript-debug-continue)
108-
(define-key map (kbd "C-c C-d s") 'gdscript-debug-step)
109-
;; Debugger Hydra
110-
(define-key map (kbd "C-c n") 'gdscript-debug-hydra)
111-
map)
112-
"Keymap for `gdscript-mode'.")
66+
(defvar-keymap gdscript-mode-map
67+
:doc "Keymap for `gdscript-mode'."
68+
"<remap> <backward-sentence>" 'gdscript-nav-backward-block
69+
"<remap> <forward-sentence>" 'gdscript-nav-forward-block
70+
"<remap> <backward-up-list>" 'gdscript-nav-backward-up-list
71+
"<remap> <mark-defun>" 'gdscript-mark-defun
72+
"C-c C-j" 'imenu
73+
;; Indent specific
74+
"<backspace>" 'gdscript-indent-dedent-line-backspace
75+
"<backtab>" 'gdscript-indent-dedent-line
76+
;; Insertion.
77+
"C-c C-i" 'gdscript-completion-insert-file-path-at-point
78+
;; Formatting.
79+
"C-c C-f r" 'gdscript-format-region
80+
"C-c C-f b" 'gdscript-format-buffer
81+
;; Run in Godot.
82+
"C-c C-r p" 'gdscript-godot-open-project-in-editor
83+
"C-c C-r r" 'gdscript-godot-run-project
84+
"<f5>" 'gdscript-godot-run-project
85+
"C-c C-r d" 'gdscript-godot-run-project-debug
86+
"C-c C-r s" 'gdscript-godot-run-current-scene
87+
"<f6>" 'gdscript-godot-run-current-scene
88+
"C-c C-r q" 'gdscript-godot-run-current-scene-debug
89+
"C-c C-r e" 'gdscript-godot-edit-current-scene
90+
"C-c C-r x" 'gdscript-godot-run-current-script
91+
;; Docs.
92+
"C-c C-b a" 'gdscript-docs-browse-api
93+
"C-c C-b o" 'gdscript-docs-browse-symbol-at-point
94+
"C-c C-b s" 'gdscript-docs-online-search-api
95+
;; Hydra
96+
"C-c r" 'gdscript-hydra-show
97+
;; Debugger
98+
"C-c C-d C-d s" 'gdscript-debug-display-stack-frame-vars-buffer
99+
"C-c C-d C-d d" 'gdscript-debug-display-stack-dump-buffer
100+
"C-c C-d C-d b" 'gdscript-debug-display-breakpoint-buffer
101+
"C-c C-d C-d i" 'gdscript-debug-display-inspector-buffer
102+
"<f9>" 'gdscript-debug-toggle-breakpoint
103+
"C-c C-d q" 'gdscript-debug-make-server
104+
"C-c C-d n" 'gdscript-debug-next
105+
"C-c C-d c" 'gdscript-debug-continue
106+
"<f7>" 'gdscript-debug-continue
107+
"C-c C-d s" 'gdscript-debug-step
108+
;; Debugger Hydra
109+
"C-c C-n" 'gdscript-debug-hydra)
113110

114111
(easy-menu-define gdscript-mode-menu gdscript-mode-map
115112
"Menu for GDScript mode."

0 commit comments

Comments
 (0)