Sublime Text 2的Haskell開發環境設定

2gua發表於2014-04-28

enter image description here

那天看到空軍在談Haskell學習心得,一時技癢,週末整了個Sublime Text 2的Haskell開發環境。

如我今天所說:使用Haskell,感覺自己就像個匠人,在打造武器的時候,不斷給武器新增各種槽,最後往槽裡鑲嵌各種提升武器威力的寶石,一把威力無比的武器即告完成……

一般要嘗試一種新語言,我都習慣先把開發環境打造得舒舒服服的。當然Emacs是函數語言程式設計者的最愛,但是,我已經用Sublime Text 2配置了好幾種語言的開發環境了,因此,這次依舊選擇Sublime Text 2來配置Haskell的開發環境。

環境:Windows 7。Windows 8應該也一樣吧,改天試試看。

1. 到這裡下載對應版本的Haskell Platform,當前是2013.2.0.0版本號。安裝,並設定系統路徑:

...\2013.2.0.0;...\2013.2.0.0\lib;...\2013.2.0.0\lib\extralibs\bin;...\2013.2.0.0\bin;...\2013.2.0.0\mingw\bin

2. 安裝依賴包

可以先cabal update一下,根據命令提示操作即可。

用Cabal安裝額外的依賴包:aeson、haskell-src-exts 、haddock、ghc-mod、stylish-haskell:

cabal install aeson haskell-src-exts haddock ghc-mod stylish-haskell

base和bytestring這兩個包應該是預設已經安裝了的,檢查一下,如果還沒安裝請安裝之。

如果安裝haddock時出現與版本相關的衝突,請按以下命令安裝:

cabal install haddock --constraint=haddock==2.13.2.1

3. 安裝SublimeHaskell外掛

在Sublime Text 2安裝外掛的方法網路上很多,這裡就不再贅述,請安裝SublimeHaskell外掛,安裝完畢Ctrl+Shift+P,輸入Haskell,看看都有哪些命令。具體使用請參考官方網站

4. 配置Sublime Text 2

開啟Sublime Text 2的Preferences | Browser Packages...。

進入Sublime Text 2自帶的Haskell目錄,編輯Haskell.sublime-build檔案內容為:

{
    "cmd": [".../2013.2.0.0/bin/runghc", "$file"],
    "file_regex": "^(...*?):([0-9]*):?([0-9]*)",
    "selector": "source.haskell",
    "encoding": "utf-8"
}

這樣Haskell檔案就能夠以指令碼方式執行了(Ctrl+B),注意:貌似Haskell執行檔案所在路徑中有中文時,執行就會失效。

開啟Preferences | Package Settings | SublimeHaskell | Settings User。新增:

{
    "enable_hdevtools": false,
    "inspect_modules": false,
    "add_to_PATH": [ ".../AppData/Roaming/cabal/bin" ]
}

由於沒有安裝hdevtools庫,所以設為false;因為Sublime Text 2啟動時,每次都會長時間執行ModuleInspector以便提供自動完成功能,所以這裡設為了false。

5. 測試

輸入“main”並回車:

module Main where

main = putStrLn "Hello, Haskell!"

看看結果吧:

enter image description here

enter image description here

相關文章