Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Going All In with NeoVim

Going All In with NeoVim

NeoVim started as a crowd source campaign with a goal to "aggressively refactor Vim", essentially removing 20+ years of cruft and providing new features never before possible. NeoVim is now about 4 years old and comes packed with wonderful features!

Come learn why I think NeoVim is the future on Vim, why after many back and forth I've decided to go all-in, and which tools and plugins make NeoVim a better choice for most people than Vim.

Avatar for Dorian Karter

Dorian Karter

February 22, 2018
Tweet

More Decks by Dorian Karter

Other Decks in Programming

Transcript

  1. All in with 1 — Going All in With NeoVim

    - Dorian Karter @dorian_escplan
  2. What is NeoVim? 2 — Going All in With NeoVim

    - Dorian Karter @dorian_escplan
  3. NeoVim → Hard fork of Vim focused on extensibility and

    usability → Aggressive (yet careful) refactor of the original Vim code → Neovim is literally the future of Vim! 3 — Going All in With NeoVim - Dorian Karter @dorian_escplan
  4. Dorian Karter ! doriankarter.com " @dorian_escplan Hashrocket ! hashrocket.com 4

    — Going All in With NeoVim - Dorian Karter @dorian_escplan
  5. NeoVim Refactoring Goals → Simplify maintenance and encourage contributions →

    Split the work between multiple developers → Enable advanced UIs without modifications to the core → Maximize extensibility 5 — Going All in With NeoVim - Dorian Karter @dorian_escplan
  6. Vim Hall of WTF 7 — Going All in With

    NeoVim - Dorian Karter @dorian_escplan
  7. Compatible Mode :h compatible 9 — Going All in With

    NeoVim - Dorian Karter @dorian_escplan
  8. :h vim-diff 11 — Going All in With NeoVim -

    Dorian Karter @dorian_escplan
  9. Encourage contributions Split the work between multiple developers 12 —

    Going All in With NeoVim - Dorian Karter @dorian_escplan
  10. Benevolent Dictator For Life (BDFL) is a title given to

    a small number of open-source software development leaders, typically project founders who retain the final say in disputes or arguments within the community. → Wikipedia 14 — Going All in With NeoVim - Dorian Karter @dorian_escplan
  11. Background Where did it all start? → Matt Kaniaris &

    Geoff Greer [Floobits] → Thiago de Arruda - Creator of NeoVim 15 — Going All in With NeoVim - Dorian Karter @dorian_escplan
  12. Which is which? 17 — Going All in With NeoVim

    - Dorian Karter @dorian_escplan
  13. CI && Tests 20 — Going All in With NeoVim

    - Dorian Karter @dorian_escplan
  14. Enable advanced UIs [without modifications to the core] 22 —

    Going All in With NeoVim - Dorian Karter @dorian_escplan
  15. vim-mode powered plugins → Atom → VSCode 24 — Going

    All in With NeoVim - Dorian Karter @dorian_escplan
  16. msgpack-rpc (Vim API) → Execute Vim commands → Evaluate Vimscript

    expressions → Manipulate buffers, windows and tabs → Receive/handle editor events 26 — Going All in With NeoVim - Dorian Karter @dorian_escplan
  17. NeoVim Features → Modern GUIs (using msgpack API) → Write

    Plugins in Any Language → New Plugin Architecture based on CoProcesses → Embedded Scriptable Terminal Emulator → Shared Data between editor instances → XDG Spec Implementation 28 — Going All in With NeoVim - Dorian Karter @dorian_escplan
  18. ⚙ Job Control 29 — Going All in With NeoVim

    - Dorian Karter @dorian_escplan
  19. ! Support 30 — Going All in With NeoVim -

    Dorian Karter @dorian_escplan
  20. True Support 31 — Going All in With NeoVim -

    Dorian Karter @dorian_escplan
  21. Biggest weakness of Legacy Vim™ 32 — Going All in

    With NeoVim - Dorian Karter @dorian_escplan
  22. Biggest strength of NeoVim (IMO) Terminal! 34 — Going All

    in With NeoVim - Dorian Karter @dorian_escplan
  23. My history with NeoVim 35 — Going All in With

    NeoVim - Dorian Karter @dorian_escplan
  24. Going All In Setup an alias echo alias vim='nvim' >>

    ~/.zshrc Backup command vim 36 — Going All in With NeoVim - Dorian Karter @dorian_escplan
  25. NVim from Vim :help nvim-from-vim Can be as simple as

    brew install neovim ln -s ~/.vimrc ~/.config/nvim/init.vim 37 — Going All in With NeoVim - Dorian Karter @dorian_escplan
  26. NVimux [Neovim as a TMUX replacement] 47 — Going All

    in With NeoVim - Dorian Karter @dorian_escplan
  27. Writing Your OWN Plugin 49 — Going All in With

    NeoVim - Dorian Karter @dorian_escplan
  28. → https://www.reddit.com/r/neovim/ → http://neovim.io/ → https://github.com/neovim/neovim → http://twitter.com/neovim → https://waffle.io/neovim/neovim

    → https://gitter.im/neovim/neovim → On IRC freenode: #neovim 53 — Going All in With NeoVim - Dorian Karter @dorian_escplan