Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Pancake with SourceKitten
Search
Satoshi Hachiya
January 27, 2016
Programming
500
0
Share
Pancake with SourceKitten
・SourceKitten を使ってドキュメント自動生成
・(おまけ)Instagram へ写真をシェアするライブラリ
※パンケーキは関係ありません。
Satoshi Hachiya
January 27, 2016
More Decks by Satoshi Hachiya
See All by Satoshi Hachiya
iOS の HTTP キャッシュについて
jp_pancake
3
690
花嫁アプリを作った
jp_pancake
1
530
try! ReactorKit
jp_pancake
1
780
QR Code Recognition on iOS 11
jp_pancake
1
1.4k
WWDC Pre Party 2018 at Ebisu
jp_pancake
4
3.4k
try! Swift Tokyo 2018 Report
jp_pancake
1
510
try! Swift Tokyo 2018 Day 1 Opening
jp_pancake
0
860
What is `Swifty`?
jp_pancake
2
1.4k
danger-swift
jp_pancake
2
1.6k
Other Decks in Programming
See All in Programming
Claude Codeをカスタムして自分だけのClaude Codeを作ろう
terisuke
0
150
Terraform言語の静的解析 / static analysis of Terraform language
wata727
1
120
10 Tips of AWS ~Gen AI on AWS~
licux
5
510
Symfony AI in Action - SymfonyLive Berlin 2026
chr_hertel
1
110
Claude Code × Gemini × Ebitengine ゲーム制作素人WebエンジニアがGoでゲームを作った話
webzawa
0
210
エラー処理の温故知新 / history of error handling technic
ryotanakaya
7
1.8k
Spec Driven Development | AI Summit Vilnius
danielsogl
PRO
1
120
GoogleCloudとterraform完全に理解した
terisuke
1
180
🦞OpenClaw works with AWS
licux
1
310
ソースコード→AST→オペコード、の旅を覗いてみる
o0h
PRO
0
100
tRPCの概要と少しだけパフォーマンス
misoton665
2
250
Claude CodeでETLジョブ実行テストを自動化してみた
yoshikikasama
0
1.1k
Featured
See All Featured
The B2B funnel & how to create a winning content strategy
katarinadahlin
PRO
1
340
Amusing Abliteration
ianozsvald
1
160
Future Trends and Review - Lecture 12 - Web Technologies (1019888BNR)
signer
PRO
0
3.5k
WCS-LA-2024
lcolladotor
0
560
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
Efficient Content Optimization with Google Search Console & Apps Script
katarinadahlin
PRO
1
530
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
141
35k
The Invisible Side of Design
smashingmag
303
52k
How to build a perfect <img>
jonoalderson
1
5.4k
The AI Revolution Will Not Be Monopolized: How open-source beats economies of scale, even for LLMs
inesmontani
PRO
3
3.4k
SEOcharity - Dark patterns in SEO and UX: How to avoid them and build a more ethical web
sarafernandez
0
180
Exploring the relationship between traditional SERPs and Gen AI search
raygrieselhuber
PRO
2
3.9k
Transcript
Pancake with SourceKitten 2016.01.27 ؔϞόΠϧΞϓϦݚڀձ #10 Martha 1
ࣗݾհ @JPMartha_jp JPMartha 2
MarthaʢϚʔαʣ • ֨ಆՈͷ໊લͰڹ͖͕͍͍ͱࢥͬͯ ͍͡Ί·ͨ͠ɻ • ͨͩঁੑͷ໊લͩͱ͋ͱ͔ΒΓ·ͨ͠ɻ • ͝ཡͷͱ͓ΓΦδαϯͰ͢ɻ 3
ਆށ͔Βདྷ·ͨ͠ 4
ൃදͷ֓ཁ • SourceKitten ΛͬͯυΩϡϝϯτࣗಈੜ • ʢ͓·͚ʣInstagram ࣸਅΛγΣΞ͢ΔϥΠϒϥϦ 5
υΩϡϝϯτ ࣗಈੜπʔϧ ·͍ͩͯ͠ͳ͍Ͱ͕͢ݱঢ়ใࠂͰ͢ɻ 6
πʔϧΛάάΓ·ͨ͠ ͦ͏͍͏ͷ͢Ͱʹ͋Γ·͢ɻ 7
jazzy https://github.com/realm/jazzy • HTMLܗࣜͷϑΝΠϧΛੜ͠·͢ɻ ‣Markdown ܗࣜʹ͍ͨ͠Ͱ͢ɻ • ΦʔϓϯιʔεͰ͢ɻʢRubyʣ ‣Ruby Θ͔Γ·ͤΜɻ
8
ࣗྗͰ࡞Γ·͢ https://github.com/JPMartha/Pancake ʢԾʣ 9
ίʔυղੳ • ͡ΊࣗྗͰ͠·͕ͨ͠ෳࡶͰͨ͠ɻ • SourceKitten Λར༻͢Δ͜ͱʹ͠·ͨ͠ɻ ʢ jazzy SwiftLint
ར༻͍ͯ͠·͢ʣ ‣https://github.com/jpsim/SourceKitten ‣https://github.com/realm/jazzy ‣https://github.com/realm/SwiftLint 10
SourceKitten ͱ ͜Μͳ͜ͱ͕Ͱ͖·͢ɻʢઆ໌লུʣ
[{ "\/Users\/sathachie\/Pancake\/DemoApp\/DemoApp\/ViewController.swift" : { "key.substructure" : [ { "key.kind" :
"source.lang.swift.decl.class", "key.offset" : 174, "key.parsed_declaration" : "class ViewController: NSViewController", "key.namelength" : 14, "key.bodyoffset" : 208, "key.bodylength" : 385, "key.length" : 14, "key.name" : "ViewController", "key.typename" : "ViewController.Type", "key.parsed_scope.end" : 34, "key.usr" : "s:C7DemoApp14ViewController", "key.nameoffset" : 174, "key.inheritedtypes" : [ { "key.name" : "NSViewController" } ], "key.annotated_decl" : "<Declaration>class ViewController : <Type usr=\"c:objc(cs)NSViewController\">NSViewController<\/Type><\/ Declaration>", "key.accessibility" : "source.lang.swift.accessibility.internal", "key.substructure" : [ { "key.kind" : "source.lang.swift.decl.function.method.instance", 12
ߏ 13 SourceKitʢίʔυղੳɾύʔεʣ HimotokiʢJSONσίʔυʣ ࣗ࡞πʔϧʢMarkdownੜʣ SourceKittenʢJSONੜʣ
Markdown ܗࣜͰग़ྗ 14
ݱঢ়ใࠂ Himotoki ΤϥʔͰࣦഊͨ͠ͷͰ… 15
Promise.swift https://github.com/yashigani/Promise 16
Promise.md
State.md Result.md
͜͜ʹஔ͍͍ͯ·͢ https://gist.github.com/JPMartha/49b3215fb5d99bdf9aea 19
͓·͚ 20
Instagram ࣸਅΛ γΣΞ͢ΔϥΠϒϥϦ https://github.com/JPMartha/EggsBenedict 21
ΦʔϓϯιʔεͰ͢ ͨͩ͠ Issues ͯࣗ͢ͷϝϞͰ͢ɻ 23
ࢀߟ • SourceKitten https://github.com/jpsim/SourceKitten • jazzy https://github.com/realm/jazzy • SwiftLint https://github.com/realm/SwiftLint
• Swift SourceKitΛͬͯSwiftιʔείʔυΛϋΠϥΠτ͢Δ http://qiita.com/gfx/items/7f47e98762ecf6f53af5 • SourceKittenʹ͍ͭͯ http://www.slideshare.net/ssusera7b1a1/source-kitten 24
Ҏ্ ͋Γ͕ͱ͏͍͟͝·ͨ͠ 25