Jazzy与Ruby项目集成:全栈开发的文档生成工具链

Jazzy与Ruby项目集成:全栈开发的文档生成工具链

【免费下载链接】jazzy Soulful docs for Swift & Objective-C 【免费下载链接】jazzy 项目地址: https://gitcode.com/gh_mirrors/ja/jazzy

项目概述

Jazzy是一款为Swift和Objective-C项目生成优雅文档的命令行工具,通过解析AST(抽象语法树)实现精准的代码注释提取。其输出风格与Apple官方文档一致,支持数学公式渲染、跨模块链接和自定义主题。作为Ruby gem包,Jazzy可无缝集成到Ruby开发流程中,为全栈项目提供统一的文档解决方案。

核心功能模块

Jazzy生成文档示例

环境配置

系统要求

  • macOS操作系统(推荐版本10.15+)
  • Xcode命令行工具或Swift Package Manager
  • Ruby 2.6+环境

安装流程

通过RubyGems安装核心组件:

gem install jazzy

项目依赖管理通过Gemfile实现,包含SourceKitten等关键依赖:

gem 'sourcekitten', '~> 0.34'
gem 'redcarpet', '~> 3.5'

基础使用指南

快速启动

在Ruby项目根目录执行:

jazzy --module MyProject --swift-build-tool spm

默认配置下,工具将解析项目中的Swift代码并生成HTML文档至docs/目录。

配置文件示例

创建.jazzy.yaml自定义文档生成规则:

module: MyProject
author: Dev Team
author_url: https://example.com
theme: fullwidth
documentation: Docs/*.md
clean: true
output: ./generated_docs

配置参数说明参见官方文档

高级集成方案

多模块文档合并

通过--modules参数实现多语言项目文档聚合:

jazzy --modules ModuleA,ModuleB \
      --merge-modules all \
      --output combined_docs

配置示例参见lib/jazzy/grouper.rb中的模块合并逻辑。

数学公式支持

利用KaTeX渲染复杂数学表达式,需在注释中使用特定标记:

/// 二次方程求根公式: `$$x={\frac {-b\pm {\sqrt {b^{2}-4ac}}}{2a}}$$`
func solveQuadratic(a: Double, b: Double, c: Double) -> (Double, Double)? {
    // 实现代码
}

数学公式渲染效果

相关渲染逻辑位于lib/jazzy/extensions/katex/

自定义主题开发

主题结构

每个主题包含资产文件和Mustache模板:

theme/
├── assets/
│   ├── css/
│   ├── js/
│   └── img/
└── templates/
    ├── doc.mustache
    ├── nav.mustache
    └── ...

默认主题实现参见lib/jazzy/themes/apple/

样式定制

修改SCSS变量自定义文档外观:

// 自定义主色调
$primary-color: #2c3e50;
// 调整字体大小
$base-font-size: 16px;

编译CSS命令:

sass lib/jazzy/themes/custom/assets/css/jazzy.css.scss:output.css

CI/CD集成

GitHub Actions配置

.github/workflows/docs.yml中添加文档生成步骤:

jobs:
  build-docs:
    runs-on: macos-latest
    steps:
      - uses: actions/checkout@v3
      - name: Install dependencies
        run: gem install jazzy
      - name: Generate docs
        run: jazzy --config .jazzy.yaml
      - name: Deploy
        uses: peaceiris/actions-gh-pages@v3
        with:
          github_token: ${{ secrets.GITHUB_TOKEN }}
          publish_dir: ./docs

Rake任务自动化

创建Rakefile任务简化文档生成:

desc "Generate documentation"
task :docs do
  sh "jazzy --clean --output docs"
end

desc "Open documentation in browser"
task :open_docs => :docs do
  sh "open docs/index.html"
end

执行rake docs即可完成文档构建。

常见问题解决

符号解析失败

  • 确保Xcode命令行工具已安装:xcode-select --install
  • 检查Swift版本兼容性,通过--swift-version指定版本
  • 复杂项目可预生成SourceKitten JSON:
sourcekitten doc -- -workspace MyProject.xcworkspace -scheme MyScheme > doc.json
jazzy --sourcekitten-sourcefile doc.json

主题样式不生效

扩展阅读

通过jazzy --help config查看完整配置选项,或提交issue至项目仓库获取支持。

【免费下载链接】jazzy Soulful docs for Swift & Objective-C 【免费下载链接】jazzy 项目地址: https://gitcode.com/gh_mirrors/ja/jazzy

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

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值