SlideShare a Scribd company logo

Differences between Nvim and Vim full version

Shougo

Why are you use Vim or neovim? Hm, "Vim8 has almost same API with neovim?" Really? Do you know the differences? Do you know neovim advantages and disadvantages? I can explain them to you in 5 minutes! Because I am the contributor of Vim and neovim.

Differences between Nvim and Vim full version

Shougo

Why are you use Vim or neovim? Hm, "Vim8 has almost same API with neovim?" Really? Do you know the differences? Do you know neovim advantages and disadvantages? I can explain them to you in 5 minutes! Because I am the contributor of Vim and neovim.

Differences between Nvim and Vim full version

1 of 27

Recommended

Vim conf2019 by
Vim conf2019Vim conf2019
Vim conf2019Shougo
2.6K views52 slides
Neosnippet.vim + Deoppet.nvim in Vim conf 2017 by
Neosnippet.vim + Deoppet.nvim in Vim conf 2017Neosnippet.vim + Deoppet.nvim in Vim conf 2017
Neosnippet.vim + Deoppet.nvim in Vim conf 2017Shougo
7.4K views23 slides
カードゲームで学ぶテキストエディタ by
カードゲームで学ぶテキストエディタカードゲームで学ぶテキストエディタ
カードゲームで学ぶテキストエディタShougo
3.4K views17 slides
deoplete: The dark powered auto completion plugin for neovim by
deoplete: The dark powered auto completion plugin for neovimdeoplete: The dark powered auto completion plugin for neovim
deoplete: The dark powered auto completion plugin for neovimShougo
11.5K views20 slides
我が evil-mode を嫌いな理由 〜evil-mode の闇〜 by
我が evil-mode を嫌いな理由 〜evil-mode の闇〜我が evil-mode を嫌いな理由 〜evil-mode の闇〜
我が evil-mode を嫌いな理由 〜evil-mode の闇〜Shougo
11.5K views19 slides
Let's talk about neovim by
Let's talk about neovimLet's talk about neovim
Let's talk about neovimShougo
17.7K views19 slides
neovim = VM by
neovim = VMneovim = VM
neovim = VMShougo
11.6K views13 slides
暗黒美夢王とEmacs by
暗黒美夢王とEmacs暗黒美夢王とEmacs
暗黒美夢王とEmacsShougo
14.7K views32 slides

More Related Content

More from Shougo

An introduction to neocomplete by
An introduction to neocompleteAn introduction to neocomplete
An introduction to neocompleteShougo
16.6K views27 slides
neobundle.vimについて+おまけ by
neobundle.vimについて+おまけneobundle.vimについて+おまけ
neobundle.vimについて+おまけShougo
283.9K views34 slides
Vimから見たemacs by
Vimから見たemacsVimから見たemacs
Vimから見たemacsShougo
20.6K views24 slides
Shougoの開発環境 by
Shougoの開発環境Shougoの開発環境
Shougoの開発環境Shougo
17.2K views27 slides
Unite vim by
Unite vim Unite vim
Unite vim Shougo
14.7K views30 slides
Vim = VM by
Vim = VMVim = VM
Vim = VMShougo
4.5K views13 slides
modern X86 environment by
modern X86 environmentmodern X86 environment
modern X86 environmentShougo
2.1K views22 slides
Ultimate completion environment with neocomplcache in vim by
Ultimate completion environment with neocomplcache in vimUltimate completion environment with neocomplcache in vim
Ultimate completion environment with neocomplcache in vimShougo
3.7K views22 slides

More from Shougo (8)

An introduction to neocomplete by Shougo
An introduction to neocompleteAn introduction to neocomplete
An introduction to neocomplete
Shougo16.6K views
neobundle.vimについて+おまけ by Shougo
neobundle.vimについて+おまけneobundle.vimについて+おまけ
neobundle.vimについて+おまけ
Shougo283.9K views
Vimから見たemacs by Shougo
Vimから見たemacsVimから見たemacs
Vimから見たemacs
Shougo20.6K views
Shougoの開発環境 by Shougo
Shougoの開発環境Shougoの開発環境
Shougoの開発環境
Shougo17.2K views
Unite vim by Shougo
Unite vim Unite vim
Unite vim
Shougo14.7K views
Vim = VM by Shougo
Vim = VMVim = VM
Vim = VM
Shougo4.5K views
modern X86 environment by Shougo
modern X86 environmentmodern X86 environment
modern X86 environment
Shougo2.1K views
Ultimate completion environment with neocomplcache in vim by Shougo
Ultimate completion environment with neocomplcache in vimUltimate completion environment with neocomplcache in vim
Ultimate completion environment with neocomplcache in vim
Shougo3.7K views

