gpt4 book ai didi

haskell - 如何在 WinGHCi 中查看当前工作目录

转载 作者:行者123 更新时间:2023-12-02 08:53:36 34 4
gpt4 key购买 nike

我已经开始自学 Haskell,为此我安装了 The Haskell Platform对于 Windows。我现在正在使用 WinGHCi。我了解到它有命令 :cd 用于更改目录。但问题是,我怎么知道我当前在哪个目录中?首先不知道为什么我要更改目录。我搜索了很多但找不到答案。

请告诉我是否有办法知道当前工作目录。最好我想配置命令提示符本身来显示当前目录,非常像 Linux 的控制台。

<小时/>

按照@Daniel的建议,我做了这些:

  • 由于我在 Windows 7 上工作,所以没有 .ghci 文件(我认为它适用于类 Unix 操作系统),因此我创建了一个文件 ghci.confC:\Users\Apelles\AppData\Roaming\ghc 文件夹中,如 it is instructed here .
  • 将 Daniel 的回答中的脚本复制粘贴到 ghci.conf
  • 然后我启动了 ghci.exe,这是一个类似控制台的窗口。我注意到它加载的模块比以前通常加载的模块要多一些。这是快照:

enter image description here

正如你所看到的,它加载了更多模块,最后一行说,

Can't parse prompt string. Use Haskell syntax.

这是什么意思?哪一行导致了问题(来自以下脚本)?

let cur fill = do { cwd <- System.Directory.getCurrentDirectory; return (":set prompt \"" ++ cwd ++ fill ++ " \""); }
:def doprompt (\_ -> cur ">")
:def mycd (\dir -> System.Directory.setCurrentDirectory dir >> cur ">")
:doprompt

此外,如果我将 ghci.conf 文件重命名为某个随机名称,然后启动 ghci.exe,它会加载这些模块: enter image description here

正如我之前所说,它加载的模块数量较少,这意味着使用 ghci.confghci.exe 可以成功执行某些操作,但在某些时候会失败。如何解决这个问题?

最佳答案

System.Directory.getCurrentDirectory 来自 directory包。

关于haskell - 如何在 WinGHCi 中查看当前工作目录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11250262/

34 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com