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
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Satoshi Hachiya
January 27, 2016
Programming
0
500
Pancake with SourceKitten
・SourceKitten を使ってドキュメント自動生成
・(おまけ)Instagram へ写真をシェアするライブラリ
※パンケーキは関係ありません。
Satoshi Hachiya
January 27, 2016
Tweet
Share
More Decks by Satoshi Hachiya
See All by Satoshi Hachiya
iOS の HTTP キャッシュについて
jp_pancake
3
680
花嫁アプリを作った
jp_pancake
1
520
try! ReactorKit
jp_pancake
1
770
QR Code Recognition on iOS 11
jp_pancake
1
1.3k
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
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
480
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
390
Unity6.3 AudioUpdate
cova8bitdots
0
120
文字コードの話
qnighy
44
17k
AIに任せる範囲を安全に広げるためにやっていること
fukucheee
0
130
PJのドキュメントを全部Git管理にしたら、一番喜んだのはAIだった
nanaism
0
250
朝日新聞のデジタル版を支えるGoバックエンド ー価値ある情報をいち早く確実にお届けするために
junkiishida
1
780
nilとは何か 〜interfaceの構造とnil!=nilから理解する〜
kuro_kurorrr
3
1.9k
Agentic AI: Evolution oder Revolution
mobilelarson
PRO
0
140
AI時代のソフトウェア開発でも「人が仕様を書く」から始めよう-医療IT現場での実践とこれから
koukimiura
0
140
What Spring Developers Should Know About Jakarta EE
ivargrimstad
0
110
どんと来い、データベース信頼性エンジニアリング / Introduction to DBRE
nnaka2992
1
260
Featured
See All Featured
A brief & incomplete history of UX Design for the World Wide Web: 1989–2019
jct
1
320
Typedesign – Prime Four
hannesfritz
42
3k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
54k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
26
3.4k
Java REST API Framework Comparison - PWX 2021
mraible
34
9.2k
Code Review Best Practice
trishagee
74
20k
More Than Pixels: Becoming A User Experience Designer
marktimemedia
3
350
How to Ace a Technical Interview
jacobian
281
24k
From π to Pie charts
rasagy
0
150
Measuring & Analyzing Core Web Vitals
bluesmoon
9
780
Primal Persuasion: How to Engage the Brain for Learning That Lasts
tmiket
0
290
Building the Perfect Custom Keyboard
takai
2
710
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