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
coc.nvimを使ってみたらとっても良かった話
Search
Takumi Kawase
September 26, 2019
Programming
910
3
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
coc.nvimを使ってみたらとっても良かった話
Takumi Kawase
September 26, 2019
Other Decks in Programming
See All in Programming
タクシーアプリ『GO』の バックエンド開発のおける AI利活用と若者のすべて
pyama86
3
1.9k
AIエージェントと協働するCLI開発 — BunとOpenClawで学んだこと
yoshikouki
1
240
AI駆動開発で崩れていくコードベースを立て直す
kyoko_nr_nr
1
440
Old Dog, New Tricks: The Java 25 Reinvention - JNation
bazlur_rahman
0
150
作って学ぶ、 JSX (TSX) ランタイムの基本
syumai
7
1.6k
The ROI of Quarkus for Spring Boot Applications
hollycummins
0
100
不変条件と整合性境界—ビジネスが決める設計判断と実現パターン / Invariants and Consistency Boundaries
nrslib
13
3.5k
dRuby over BLE
makicamel
2
320
Oxcを導入して開発体験が向上した話
yug1224
4
290
Java × distroless で 軽量なコンテナイメージを / Java on Distroless
contour_gara
0
510
生成AI時代にこそ効くGo | Why Go Works in the Age of Generative AI
mom0tomo
8
3.2k
Spring Security 実践 ─ GraphQL APIで実務に役立つ 認証・認可 を学ぶ
wagyu
0
200
Featured
See All Featured
Measuring & Analyzing Core Web Vitals
bluesmoon
9
860
Typedesign – Prime Four
hannesfritz
42
3.1k
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.7k
BBQ
matthewcrist
89
10k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
31
3.2k
Public Speaking Without Barfing On Your Shoes - THAT 2023
reverentgeek
1
410
<Decoding/> the Language of Devs - We Love SEO 2024
nikkihalliwell
1
240
Building Applications with DynamoDB
mza
96
7.1k
Paper Plane
katiecoart
PRO
1
51k
VelocityConf: Rendering Performance Case Studies
addyosmani
333
25k
Documentation Writing (for coders)
carmenintech
77
5.4k
brightonSEO & MeasureFest 2025 - Christian Goodrich - Winning strategies for Black Friday CRO & PPC
cargoodrich
3
720
Transcript
coc.nvimΛͬͯΈͨΒ ͱͬͯྑ͔ͬͨ Takumi Kawase gorilla.vim#8
w ɹ࣮ M2ੑཧʢܭࢉʣ 20ଔΤϯδχΞ • TypeScript(React, Vue) • Go(backend) •
Python(Deep Learning) • C++(Competitive Programming) @coil_msp123 vimྺແବʹ5,6͘Β͍ ݱࡏneovim
Background neovim 0.4Ξοϓσʔτ ิ͕ޮ͔ͳ͘ͳͬͨ ͕ɺfloating windowࢼ͍ͨ͠ʜ ͚Ͳʂิػೳ͕͑ͳ͍ͷࠔΔ υοτΛଧͬͯԿදࣔ͞Εͳ͍ʂʢ࠶ݱਤʣ ˞ࠓಈͬ͘Ά͍Ͱ͢
1VSQPTF ͔ͤͬ͘ͷػձͩ͠ଞͷϓϥάΠϯΛࢼͯ͠ΈΔ ͦ͏͍͑coc.nvimͬͯͷ͕ྑ͍Β͍͠ ˢͱΓ͋͑ͣग़͓ͯ͘͠ͱઆಘྗ͕͋Δؾ͕͢ΔϠπ
Result w ಛʹྑ͔ͬͨ w ʢ૬ରతʹʣಋೖָ͕ w ֦ுػೳͷαϙʔτ w ઃఆ͕KTPOͰهड़Մೳ w
։ൃݴޠ͕TypeScript w ѱ͍ʁ w ػೳ͕ଟͯ͘Ѳ͕େม
ิ༻ϑϨʔϜϫʔΫ -41ΫϥΠΞϯτ deoplete.nvim LanguageClient-Neovim asyncomplete.nvim asyncomplete-lsp.vim vim-lsp coc.nvim coc.nvimͦΕ୯ମͰLSPΛͬͨิ͕ՄೳʹͳΔɻ
coc.nvimͰಠࣗͷ֦ுػೳ͕ΠϯετʔϧՄೳ • coc-python • coc-json • coc-tsserver • coc-rust-analyzer •
coc-vetur • etc… LSPlinterͳͲͷػೳ coc-͔Β࢝·Δ͜ΕΒͷ֦ுػೳΛ :CocInstallίϚϯυͰΠϯετʔϧՄೳ IUUQTXXXOQNKTDPNTFBSDI RLFZXPSET"DPDOWJN ˣ֦ுػೳҰཡͪ͜Β
•vetur →coc-vetur •python-vscode →coc-python •rls-vscode →coc-rls •etc… vs codeͷࢿݯΛvimͰར༻Ͱ͖Δʂ ֦ுػೳͷҰ෦vs
codeͷ֦ுػೳΛforkͨ͠ͷ
None
ઃఆϑΝΠϧcoc-settings.json w coc.nvimͷઃఆ w lspͷઃఆ w ֦ுػೳͷઃఆ ˡcoc-json͕͋Δͱશͯิ :CocConfigίϚϯυͰ։͘
4VNNBSZ DPDOWJN͍͍ͧ
Appendix ༷ʑͳιʔεΛҰཡͰදࣔͯ͠ ͍͋·͍ݕࡧͰߜΓࠐΊΔίϚϯυ :CocList :CocList symbols :CocList sources ͳͲιʔεΛࢦఆ͢Δ͜ͱՄೳ
ߋʹ֦ுػೳͷcoc-listsΛΠϯετʔϧ͢Δ͜ͱͰ ϑΝΠϧόοϑΝͳͲιʔεʹͰ͖Δʂ
ิ͚ͩ͡Όͳ͍LSP ྫ͑ ctagsΛ͑ఆٛͷδϟϯϓͰ͖Δʜ ͚ͲҰൃͰਖ਼͍͠ఆٛʹඈΔͱݶΒͳ͍ ͦΕʹࢀরͷδϟϯϓ͍ͨ͠ˠgtags
LSPͰ ఆٛͷҠಈࢀরͷҠಈ͕αϙʔτ ˢcoc.nvimͷ߹ ެࣜͷઃఆ ͜ΕWTDPEFͰʜʁ
IUUQTRJJUBDPNDPJM@NTQJUFNTEFCEEBGB Qiitaʹهࣄॻ͍͓͖ͯ·ͨ͠