Windows下的Haskell集成开发环境

4

我需要在Windows机器上为初学者设置一个简单而引人入胜的Haskell小项目开发环境。

我尝试了几种将Haskell集成到VSCode中的方法,但都没有成功。

几年前我有一个很好的设置,但是我发现在重建该环境时遇到了依赖问题:

  • 编辑器:Atom
  • 全局二进制文件使用:stack with ghc-mod hlint stylish-haskell
  • Atom插件:language-haskell,ide-haskell,ide-haskell-repl,haskell-ghc-mod

看起来现在“酷”的方式是使用Language Server Protocol + VScode。 ghc-mod似乎不再维护,Intero已经到达EOL,HEI正在与另一个项目合并...拥有稳定和更新的开发环境似乎是一个动态目标。

所以,问题是:是否有可重现的逐步说明来使VSCode在Windows上与Haskell配合工作?

我将在一个新的Windows 10 64位VM中测试任何建议,并报告结果。

注意:VSCode + Docker容器不是选项。 大多数学生机器只有4GB RAM。

提前致谢。

1个回答

3

有一个名为ghcid的工具(不要与ghcide混淆),虽然它远非完整的IDE,但相当强大,提供了一些便利功能,例如保存后重新编译和显示编译错误。但它不支持跳转到定义。它有一个VSCode插件。

以下是在Windows上设置事物的可能方式:

  • 这里下载适用于Windows的 GHC 8.8.3 二进制文件。
  • 这里下载适用于Windows的 cabal-install 3.0.0.0 二进制文件。
  • 在某个文件夹中解压它们。
  • 向 PATH 环境变量添加条目,以便它可以访问 GHC 安装的 /bin 文件夹和包含 cabal 可执行文件的文件夹。
  • 打开 Powershell 控制台。
  • 运行 cabal update
  • 运行 cabal install --install-method=copy --installdir=somefolder ghcid 来安装 ghcid 可执行文件,其中 "somefolder" 是目标文件夹。(如果安装失败,请尝试在 Git Bash 或 Cygwin 终端中运行该命令作为一种解决方法。) 将目标文件夹放入 PATH 中。

  • 打开(或重新启动)VSCode,并安装 "Haskell Syntax Highlighting" 和 haskell-ghcid 插件。

  • 转到示例 cabal 项目,使用 Ctrl-Shift-P 快捷键,并执行 "Start ghcid" 操作。ghcid 终端将出现。

一个显示错误的ghcid会话示例:

enter image description here

haskell-ghcid插件

haskell-ghcid插件可以读取项目根目录中的.ghcid文件,该文件包含应传递给ghcid命令的标志。


设置代码格式的额外说明:

  • 运行cabal install ormolu --install-method=copy --installdir=somefolder来安装ormulu格式化器。确保目标文件夹在 PATH 中。

  • 打开(或重新启动)VSCode并安装ormulu插件。

现在,VSCode中的“格式化文档”和“格式化选择”操作将使用 ormulu。


安装 GHC 并获取 ghcid 和 ormulu 的另一种方式是使用 stack 工具,该工具可以自行处理 GHC 安装。


1
我还要指出的是,您不必在VSCode中使用ghcidghcid作为一个独立的工具完全可用 - 实际上,它最初是设计用于单独使用的,并且后来才集成到其他开发环境中。 - bradrn

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接