Vim & Neovim: My thoughts

Video Statistics and Information

Video
Captions Word Cloud
Reddit Comments
Captions
is that they differ and i guess we'll start with first who am i like son i'm tj devries i'm an eov core contributor i work on telescope.andvim you might have heard of it uh i really like the project it's a lot of fun working on lately and i stream on twitch which is what we're doing right now by the way this video i'm recording at 1 15 am so if i like stutter or fall asleep or make some dumb comment please just blame it on that instead of my inaptitude thanks so one thing i want to say is why didn't i call this vim vs neovim and the reason is because i don't feel that they have to be at odds i think the communities can work well together and hopefully we can be nice and friendly and have fun and keep on living in this larger vim community i really like and respect bram and the work he's doing in the vim world so i feel very sad when i see them versus neovim difference videos and they're just like blah blah blah or vim blah blah blah or neo then blah blah blah whatever i just think uh they're two projects both trying to do cool stuff so i'll just go into a few of the differences of why i like neovim once again please keep in mind i like vim that's why i use neovim so for me the very first thing is neoven exposes an api this is an api that i think is uh really great it's standardized it has naming conventions it has a it has a lot of work being put into it to be standard and the reason that we have done this is twofold the first one is it makes scripting neovim from within much easier because you have this api that's uh quite easy to work with well documented and easy to understand but the other cool part is that remote plugins which are plug-ins that run in another process can communicate over rpc with neovim these plug-ins can be written in any language so this is pretty cool this is one of the first things i was exposed to about neovim that i was really excited about was writing plugins in python at the time and having them be able to run in this separate process and sort of uh it was very exciting for me to be able to do that and we in any language that has a message pack library you can do this in which is pretty cool and i guess sort of related to this which is quite exciting is that gooeys are just a plug-in you can look at the list of guise at neo-vims repo there's a wiki and you can just search for them on github as well and there's lots of them and they're all doing different stuff which i think is pretty cool for me this is a positive but i know for some people this is a negative for knee of him so i'm just sort of highlighting this i think it's cool that neovim just has one like single build and that all features are required that there aren't any optional features um as a plug-in user and author i've all when i was using vim i found it difficult to know what other people were using what features they'd have these kinds of things and it was difficult to sort of rely on certain aspects um but it's been nice that if i check the ofm has this particular version then we know that these features will always be included which leads me into my probably favorite thing about knee of him especially for the last year which has been configuring and implementing plugins in lua and particularly not just as sort of like a regular scripting language but becoming more and more directly integrated within uh neovim i think uh actually some of this work has been shared between neo-them and vim to improve the lua integration there but the ability to pass lua callbacks into vim functions we've added we're working on things for auto commands and key maps lots of other stuff which is uh really fun the part that i like a lot about neovim though as well for lua is that we ship with luagit which just has unlocked insane new possibilities for performance that we just never had before inside of him and sort of this in process style of editing so it's been very cool uh like i mentioned at the beginning telescope because i wanted to talk about this uh we can write telescope do certain aspects of telescope we're searching and filtering up to maybe 40 or 50 000 items in process on keystroke and we're able to do that without any delay which has been really cool i'm excited for the future of this area with more c extensions and lua rocks integration to be able to do all sorts of new things using libraries that other people have made and integrate those into the editors so for me lua is a really exciting aspect of neovim i i also love eye and use quite a lot the built-in terminal and async jobs i know that those are both shared between vim and neovim now and that's great and i'm happy that the community is able to use those features some things i'm super excited about are tree sitter i think it's going to unlock lots of new possibilities in terms of semantic movements or selections or highlighting that'll just be better than possible to make for a regex based syntax highlighting as well as being faster and a bunch of other sort of side benefits that are very exciting and it's quite cool to be able to share this not just within the vim community but elsewhere as tree sitter is not required for neovim and then i spent a lot of time working on the built-in lsp for neovim and sort of just the general lsp community and i'm just excited that uh it's being integrated into neovim whether you use that or other lsp alternatives or don't use lsp at all i think it's cool to be providing sort of this framework or setup that we're able to integrate i have another video on my youtube channel talking about why i think built in lsp is very exciting and lastly this isn't actually a difference it's just one of the reasons that i love neovim and vim and i just want to remind people that it's super cool we're able to work together and lots of things work exactly the same and vim and neo them because they're forks and we on the neovim team still try and merge vim patches to neovim and we try and send patches back to vim so we're able to use vimel plugins uh like a lot of them there are some features that we haven't implemented you know sort of exactly the same as vim has them now maybe someday we'll be able to we're open to merging more patches and working more closely with everyone so i guess in summary i just want to remind everybody that vim and neovim i think can live together in harmony and be happy working together and it makes me sad to see people making videos that are angry about the two those are just a few things that i like in particular about neovim and i just want to share that with everybody in one video instead of answering the questions a bunch of times on my twitch channel all the time anyways that's me i'm tj you can find this presentation as well as my github and twitch linked here and i'll probably put these in the episode description as well below thanks everybody bye
Info
Channel: TJ DeVries
Views: 6,164
Rating: 4.969697 out of 5
Keywords: twitch, games
Id: bC7kjhi7vog
Channel Id: undefined
Length: 6min 56sec (416 seconds)
Published: Thu Jan 28 2021
Related Videos
Note
Please note that this website is currently a work in progress! Lots of interesting data and statistics to come.