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
390
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
890
作ってわかる現代のVimのAutoComplete ~そしてVimConf2019へ~
lighttiger2505
3
1.7k
自社サービスのDjangoを 1.3から1.11(LTS)に アップグレードするまでの道のり
lighttiger2505
6
3.5k
LSPがもたらしたVimプラグインの変化に思いを馳せる
lighttiger2505
2
1.4k
ターミナルアプリケーションとしてのVim
lighttiger2505
0
560
Go Language Server 使うべし
lighttiger2505
5
2k
Goで作るインタラクティブなCLIコマンドとそのデザイン
lighttiger2505
0
860
Other Decks in Programming
See All in Programming
RubyKaigi Hack Space in Tokyo & 函館最速 "予習" 会 / RubyKaigi Hack Space in Tokyo & The Fastest Briefing of RubyKaigi 2026 in Hakodate
moznion
1
120
ユーザーにサブドメインの ECサイトを提供したい (あるいは) 2026年函館で一番熱くなるかもしれない言語の話
uvb_76
0
170
❄️ tmux-nixの実装を通して学ぶNixOSモジュール
momeemt
1
120
Design Pressure
hynek
0
1.4k
Efficiency and Rock 'n’ Roll (Really!)
hollycummins
0
590
TypeScript を活かしてデザインシステム MCP を作る / #tskaigi_after_night
izumin5210
4
470
鯛変だったRubyKaigi 2025 ── それでも楽しかった!
pndcat
0
130
TypeScript エンジニアが Android 開発の世界に飛び込んだ話
yuisakamoto
6
920
型付け力を強化するための Hoogle のすゝめ / Boosting Your Type Mastery with Hoogle
guvalif
1
230
rbs-traceを使ってWEARで型生成を試してみた After RubyKaigi 2025〜ZOZO、ファインディ、ピクシブ〜 / tried rbs-trace on WEAR
oyamakei
0
970
TypeScriptのmoduleオプションを改めて整理する
bicstone
4
420
Cloudflare Workersで進めるリモートMCP活用
syumai
13
1.9k
Featured
See All Featured
Documentation Writing (for coders)
carmenintech
71
4.8k
Into the Great Unknown - MozCon
thekraken
39
1.8k
Rebuilding a faster, lazier Slack
samanthasiow
81
9k
Measuring & Analyzing Core Web Vitals
bluesmoon
7
460
Unsuck your backbone
ammeep
671
58k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
30
2.4k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
137
34k
Intergalactic Javascript Robots from Outer Space
tanoku
271
27k
Docker and Python
trallard
44
3.4k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
180
53k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
667
120k
BBQ
matthewcrist
88
9.7k
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