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
A suggestion for the future of RDoc
Search
Masafumi Okura
October 05, 2024
Technology
1
630
A suggestion for the future of RDoc
https://matsue.rubyist.net/matrk11/
での発表資料です。
Masafumi Okura
October 05, 2024
Tweet
Share
More Decks by Masafumi Okura
See All by Masafumi Okura
Metaprogramming isn't real, it can't hurt you
okuramasafumi
0
140
Developing static sites with Ruby
okuramasafumi
1
400
Why doesn't Ruby have Boolean class - final version
okuramasafumi
0
380
Reading Rails 1.0 Source Code
okuramasafumi
0
350
RDoc meets YARD
okuramasafumi
4
220
Why doesn't Ruby have Boolean class?
okuramasafumi
0
44
My KaigiEffect at RubyKaigi 2025, part 1
okuramasafumi
1
100
Writing documentation can be fun with plugin system
okuramasafumi
0
260
Alba: Why, How and What's So Interesting
okuramasafumi
0
490
Other Decks in Technology
See All in Technology
A Casual Introduction to RISC-V
omasanori
0
350
20260311 技術SWG活動報告(デジタルアイデンティティ人材育成推進WG Ph2 活動報告会)
oidfj
0
360
Lambda Web AdapterでLambdaをWEBフレームワーク利用する
sahou909
0
170
OCI技術資料 : コンピュート・サービス 概要
ocise
4
54k
アーキテクチャモダナイゼーションを実現する組織
satohjohn
1
1.1k
Agent ServerはWeb Serverではない。ADKで考えるAgentOps
akiratameto
0
120
It’s “Time” to use Temporal
sajikix
3
220
形式手法特論:SMT ソルバで解く認可ポリシの静的解析 #kernelvm / Kernel VM Study Tsukuba No3
ytaka23
1
540
Goのerror型がシンプルであることの恩恵について理解する
yamatai1212
1
210
夢の無限スパゲッティ製造機 #phperkaigi
o0h
PRO
0
130
楽しく学ぼう!ネットワーク入門
shotashiratori
1
470
今のWordPress の制作手法ってなにがあんねん?(改) / What’s the Deal with WordPress Development These Days?
tbshiki
0
500
Featured
See All Featured
Skip the Path - Find Your Career Trail
mkilby
1
84
Noah Learner - AI + Me: how we built a GSC Bulk Export data pipeline
techseoconnect
PRO
0
140
Practical Orchestrator
shlominoach
191
11k
Intergalactic Javascript Robots from Outer Space
tanoku
273
27k
Discover your Explorer Soul
emna__ayadi
2
1.1k
End of SEO as We Know It (SMX Advanced Version)
ipullrank
3
4.1k
How to Ace a Technical Interview
jacobian
281
24k
Speed Design
sergeychernyshev
33
1.6k
A Guide to Academic Writing Using Generative AI - A Workshop
ks91
PRO
0
240
Technical Leadership for Architectural Decision Making
baasie
3
290
Leveraging Curiosity to Care for An Aging Population
cassininazir
1
200
Build The Right Thing And Hit Your Dates
maggiecrowley
39
3.1k
Transcript
RDocͷվળҊΛͻͨ͢Β͠Ό Δ͚ͩ দߐRubyձٞ11 2024-10-05, OKURA Masafumi
RDocͷվળҊΛͻͨ͢Β͠Ό Δ͚ͩ RDocͷ՝ཧ দߐRubyձٞ11 2024-10-05, OKURA Masafumi
Dev.introduce self • ໊લɿେխ࢙ʢ͓͓͘Β·͞;Έʣ • ॴଐɿϑϦʔϥϯε • ՝֎׆ಈɿKaigi on RailsνʔϑΦʔΨφΠβʔɺ”OH!
MY RUBYISTS” ϙουΩϟετओ࠻ɺAlba࡞ऀͳͲ • দߐͱࢲɿদߐʹདྷΔͷ3ճʢ2019, 2023ʣɺ12݄ʹদߐʹདྷ ·͢
None
None
None
RDoc
“RDoc produces HTML and command-line documentation for Ruby projects. RDoc
includes the rdoc and ri tools for generating and displaying documentation from the command-line.”
ʮRDocRubyϓϩδΣΫτ͚ͷ HTML/ίϚϯυϥΠϯυΩϡϝϯτΛ ੜ͠·͢ɻRDocʹίϚϯυϥΠ ϯ͔ΒυΩϡϝϯτΛੜɾදࣔ͢Δ rdocͱriπʔϧؚ͕·Ε͍ͯ·͢ɻʯ ༁
ʲॏཁʳ RDoc3.3ܥͰ default gem
RDocඪ४Ͱ ͑Δݱ࣌Ͱ །Ұͷ υΩϡϝϯτπʔϧ
ʲॏཁʳ RDoc ࣺͯΒΕͳ͍
RubyͷCίʔυ RDocͰύʔε ͢Δඞཁ͕͋Δ
RDocΛ վળ͢Δඞཁ ͕͋Δ
YARDʁ
ͦΕͦΕ ϝϯςφϯεঢ়گͦ͜·Ͱྑ͘ͳ͍
RDocͱΘͨ͠
Back to 2020…
Albaͷ։ൃ
Rubyͱͯ շదͰָ͍͠
YARD
None
ָ͘͠ͳ͍
ͬͱྑ͍ํ๏͕ ͋ΔͷͰʁ
2023
Niwa
New Integrated Working Annotations
New Integrated Working Annotations
֤छπʔϧͱ υΩϡϝϯτͷ ౷߹
ྫ͑ܕ
ʮRBS͕͋Δͷʹ ͳΜͰYARDͷܕ Λॻ͍͍ͯΔʁʯ
RubyKaigi 2024 Day3
όʔʹͯ
Stan Lo
ʮͳΜ͔υΩϡϝϯτͷ͜ ͱͬͯΔΈ͍͚ͨͩͲɺ Ͳ͏ͤͳΒRDocͬͨ΄͏ ͕ϢʔβʔʹӨڹΛ༩͑Β ΕΔΑʯ
ࣗʮͦ͏͔ʯ
RDocͷ՝
RDocͷ՝ • ܕγεςϜʢͱ͍͏͔rbs-inlineʣͱͷ౷߹ • σΟϨΫςΟϒ͕ͯ͘͠දݱྗ͕͍ • YARDͷλά͕͍͍ͨ • ֦ுੑ͕͍ •
ྫ͑LSP͔Β৮Γ͍ͨͱ͖ʹͲ͏͢Δʁ
ܕγεςϜͱͷ ౷߹
rbs-inline
RDocʹͱͬͯ ݱঢ়ͨͩͷจࣈྻ
https://github.com/soutaro/rbs-inline/issues/8
“1. Supporting some YARD syntaxes that can easily be used
for type de fi nition, like @param and @return 2. Providing a YARD plugin to support converting @rbs methods for documentation generation”
rbs-inline YARD
rbs-inline RDoc
σΟϨΫςΟϒ ͱ λά
σΟϨΫςΟϒ ͱ
:nodoc:
σΟϨΫςΟϒ RDocͷڍಈΛ ੍ޚ͢Δ
λάͱ
@param @return @since
RDocʹ λά͕ͳ͍
σΟϨΫςΟϒ ݸผͷίʔυͷ Ξϊςʔγϣϯʹ ͔ͳ͍ ※ݸਓͷݟղͰ͢
λά΄͍͠ʂ
ͱ͍͏͔ YARDه๏͕ ΄͍͠ʂ
ͦͦࣗͨͪͷ ϓϩμΫτYARDͰ ίϝϯτΛॻ͍͍ͯΔ
RDoc͕YARDΛ ཧղ͢Ε Α͍ͷͰʁ
RDocͷ֦ுੑ
ྫ͑RDocʹ ύʔαʔΛՃ ͍ͨ͠
None
͍͠
υΩϡϝϯτԽ ͞Εͯͳ͍ ʢRDocͳͷʹʣ
ύʔαʔ ͚ͩ͡Όͳ͍
৭ʑͳͷͨͪ ͱ࿈ܞ͍ͨ͠
৭ʑͳͷͨͪ ʹΑ֦ͬͯுͰ͖ ΔΑ͏ʹ͍ͨ͠
ʮϓϥάΠϯʯ తͳAPI͕΄͍͠
ύʔαʔͷՃ ʢYARDͳͲʣ
ίʔυ ΦϒδΣΫτͷ ֦ு
ग़ྗઌͷ Ճ ʢLSPͳͲʣ
https://github.com/ruby/rdoc/issues/1178
·ͱΊɿ ϑϨʔϜϫʔΫ ͱͯ͠ͷRDoc
υΩϡϝϯτͷ ཁٻ૿େ ͍ͯ͠Δ
ʲ͓·͚ʳ AI knows what, but not why
ʲ͓·͚ʳ ίʔυͷഎܠ ਓ͕ؒॻ͔͘͠ͳ͍
RDoc
།Ұͷެࣜ υΩϡϝϯτ πʔϧ
ͯ͜ೖΕ͍ͨ͠
՝ݱʹ ΑͬͯҟͳΔ
ҟͳΔݱʹҟͳΔ՝ • Rails APIΛ࡞͍ͬͯΔνʔϜ • ͔ͤͬ͘υΩϡϝϯτΛ࡞ͬͯϝϯς͞Εͳ͍ • Gem࡞ऀ • ܕఆٛͱυΩϡϝϯτΛ౷߹͍ͨ͠
• Rubyݴޠ։ൃऀ • ݶΒΕͨίϝϯτεϖʔεΛ༗ޮར༻͍ͨ͠ʢʁʣ
ҟͳΔ՝ʹҟͳΔղܾࡦ • ͔ͤͬ͘υΩϡϝϯτΛ࡞ͬͯϝϯς͞Εͳ͍ • ྫ͑ࣗࣾͷطଘυΩϡϝϯτͱ౷߹͢ΔͨΊͷRDocϓϥάΠϯ • RSpecͷ༰Λύʔεͯ͠υΩϡϝϯτԽ͢ΔRDocϓϥάΠϯ • ܕఆٛͱυΩϡϝϯτΛ౷߹͍ͨ͠ •
.rbsϑΝΠϧʹॻ͔Εͨ༰ΛύʔεͰ͖ΔRDocϓϥάΠϯ • ݶΒΕͨίϝϯτεϖʔεΛ༗ޮར༻͍ͨ͠ʢʁʣ • ঢ়گʹ߹ΘͤͯϓϥάΠϯΛ͚ସ͑Δʢʁʣ
࠷ऴඪɿ
υΩϡϝϯτ ָ͘͠ॻ͚Δ Α͏ʹͳΔ
ͨͷ͍͠RDoc