VSCode 在附加模块的 haskell 扩展中没有智能感知

问题描述 投票:0回答:2

有没有办法让智能感知适用于其他模块(前奏之外的任何模块),例如 VS Code 中的 Quicktest 或 Random? 我正在使用:

  • VSCode:版本1.55.0
  • 扩展“Haskell v1.2.0”(带有 haskel-语言服务器)
  • ghci:
    GHCi, version 8.10.3: https://www.haskell.org/ghc/
  • 堆栈:
    Version 2.5.1, Git revision d6ab861544918185236cf826cb2028abb266d6d5 x86_64 hpack-0.33.0
  • 直接在 Windows10 和 WSL2 (Debian) 上尝试过。

VSCode 说:

Could not find module ‘Test.QuickCheck’
It is not a module in the current program, or in any known package.not found

所以,没有自动完成等..

我认为原因是我通过

stack
安装了Quicktest,并且该堆栈使用其自己的“隔离”ghc。因此我寻找一种方法来配置 VSCode 扩展以使用我的
stack
环境的 ghc,但没有成功。

我也对黑线鳕和卡巴尔感到兴奋,但没有成功。

有人使用 VS-Code 来编写 haskell 代码并具有自动完成功能、鼠标悬停文档、wingman 等吗?

haskell visual-studio-code haskell-stack
2个回答
2
投票

我在使用某些本地模块时遇到了这个问题。我可以通过在项目的根目录中放置一个

hie.yaml
文件并重新加载 VSCode 来修复它。诚然,我真的不知道它是做什么的。我使用 implicit-hie 生成了它,您可以使用
stack
安装它。


0
投票

因为我现在重新审视 haskell:当前的

VSCode Version 1.83.1
以及 haskell 扩展
Haskell 2.4.2
。自动完成等工作正常。

转到项目文件夹 init stack 并安装包:

init stack
stack install split

一切都按预期进行,如下所示:

© www.soinside.com 2019 - 2024. All rights reserved.