Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
A suggestion for the future of RDoc
Search
Masafumi Okura
October 05, 2024
Technology
880
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
A suggestion for the future of RDoc
https://matsue.rubyist.net/matrk11/
での発表資料です。
Masafumi Okura
October 05, 2024
Transcript
83 slides
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
More Decks by Masafumi Okura
See All by Masafumi Okura
Kaigi on Rails past, present and the future
okuramasafumi
0
35
Ruby for complete beginners
okuramasafumi
1
310
Conference as a communication hub for all of us
okuramasafumi
0
210
Metaprogramming isn't real, it can't hurt you
okuramasafumi
0
210
Developing static sites with Ruby
okuramasafumi
1
500
Why doesn't Ruby have Boolean class - final version
okuramasafumi
0
460
Reading Rails 1.0 Source Code
okuramasafumi
0
410
RDoc meets YARD
okuramasafumi
4
310
Why doesn't Ruby have Boolean class?
okuramasafumi
0
95
Other Decks in Technology
See All in Technology
うちなーぐちが認識できるなら、秋田弁もいけるはず!? Amazon Transcribe方言チューニング検証
ryouto715
1
170
ぼくのClaude Codeの使い方
falken
PRO
4
6.5k
Context != Context: One window, many lifecycles (AI Native DevCon, Nov 2026)
birgitta410
0
130
DBTS2026 盛り上がってますか!?Databricksが実現するAI時代のデータ基盤
akuwano
1
200
Steering と Hook (チームの決まりを守らせる) | 目指せ Kiro マスター 06
inariku
PRO
2
120
Kiro 入門 (1 つのエージェントを、どの画面からでも) | 目指せ Kiro マスター 01
inariku
PRO
6
1.7k
AWS Emulator を評価する: 手元で動く AWS の API の仕組み、始め方、確かめ方
inariku
PRO
1
220
AI時代の組織作り:チーム開発から「個人×AI」への移行と、持続可能な「開発資本」の築き方
ham0215
3
840
思考過程から秘密が漏れる:Amazon Bedrock上のKimi K3を5つの方法で攻めたら、25回中22回漏洩した話
yama3133
1
150
JAWS_FESTA2026_オンプレ-AWS間プロキシサーバの移行_性能_障害対応で得た実践ノウハウ_高島一晃.pdf
tkazuaki0820
1
120
内製アプリとClaudeスキルのセキュリティチェック、 Backlogの課題で回しています。
ayaka_egaaa
0
180
Context Ontology Accelerator 入門 (業務データの意味を、AI エージェントに渡す)
inariku
PRO
3
670
Featured
See All Featured
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
37
6.7k
Claude Code のすすめ
schroneko
67
230k
Public Speaking Without Barfing On Your Shoes - THAT 2023
reverentgeek
1
660
Why Your Marketing Sucks and What You Can Do About It - Sophie Logan
marketingsoph
0
470
AI Search: Where Are We & What Can We Do About It?
aleyda
0
8.2k
How GitHub (no longer) Works
holman
316
150k
Rebuilding a faster, lazier Slack
samanthasiow
85
9.8k
A Tale of Four Properties
chriscoyier
163
24k
A designer walks into a library…
pauljervisheath
211
25k
Design of three-dimensional binary manipulators for pick-and-place task avoiding obstacles (IECON2024)
konakalab
0
660
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3.6k
Art, The Web, and Tiny UX
lynnandtonic
304
22k