|
47 | 47 | (haskell-process-set-session process session)
|
48 | 48 | (haskell-process-set-cmd process nil)
|
49 | 49 | (haskell-process-set (haskell-session-process session) 'is-restarting nil)
|
50 |
| - (let ((default-directory (haskell-session-cabal-dir session))) |
| 50 | + (let ((default-directory (haskell-session-cabal-dir session)) |
| 51 | + (log-and-command (haskell-process-compute-process-log-and-command session (haskell-process-type)))) |
51 | 52 | (haskell-session-pwd session)
|
52 | 53 | (haskell-process-set-process
|
53 | 54 | process
|
54 |
| - (cl-ecase (haskell-process-type) |
55 |
| - ('ghci |
56 |
| - (haskell-process-log |
57 |
| - (propertize (format "Starting inferior GHCi process %s ..." |
58 |
| - haskell-process-path-ghci) |
59 |
| - 'face font-lock-comment-face)) |
60 |
| - (apply #'start-process |
61 |
| - (append (list (haskell-session-name session) |
62 |
| - nil |
63 |
| - haskell-process-path-ghci) |
64 |
| - haskell-process-args-ghci))) |
65 |
| - ('cabal-repl |
66 |
| - (haskell-process-log |
67 |
| - (propertize |
68 |
| - (format "Starting inferior `cabal repl' process using %s ..." |
69 |
| - haskell-process-path-cabal) |
70 |
| - 'face font-lock-comment-face)) |
71 |
| - |
72 |
| - (apply #'start-process |
73 |
| - (append (list (haskell-session-name session) |
74 |
| - nil |
75 |
| - haskell-process-path-cabal) |
76 |
| - '("repl") haskell-process-args-cabal-repl |
77 |
| - (let ((target (haskell-session-target session))) |
78 |
| - (if target (list target) nil))))) |
79 |
| - ('cabal-ghci |
80 |
| - (haskell-process-log |
81 |
| - (propertize |
82 |
| - (format "Starting inferior cabal-ghci process using %s ..." |
83 |
| - haskell-process-path-cabal-ghci) |
84 |
| - 'face font-lock-comment-face)) |
85 |
| - (start-process (haskell-session-name session) |
86 |
| - nil |
87 |
| - haskell-process-path-cabal-ghci)) |
88 |
| - ('cabal-dev |
89 |
| - (let ((dir (concat (haskell-session-cabal-dir session) |
90 |
| - "/cabal-dev"))) |
91 |
| - (haskell-process-log |
92 |
| - (propertize (format "Starting inferior cabal-dev process %s -s %s ..." |
93 |
| - haskell-process-path-cabal-dev |
94 |
| - dir) |
95 |
| - 'face font-lock-comment-face)) |
96 |
| - (start-process (haskell-session-name session) |
97 |
| - nil |
98 |
| - haskell-process-path-cabal-dev |
99 |
| - "ghci" |
100 |
| - "-s" |
101 |
| - dir)))))) |
| 55 | + (progn |
| 56 | + (haskell-process-log (propertize (car log-and-command))) |
| 57 | + (apply #'start-process (cdr log-and-command))))) |
102 | 58 | (progn (set-process-sentinel (haskell-process-process process) 'haskell-process-sentinel)
|
103 | 59 | (set-process-filter (haskell-process-process process) 'haskell-process-filter))
|
104 | 60 | (haskell-process-send-startup process)
|
|
0 commit comments