VS Code下搭建简单的Haskell开发环境

Preface

在谷神仙的安利下开始在空闲时学习 \(Haskell\)
本人喜欢折腾 \(VS\) \(Code\) ~
这次也折腾了两天,也算是搭建好了自己理想中的环境 \(qwq\)
由于本人觉得学习的过程中 \(Debugger\) 可能没那么必要,所以这部分就鸽了~ 其实是因为折腾不出来
本本的系统是 \(Windows\) \(10\)
用其他系统的小伙伴可以借鉴地看,过程可能差别不大~


Step

一、安装 \(Stack\)

\(Install\) \(Stack\)Stack官方文档

Stack-1

链接中有各系统安装 \(Stack\) 的详细说明,这里我们选择 \(Windows\) \(64\)-\(bit\) 的安装包。

Stack-2

安装完后不要忘记添加环境变量!
这里因为我们是 \(Windows\) ,安装的过程中在这打上勾即可,不用手动添加~

二、配置 \(Stack\)

\(win+r\) 打开 \(cmd\) ,执行 stack install
此时系统目录( 盘符一般为 \(C\) )下生成 C:\sr\config.yaml

用记事本打开 \(config.yaml\) ,附加如下文本,用以配置镜像源:

package-indices:
- name: Tsinghua
  download-prefix: https://mirrors.tuna.tsinghua.edu.cn/hackage/package/
  http: https://mirrors.tuna.tsinghua.edu.cn/hackage/00-index.tar.gz
setup-info: "http://mirrors.tuna.tsinghua.edu.cn/stackage/stack-setup.yaml"
urls:
  latest-snapshot: http://mirrors.tuna.tsinghua.edu.cn/stackage/snapshots.json
  lts-build-plans: http://mirrors.tuna.tsinghua.edu.cn/stackage/lts-haskell/
  nightly-build-plans: http://mirrors.tuna.tsinghua.edu.cn/stackage/stackage-nightly/

保存后关闭该文件。

再次打开 \(cmd\) ,依次执行如下指令:

stack new my-project
cd my-project
stack setup
stack build
stack exec my-project

三、配置 \(VS\) \(Code\)

\(VS\) \(Code\) 中安装如下扩展插件:

  • \(Code\) \(Runner\)
  • \(Haskell\) \(ghc\)-\(mod\)
  • \(Haskell\) \(Syntax\) \(Highlighting\)
  • \(haskell\)-\(linter\)
  • \(Haskelly\)

根据扩展插件说明,打开 \(cmd\) ,执行如下指令:

stack --resolver lts-9 install ghc-mod
stack install hlint
stack install intero
stack install QuickCheck
stack --resolver lts-9 install stack-run

最后打开 \(VS\) \(Code\) 的配置文件(\(settings.json\))

文件(\(File\)) \(\rightarrow\) 首选项(\(Preferences\)) \(\rightarrow\) 设置(\(Settings\))

在用户设置下搜索 “ \(settings.json\) ” ,点击 “ 在 \(settings.json\) 中编辑 ”

VSC-1

\(upd\): 这里其实点右上角那个 "{}" 就可以打开配置文件了,写这篇 \(Blog\) 时我还不知道orz

添加如下文本:

"code-runner.executorMap": {
  "haskell": "cd $dir && stack runhaskell $fileName"
},
"haskell.ghcMod.executablePath": "stack", 
//[user]请换成自己的 Windows 用户名
"haskell.hlint.executablePath": "C:/Users/[user]/AppData/Roaming/local/bin/hlint"

回到用户设置,搜索 “ \(Code\) \(Runner\) ” ,在 “ \(Code\)-\(Runner:\) \(Run\) \(In\) \(Terminal\) ” 处打上勾~

VSC-2


Epilogue

结束啦 \(qwq\)

运行程序时点右上小三角即可~

效果:

Hello_World

如果想用 \(ghci\) 模式的话,打开 \(cmd\) 执行 stack ghci ~

\(Enjoy\) \(Haskell\) ~

HaskellT

原图 \(Pixiv\) \(id=6783972\)

转载于:https://www.cnblogs.com/MakiseVon/p/10881983.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值