Haskell 项目模板使用教程
1. 项目的目录结构及介绍
haskell-template/
├── .github/
│ └── workflows/
├── .vscode/
├── nix/
│ └── modules/
├── src/
├── .envrc
├── .gitattributes
├── .gitignore
├── hlint.yaml
├── LICENSE
├── README.md
├── flake.lock
├── flake.nix
├── haskell-template.cabal
├── hie.yaml
└── justfile
目录结构介绍
- .github/workflows/: 包含 GitHub Actions 的工作流配置文件。
- .vscode/: 包含 Visual Studio Code 的配置文件。
- nix/: 包含 Nix 的模块配置文件。
- src/: 包含项目的源代码文件。
- .envrc: 用于 direnv 的环境配置文件。
- .gitattributes: Git 属性配置文件。
- .gitignore: Git 忽略文件配置。
- hlint.yaml: HLint 配置文件。
- LICENSE: 项目许可证文件。
- README.md: 项目说明文件。
- flake.lock: Nix Flakes 的锁定文件。
- flake.nix: Nix Flakes 的主配置文件。
- haskell-template.cabal: Cabal 项目配置文件。
- hie.yaml: Haskell IDE Engine 配置文件。
- justfile: 包含开发环境命令的配置文件。
2. 项目的启动文件介绍
justfile
justfile
是一个用于定义开发环境命令的配置文件。通过 just
命令可以执行这些命令,例如:
just run
: 运行项目。just fmt
: 格式化项目代码。just docs
: 启动 Hoogle 文档服务器。
flake.nix
flake.nix
是 Nix Flakes 的主配置文件,定义了项目的依赖、构建步骤和其他相关配置。通过 nix
命令可以执行这些配置,例如:
nix run github:srid/haskell-template
: 运行项目。nix flake update
: 更新 Flake 输入。
3. 项目的配置文件介绍
haskell-template.cabal
haskell-template.cabal
是 Cabal 项目的主配置文件,定义了项目的元数据、依赖、模块和其他相关配置。
flake.nix
flake.nix
是 Nix Flakes 的主配置文件,定义了项目的依赖、构建步骤和其他相关配置。
hlint.yaml
hlint.yaml
是 HLint 的配置文件,用于定义代码风格检查的规则。
hie.yaml
hie.yaml
是 Haskell IDE Engine 的配置文件,用于定义 IDE 的配置。
.envrc
.envrc
是 direnv 的环境配置文件,用于自动加载开发环境变量。
.gitattributes
.gitattributes
是 Git 属性配置文件,用于定义文件的 Git 属性。
.gitignore
.gitignore
是 Git 忽略文件配置,用于定义哪些文件和目录应该被 Git 忽略。
justfile
justfile
是一个用于定义开发环境命令的配置文件,通过 just
命令可以执行这些命令。
README.md
README.md
是项目的说明文件,包含了项目的介绍、使用方法和其他相关信息。
LICENSE
LICENSE
是项目的许可证文件,定义了项目的开源许可证。