當我使用GHCi時,我幾乎總是最終導入Control.Applicative
,Data.List
等。有沒有辦法將GHCi配置爲自動導入這些模塊。如何配置GHCi自動導入模塊
此外,在導入它們後,我如何保持提示非常長?
Prelude Control.Applicative Data.List Database.HDBC Database.HDBC.Sqlite3 System.Directory>
當我使用GHCi時,我幾乎總是最終導入Control.Applicative
,Data.List
等。有沒有辦法將GHCi配置爲自動導入這些模塊。如何配置GHCi自動導入模塊
此外,在導入它們後,我如何保持提示非常長?
Prelude Control.Applicative Data.List Database.HDBC Database.HDBC.Sqlite3 System.Directory>
GHCI查找它的配置文件在
~/.ghc/ghci.conf
在類Unix系統。
%APPDATA%\ghc\ghci.conf
在Windows上。
配置文件的語法很簡單:它是在啓動時執行的GHCi命令列表。
例如,您ghci.conf
可能包含:
import Control.Applicative
import Data.Char
import Data.List
:set prompt "> "
最後一行設置提示爲"> "
,所以它不會告訴你在命令行中導入的所有模塊。
現在你可以馬上工作:
GHCi, version 6.12.1: http://www.haskell.org/ghc/ :? for help
Loading package ghc-prim ... linking ... done.
Loading package integer-gmp ... linking ... done.
Loading package base ... linking ... done.
> toLower <$> "Hello, world!"
"hello, world!"
>
另外,如果你決定你不想Data.Char
在GHCI會話中間,你可以將其刪除:
:m -Data.Char
,如果你決定你不想在會話過程中任何東西,但前奏:
:m
GHC會也加載它在當前目錄中找到的任何.ghci
文件。 GHCi的每個項目配置非常有用。
這是從項目的例子,我的工作:
:set -isrc:dist/build/autogen
:set -hide-package mtl
首先是有確保通過驚天動地生成的模塊易於導入。第二個隱藏mtl
,因爲此特定項目使用transformers
。
你如何在Windows中發生這種情況?我無法命名文件「.ghci」,它似乎忽略了本地「ghci.conf」文件中的設置。 – crockeea 2015-07-21 18:52:24
我有一個'.ghci'文件在Windows上工作。但是,Explorer不會讓我將文件重命名爲'.ghci'。找到2種方式來解決:**使用記事本:**在另存爲窗口中 - >將另存爲類型更改爲所有文件(*。*)'或者它將添加一個.txt擴展名 - >名稱文件'.ghci'並點擊保存_ ** OR ** _ **使用命令提示符:**在資源管理器中瀏覽到Haskell項目的文件夾 - >在該窗口的地址欄中輸入'cmd',然後回車。這將打開一個命令提示符,從該文件夾開始 - >'mv somefile.ghci .ghci' – jhr 2016-03-30 18:10:03
它似乎沒有任何影響我的Win安裝。似乎沒有讀取ghci.conf。我沒有這個文件默認也 – Ghita 2014-07-15 17:54:54
在Windows 7的路徑是:%APPDATA%\ Roaming \ ghc – miro 2015-01-13 07:24:43
@fjordrunner:在我的系統上,%APPDATA%擴展到'C:\ Users \ ja \ AppData \ Roaming' 。 – 2015-01-14 19:06:07