@@ -249,15 +249,16 @@ If `haskell-process-load-or-reload-prompt' is nil, accept `default'."
249
249
250
250
(defun haskell-process-prompt-restart (process )
251
251
" Prompt to restart the died PROCESS."
252
- (let ((process-name (haskell-process-name process)))
252
+ (let ((process-name (haskell-process-name process))
253
+ (cursor-in-echo-area t ))
253
254
(if haskell-process-suggest-restart
254
255
(progn
255
256
(haskell-mode-toggle-interactive-prompt-state)
256
257
(unwind-protect
257
258
(cond
258
259
((string-match " You need to re-run the 'configure' command."
259
260
(haskell-process-response process))
260
- (cl-case (read-event
261
+ (cl-case (read-char-choice
261
262
(concat
262
263
" The Haskell process ended. Cabal wants you to run "
263
264
(propertize " cabal configure"
@@ -268,7 +269,8 @@ If `haskell-process-load-or-reload-prompt' is nil, accept `default'."
268
269
" Cabal said:\n\n "
269
270
(propertize (haskell-process-response process)
270
271
'face
271
- 'font-lock-comment-face )))
272
+ 'font-lock-comment-face ))
273
+ '(?l ?n ?y ))
272
274
(?y (let ((default-directory
273
275
(haskell-session-cabal-dir
274
276
(haskell-process-session process))))
@@ -283,12 +285,13 @@ If `haskell-process-load-or-reload-prompt' is nil, accept `default'."
283
285
(insert response)))))
284
286
(?n )))
285
287
(t
286
- (cl-case (read-event
288
+ (cl-case (read-char-choice
287
289
(propertize
288
- (format " The Haskell process `%s' has died. Restart? (y, n, l: show process log) "
290
+ (format " The Haskell process `%s' has died. Restart? (y, n, l: show process log) "
289
291
process-name)
290
292
'face
291
- 'minibuffer-prompt ))
293
+ 'minibuffer-prompt )
294
+ '(?l ?n ?y ))
292
295
(?y (haskell-process-start (haskell-process-session process)))
293
296
(?l (let* ((response (haskell-process-response process))
294
297
(buffer (get-buffer " *haskell-process-log*" )))
0 commit comments