NVChad has had some breaking changes since this video! It's recommended to using the v2.0 branch instead for this video. I'll be doing an updated version of this video again soon!. git clone -b v2.0 github.com/NvChad/NvChad ~/.config/nvim --depth 1
WOW! I have been retired as a developer for about 5 years (playing guitar in bars and restaurants), but am getting back in to Programming with Rust. I used InteliJ with a VIM plugin for years with Java in my last job. I missed VIM (I used to develop COBOL with Vim so, I know how powerful it is). This article opens a WHOLE new world and a very cool productivity that InteliJ and VSCode don’t seem to have. I will DEFINITELY be re-watching this video again and again as I try it out. Thank you so much.
":split" and ":vsplit" are internal vim commands. You can use the internal module to do those without typing a command. "ctrl+w" invokes the window control module, and next key does the chosen action. "s" does horizontal split, "v" - vertical, "q" closes the active window and "w" cycles through open windows. There's also commands for resizing and moving windows.
@@chawza8402 I actually started with graphical IDEs. I spent a lot of time in Xcode as I did C++ on iOS for some research heavy projects. I moved to vim about 8 years ago however, and then to Neovim.
Outstanding! I've been mucking about with my first NeoVim setup for several hours. Started from scratch with your video and in a MUCH shorter time, have the setup I want. Well done!
Thank you so much, I was learning vim but I was always coming back to visual studio code because personalizing and customizing vim by myself felt like a chore. Now that I've installed NVChad thanks to this video I was able to learn how to lazy load, create lua config files,etc and now I'm just breezing and learning so much more about vim. Thank you!
I almost never comment on videos. I've always dreaded getting into nvim. This was such a straightforward tutorial, no b.s. Thank you, ive learned so much :)
"The only editor to double as an escape room" LOL! My first experience was with Vi on Xenix in 1984, I could *not* get out of that editor, back then RTFM was the only solution and the FM was dead-tree, hole punched in a three-ring binder - SCO documentation was extensive, thankfully. What a steep learning curve. As someone who has been "trapped" in the Vi escape room, I'd like to say how much I appreciate the joke.
I love you videos. You made me leave my long-time configuration of plain nvim + iTerm2 panes in favor to NvChad + tmux. The amount of love you put into animations and video structure is enourmous.
There are so many videos on new neovim configs but none seem to properly demo how to actually do git review with diffing. Would be awesome to see such a video from you. Thanks for this nice vid on NvChad!
This is the easiest setup guide I found on YT. I'm excited to try out vim/neovim and see if it's worth the switch from VSCode. My 2016 MBP 13.3.1 is starting to slow down and VSCode loads very slow.
Hopefully you'll be giving it a breath of fresh life with neovim! Although the escape key and the touchbar are not so fun. I'd recommend changing the caps lock key to escape.
Lmao no way. I just say your video about Tide and was about to comment if you could share your vim setup but decided to check your channel first and low and behold the video is the latest one.
Very interesting. I’ve been using lunarvim personally, but this looks like it would be a little more “neovim default” like. I will have to give this a look. :)
Just switched to LunarVim myself from standard vim and it's been nice. However, there were a few pieces of this video that made me want to switch to NvChad.
I am also comparing Neovim Chad and lunarvim. I like how lunar vim holds everything seperate from Neovim, but the out of the box status bar in Chad looks better. Decisions, decisions.
Thank your for really quick and easy setup video 👍 I've been trying to switch from VsCode a few times. Last attemp was Emacs Doom but that didn't really work out😅 So I hope maybe this will be the breakthrough Also your videos look really clean from graphical perspective. I was wondering If you are planning to do similar video on your terminal setup ( I use Hyper with omz rn but yours looks a lot cleaner). Would be interested in that as I use Arch too Btw.
I've struggled with emacs as well! I find the combination of Tmux and Neovim to be more productive for me. Maybe one day I'll get around to learning elisp properly! Sure thing! I'll have to do a video on my full setup!
This is amazing! But I still don’t think I’ll switch to Neovim for development. It just seems like a lot of work to set everything up. It’s definitely getting there but I still don’t like having to set up LSP based off what projects I’m working on. I’ll stick with Webstorm for now. Btw amazing content keep up the great work!
@@suspendedchaos yeah just comes down to personal preference. Even vscode is frustrating. That’s why I like Webstorm or JetBrains products. Everything is already integrated into their products. Helix looks very promising!
I took 2 days to configure my nvim to work like a OK vscode. Mason.nvim changed it all when it comes to LSP. Everything just works now (it even promts you to install required language server when you enter a file). I think nvim is great rn, but it still lacks some extensions, DEBUGGING and integrations like vscode.
Tremendous video. I've rebuilt my work laptop with arch, hyprland and now going through the neovim config based on this video. Thankyou for the inspriation
Im just always afraid of big configs like that, I’d rather build it myself even if I’m repeating what’s already been done by something like nvChad on some part, but for me that’s part of the reason to use nVim, so you have a config that’s truly yours But I’m too lazy and have to much work to be able to take some time to configure everything, so I end up with a config that I understand only up to 90% for my plugin config, especially everything that’s related to lsp With a bad autocompletion for frontend, my snippets not working as I want, but a tree file, syntax highlighting, a theme I like and telescope for switching and greping, so usable but not perfect
I'm very similar when it comes to emacs. I try and rebuild a config that's more personalized. For me, NvChad is lite enough that I feel more in tune with the configuration, and it's close enough to underlying packages that I know what's going on, especially when compared to doom emacs or spacemacs
I seem to never get a fully working tmux + vim or nvim setup that works on all my systems. some mac some linux, mostly rpi’s. I just found out about nixOS or whatver it’s called. Mayber going to try that rather than using some one elses dotfiles or dotfile managers which alwys seemn like hacky glue.
I feel like Lunarvim does a lot of the extra configuration lifting for you for things like LSP's while still having the same features you've mentioned here. Has some prerequisite installs but is very good. I highly recommend it.
great video! An updated version would be very much appreciated. I managed to figure out some of the things that are not up to date but for some I just couldn't manage to figure them out yet
Commands referenced up until @6:41 Open theme [space] t h Show list of avaliable LSP (syntax highlighting) :TSInstallInfo Install avaliable syntax :TSInstall Open navigation tree ctrl + n In navigation a = new file r = rename hovered file c = copy file p = paste file d = delete file Search for files [space] f f Search in buffer (opened files) [space] f b Open cheat sheet [space] c h Show possible commands [space] (wait for popup to show avaliable commands) Virtical split window :vsp Horizontal split window :sp move left: ctrl + h move right: ctrl + l move down: ctrl + j move up: ctrl + k Toggle Line Numbers [space] n Toggle Relative Line Numbers [space] r n Toggling through tabs Tab -> Shift + Tab
Hello, first off awesome videos! Subscribed for sure! I just started my programming journey at my University. We use vscode for the 'beginner friendly' use of it. But after watching so many videos on neovim, tmux., and all the various plugins I have felt like I fell into a rabbit hole lol. One problem I had when following your setup on rust. I get a error on line 4: local lspconfig = require "lspconfig". Error states "The same file is required with different names". I saved it but still shows error, don't know whats wrong as I followed your code to the t.
The interesting thing here is that unlike the vast majority of similar power up’s like Spacevim, LunarVim, CosmicVim, and so on, this one only requires Git - no additional external dependencies needed, let’s go! 🚀
@@sunnybadgr5073 hey! No idea, honestly. I used SpaceVim for a while: it’s lightweight and comes with a lot of goodies, I really like it. I understand that LunarVim is the most feature-complete one of the group, but also the heaviest and the one that has more external dependencies (understandable, of course)
@@dreamsofcode I am always faffing around with nano when I need a clipboard. I probably could work out what to do, but I have this horror of breaking my nvim ....
I guess I'll take some time to learn Vim, never really found Vim being worth to properly learn, but this looks really good... So fuck it, I'll give it a proper try :)
Vim adventures is a fun game to learn the commands of vim. You get some basic commands for free as well. It's still one of my favorite editors, I do have some friends that keep pushing me to try VSCode though
try installing vim plugin in your ide(vscode, intellij etc). Once you are comfortable with basic motions and verbs, then you can decide if its worth moving to raw vim or nvim. I mostly work with java and I just use intellij with vim plugin and I am way faster and personally never could get raw vim/nvim to work for java.
too many extra steps to setup lsp and language server. It needs to be as simple as adding one line like installing a plugin. Really not surprised why people just open and use vscode.
It's been a while that I wanted to give neovim a try to improve my productivity. Also I am an intelliJ user and as I am learning rust at the moment I found the rust plugin on intelliJ aweful. That + my will to try neovim + your channel convinced me. Great tutorials
@@eineatombombe for recording and editing, I use gnome (XWindow). But as a typically daily driver, I change between Sway and dwm depending on if I need X or can use Wayland. I do like to shake it up though and try other window managers.
@@dreamsofcode ive been using arch with dwm for about 3 months as a daily driver and i absolutely love it. such a minimal setup. Btw, love your content!
@@nishantjoshi6712 I have an old Thinkpad T440p that I use when I'm feeling romantic, and it's really nice firing up dwm on it. I'm also partial to a bit of ricing (although terrible at it). Thank you for the feedback! I love creating it!
🎯 Key Takeaways for quick navigation: 00:00 🚀 *Setting Up Neovim for IDE Features* - Introduction to Vim's efficiency and performance. - Mention of Vim's lack of modern features. - Brief overview of using neovim to enhance Vim with IDE features. 01:24 🛠️ *Installing nvchad for IDE Configuration* - Installation of neovim. - Alias setup for using neovim instead of Vim. - Introduction to nvchad as a set of neovim configuration files for IDE features. 02:18 🎨 *Customizing Theme and Syntax Highlighting* - Changing the nvchad theme. - Installing syntax highlighting for programming languages. - Demonstrating the theme switcher and installing syntax for a new language. 03:28 📁 *Working with File Navigation and Actions* - Navigating projects with nvim tree. - Opening, marking, and performing actions on files. - Efficiently searching for and opening files within a project. 04:53 🗺️ *Navigating and Managing Buffers* - Navigating open buffers using the find buffer window. - Using the tab bar for buffer navigation. - Closing active buffers and managing multiple open files. 05:46 🖥️ *Accessing Terminal and Utilizing Cheat Sheets* - Opening a terminal session within neovim. - Utilizing cheat sheets for quick reference. - Exploring suggestions for key combinations. 06:58 🛠️ *Customizing Neovim Configuration* - Understanding where to place customization code (chatrc.lure vs. init.lure). - Adding and configuring plugins for additional language support. - Making customizations for syntax highlighting and auto-formatting. 09:48 ⚙️ *Configuring Language Server Protocol (LSP)* - Overview of Language Server Protocol (LSP). - Adding LSP configuration for a specific language (e.g., Rust). - Installing and managing LSP servers with Mason. 11:39 🎉 *Conclusion and Invitation to Try nvchad* - Expressing satisfaction with nvchad as a neovim configuration. - Encouraging viewers to try nvchad for their neovim setup. - Gratitude for watching and closing remarks. Made with HARPA AI
I finally got with the program and moved to nvim and found nvchad within an hour or so. I might not kick my old habit of doing Ctrl+z to background vim for runing terminal commands but hey you don't have to use all those features just because they're there. :)
I have a nvim config issue: I can't seem to settle on one! I'm currently using AstroNVIM. I am now going to have to try NVChad! Regardless of what config anyone uses, this video is great for a quick overview of lua based configurations. I knew some of what was shown here, but I definitely learned something new. I'm on a Mac so all of the configs are pretty much the same as Linux based distros. Anyway, thanks for the video and I subscribed and liked the video so I can get more like it from you! I appreciate you taking your time to help others!
@@sunnybadgr5073 They're all good. I'd suggest to try them all - look up the nvims video to see how to use more than one config. Whichever one is easiest for what you do is what I'd go with. I'm going back and forth between NvChad and Astro.
Custom Plugins Fixed! The step of referencing custom.plugins in the custom.chadrc was not clear to me until you pointed it out. the Thank you so much for this video.
As a relatively recent neovim convert, I feel like using a heavily modified distro like this is counter-productive. Applying a massive config without understanding most of it is no better than using vscode. Instead of trying to replicate vscode experience, I think it's way better to start from scratch and add missing features one-by-one as required, changing your workflow as you go. Yes, it's going to be a slow process, but I don't think the retention rate is very high among new users who start with pre-configured distros.
Thanks a lot for this nice introduction/tutorial to neovim/nvchad 👍 I was using pure vim now for a decade or so but I'm pretty sure that I'll switch to neovim entirely from now on.
This is really a CHAD, no wait, this is the GigaChad of terminal editors. I'm old user of vim but used only for edit server config files, now if my brain managed to remember a few of this keyboard shorcuts (that are by the way intuitive) I will use it more as a alternative to vscode.
I just learned to use helix editor after using emacs, sublime text and VS code. Now this video makes me want to check out vim.. I like helix but it's missing some features like the file explorer, integrated shell, project wide renaming and copilot.
@@dreamsofcode Until now, the fact that vim requires so many plugins and configurations just to be on par with another editor like sublime text or vs code kept me from trying it. But now I've found out there are several pre packaged distributions which contains all the necessary stuff. But which one is the best? LazyVim, LunarVim, AstroVim, NVChad?
Hi, thanks a lot for making the video. Its amazingly easy to follow and very beginner friendly. Just one question: How do you debug codes in nvchad? I mean, 1. How to add a breakpoint? 2. How to start debugging session? Thanks a lot
Exactly the tutorial I was looking for, thank you so much for taking the time to prepare this for us geeks! By the way, I was following along using Debian Bullseye, on a Chromebook, and encountered an error when trying to launch nvim. The error I encountered was, "nvim Error detected while processing Bufreadpost Autocommands for "*": No C compiler found!". The error, being self explanatory, prompted me to execute, `sudo apt build-essential libssl-dev manpages-dev`. Upon accessing nvim again the error was gone and my world was a much nicer place.
This video was mindblowing, I absolutely like NVChad now, however what about some features that other IDE provides like Debugger tools, Git Integrations, and a few other useful extensions like Live Server, Auto-rename Tag, Indent rainbows, toggle semicolon, and a few AI extensions? Please make a video on those features as well, let's just say someone wants to switch from VS Code to NVChad what are the potential things that they won't get by default, and how to actually install those as well. Cause in vs code it's simple as It could be all someone gotta do is just open up the extension tab and install the one that they need, but what about Neovim Distros like NVChad, LunarVim, AstroVim. It'll be helpful if there is a video that covers these things.
After spending around 4 months with Neovim, i really don't see what's the hype around it, the only positive side is that you don't need to leave the terminal and that there is no telemetry least if you read all the plugins that you install. But those two aside, i didn't see any benefits but i saw quite few negatives such as lack of support for debuggers, much harder way of actually debugging any code in any language. Overall, if the point is masochism, might as well use nano.
I think you've called out some of the major benefits haha. Its awesome that you gave it a go at least. Once you fully grasp the keybindings, there's a lot of power there as well for editing. Being keyboard only is something I really value as well.
I've been wanting to switch to ZSH and Neovim for a while now. This customizing is really amazing. I hope you share your ZSH configuration as it looks really attractive.
I could not install CSS and HTML autocomplete. I did install html and cssls and set up the configuration like the :help docs say, but the only thing I got is CSS error lens. Do anyone know how to do that?
Hmm. I've managed to get it set up. I followed the NVChad configuration here: nvchad.com/docs/config/lsp and then installed the vscode extension via: npm i -g vscode-langservers-extracted
@@dreamsofcode Hey it's me again (sorry to bother) I've read through multiple docs but 1. I can't find how to make autocomplete work with packages, (i.e. using rand, I type rand:: and it doesn't show anything so I have to guess what's inside). 2. And also couldn't find how to show the auto infered types, like astronvim has. (i.e. you type let x = 3; and it automatically shows the " : i32 " right after x). Do you know how, or which docs I have to read to make this work? Thank you!
@@LeFede For the first one, you'll probably need to add more to rust-analyzer settings. Add this to your lsp.rust_analyzer.setup table in custom/configs/lspconfig.lua settings = { ['rust-analyzer'] = { cargo = { allFeatures = true, }, }, }, Let me dig in some more on the second one, it's probably also an LSP setting that needs to occur.
wow, really interesting and amazing...i am new to vim and neovim and all the configuration you need is usually confusing and complicated for a newbie, but i loved this...thank you very much for this input...greetings from argentina
Great video! You not only made me realize why people admire vim and Neovim so much but also now you've succesfully made me fall in love with Neovim😍🤩. Excellent Tutorial! Keep up the good work!
Gitsigns has some integration but personally I tend to use the git cli for most of my gut management. Having git blame etc is really nice in Neovim though!
Hey I actually really liked the way you just kinda held my hand and helped me walk through the nvim customization and the guide. one more thing is that can you also make a neovim setup for go lang? will really appreciate it.💖💖
For arch users (and others possibly), the base neovim package in aur is the 9.0, you need the 8.0 neovim-git for it to work properly, I couldn't get 9.0 to work despite all my efforts
@@dreamsofcode No matter what I tried, LSP's just refused to work, and I tried both doing it your way, and the way they have it in the documentation, very very strange, I might upgrade to 9.0 now and check if it stays working lol
This is actually fucking insane. I will try this for the next couple of weeks, for all my mandatory college work and for my job, which involves a ton of note keeping.
@@dreamsofcode Brother, I am only one day in, using it for documentation within a VM during pentesting. I fucking love it. I am so excited for how things go when actually programming bigger projects. This is god sent. AND I have to give you HUGE kudos for this video. Your visualization and structure of the video is on point. How did you create this epic video? What software did you use? I'd assume you're using something like Vegas Pro or some adobe tool (prime? after effects?) for cut and these insanely well done motion graphics? Also sick as hell audio. Huge thank you and be sure to have my sub, hell I even hope you get a fat carbohydrate-post-nap-coma from all the subs you are about to receive for this high quality stuff you produce!
@@longdashes Yooo thank you for the wonderful review! I've still got a lot to learn with motion graphics but am excited to keep trying new things. I use Davinci Resolve as it's the only viable software that works on Linux. I did pick up a MacBook to help me edit on the go, so I may try some other software and see what I like best. Honestly, I really like Davinci though, and I'm just starting to learn more of the advanced motion graphics. Thank you for the sub, I'm glad you like the content! Looking forward to producing more.
@@longdashes it's very underrated, although a lot of creators have been moving to it in the last year as it's coming far ahead. I should definitely do a motion graphics course though at some point!
Loving this setup. I had to compile nvim 0.9.4 from source because the apt version installs 0.10.0-dev, where :checkhealth doesn't work. Only thing I had to change was setting the tab width to 4. The default of 2 is madness. :)