问题标签 [haskero]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
612 浏览

haskell - 如何让 Haskero 对非详尽的模式匹配发出警告

我目前正在评估Visual Studio Code中的Haskero作为替代 Haskell 编辑器,而不是AtomAtom-Haskell。到目前为止,Haskero似乎很有希望,但我错过了通常从Atom-Haskell获得的编译器警告。

作为说明问题的一种方式,请考虑以下简单的再现:

重现步骤

  1. 打开已安装Haskero 的Visual Studio Code
  2. 添加一个新的 Haskell 文件:Repro.hs
  3. 将以下内容添加到文件中
  4. 保存

文件内容:

预期行为

编辑应发出警告:

Atom-Haskell就是这样做的。

实际行为

什么都没发生。问题视图只是指出:

到目前为止,尚未在工作区中检测到任何问题。

更多细节

上面的重现步骤是我能想到的最简单的步骤,但是当我创建一个完整的 Stack 项目并确保我已经stack build intero在项目目录的根目录中运行时,我看到了相同的(缺少)行为。

我的环境是:

  • Windows 10 专业版 x64
  • 堆栈版本 1.6.3,Git 修订版 b27e629b8c4ce369e3b8273f04db193b060000db(5454 次提交)x86_64 hpack-0.20.0
  • Visual Studio 代码版本 1.20.0
  • Haskero 版本 1.3.1
  • 原子版本 1.23.3 x64
  • 语言-haskell版本 1.17.3
0 投票
1 回答
902 浏览

windows - 文件名与模块名不匹配

新手玩haskell 堆栈脚本turtle

  • 创建了一个文件夹stack-scripts。想如果它看起来不错,那么我将为我创建一些 haskell 实用程序来替换 bash 脚本。
  • 创建了一个名为turtle.hs以下文本的文件:

    /li>
  • 制作chmod +x turtle.hs并尝试执行它。

  • 收到以下错误消息:

    /li>

如果我重命名turtle.hsturtle.sh. 但是我没有为haskell 突出显示语法。

如果我将其重命名为something-other.hs. 但随后 Haskero (VSCode) 抱怨import Turtle以下行:Couldn't guess that module name. Does it exist?

我在这里缺少什么?在 Windows 上运行 git bash。

0 投票
2 回答
343 浏览

haskell - Haskero 失败并显示“不是有效的 Unicode 代码点!”

我正在尝试运行 Haskero 以使用 VSCode 进行 Haskell 编辑。但是,它在初始化时失败,并出现以下错误:

当我从控制台中的错误运行命令时,出现以下错误:

谷歌搜索似乎表明这可能与 GHC 版本有关,但我还没有找到任何确定的东西。

这是一个已知的问题?是否有可以更改的配置来解决此问题?这可能与语言环境错误有关吗?

0 投票
2 回答
749 浏览

visual-studio-code - 键盘访问 Visual Studio Code 状态栏

有什么方法可以使用键盘(即不使用鼠标)访问Visual Studio Code状态栏?

Visual Studio Code 状态栏

具体来说,我想访问Targets:default部分,据我所知,它源自语言扩展(Haskero)。我可以用鼠标点击它,但我还没有找到使用键盘与之交互的方法。

Ctrl像++之类的明显尝试,然后是键入statustargetshaskell等等,都是死路一条Shiftp

0 投票
0 回答
99 浏览

haskell - Haskero 中的目标名称乱码

一段时间以来,我一直在 Windows 10 上使用Haskero进行 Haskell 编程,很长一段时间以来它都很棒。然而,最近我重新安装了我的笔记本电脑,从那时起,启用切换目标的功能包含乱码输出:

切换目标 UI

这不仅仅是一个显示问题。它有效地阻止了我切换目标:

请注意,当我尝试切换到测试目标时,它会发出一个stack包含那些不可打印字符的命令。除其他问题外,这意味着我从插件中绝对没有任何价值用于我的单元测试。

这些不可打印字符的存在,以及stty: 'standard input': Inappropriate ioctl for device在我看来像是标准输出如何解释的问题。

据我所知,通过阅读 Haskero 代码库,看起来目标列表来自stack ide targets. 但是,如果我在命令行上发出这个命令,一切看起来都很好:

在我重新铺设机器之前,这曾经可以在 Windows 10 上运行,但现在不行了。

由于它在重新安装之前工作,我希望有一些环境设置我可以调整以恢复功能,但如果有,我不清楚它会是什么。

如何使目标对话使用干净的目标名称,以便在它们之间进行切换?

0 投票
1 回答
37 浏览

visual-studio-code - Haskero 没有找到定义

我按照那里的说明将 Haskero 插件安装到 VS Code 中。然后我按照https://gitlab.com/vannnns/haskero/blob/master/client/doc/installation.md中概述的步骤,或者特别是步骤 5 和 6,因为我已经在该目录中构建了一个 Stack 项目。VS 代码启动并打开项目文件夹。例如,当我将鼠标悬停在一个函数上时,它会显示该函数的签名,但是当我选择“转到定义”时,经过一番思考,它会返回“未找到 XXX 的定义”。即使定义在同一个文件中也是如此。对于类型,悬停根本不显示任何内容。

PS 令我困惑的是,我不记得有任何将 ghc 与 VS Code 项目相关联的地方,所以我很好奇它是如何知道要使用哪个编译器的?