Recently uploaded

HuggingFace AI - Hugging Face lets users create interactive, in-browser demos... by
HuggingFace AI - Hugging Face lets users create interactive, in-browser demos...HuggingFace AI - Hugging Face lets users create interactive, in-browser demos...
HuggingFace AI - Hugging Face lets users create interactive, in-browser demos...Bluechip Technologies
21 views35 slides
Brochure for Attachment Checker for Confluence by
Brochure for Attachment Checker for ConfluenceBrochure for Attachment Checker for Confluence
Brochure for Attachment Checker for ConfluenceAkeles Consulting
16 views12 slides
History of PowerPoint.pptx by
History of PowerPoint.pptxHistory of PowerPoint.pptx
History of PowerPoint.pptxsufyyan1125
7 views6 slides
Bulk Approvals for Jira Service Management by
Bulk Approvals for Jira Service ManagementBulk Approvals for Jira Service Management
Bulk Approvals for Jira Service ManagementAkeles Consulting
14 views9 slides
Code Reuseability by
Code ReuseabilityCode Reuseability
Code Reuseabilityhussamhussien8
7 views10 slides
LRP for hand gesture recogntion.pptx by
LRP for hand gesture recogntion.pptxLRP for hand gesture recogntion.pptx
LRP for hand gesture recogntion.pptxshamim806425
16 views40 slides
OpenChain Annual Report 2023 - Key Metrics Slides by
OpenChain Annual Report 2023 - Key Metrics SlidesOpenChain Annual Report 2023 - Key Metrics Slides
OpenChain Annual Report 2023 - Key Metrics SlidesShane Coughlan
49 views17 slides
Database Systems: The Complete Book (Hector Garcia-Molina, Jeffrey D. Ullman ... by
Database Systems: The Complete Book (Hector Garcia-Molina, Jeffrey D. Ullman ...Database Systems: The Complete Book (Hector Garcia-Molina, Jeffrey D. Ullman ...
Database Systems: The Complete Book (Hector Garcia-Molina, Jeffrey D. Ullman ...PeterWang418859
16 views1240 slides
GROUP POSTING AI NEXASITES (01-01-24).docx by
GROUP POSTING AI NEXASITES (01-01-24).docxGROUP POSTING AI NEXASITES (01-01-24).docx
GROUP POSTING AI NEXASITES (01-01-24).docxatikicddrb
10 views1 slide
Software development is a human activity: understanding software requires und... by
Software development is a human activity: understanding software requires und...Software development is a human activity: understanding software requires und...
Software development is a human activity: understanding software requires und...Alexander Serebrenik
13 views36 slides
Search Intelligence & MarkLogic Search API by
Search Intelligence & MarkLogic Search APISearch Intelligence & MarkLogic Search API
Search Intelligence & MarkLogic Search APIWillThompson78
7 views61 slides
Novel Approach to Kill Hiring Challenges by making team replaceable with simp... by
Novel Approach to Kill Hiring Challenges by making team replaceable with simp...Novel Approach to Kill Hiring Challenges by making team replaceable with simp...
Novel Approach to Kill Hiring Challenges by making team replaceable with simp...Raja Nagendra Kumar
11 views5 slides
Move Page to Page in WPF Application ........................... by
Move Page to Page in WPF Application ...........................Move Page to Page in WPF Application ...........................
Move Page to Page in WPF Application ...........................abhisahdev
13 views2 slides
GSoC Connect.pptx by
GSoC Connect.pptxGSoC Connect.pptx
GSoC Connect.pptxAryanChachra
328 views18 slides
Jira Service Management New Features by
Jira Service Management New FeaturesJira Service Management New Features
Jira Service Management New FeaturesMaitrey Patel
20 views16 slides
Android Unplugged Event GDSC MJCET .pptx by
Android Unplugged Event GDSC MJCET .pptxAndroid Unplugged Event GDSC MJCET .pptx
Android Unplugged Event GDSC MJCET .pptxMohdAbdulAleem4
13 views49 slides
AI's Document Management Revolution_ Enhancing Efficiency and Productivity by
AI's Document Management Revolution_ Enhancing Efficiency and ProductivityAI's Document Management Revolution_ Enhancing Efficiency and Productivity
AI's Document Management Revolution_ Enhancing Efficiency and ProductivityMydocify
7 views4 slides
metal-sketch-dojo.pptx by
metal-sketch-dojo.pptxmetal-sketch-dojo.pptx
metal-sketch-dojo.pptxfrbf8y262q
13 views21 slides

Recently uploaded (18)

HuggingFace AI - Hugging Face lets users create interactive, in-browser demos... by Bluechip Technologies
HuggingFace AI - Hugging Face lets users create interactive, in-browser demos...HuggingFace AI - Hugging Face lets users create interactive, in-browser demos...
HuggingFace AI - Hugging Face lets users create interactive, in-browser demos...
Brochure for Attachment Checker for Confluence by Akeles Consulting
Brochure for Attachment Checker for ConfluenceBrochure for Attachment Checker for Confluence
Brochure for Attachment Checker for Confluence
History of PowerPoint.pptx by sufyyan1125
History of PowerPoint.pptxHistory of PowerPoint.pptx
History of PowerPoint.pptx
sufyyan11257 views
LRP for hand gesture recogntion.pptx by shamim806425
LRP for hand gesture recogntion.pptxLRP for hand gesture recogntion.pptx
LRP for hand gesture recogntion.pptx
shamim80642516 views
OpenChain Annual Report 2023 - Key Metrics Slides by Shane Coughlan
OpenChain Annual Report 2023 - Key Metrics SlidesOpenChain Annual Report 2023 - Key Metrics Slides
OpenChain Annual Report 2023 - Key Metrics Slides
Shane Coughlan49 views
Database Systems: The Complete Book (Hector Garcia-Molina, Jeffrey D. Ullman ... by PeterWang418859
Database Systems: The Complete Book (Hector Garcia-Molina, Jeffrey D. Ullman ...Database Systems: The Complete Book (Hector Garcia-Molina, Jeffrey D. Ullman ...
Database Systems: The Complete Book (Hector Garcia-Molina, Jeffrey D. Ullman ...
PeterWang41885916 views
GROUP POSTING AI NEXASITES (01-01-24).docx by atikicddrb
GROUP POSTING AI NEXASITES (01-01-24).docxGROUP POSTING AI NEXASITES (01-01-24).docx
GROUP POSTING AI NEXASITES (01-01-24).docx
atikicddrb10 views
Software development is a human activity: understanding software requires und... by Alexander Serebrenik
Software development is a human activity: understanding software requires und...Software development is a human activity: understanding software requires und...
Software development is a human activity: understanding software requires und...
Search Intelligence & MarkLogic Search API by WillThompson78
Search Intelligence & MarkLogic Search APISearch Intelligence & MarkLogic Search API
Search Intelligence & MarkLogic Search API
WillThompson787 views
Novel Approach to Kill Hiring Challenges by making team replaceable with simp... by Raja Nagendra Kumar
Novel Approach to Kill Hiring Challenges by making team replaceable with simp...Novel Approach to Kill Hiring Challenges by making team replaceable with simp...
Novel Approach to Kill Hiring Challenges by making team replaceable with simp...
Move Page to Page in WPF Application ........................... by abhisahdev
Move Page to Page in WPF Application ...........................Move Page to Page in WPF Application ...........................
Move Page to Page in WPF Application ...........................
abhisahdev13 views
Jira Service Management New Features by Maitrey Patel
Jira Service Management New FeaturesJira Service Management New Features
Jira Service Management New Features
Maitrey Patel20 views
Android Unplugged Event GDSC MJCET .pptx by MohdAbdulAleem4
Android Unplugged Event GDSC MJCET .pptxAndroid Unplugged Event GDSC MJCET .pptx
Android Unplugged Event GDSC MJCET .pptx
MohdAbdulAleem413 views
AI's Document Management Revolution_ Enhancing Efficiency and Productivity by Mydocify
AI's Document Management Revolution_ Enhancing Efficiency and ProductivityAI's Document Management Revolution_ Enhancing Efficiency and Productivity
AI's Document Management Revolution_ Enhancing Efficiency and Productivity
Mydocify7 views
metal-sketch-dojo.pptx by frbf8y262q
metal-sketch-dojo.pptxmetal-sketch-dojo.pptx
metal-sketch-dojo.pptx
frbf8y262q13 views

Differences between Nvim and Vim full version

  • 2. 2 Profile ● It is really needed? ● Shougo ● The dark powered Vim 暗黒美無王 ● Uncock Vim Awe, The dark Vim maestro ● Vimrc 500 lines + toml configuration ● 90 plugins
  • 3. 3 Background ● Nvim(neovim) is used for 30%~40% of Vimmers in 2017 VimConf. ● But why are you use Vim8 or neovim? ● "Vim8 has almost same APIs. So, Nvim is deprecated." Really???
  • 4. 4 Do you know Nvim advantages and disadvantages? ● I can explain them to you! ● Because I am the contributor of Vim and Nvim.
  • 5. 5 Note ● O: Nvim is better ● X: Vim is better ● ?: It depends on your usage
  • 6. 6 ?: Nvim is not BDFL project ● Nvim has many contributors ● Vim is commited by Bram
  • 7. 7 ?: Nvim use funding for full time development ● https://salt.bountysource.com/teams/neovim ● Some people partly works for Nvim in weeks. ● Vim recommends to donate to Uganda. But it is not used for full time development ● :help donate
  • 8. 8 O: Nvim supports XDG defaults ● Nvim uses $XDG_CONFIG_HOME/nvim/init.vim instead of ~/.vim/vimrc ● Nvim uses $XDG_CONFIG_HOME/nvim instead of ~/.vim
  • 9. 9 O: Nvim defaults ● Nvim always nocompatible mode ● Nvim does not uses defaults.vim ● Syntax, indent and filetype plugins are enabled in default ● Many options are enabled in default. ● :help nvim-defaults in Nvim
  • 10. 10 ?: Nvim removes some features ● Crypto(help encrytion in Vim8) ● :smile command ● :help nvim-features-removed in Nvim
  • 11. 11 O: Nvim uses shada instead of viminfo ● It is MessagePack binary format ● :help shada in Nvim
  • 12. 12 O: Nvim implements original APIs ● nvim prefixed nvim_xxx APIs ● nvim_parse_expression() - Parse a Vim Script expression ● :help api in Nvim
  • 13. 13 O: Nvim implements inccommand option ● It is live preview feature when substitute ● [Demo]
  • 14. 14 O: Nvim implements built-in LSP supports(WIP) ● You don't need to install external LSP plugins. https://github.com/neovim/neovim/pull/6856 ● Deoplete-lsp uses it https://github.com/Shougo/deoplete-lsp ● [Demo]
  • 15. 15 ?: Nvim re-implements GUI and Windows supports ● It is not stable like GVim, but many GUIs are already available ● Nvim-qt https://github.com/equalsraf/neovim-qt ● Gonvim https://github.com/akiyosi/gonvim [Demo]?
  • 16. 16 ?: Nvim re-implements TUI ● “term.c” is removed ● t_xxx variables are removed ● If Nvim works, but Vim8 may not work properly in terminal ● If Vim8 works, but Nvim may not work properly in terminal
  • 17. 17 X: Nvim re-implements external interfaces ● if_python, if_ruby ● And it is slow than Vim8...
  • 18. 18 O: Nvim remote plugins ● You can use many Languages than Vim8 to create Nvim plugins https://github.com/neovim/neovim/wiki/Related-p rojects#api-clients ● Many client are available!
  • 19. 19 O: Nvim includes Lua ● You can use Lua in Nvim! ● Note: The API is not compatible with if_lua yet.
  • 20. 20 ?: Nvim's job and terminal feature ● Both are simple version and not compatible with Vim API. ● Because, Nvim implements the features before Vim8.
  • 21. 21 X: Nvim has not included complete Vim patches ● Nvim already includes many Vim patches. ● But it is not completed. ● You can contribute it!
  • 22. 22 Who should use Nvim? ● "I like Nvim development style." ● "I like Nvim original features." ● "I want to support Nvim development." ● "I want to create plugins without Vim script."
  • 23. 23 Who should use Vim8? ● "I like Vim8 development style." ● "I don't like Nvim incompatibility." ● "I want to use Vim HEAD features."
  • 24. 24 FAQ: Nvim is faster than Vim8? ● It depends on your environment and usage. ● Try it!
  • 26. 26 Extra ● In vimconf 2019, I will talk about the 4th generation plugins development. ● 1st generation plugins: neocomplcache.vim, vimshell.vim ● 2nd generation plugins: neocomplete.vim, unite.vim ● 3rd generation plugins: deoplete.nvim, denite.nvim ● 4th generation plugins: defx.nvim, deoppet.nvim