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
400
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
Reading Rails 1.0 Source Code
okuramasafumi
0
5
RDoc meets YARD
okuramasafumi
4
160
Why doesn't Ruby have Boolean class?
okuramasafumi
0
12
My KaigiEffect at RubyKaigi 2025, part 1
okuramasafumi
1
50
Writing documentation can be fun with plugin system
okuramasafumi
0
210
Alba: Why, How and What's So Interesting
okuramasafumi
0
400
Why did my proposals get rejected?
okuramasafumi
1
720
15 JSON serializers for Ruby
okuramasafumi
2
460
Tech Events, Should We See Them from the Outside or the Inside?
okuramasafumi
1
76
Other Decks in Technology
See All in Technology
【Grafana Meetup Japan #6】Grafanaをリバプロ配下で動かすときにやること ~ Grafana Liveってなんだ ~
yoshitake945
0
220
生成AI時代に必要な価値ある意思決定を育てる「開発プロセス定義」を用いた中期戦略
kakehashi
PRO
1
260
Kubernetes における cgroup driver のしくみ: runwasi の bugfix より
z63d
2
120
Flutterでキャッチしないエラーはどこに行く
taiju59
0
210
20250903_1つのAWSアカウントに複数システムがある環境におけるアクセス制御をABACで実現.pdf
yhana
2
310
2025年になってもまだMySQLが好き
yoku0825
8
3.6k
生成AI時代のデータ基盤
shibuiwilliam
4
2.8k
Agile PBL at New Grads Trainings
kawaguti
PRO
1
180
kubellが考える戦略と実行を繋ぐ活用ファーストのデータ分析基盤
kubell_hr
0
130
おやつは300円まで!の最適化を模索してみた
techtekt
PRO
0
270
Function Body Macros で、SwiftUI の View に Accessibility Identifier を自動付与する/Function Body Macros: Autogenerate accessibility identifiers for SwiftUI Views
miichan
2
160
ヘブンバーンズレッドにおける、世界観を活かしたミニゲーム企画の作り方
gree_tech
PRO
0
460
Featured
See All Featured
Rails Girls Zürich Keynote
gr2m
95
14k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
Building Adaptive Systems
keathley
43
2.7k
The Invisible Side of Design
smashingmag
301
51k
Navigating Team Friction
lara
189
15k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.4k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3k
Scaling GitHub
holman
463
140k
Typedesign – Prime Four
hannesfritz
42
2.8k
The World Runs on Bad Software
bkeepers
PRO
70
11k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
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