【发布时间】:2021-04-04 21:52:32
【问题描述】:
有没有办法让智能感知适用于其他模块(前奏之外的任何东西),比如 VS Code 中的 Quicktest 或 Random? 我正在使用:
- VSCode:版本 1.55.0
- 扩展“Haskell v1.2.0”(带有 haskel-language-server)
- 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 代码并具有自动完成功能、鼠标悬停文档、僚机等?
【问题讨论】:
-
我认为问题在于 LSP 插件无法提取测试套件中的依赖项。我发现的一个相当烦人的解决方法是将测试依赖项移动到 package.yaml 中的全局依赖项中。另一个是generate an hie.yaml,例如使用implicit-hie,以便识别多个子组件中的包。
-
@Simon Shineimplicit-hie 很酷,可以解决我的环境管理问题,但我的主要问题是 VSCode 中的智能感知不支持前奏之外的任何内容(如随机、快速测试等),添加了要提问的屏幕截图。
-
你是说 VSCode 不支持 Prelude 在测试套件中之外的任何东西,还是一般?
-
一般来说。我在编辑器中没有自动完成等。
标签: haskell visual-studio-code haskell-stack