如何使用Summoner快速创建Haskell项目?CLI与TUI双界面完整指南
2026/7/25 22:06:20 网站建设 项目流程

如何使用Summoner快速创建Haskell项目?CLI与TUI双界面完整指南

【免费下载链接】summoner🔮 🔧 Tool for scaffolding batteries-included production-level Haskell projects项目地址: https://gitcode.com/gh_mirrors/su/summoner

Summoner是一款功能强大的Haskell项目脚手架工具,能够帮助开发者快速创建配置完善的生产级项目。无论是需要上传到Hackage/Stackage的库,还是使用自定义 prelude 的生产应用,Summoner都能轻松应对,甚至还能直接将项目上传到GitHub。它提供CLI(命令行界面)和TUI(终端用户界面)两种操作方式,满足不同用户的使用习惯。

🌟 Summoner 核心功能亮点

Summoner作为Haskell项目脚手架工具,具备以下核心特性:

  • 双界面支持:同时提供直观的TUI图形界面和高效的CLI命令行操作
  • 完整项目结构:自动生成符合Haskell最佳实践的项目架构
  • 多构建工具兼容:支持Cabal和Stack两种主流构建系统
  • CI/CD集成:内置GitHub Actions、Travis和AppVeyor配置
  • 自定义配置:通过配置文件保存个人偏好,实现一键项目创建
  • 许可证管理:支持多种开源许可证自动生成

📥 快速安装指南

TUI 界面安装

Homebrew 安装(macOS)
brew install kowainik/tap/summoner-tui
Ubuntu 系统安装
sudo add-apt-repository ppa:kowainik/summoner-tui sudo apt update sudo apt install summoner-tui
从 Hackage 安装
cabal update cabal install summoner-tui
从源码构建
git clone https://gitcode.com/gh_mirrors/su/summoner cd summoner cabal install summoner-tui:exe:summon-tui # 或使用 Stack stack install summoner-tui:exe:summon-tui

CLI 界面安装

CLI版本的安装方式与TUI类似,主要区别在于包名称和可执行文件:

# 使用 Cabal cabal install summoner-cli # 使用 Stack stack install summoner-cli:exe:summon

⚙️ 配置文件设置

Summoner支持通过配置文件保存项目默认设置,位于用户主目录下的.summoner.toml。项目示例中提供了配置模板:summoner-cli/examples/summoner-default.toml

主要配置选项包括:

# GitHub用户名 owner = "your-github-username" # 全名 fullName = "Your Name" # 邮箱 email = "your.email@example.com" # 默认许可证 license = "MIT" # 项目组件设置 # cabal = true # stack = true # lib = true # exe = true # test = true # bench = true

🚀 两种界面使用教程

TUI 图形界面使用

TUI提供直观的交互式操作界面,只需在终端中运行:

summon-tui

启动后会显示图形化配置界面,通过方向键和回车键进行选择和确认,逐步完成项目名称、描述、许可证、组件等选项的配置。配置完成后,Summoner会自动生成完整的项目结构。

CLI 命令行界面使用

CLI适合喜欢高效操作的用户,基本命令格式为:

summon new PROJECT_NAME [选项]
常用选项
  • --ignore-config:忽略配置文件,使用默认设置
  • --no-upload:创建项目但不上传到GitHub
  • --offline:离线模式,使用"All Rights Reserved"许可证
  • --cabal/--stack:指定构建工具
  • --prelude-package:设置自定义prelude包
  • --prelude-module:设置自定义prelude模块
示例命令

创建一个包含库、可执行文件和测试的项目:

summon new my-haskell-project --cabal --stack with lib exe test

使用自定义prelude创建项目:

summon new my-project --prelude-package relude --prelude-module Relude

📁 生成的项目结构

Summoner创建的项目包含完整的生产级配置,以full-batteries示例项目为例:summoner-cli/examples/full-batteries/

典型结构包括:

  • src/:源代码目录
  • app/:可执行文件目录
  • test/:测试代码目录
  • benchmark/:基准测试目录
  • 多种构建配置文件(.cabal和stack.yaml)
  • CI配置文件
  • 许可证和文档文件

💡 使用技巧与最佳实践

  1. 利用配置文件:通过配置文件保存常用设置,避免重复输入
  2. 组合使用界面:复杂项目使用TUI配置,简单项目使用CLI快速创建
  3. 自定义模板:高级用户可通过修改模板文件自定义项目结构:headroom-templates/haskell.mustache
  4. 离线工作:使用--offline选项在无网络环境下创建项目
  5. 版本控制:Summoner会自动初始化Git仓库,便于立即开始版本控制

❓ 常见问题解答

Q: Summoner支持哪些许可证?
A: 支持多种开源许可证,可通过summon show license命令查看完整列表。

Q: 如何更新Summoner到最新版本?
A: 根据安装方式不同,使用对应的包管理器更新(如brew upgrade summoner-tuicabal update && cabal install summoner-tui)。

Q: 可以同时使用Cabal和Stack吗?
A: 是的,Summoner支持同时生成两种构建系统的配置文件。

通过Summoner,Haskell开发者可以告别繁琐的项目配置,专注于核心功能的实现。无论是新手还是经验丰富的开发者,都能通过这个强大的工具快速搭建专业的Haskell项目。

【免费下载链接】summoner🔮 🔧 Tool for scaffolding batteries-included production-level Haskell projects项目地址: https://gitcode.com/gh_mirrors/su/summoner

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询