我在想我理想的haskell编辑工作流程:
有人安排过这样的事吗?我们的目标是让hlint不断地观察我的代码以解决样式问题,并使ghci可以用于快速更改,而不必做任何事情,只需将文件保存在vim中。
我正在考虑使用像表表这样的自动化工具。
发布于 2011-10-10 19:27:01
您可以使用BufWrite自动命令在vim中运行任意shell命令:
例如,将其放在~/.vimrc中
au BufWrite *.hs !echo % >> ~/saves.txt 这将在每次保存haskell文件时运行echo <CURRENT FILENAME> >> ~/saves.txt。
因此,这是一种触发外部脚本的简单方法。
现在,您可以编写一些iterm脚本来将命令中继到其他终端。类似于:
tell my_ghci_terminal
write text ":r\n"
end tell
tell my_hlint_terminal
write text "<RUN HLINT ON WHATEVER>"
end tell因此,您可以使用vim自动命令来触发适当的iterm脚本(传递当前文件名,以便脚本可以告诉ghci和hlint要处理哪个文件)。
您可能希望打开或关闭这个选项(您可能不希望对每个haskell文件都这样做),因此请考虑将功能封装在一个允许您切换它的vim函数中(以及为iterm应该如何找到您的ghci和hlint终端设置参数)。
发布于 2018-01-16 12:09:19
https://github.com/ndmitchell/ghcid支持在文件更改时自动重新加载GHCi。
例如:ghcid '--command=stack ghci' --test=main
发布于 2013-07-28 08:44:54
不确定您是否还在查找,但解决自动闪烁问题的解决方案是合成体,它会自动在文件上运行hlint或ghc,并高亮显示位置中的行/设置,列出错误/警告/样式警告。
此外,当您将光标移动到该行时,它将在状态栏中显示消息/注释。
https://stackoverflow.com/questions/7705717
复制相似问题