Swift 5.6 で使えるようになった swift-docc-plugin を試してみる / try swift-docc-plugin
by
USAMI Kosuke
Link
Embed
Share
Beginning
This slide
Copy link URL
Copy link URL
Copy iframe embed code
Copy iframe embed code
Copy javascript embed code
Copy javascript embed code
Share
Tweet
Share
Tweet
Slide 1
Slide 1 text
Swift 5.6 で使えるようになった swift-docc-plugin を試してみる 宇佐見公輔 / 株式会社ゆめみ
Slide 2
Slide 2 text
自己紹介 宇佐見 公輔(うさみこうすけ) / @usamik26 株式会社ゆめみ / iOS テックリード 最近、本を書いたりiOS の記事を寄稿したりしています。
Slide 3
Slide 3 text
Swift-DocC
Slide 4
Slide 4 text
Swift-DocC Swift-DocC : Swift のドキュメント生成ツール、オープンソースで公開されている CLI の docc コマンドで利用できる、またXcode に標準で組み込まれている ドキュメントコメントの例: /// 用意された特製のナマケモノ向け食糧を食べる。 /// /// - Parameters: /// - food: ナマケモノが食べる食糧。 /// - quantity: ナマケモノが食べる食糧の数。 /// - Returns: 食べた後のナマケモノのエネルギー量。 mutating public func eat(_ food: Food, quantity: Int = 1) -> Int { energyLevel += food.energy * quantity return energyLevel } ` `
Slide 5
Slide 5 text
Swift 5.6
Slide 6
Slide 6 text
Swift 5.6 2022-03-15 (日本時間)リリース 同じ日にリリースされたXcode 13.3 に付属 言語としてのアップデートもあるが、個人的には Swift Package Manager の機能が気になる Swift Package Manager SwiftPM 5.6 Release Notes SwiftPM にプラグイン機能が新しく追加された SE-0303 ビルドツールプラグイン: swift build のとき外部ツールを実行できる SE-0332 コマンドプラグイン: swift package コマンドを拡張して外部ツールを実行できる ` ` ` `
Slide 7
Slide 7 text
ビルドツールプラグイン swift build のとき外部ツールを実行できる Package.swift で使いたいプラグインを指定すると自動的に実行される Examples SE-0303 では、以下の例が挙げられている SwiftGen でソースコードを生成する SwiftProtobuf でソースコードを生成する ` ` ` `
Slide 8
Slide 8 text
コマンドプラグイン swift package コマンドを拡張して外部ツールを実行できる Package.swift で使いたいプラグインを指定するとコマンドが拡張される コマンドは swift package do-something という形式になる Examples SE-0332 では、以下の例が挙げられている ドキュメント生成: swift package generate-documentation ソースコード整形: swift package format-source-code Zip アーカイブ作成: swift package create-distribution-archive ` ` ` ` ` ` ` ` ` ` ` `
Slide 9
Slide 9 text
注意点 ビルドツールプラグインもコマンドプラグインも、プラグインの準備が必要 既に用意されていれば、それを使うだけでいいので簡単 用意されていなければ、自分でプラグインを記述する必要がある(ちょっと面倒)
Slide 10
Slide 10 text
swift-docc-plugin
Slide 11
Slide 11 text
swift-docc-plugin SwiftPM からSwift-DocC を実行できるコマンドプラグイン Swift 5.6 と同じ日にバージョン1.0.0 がリリース apple/swift-docc-plugin SwiftDocCPlugin | Documentation コマンドプラグインで追加されるコマンド swift package generate-documentation swift package preview-documentation ` ` ` `
Slide 12
Slide 12 text
プラグインの追加 Package.swift に以下を記述 let package = Package( dependencies: [ .package(url: "https://github.com/apple/swift-docc-plugin", from: "1.0.0"), ], targets: [ // targets ] ) これで拡張されたコマンドが使えるようになる ` `
Slide 13
Slide 13 text
swift package generate-documentation .doccarchive を生成する Xcode でドキュメントを見ることができる ` `
Slide 14
Slide 14 text
–transform-for-static-hosting オプション swift package generate-documentation --transform-for-static-hosting Web 公開用のドキュメントを生成する GitHub Pages でホスティングできる ` `
Slide 15
Slide 15 text
swift package preview-documentation ローカルでプレビュー用のサーバが起動する ブラウザでドキュメントを見ることができる
Slide 16
Slide 16 text
まとめ SwiftPM 形式のライブラリやツールでもSwift-DocC が使いやすくなった ドキュメントをWeb 公開する方法もサポートされた