@@ -191,38 +191,50 @@ Out-of-the box clojure-mode understands lein, boot and gradle."
191191 (and (listp value)
192192 (cl-every 'stringp value))))
193193
194+ (defcustom clojure-refactor-map-prefix (kbd " C-c C-r" )
195+ " Clojure refactor keymap prefix."
196+ :group 'clojure
197+ :type 'string
198+ :package-version '(clojure-mode . " 5.6.0" ))
199+
200+ (defvar clojure-refactor-map
201+ (let ((map (make-sparse-keymap )))
202+ (define-key map (kbd " C-t" ) #'clojure-thread )
203+ (define-key map (kbd " t" ) #'clojure-thread )
204+ (define-key map (kbd " C-u" ) #'clojure-unwind )
205+ (define-key map (kbd " u" ) #'clojure-unwind )
206+ (define-key map (kbd " C-f" ) #'clojure-thread-first-all )
207+ (define-key map (kbd " f" ) #'clojure-thread-first-all )
208+ (define-key map (kbd " C-l" ) #'clojure-thread-last-all )
209+ (define-key map (kbd " l" ) #'clojure-thread-last-all )
210+ (define-key map (kbd " C-a" ) #'clojure-unwind-all )
211+ (define-key map (kbd " a" ) #'clojure-unwind-all )
212+ (define-key map (kbd " C-p" ) #'clojure-cycle-privacy )
213+ (define-key map (kbd " p" ) #'clojure-cycle-privacy )
214+ (define-key map (kbd " C-(" ) #'clojure-convert-collection-to-list )
215+ (define-key map (kbd " (" ) #'clojure-convert-collection-to-list )
216+ (define-key map (kbd " C-'" ) #'clojure-convert-collection-to-quoted-list )
217+ (define-key map (kbd " '" ) #'clojure-convert-collection-to-quoted-list )
218+ (define-key map (kbd " C-{" ) #'clojure-convert-collection-to-map )
219+ (define-key map (kbd " {" ) #'clojure-convert-collection-to-map )
220+ (define-key map (kbd " C-[" ) #'clojure-convert-collection-to-vector )
221+ (define-key map (kbd " [" ) #'clojure-convert-collection-to-vector )
222+ (define-key map (kbd " C-#" ) #'clojure-convert-collection-to-set )
223+ (define-key map (kbd " #" ) #'clojure-convert-collection-to-set )
224+ (define-key map (kbd " C-i" ) #'clojure-cycle-if )
225+ (define-key map (kbd " i" ) #'clojure-cycle-if )
226+ (define-key map (kbd " n i" ) #'clojure-insert-ns-form )
227+ (define-key map (kbd " n h" ) #'clojure-insert-ns-form-at-point )
228+ (define-key map (kbd " n u" ) #'clojure-update-ns )
229+ (define-key map (kbd " n s" ) #'clojure-sort-ns ))
230+ " Keymap for Clojure refactoring commands." )
231+ (fset 'clojure-refactor-map clojure-refactor-map)
232+
194233(defvar clojure-mode-map
195234 (let ((map (make-sparse-keymap )))
196235 (define-key map (kbd " C-:" ) #'clojure-toggle-keyword-string )
197236 (define-key map (kbd " C-c SPC" ) #'clojure-align )
198- (define-key map (kbd " C-c C-r C-t" ) #'clojure-thread )
199- (define-key map (kbd " C-c C-r t" ) #'clojure-thread )
200- (define-key map (kbd " C-c C-r C-u" ) #'clojure-unwind )
201- (define-key map (kbd " C-c C-r u" ) #'clojure-unwind )
202- (define-key map (kbd " C-c C-r C-f" ) #'clojure-thread-first-all )
203- (define-key map (kbd " C-c C-r f" ) #'clojure-thread-first-all )
204- (define-key map (kbd " C-c C-r C-l" ) #'clojure-thread-last-all )
205- (define-key map (kbd " C-c C-r l" ) #'clojure-thread-last-all )
206- (define-key map (kbd " C-c C-r C-a" ) #'clojure-unwind-all )
207- (define-key map (kbd " C-c C-r a" ) #'clojure-unwind-all )
208- (define-key map (kbd " C-c C-r C-p" ) #'clojure-cycle-privacy )
209- (define-key map (kbd " C-c C-r p" ) #'clojure-cycle-privacy )
210- (define-key map (kbd " C-c C-r C-(" ) #'clojure-convert-collection-to-list )
211- (define-key map (kbd " C-c C-r (" ) #'clojure-convert-collection-to-list )
212- (define-key map (kbd " C-c C-r C-'" ) #'clojure-convert-collection-to-quoted-list )
213- (define-key map (kbd " C-c C-r '" ) #'clojure-convert-collection-to-quoted-list )
214- (define-key map (kbd " C-c C-r C-{" ) #'clojure-convert-collection-to-map )
215- (define-key map (kbd " C-c C-r {" ) #'clojure-convert-collection-to-map )
216- (define-key map (kbd " C-c C-r C-[" ) #'clojure-convert-collection-to-vector )
217- (define-key map (kbd " C-c C-r [" ) #'clojure-convert-collection-to-vector )
218- (define-key map (kbd " C-c C-r C-#" ) #'clojure-convert-collection-to-set )
219- (define-key map (kbd " C-c C-r #" ) #'clojure-convert-collection-to-set )
220- (define-key map (kbd " C-c C-r C-i" ) #'clojure-cycle-if )
221- (define-key map (kbd " C-c C-r i" ) #'clojure-cycle-if )
222- (define-key map (kbd " C-c C-r n i" ) #'clojure-insert-ns-form )
223- (define-key map (kbd " C-c C-r n h" ) #'clojure-insert-ns-form-at-point )
224- (define-key map (kbd " C-c C-r n u" ) #'clojure-update-ns )
225- (define-key map (kbd " C-c C-r n s" ) #'clojure-sort-ns )
237+ (define-key map clojure-refactor-map-prefix 'clojure-refactor-map )
226238 (easy-menu-define clojure-mode-menu map " Clojure Mode Menu"
227239 '(" Clojure"
228240 [" Toggle between string & keyword" clojure-toggle-keyword-string]
0 commit comments