2

haskell セッション中または新しいセッションの開始時に、haskell-process-type をオンに切り替えることはできますか?

4

2 に答える 2

2

はい、バッファに次のように入力してくださいC-x C-e(デフォルトがデフォルトであると仮定しcabal-replます)。

(setq haskell-process-type 'ghci)

.emacsはこれを頻繁に行うので、これを簡単にするために実際にこれを持っています:

(define-key haskell-mode-map (kbd "C-c h t") 
  (lambda () (interactive)
    (progn
      (setq haskell-process-type 'ghci)
      (message "Now in ghci mode."))))

C-c C-lのものは、正しいモードでインタラクティブ バッファをロードします。

編集:今使っhaskell-mode-mapています。

于 2014-12-05T10:28:06.990 に答える
2

最後に、fosskers の回答を少し拡張しました。

プロセスの種類を切り替える関数:

(defvar haskell-process-use-ghci nil)

(defun haskell-process-toggle ()
  "Toggle GHCi process between cabal and ghci"
  (interactive)
  (if haskell-process-use-ghci
      (progn (setq haskell-process-type 'cabal-repl)
             (setq haskell-process-use-ghci nil)
             (message "Using cabal repl"))
    (progn (setq haskell-process-type 'ghci)
           (setq haskell-process-use-ghci t)
           (message "Using GHCi"))))

そして haskell-mode 固有のキーバインド:

(define-key haskell-mode-map (kbd "C-c C-h C-t") 'haskell-process-toggle)
于 2014-12-09T18:14:08.757 に答える