@@ -838,9 +838,7 @@ This is controlled via `cider-interactive-eval-output-destination'."
838
838
" Make a handler for evaluating and printing result in popup BUFFER."
839
839
(nrepl-make-response-handler buffer
840
840
(lambda (buffer str )
841
- (cider-emit-into-popup-buffer
842
- buffer
843
- (cider-font-lock-as-clojure str)))
841
+ (cider-emit-into-popup-buffer buffer str))
844
842
'()
845
843
(lambda (buffer str )
846
844
(cider-emit-into-popup-buffer buffer str))
@@ -853,9 +851,7 @@ This is used by pretty-printing commands and intentionally discards their result
853
851
(nrepl-make-response-handler buffer
854
852
'()
855
853
(lambda (buffer str )
856
- (cider-emit-into-popup-buffer
857
- buffer
858
- (cider-font-lock-as-clojure str)))
854
+ (cider-emit-into-popup-buffer buffer str))
859
855
(lambda (buffer str )
860
856
(cider-emit-into-popup-buffer buffer str))
861
857
'()))
@@ -1033,10 +1029,11 @@ KILL-BUFFER-P is passed along."
1033
1029
(interactive )
1034
1030
(funcall cider-popup-buffer-quit-function kill-buffer-p))
1035
1031
1036
- (defun cider-popup-buffer (name &optional select )
1032
+ (defun cider-popup-buffer (name &optional select major-mode )
1037
1033
" Create new popup buffer called NAME.
1038
- If SELECT is non-nil, select the newly created window"
1039
- (with-current-buffer (cider-make-popup-buffer name)
1034
+ If SELECT is non-nil, select the newly created window.
1035
+ If MAJOR-MODE is non-nil enabled it for the popup buffer."
1036
+ (with-current-buffer (cider-make-popup-buffer name major-mode)
1040
1037
(cider-popup-buffer-display (current-buffer ) select)))
1041
1038
1042
1039
(defun cider-popup-buffer-display (popup-buffer &optional select )
@@ -1055,13 +1052,14 @@ If prefix argument KILL-BUFFER-P is non-nil, kill the buffer instead of burying
1055
1052
(interactive )
1056
1053
(quit-window kill-buffer-p (selected-window )))
1057
1054
1058
- (defun cider-make-popup-buffer (name )
1059
- " Create a temporary buffer called NAME."
1055
+ (defun cider-make-popup-buffer (name &optional major-mode )
1056
+ " Create a temporary buffer called NAME using MAJOR-mode (if specified) ."
1060
1057
(with-current-buffer (get-buffer-create name)
1061
1058
(kill-all-local-variables )
1062
1059
(setq buffer-read-only nil )
1063
1060
(erase-buffer )
1064
- (set-syntax-table clojure-mode-syntax-table)
1061
+ (when major-mode
1062
+ (funcall major-mode))
1065
1063
(cider-popup-buffer-mode 1 )
1066
1064
(setq buffer-read-only t )
1067
1065
(current-buffer )))
@@ -1175,7 +1173,7 @@ Print its value into the current buffer."
1175
1173
" Evaluate the sexp preceding point and pprint its value in a popup buffer."
1176
1174
(interactive )
1177
1175
(let ((form (cider-last-sexp))
1178
- (result-buffer (cider-popup-buffer cider-result-buffer nil )))
1176
+ (result-buffer (cider-popup-buffer cider-result-buffer nil 'clojure-mode )))
1179
1177
(cider-eval (cider-format-pprint-eval form)
1180
1178
(cider-popup-eval-out-handler result-buffer)
1181
1179
(cider-current-ns))))
@@ -1184,7 +1182,7 @@ Print its value into the current buffer."
1184
1182
" Evaluate the top-level form at point and pprint its value in a popup buffer."
1185
1183
(interactive )
1186
1184
(let ((form (cider-defun-at-point))
1187
- (result-buffer (cider-popup-buffer cider-result-buffer nil )))
1185
+ (result-buffer (cider-popup-buffer cider-result-buffer nil 'clojure-mode )))
1188
1186
(cider-eval (cider-format-pprint-eval form)
1189
1187
(cider-popup-eval-out-handler result-buffer)
1190
1188
(cider-current-ns))))
0 commit comments