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
Connect with many developers from the small plugin
Search
Toshikazu Ohashi
November 03, 2019
Programming
0
400
Connect with many developers from the small plugin
VimConf2019 Lightning talk
Toshikazu Ohashi
November 03, 2019
Tweet
Share
More Decks by Toshikazu Ohashi
See All by Toshikazu Ohashi
無自覚にメンバーの心理的安全性を奪っていた経験から得た学び
lighttiger2505
159
210k
黒画面が最高のしごと道具である3つの理由
lighttiger2505
0
2.1k
Golangで作るSQL Language Server(sqls)
lighttiger2505
1
900
作ってわかる現代のVimのAutoComplete ~そしてVimConf2019へ~
lighttiger2505
3
1.7k
自社サービスのDjangoを 1.3から1.11(LTS)に アップグレードするまでの道のり
lighttiger2505
6
3.6k
LSPがもたらしたVimプラグインの変化に思いを馳せる
lighttiger2505
2
1.4k
ターミナルアプリケーションとしてのVim
lighttiger2505
0
570
Go Language Server 使うべし
lighttiger2505
5
2.1k
Goで作るインタラクティブなCLIコマンドとそのデザイン
lighttiger2505
0
870
Other Decks in Programming
See All in Programming
PostgreSQLのRow Level SecurityをPHPのORMで扱う Eloquent vs Doctrine #phpcon #track2
77web
2
510
すべてのコンテキストを、 ユーザー価値に変える
applism118
3
1.2k
Webの外へ飛び出せ NativePHPが切り拓くPHPの未来
takuyakatsusa
2
540
XP, Testing and ninja testing
m_seki
3
240
今ならAmazon ECSのサービス間通信をどう選ぶか / Selection of ECS Interservice Communication 2025
tkikuc
21
3.9k
Goで作る、開発・CI環境
sin392
0
230
効率的な開発手段として VRTを活用する
ishkawa
0
130
データの民主化を支える、透明性のあるデータ利活用への挑戦 2025-06-25 Database Engineering Meetup#7
y_ken
0
350
0626 Findy Product Manager LT Night_高田スライド_speaker deck用
mana_takada
0
160
初学者でも今すぐできる、Claude Codeの生産性を10倍上げるTips
s4yuba
16
11k
AI時代のソフトウェア開発を考える(2025/07版) / Agentic Software Engineering Findy 2025-07 Edition
twada
PRO
77
25k
Modern Angular with Signals and Signal Store:New Rules for Your Architecture @enterJS Advanced Angular Day 2025
manfredsteyer
PRO
0
210
Featured
See All Featured
Faster Mobile Websites
deanohume
307
31k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
Building a Scalable Design System with Sketch
lauravandoore
462
33k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
50k
The Art of Programming - Codeland 2020
erikaheidi
54
13k
How GitHub (no longer) Works
holman
314
140k
Reflections from 52 weeks, 52 projects
jeffersonlam
351
20k
A better future with KSS
kneath
239
17k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
44
2.4k
Designing for humans not robots
tammielis
253
25k
Typedesign – Prime Four
hannesfritz
42
2.7k
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
5
270
Transcript
Connect with many developers from the small plugin VimConf 2019
Lightning Talk @lighttiger2505
deoplete-vim-lsp • Completion source for deoplete.nvim • Get a completion
candidate from language server via vim-lsp
Demo
It's a small plugin • deoplete-vim-lsp is small amount of
source code • Python: 175 step • Vim script: 32 step
Big developer experience • Suppurt completion all languages • Required
language server • High performance completion • Heavy processing is executed asynchronously
Why ? I only write a little code
The answer is in the architecture of deoplete-vim-lsp
Archtecture deoplete-vim-lsp (Request completion) NeoVim deoplete.nvim deoplete-vim-lsp vim-lsp Language Server
TextChange call getter_candidates() call lsp#send_request() textDocument/ Completion
deoplete-vim-lsp NeoVim deoplete.nvim vim-lsp Language Server Archtecture deoplete-vim-lsp (Receive completion
candidate) call complete() call deoplete#auto_complete() call handle_completion() response
Meny depends • deoplete-vim-lsp dose not work alone • Completion
Management • deoplete.nvim • Language Server Client • vim-lsp
Feel so a connection with the developers • If any
of these are missing deoplete-vim-lsp does not exist • I have noticed that you are supported by many developers • Everything was connected !!!
Connections Everything started with Vim Vim
Connections NeoVim Vim NeoVim was created with Vim as the
fork. NeoVim had a new feature called remote plugin
Connections NeoVim Vim deoplete.nvim deoplete.nvim was created as completion manager
created by remote plugin
Connections NeoVim Vim deoplete.nvim LSP Langage server protocol(LSP) creates providing
a high level of support for any programming language in any editor.
Connections NeoVim Vim deoplete.nvim LSP vim-lsp vim-lsp was created as
Vim language server client
Connections NeoVim Vim deoplete.nvim LSP vim-lsp deoplete-vim-lsp I created deoplete-vim-lsp
to use vim- lsp completion in deoplete.nvim
Summry • deoplete-vim-lsp is small plugin • Because other plugins
already have the necessary features • I'm helped by the ecosystem of Vim created by the developers
Thanks to all Vim developers
About me • @lighttiger2505 (Toshikazu Ohashi) • Server Side Engineer
(iRidge inc) • Created Many CLI Commands • Created deoplete-vim-lsp