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
Recent Neovim
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Masafumi Okura
July 30, 2021
150
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Recent Neovim
Masafumi Okura
July 30, 2021
More Decks by Masafumi Okura
See All by Masafumi Okura
Ruby for complete beginners
okuramasafumi
1
200
Conference as a communication hub for all of us
okuramasafumi
0
110
Metaprogramming isn't real, it can't hurt you
okuramasafumi
0
190
Developing static sites with Ruby
okuramasafumi
1
480
Why doesn't Ruby have Boolean class - final version
okuramasafumi
0
430
Reading Rails 1.0 Source Code
okuramasafumi
0
400
RDoc meets YARD
okuramasafumi
4
290
Why doesn't Ruby have Boolean class?
okuramasafumi
0
82
My KaigiEffect at RubyKaigi 2025, part 1
okuramasafumi
1
120
Featured
See All Featured
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
4.9k
Raft: Consensus for Rubyists
vanstee
142
7.7k
Exploring anti-patterns in Rails
aemeredith
4
510
Building a Scalable Design System with Sketch
lauravandoore
464
34k
Money Talks: Using Revenue to Get Sh*t Done
nikkihalliwell
0
500
Git: the NoSQL Database
bkeepers
PRO
432
67k
Jamie Indigo - Trashchat’s Guide to Black Boxes: Technical SEO Tactics for LLMs
techseoconnect
PRO
0
680
For a Future-Friendly Web
brad_frost
183
10k
Reflections from 52 weeks, 52 projects
jeffersonlam
356
21k
The Limits of Empathy - UXLibs8
cassininazir
1
680
We Are The Robots
honzajavorek
0
380
Darren the Foodie - Storyboard
khoart
PRO
4
3.9k
Transcript
࠷ۙͷNeovim ͜Μͳײͬ͡Ά͍Α ẂנϥΠτχϯάτʔΫʢAkarenga.LTʣ ୈ10ճ OKURA Masafumi, 2021-07-30
ࣗݾհ • ໊લɿେխ࢙ • ॴଐɿϑϦʔϥϯε • ಘҙͳݴޠɿRuby • ͍ͬͯΔΤσΟλɿNeovim •
՝֎׆ಈɿKaigi on Rails, ʰϚελϦϯάVimʱ༁
ࠓͷςʔϚ
Neovim
Neovimͱ • https://neovim.io/ • ݹ͔͘Β͋ΔΤσΟλͰ͋ΔVimͷϑΥʔΫ • LuaΛ࠾༻֦ͨ͠ுੑͷߴ͕͞Ϧ • 2021࣌ͰVimͱҟͳͬͨํʹਐԽ͍ͯ͠Δ
࠷ۙͷNeovimࣄ • LSPʢLanguage Server ProtocolʣͷΈࠐΈ • TreeSitterͷద༻ʹΑΔ֦ு͞ΕͨγϯλοΫεϋΠϥΠτ • Floating WindowʹΑΔUIͷࣗ༝ͷߴ͞
LSP
LSP • https://microsoft.github.io/language-server-protocol/ • Microsoft͕։࢝ͨ͠ΤσΟλͷͨΊͷϓϩτίϧ • ิީิͷఏڙϦωʔϜػೳͳͲɺ༷ʑͳػೳΛඋ͑Δ • NeovimͰݱ࣌Ͱͷ࠷৽൛Ͱ͋Δv0.5ΑΓωΠςΟϒʹαϙʔτ ͞ΕΔ
TreeSitter
TreeSitter • https://tree-sitter.github.io/tree-sitter/ • ύʔαδΣωϨʔλͱύʔεϥΠϒϥϦ • ֤छϓϩάϥϛϯάݴޠʹରԠ • nvim-treesitterϓϥάΠϯΛ͏͜ͱͰNeovimͷγϯλοΫεϋΠϥ ΠτΛஔ͖͑Մೳ
nvim-treesitter • https://github.com/nvim-treesitter/nvim-treesitter • ࠓݟͨΒNeovim v0.5Ͱಈ͔ͳ͍ͱॻ͍͚ͯ͋ͬͨͲɺͬͯΈͨ ײ͡ಈ͍ͯͦ͏ • NeovimͷγϯλοΫεϋΠϥΠτ͕ΊͪΌ៉ྷʹͳΔ
Floating Window
Floating Window • Neovimͷ௨ৗͷόοϑΝͷ্ʹΦʔόʔϨΠ͢ΔΟϯυ • API͔Β࡞Ͱ͖Δ • GitͷใLinterͷใΛग़͢ϓϥάΠϯ͕͋Δ
͓·͚ɿVimͱϚεΦʔόʔ
VimͱϚεΦʔόʔ • ࠷ۙͷVimʹʮόϧʔϯʯͱݺΕΔFloating Window૬ͷػೳ ͕͋Γɺ͔͠ϚεΦʔόʔʹରԠ͍ͯ͠Δ • Linterͷܯࠂ͕ग़͍ͯΔՕॴʹϚεΛ͍࣋ͬͯ͘ͱܯࠂͷৄࡉ͕ද ࣔ͞ΕΔ • Neovimʹͳ͍ػೳ