LSP in Neovim. Thanks to BILL GATES?! | FREE COURSE // EP 3
HTML-код
- Опубликовано: 25 июл 2024
- X: / typecraft_dev
Welcome back to neovim for newbs!! In this episode we are FINALLY configuring neovim to use LSPs for amazing modern language server functionality. VScode, and other editors/IDEs handle some of the LSP functionality out of the box, but for neovim we have to do a little work to get things working correctly.
In this video I'll cover step-by-step how to configure neovim to be an IDE by using LSP. its going to be a fun ride!!
chapters:
0:00 - intro
0:48 - overview of our current config
1:39 - what is LSP??
3:38 - installing mason
5:35 - installing mason-lsp-config
7:19 - installing nvim-lsp-config
9:15 - LSP is connected! set some keymaps
12:30 - telescope ui for quick actions
14:25 - install tsserver and show it off
16:47 - wrapping it up! Наука
I've been curious about vim for quite some time but never taken the plunge to try and get into it due to the intimidating setup. This gem of a series makes it look achievable even for me. Thanks nerd =)
Thank YOU nerd!
While configuring my vim, I'm constantly referring to these videos, lacking of understanding what I'm doing copy-pasting other people's dotfiles settings 😂, but after a while I know for sure, I'm tired of remembering deez keymaps.
exact thing that is happening to me right now its great. I've tried setting up vim for years but it was daunting this series has been a gem so far. Also getting to practice motions while following along is great
I'm none native English speaker, so I wish there'd be more people who can speak like you do. I can understand literally everything you are saying. Watching your videos is like reading a well done article. By the end of every video you've done, I become more advanced, so I can handle those plugins, and settings on my own.
That’s great to hear thanks I’m glad these videos help!!
This is the best guide I have seen so far, can't wait for the next one. Thanks and congratulations!
Thank you!
I love that not only show how to configure the plugins, but also take the time to explain to us how they work under the hood
Extremely impressed with the series so far. This is THE BEST neovim tutorial I've ever gone through, by a huge margin. You explain things so clearly and actually give us the background details on why you're doing things certain ways (like how the lua behaviours influence how we set up the project structure). So many other tutorials gloss over a bunch of stuff they assume you already know.
I also think your strategy of setting something up once 'quick and dirty', and then going back to it to 'improve' it is super helpful because it follows the flow you would naturally go through learning all this stuff.
YOU ABSOLUTELY ROCK! I tried dozens of times to get neovim to a point where it could replace VSCode and actually work. Thanks to your videos I finally got it! Plus I understand what each .lua file does and how I can extend it to my liking. Sir you are a blessing and you earned my sub. Keep up the good work
This is it. I've tried ricing my vim experience so many times, and that many times I've failed, because all that I was doing was following a guy spitting commands to install nvchad or something alike.
You were the first RUclipsr that took the time to explain, step by step, everything that you've done to achieve a beautiful setup. I'm at a loss for words to thank you for the journey you've provided so far
Thank you very much :)
I’m glad it’s helping you thanks!!
I sure hope this is going to be a 50 part series; they are very well done! Keep em coming.
this series is so good. you actually take the time to go through it all and I appreciate that. this is the best video I've watched on neovim setup and I've watched too many.... you are giving me a way out of my fragile incomplete setups. thank you
Really enjoy this course. This may be the first video that I've seen explains the "how" and "why" instead of only the "what" part of configurations. Looking forward to the following episodes!
Thank you so much for this series. This absolutely changed the way I approach vim. I can't thank you enough for this masterpiece.
Thank you!
Hey nerds! Thanks for watching.
Here is the github repo: github.com/cpow/cpow-dotfiles
thanks!
Thank you so much. I have all these crazy vscode bindings to mimic but every time I try to move to neovim I give up. I don’t even use all the vscode features so I’m not losing a lot but every other neovim thing gets into too many.
This link is dead :(
Hey. I am already a nvim user and have a config running already but I'm just not happy with that right now since I am graduating this week and starting a job that needs me to do rust, so I just wanted to rewrite my config. I see you are using null-ls. What are your thoughts on the repo being archive. Are there any reasons you are still doing that given the repo got archived in Aug and you did the playlist in Dec.
Where has this guy been?
Someone give to this man a best teaching award! This is incredible.
normally don't comment on youtube videos, but this series is something special! paced brilliantly well, covers everything in great detail, and actually walks the viewer through the process one step at a time instead of throwing tons of info all at once. you, my friend have earnt my subscription :D
just known you channel and seen the whole series of neovim config free course…awesome! you know things, and you know how to teach them! congratulations!
Hey, I'm still following your series and learning a lot from it. Congrats on the series, the quality is beyond good!
Thank you!
Fantastic series ❤ Followed and subscribed instantly. Definitely bring this one to completion, it’s so worth it!
I’ve been messing around with my nvim lsp confs for years - TIL how lsp does what it does. Amazing video. Keep them coming!
I hate to admit it, but I was wrong when I thought I'll understand nvim via the docs :D Your Videos just made my life 10x easier, thanks!
Well, thank you so much for your channel and your time making this. I'm working with vim over 20 years, but looking into your neovim videos, well now I am working with nvim, you have given me a very good start point... Changing one by one every of my vimrc plugins into lua, lazy packages. Thank you so much!
Awesome!!
That's amazing ! One of the best explanations about setting up neovim for an REAL IDE ! Thank you !!! Looking forward on the new videos ! I almost forgot : Merry Christmas !
I'm hooked with this neovim series! looking forward to the next episode! Great Work!
I had watched your previous series / playlist on neovim and am super excited to see you putting out this new set of "courses" - they are great!
One quick note: maybe talk in your videos about how you trigger the auto-indenting and such - I had to stare really hard at the thing showing what keys you pressed to figure out that hitting = is what made things line up :)
Ah good call. I’ll try that for next time
don't know if it helps, but what im doing is :
--function to create commands
local function map(mode, lhs, rhs, opts)
local options = { noremap = true, silent = true }
if opts then
options = vim.tbl_extend('force', options, opts)
end
vim.api.nvim_set_keymap(mode, lhs, rhs, options)
end
-- you can do a nice "leader+f" to ident the hole file ( :
map("n", "f", ":execute 'normal gg=G' | normal!``")
-- made a version without the function :
vim.api.nvim_set_keymap('n', 'f', [[:execute 'normal gg=G' | normal!``]], { noremap = true, silent = true })
@geneliverman6827
Yesterday just started following you other episodes, and here the 3 one! Thank you!
I have followed a few tutorials on how to set up neovim. They did the job, but I didn't really learn why I did what I did until I saw your series. Great explaining. 👍🏻
Thanks for this series. Moving from vscode with vim motions to actual nvim with your help feels great.
I have been eagerly waiting for this episode … it’s like waiting for Mandolorian episode every week .. Thank you
Can't wait for the next EP! I'm excited too see how was your approach to solve the null-ls problem. I've remade almost my entire nvim config based on some tips you showed in these couple videos, its wayyy easier to manage plugins and configs now. Thanks, nerd!
Thank YOU nerd!
Special thanks for adding key highlights at the bottom right corner of the screen! Keep up the excellent momentum.
cant wait for the next episode men, i need that autocomplition and text sugestion. Thanks for the great work man
This whole series is really really good and helped me setup my neovim config. Thank you 🙏
Thanks a lot for this series. After a year or two of using the Vim motion plugin in VSCode (can't code without it now...) I decided to do the jump. It's very useful to have a guide that explains the basis at setting up plugins and what the important or common plugins are. I did some of my own experimenting for code completion but looking forward for the next episode to see how you do it. Thanks again, keep it up.
Thank you for this series. It really helps to solidify the knowledge and be able to troubleshoot things if necessary. I used to have nvchad added and it worked great but as soon as something wend bad, I couldn't do much about it. Now I know how things work and how to fix stuff. Thanks!
Hey, I'm a Neovim newbie living in South Korea. Your free course on Neovim is so helpful to me. I've already watched Primeagen, Devries, and Martinez, and their explanations were good, but you have a good pronunciation and proper speed, which makes it easier for a foreign beginner who isn't good at English to understand. So I really appreciate your video.
You're the only person who explains it clearly enough for to understand this, thank you for this great series!
Glad you liked it!!
I’ve been on vscode the past week desperately waiting for this
Incredible job, keep it up. This is exactly what I was looking for in a series
Just want to say, what an amazing series you have put together so far. So easy to follow, you’re covering all the key points and also showing us how to do it step by step. At this point I’m just checking everyday to see if your next video is out. Thanks a lot 🫡
Love it thanks!!
bro saved my life. ive spent 5 hours for this to work after watching your last episode
Bless this series. Merry Christmas or Happy Holidays to you!
Thank you and happy holidays / merry Christmas to you as well!!
I am a simple man. I see your video of neovim I click. Plus it will be great is you enable suggestions in your next episode. Great work man. Great series. ❤
the most straight forward set up! you are the best!
What a time to be alive, and be a nerd! Thanks man.
Thank you soo much, these guides are actually what is giving me the nerves to start using nvim or at least learn about it.
wow wonderful series , fantastic work man
Thanks a lot. I was using the neovim kickstarter config, but I had no idea how things were working. I'm checking the videos and updating my configs with that.
What a great series....very much hype for the next part :3
Best tutorial ive seen for lsp, im a beginner this was very helpful.
Best series for beginners (like me) on nvim. Keep it up!
really well put together, it’s hard to get used to vim without the config, much less with getting in the way, thx for making it simpler
It's true, getting comfortable with Vim or Neovim, especially with a custom setup, can be a steep learning curve. But once you're over the initial hump, it becomes a lot more intuitive. Remember, it's all about making the tool work for you, not the other way around.
Amazing! I knew about Mason , but i didn't know about ls-cofing and how to do it, Thank you so much!!
A very nice and underrated addition to this video was the display of the keystrokes at the bottom-right.
Wonderful videos as always!
I can't say how much happy I am after understanding this. thank you sir.
This series is exactly what I was looking for! I have tried starting scratch configurations (which I prefer so I know how everything works as I build it) but struggled with not quite getting how each part of the lsp and treesitter setup come together. I've also used kickstarter nvim as a starting point and tried to use it and trim it down to what I like, but I'm not a fan of how they have their plugins and configs split up everywhere. The other problem is that even though lsp and treesitter work out of the box with these pre-packaged configs its hard to figure out what options there are and how they really work because they're just pre-made for you. Many of the tutorials are still showing the Packer manager (which I understand was pretty universal until recently) but I like that you are showing Lazy, and I LOVE that you are showing how to use the config=function() way of keeping your configs and installs in one file. This is something that took me way too long to find and figure out on my own because no one was really explaining how to do it. The documentation for Lazy is really good, but it took me some reading to really decipher the difference between init, cmd, and config. It just makes so much more sense to have your install params, config, plugin keybindings in one file, if you want to change plugins just remove one file and create another. Your series has been perfect at explaining how each piece works as we go so we can truly understand our setups so shout out for all the hard work and keep it up! Cant wait to learn more.
The best lsp video exist in youtube ❤ thenx i cant wait for the next video
This is gold. Pure gold. I'm learning, and thanks.
Very, very cool! Thank you for making this video. Really is helping me out
Awesome series! Thank you, can't wait for the next one
I literally can't wait for the next one!!!
Thank you. Without you and Chris I would never be able to use nvim. It's very hard for a newbie
Hell Yeah! Was waiting for this episode
Hell yeah!
Thank you very much for the great videos, I am understanding how to configure Neovim for first time, really you explain the things with much detail and easy to understand for a new person in the vim world.
Amazing !! Couldn't wait for this one ^^
waiting for the next episode so excited !!
It took me a whole day to configure the first three videos. I did take some time as this is the first time I'm using NeoVim. Again, great job as this is the ONLY series where I can understand and the steps work unlike other videos where they start with a distro.
Looking forward to next video and I would appreciate if you can do Python LSP using the same plugin architecture. Thanks.
You got it!
I found configuring neovim absolutely overwhelming because the huge amount of stuff that you must do in order to have it working in a good way. Some tutorials just approach this by "just install lazyvim, lunarvim, nvchad" and let's customize on top of that, but the cognitive load, or learning curve, is TOO high.
Your videos are really well paced, it covers what are you installing, meaning that I know what I'm installing and WHY I'm installing that. No only, but also a quick "how to use" what we just installed.
It definitely make the videos longer, it required from you a series, but I'm pretty much loving it as I'm not only learning how to "properly" (I know, it's very personal how you configure your vim, for your tastes, and you not being you you, but generally speaking you) but also enjoying doing so and really learning what single piece of code/customization does.
I know this is something I should be researching myself, but it's really hard to research something that you don't even know it exists, so even with very basic coverage it opens a huge possibility of learning on top of that.
And for that, I'm really appreciated, it's a really amazing series.
Dude. Great series. Congrats on the great work.
Thank you!
Beautiful and clear. I know lsp now, thanks to you! And kind of began to understand how this works. Very grateful! I dram to be better user of nvim, it comes true. Thank you!
noice - added astro support and highlighting all by myself after that cheers!
Amazing !!! Excited for this one ^^
Thanks for these videos, very informative. They made me realize just how cool Neovim actually is.
I'm excited to watch this! I liked eps 1 and 2. Quick tip as a new subscriber: it was actually kind of hard to find this episode haha. I don't know if this is possible, but adding links/cards at the end of previous videos to the next episode in the series (if you have control over that) might get you more views. I don't know. Thought I'd share ... because I care 🥺. (Also your videos are awesome, thanks for these!)
The best channel for neovim learning in action🙇♀
Kind of learning lua syntax too lol...
Currently have lazy vim config setup although i am not using nvim too much but honestly i think i would follow this series and take my swert time setting up myself. I am glad RUclips fecommen this to me. Definitely need to check out the previous videos
Thanks for the amazing content, I must say that I wanted to learn vim and I used distos but I felt overwhelmed by all the configuration this distros had. Regards from Méxicoi
gracias!
BROOOO I didn't finish the series yet but thank you for the works !!!
I’m here for it!
Thanks Nerds hits different everytime ❤
How awesome this episode is! :)
Best Intro ever made🚀
I already have a neovim configuration I enjoy using, but I still like watching your videos
I didn't understand what was going on in my config until you.. thanks a lot
f
been wait for this, W typecraft💯
All I can say is, you're awesome! Thanks for the awesome content.
Yas! Another amazing video is here 🔥
holy shit man I love you thanks for these guides
Man you are providing really rich content, keep it up
Thank you!
This is so good! Thanks TC!
Haha TC. I love it
Thanks this was really helpful to follow along!
Thanks a ton, great series.
awesome series of neovim IDE setup so far, watching every seconds!!! kudos I have learned so much of internal working. Thanks Christopher! and thanks to #Microsoft for LSP support ;)
You're vides are just amazing
Thank you!
Your course is the best. Thanks
you are the best teacher on neovim
Thanks a lot for your work! Really the best tutorial series about vim config!
As debugging is important in coding, I'd like to ask if you are planning on making episode about nvim-dap and dap-ui? Or maybe about some other debugging tools?
I am!! I’m not a big debugger user throughout my career but I’ll touch on those
I'm moving from LazyVim to this setup, it feels so powerful to understand every single line of the configuration, and also what every plugin does. Thanks a lot for making this series!
By the way, what keyboard and switches are you typing on? Sounds like silent switches, I like it!
Happy you like the series!! I’m typing on a happy hacking keyboard with silent switches you’re right!
Man I've wasted a day installing Neovim and Nvchad because I don't know anything about neovim and after that this series has started and I am also thinking to move from nvchad to this, I think I should go back to this setup because I am using nvchad knowing nothing I mean I have no idea WTF is mason,treesitter and all but I am using it. I think it is very helpful to know things. anyways thanks for making this awesome series. It is best one right now.
thank you..learned new things. keep it up sir
Thank you as always!
I did not even realize you were displaying the keys pressed;
Suggestion place them above your portrait and slightly bigger.
I come back to this series 5 times now each time i want to understand where things are and why things are where they are.
Thank you!
you really demystified that for me. I've been copy and pasting that black magic text and hoping it would do what I want for months...I actually kind of understand it now. thanks.
Happy to hear!
Hey, thank you very much for this video series, it helps a lot. I still had to install the typescript language server, otherwise nvim won't install the tsserver.