How To Use lazy.nvim For A Simple And Amazing Neovim Config
Vložit
- čas přidán 29. 06. 2024
- In this video I go through everything you need to know to get up and running with lazy.nvim for an awesome and simple way of configuring and managing your Neovim plugins. This plugin manager has been great for simplifying my setup and making it more efficient. Hope you enjoy it!
🚀 My Neovim Config/Dotfiles: github.com/josean-dev/dev-env...
Help Support Me And The Channel: www.buymeacoffee.com/joseanma... 🙏🏽
I've added which-key for helpful keymap suggestions to this new setup!
lazy.nvim repo: github.com/folke/lazy.nvim
My previous packer setup (separate branch in repo): github.com/josean-dev/dev-env...
--------
Commands to delete packer plugins and packer_compiled.lua in Mac or Linux:
Delete packer_compiled.lua: "rm -rf ~/.local/share/nvim/site/pack"
Delete packer installed plugins: "rm -rf ~/.local/share/nvim/site/pack"
---------
⏰ Timestamps
00:00 - Introduction
01:07 - Installing lazy.nvim
03:37 - Checking health
04:02 - Plugin example 1 (colorscheme)
06:55 - Structuring plugins properly
08:21 - Plugin example 2 (nvim-tree)
10:42 - init.lua in "plugins" directory
12:03 - Lazy loading on events 1 (nvim-cmp)
15:40 - Lazy loading on events 2 (Comment.nvim)
17:17 - Lazy loading on keymaps (vim-maximizer)
18:41 - Plugin example 6 (bufferline)
19:38 - Using the Lazy UI
20:25 - Adding subdirectory under "plugins"
21:52 - Configuring lazy.nvim
22:40 - Adding lualine plugin with lazy component
24:30 - Conclusion
📧 Email for business inquiries: youtube@josean.com
--------------------------------------------------------------------------------
🖥️ My Desk Setup:
💻 Computer & Monitor
Apple 27” Studio Display for Coding & Video Editing: amzn.to/47YzRZt
2021 M1 Pro Macbook Pro (mine): amzn.to/47XNhoC
2023 M2 Pro Macbook Pro (newest): amzn.to/3qYHG0J
🖱️ Mouse
Apple Trackpad: amzn.to/45P0i1S
Logitech MX Master 3s Mouse: amzn.to/3Z3bXIq
⌨️ Keyboard
Cherry Corne Version 3 Kit: bit.ly/3UJgrjH
Analyst Keyboard Case: bit.ly/3uyjIHQ
Nice!Nano Microcontrollers: bit.ly/3FblL9L
Gateron Ink Black V2 Switches: amzn.to/3YZ3cz9
Batteries for Nice!Nanos: bit.ly/3uBmtrS
Travel Case (Fits Analyst Corne Case): bit.ly/3Hmr7BR
Gateron Ink Black V2 Switches: bit.ly/3VJToX4
My Keycaps: bit.ly/3uHBbgV
Blank PBT Keycaps: bit.ly/3UJhgJ6 or amzn.to/3UNQtLQ
Planck PBT Keycap Set: amzn.to/3HopRhC
You can also find some pre-built options and DIY kits on Etsy: www.etsy.com/search?q=corne
🎧 Headphones
Sony WH-1000XM4 Headphones: amzn.to/3sEJU65
----------------------------------
🎬 My Video Gear:
📹 Camera
My Fuji xt3 Camera (only available used): amzn.to/3P4P1E7
Recommended Cameras:
Fuji xt5 (newest): amzn.to/3P0jMtK
Fuji xt4 (used): amzn.to/3EmeUdt
Fuji 23mm f2 Lens (great for video in smaller spaces): amzn.to/3L2L6pV
Camera Field Monitor: amzn.to/3L2nrpW
🎙️ Audio
Rode VideoMic Pro+: amzn.to/45PecRC
Overhead Camera/Mic Arm: amzn.to/45y8Ryl
💡 Lighting
Aputure Amaran 100d Keylight: amzn.to/47T4Y97
Aputure Light Dome Mini II Softbox: amzn.to/3EstpMM
Aputure Amaran Small RGB Light: amzn.to/3Pl6RnG
IVISII Bright RGB Light: amzn.to/3EmfsA3
---------------------------------------------------------------------------------------------
Links used in the description may be affiliate links. By clicking and/or purchasing from these affiliate links I receive a small commission (at no cost to you). This really helps me out in funding my videos and growing my channel, thank you for the support! - Věda a technologie
Such quality content on this channel, I’m absolutely blown away 😮 I’ve been working on my config for a couple months since starting my Neovim adventure and resources like this are invaluable to me 🙏
Thanks to Josean, I may never be done tweaking my config. It's a curse. But I embrace it.
I love your thorough tutorials on nvim configs! I would definitely like to see an LSP-centric video showing all things LSP!
Thank you for the video. I think your video is the most up-to-date video ever. There are not many videos on lazy.nvim. Your repo layout is also pretty neat. I was trying to use lazyvim is a reference, but that repo was really convoluted. Yours is simple and to the point. I really appreciate all your efforts in creating this.
This is the best explanation of Lazy I've found. Awesome job!
I have used vim mode on vscode and the vanilla vim for two years. I never seen any videos that explain these concepts as clean&clear as you.
Loved how you organize the folders so that it can make our life easier when installing and configuring plugins and nvim in general. Also, your pace is perfect for a newbie like me. Other creators are just too fast to keep up with.
Great video! Very nice and most important very thorough!
The animations were also of really good quality. Keep it coming!
Thank you for the detailed explanations of the lazy plugin manager.
I was trying to make a fresh install of my Neovim without using a distribution (LazyVim).
Your video helped me understand and better organize my plugins.
Now I feel confident on making my custom setup without having unused plugins that comes with the Distro.
Awesome!
now almost all my questions about lazy.vim are closed. Tank you, Josean. Keep going. (liked, subscribed)
I just wanted to drop you a quick comment to thank you for this video. I am switching from VScode to nvim, and I'm getting my setup tuned. Your explanations about how the plugins, options and the plugin.lua files work together and the lazy loading. It's helping me to understand how nvim configuration works so I can setup nvim for my uses. Cheers.
I was STRUGGLING to understad how to organize and set up the pluggins before this video. I finally inderstand how it works. TY SO MUCH!
I really like your videos about neovim! It helped me getting into it and flatten the curve. It would be super awesome if you could make a video about the ns-null replacement 👍
This one is the most helpful and actually teaching video on neovim plugins use, kudos!
Happy to hear it was helpful! Thanks for the feedback.
Thanks for the guide. Finally was able to swap from packer to lazy
Great video. Will have this for future reference, also would like to see your video with your new lsp config.
Informative and well presented! Awesome! Thank you so much!
Really appreciate the feedback and your support! Thank you! Happy to hear you found it helpful!
I just discovered this video and love it! The lazy package manager is great and your video lays out a configuration so well, i "took" a few ideas. :) You mentioned in the video, about lsp configuration, yes please! I am struggling with mason/lazy/lsp and confused.
Thank you for the video Josean. I was able to follow along 👍
As always great video. Thanks Josean 🙏
Brilliant, Josean. Thank you so much!
great video man was stuck for days you helped me get unstuck thank you!
Thank you for your generious guide of giving a bunch of useful live example of using lazy.nvim. I'm recently using lazy and lost my self in the documentation. Your video just picks up the key points and has lightn me up. 😍Like to see more of this.
thank you for amazing setup! love it.
Thanks man for the detailed video about lazy and I like your videos just because your videos are very detailed. Thanks again! I subbed
Awesome! I really appreciate that, glad it was helpful!
yo thanks finally migrated everything to lazy - was absolutely worth it!
Awesome info in all the videos, I am new to nvim so all his videos has helped me a lot.
perfect, just what I needed! most other tutorials are still using packer
Awesome! Glad you found it helpful.
Can’t thank you enough for your content it has helped me a lot.
Commenting for the algorithm, amazing tutorial, thank you!
simple and to the point, thank you :)
Excellent precise introduction to lazy
Glad to see this pop up in my feed!
Awesome! Hope you enjoy it!
I love your channel. I love optimising my dev environment and i’ve been using packer since forever so this is exactly what i needed. Thanks for the help :)
Awesome, really happy to hear that!
Compliments to you, Josean, for providing an excellent blueprint on how tutorials should be written and presented. I found you to be articulate, the tutorial informative, well-structured and perfectly timed. I appreciate the extra effort you put into supplying sources for the content that you reference. Please share how you generate the keyboard overlay of your keystrokes in the bottom right. I hope people head over and buy you a coffee as a gesture of thanks for your effort. Enjoy
I really appreciate that! Glad I could help and thank you for the support🙏🏽
@@joseanmartinezcan you help,my lazyvim is working fine,also tsserver is working fine,but tsserver is not giving suggestions for html tags in jsx, I have to write lot of html and css in jsx ,,,in my lunar vim tsserver is giving me suggestions for html tags in jsx file but in lunarvim problem is autocomplete work on tab key not on enter key...anh help
This video was soooo useful! Keep it up man !!
Sweet! Happy to hear that, thanks for the feedback!
Sí señor! Gracias por este mega video, explicás todo de forma extremdamente accesible. Saludos y gracias!
Saludos! Muchísimas gracias 🙏🏽
Thank you so much for this tutorial!
Thanks for this video Josean!
Awesome! Glad to hear it was helpful.
Nice explanation dude, you just got a sub. Lookin forward for more great videos like this
Awesome, appreciate it!
You, sir, just got a new subscriber!
Another great video!
So far so good. Thanks.
Enjoy your attention to detail with clear examples. Please do a LSP setup.
Thanks! Here’s the LSP setup video:
czcams.com/video/NL8D8EkphUw/video.html
thanks for your videos. now i have done everything you have done in your videos
Awesome! Thanks for the feedback 🙏🏽
Great video this was really helpful especially learned I about some neat plugins. I was really missing an easy way to comment lines. now i just need multi cursor
Thank you for exploring a great developer experience for us! I've made split keyboard and learning vim for work and it inspiring me for new horizons. Good job!
That’s really awesome! Happy to hear the videos have been helpful, hope you’re enjoying your split!
I hope we'll see the next episode about LSPs.@@joseanmartinez
This setup is great. luv your work. I just struggle to get my null-ls to work correctly with mason. but the rest is perfect
Found your channel a few weeks ago and been loving your Neovim content. Would love to see a video with your thoughts on null-ls.nvim and typescript.nvim alternatives. Keep up the great work!
Awesome! Really appreciate it. Thanks for the feedback, will be looking into that.
@joseanmartinez I am very interested in this too. I use neovim for work and both null-ls and typescript.nvim are plugins I use. I often work with typescript.
Also this was a great video. I see your config has changed a lot since your video to set up neovim. THe configuration looks interesting and I'm planning to switch mine up in a similar way once I get lazy.nvim installed. Thanks for the great content. These videos really help me to understand how neovim works as well as a lot of the plugins I use.
Thank you, so much time saver !
Great video, Congratz 🎉🎉🎉
Thanks!
I started with your previous "amazing" (packer) set up, and then hopped over here to continue without appending, a bit faster but I'm at the pink screen after typing :Lazy so doing ok thanks again ser
Thanks for the video! I'd love to learn how to set up lsp and linting / formatting.
Awesome! Happy to hear it was helpful.
A video with setting up LSP with this new lazy.nvim would be great!
Thank you man.
Really enjoyed your thorough walkthrough last time! This one is just as clear and helpful, so thanks.
Out of curiosity, is there a reason you have your files nested in the *josean* folder?
Keep crushin it!
Hey! Thanks, really appreciate it. I’m pretty sure I saw it as a convention in another setup and stuck with it, but if you prefer, you can probably do without it.
this convention is mainly to avoid name collisions between plugins and your configuration files
Thanks for another amazing tutorial. Yes, I'd like to watch your tutorial on lspconfig which always confuse me.
Awesome, glad you found it helpful! Appreciate the feedback, definitely on the list.
Amazing, thank you!!
Awesome, glad it was helpful!
I really enjoy your tutorials, very useful and good quality content! Make some more videos about neovim! :)
That's the coolest way to see the updates....
it was really annoying to have long list of updates hiding my buffer...
but i also don't want missing out of update for so long that when i update everything crashing all at once, so i need notification for increamentally fixing breaking changes
Nice! Glad you found that helpful.
Hi, Amazing video !
It would be amazing to have a video to optimize LSP configuration by ourself. Because I work mostly on PHP and Laravel at work, and Python, Swift and Typescript for my personnal project.
Thank's to you I have working configs but it's not really optimize.
Thank for sharing great stuff!
Cool! Appreciate the feedback, considering making a dedicated lsp video. Thank you 🙏🏽
This is a great developer experience for me. Really love it. Thank you so much
I am brand new to neovim and I was so turned around with lazy.nvim but your video helped so much! Earned my sub for sure :)
Awesome, thank you!
thank you so much
so informative!
Glad you found it helpful! Thanks for the feedback!
Thank you for a great video 😀. So easy to understand and to get started with. I have almost moved completly to vim from vs code.
Awesome! Thank you 🙏🏽
Amazing guide! just a question, how did u set up that bottom status bar in iterm?
... so maybe I should tinker with my config again now 😉👍
+1 for the LSP video!
Cool, thanks for the feedback!
@@joseanmartinez+1 again
Working on it! Should be the next video coming up, thanks for the feedback!
Everything worked for me (except the icon colors) until the beginning of packer. I'm glad Lazy came along. Do you recommend deleting all previous packer-based configurations on Neovim before migrating them to Lazy?
Yes, do the lsp video. Thanks!
Working on it! Thanks for the feedback.
help me a lot, tks
I really like video, and i want more video on neovim config,
AstroVim is best please make video on it
love the vid, btw what font are you using, looks so good
Hey! Thanks! I’m using MesloLG Nerd Font. You can find the list here: www.nerdfonts.com/font-downloads
Finally :)
Thank you for this! Could you please do debug adapter setup for neovim? Thanks!
Hola Jose, excelente video, mi configuración esta basada en la tuya y me encanta, exactamente ayer me mude a lazy, jeje me adelante por un día. Saludos desde CDMX México...por cierto cómo aprendiste a hablar así de bien el ingles, que me recomiendas?
Que bien! Aprendí inglés desde temprana edad en una escuela bilingüe. Muchas gracias 🙏🏽
Do I need a lazy plugin manager for plugins? I prefer loading them all upfront rather than needing to load them when required, like having bullets ready in a gunfight. Exellent video...
Yep, I use lazy.nvim too.
wepa!
Great vid. Any reason as to why you are no longer using lsp saga for your lsp buffers?
Thanks! I just wanted something a bit simpler and felt like I didn’t really need it. I’m using a mixture of telescope and the built in lsp related functionality. It’s really a matter of preference.
Hi Josean, thanks for the amazing content! I noticed that you changed toggle file tree keymap from leader-e to leader-e-e. Why?
I guess that it's because you want to have multiple tile tree mappings, ee ef ec er, otherwise you could only have 1, which is the toggle with `e`
I also added
`keymap.set("n", "es", "NvimTreeFocus", { desc = "Focus on the tree" }) -- Focus on the tree`
To send focus back to the tree if I open the wrong file
Just realized I can move between nvim tree and my code on the right using regular vim motions, but pressing ctrl `ctrl+h` and `ctrl+l`
Yep! It was because I needed more keymaps for it, like opening the file tree but in the location of the current file I’m in with “ef”. And yes! You can use ctrl+l and ctrl+h if you’re using vim-tmux-navigator like me as the tree is just another split!
Note at 9:34 that there has to be a comma after the curly braces of 'dependecies'
Hi Josean I have a question, but don't expect an answer I I suppose you are very busy replying to many people, but the netrw when you open it has all the folders expanded I have set let g:netrw_liststyle = 3, but for some reason they don't automatically expand. Could you please shed some light on this please?
Great! What keyboard did you used? it's sounds very good 😮
Cherry Corne Version 3 Kit
most programmers are using (Keychron keyboard)
@@waso999Thank you! I will check it later
When I last tried vim/nvim it was slower than sublime text. Is it better now?
I see an issue with the config, since telescope is lazyloaded how do you go about seeing your keys like ff ? Im using LazyVim so it may be a different setup.I found out that in order to show the keys while loading lazy you have to put them in the keys = ...
After copying ur telescope config from the git repo, i cant seem to get it to work. Maybe you could do a short vid explaining how to use it in the way u have it setup?
Hi Josean, can you tell how to work with Git please? Resolving conflicts in particular.
Can you make a video reviewing mini.nvim, it seems very powerful and useful with minimal effort.
Sounds interesting! I haven’t looked into that yet, thanks for letting me know about it
just updated to lazy nvim because of you. One question , how do you make the round camera little window with you. you mention in a video but I forgot witch video was it. Thinking about to building a corne also.
Awesome! I use a mask in Final Cut Pro to achieve that. Typically I am screen recording and recording myself on my camera at the same time.
@@joseanmartinez Thank you!
It would be cool to get the keyboards shorcut created in a cheatsheet kinda lol
Hey! Any chance you know how to make sure pyright doesn't give "Unable to import..." warning? All the modules work and in vscode it does not give a warning. Thanks!
where do you get this amazing prompt from? Its worth installing ios on a virtual machine :D
I had to explicitly replace all key occurrences with otherwise the shortcuts do not work for me e.g. "leader e e". Ventura 13.6 (Intel)
You have to define your leader key before lazy. So it doesnt mess up
@@shrewd7795 I see (I might have not noticed that information before) thanks for pointing it out.
i cant find the code for the one you mentioned you used previously for setting up the nvim-tree
Anyone knows how to change the folder color like he switch the arrows colors?
Please do a obsidian...nvim
Hey Josean,
Is prettier formatting your typescript code? I'm noticing lua works but anytime I save typescript/js files don't format.
Hey! Not sure why that might be happening. Prettier is formatting my typescript code properly. I'd make sure you have the prettier formatter installed with Mason and check that it's listed as a source for null-ls.
Hi, I basically imported your profile and it's awesome. But I am unsure how to add plugins. Specifically I am trying to install 'neorg'. Could you please advise?
Hi all? I installed Neovim 0.9 on my ubuntu mate. But ./config folder didn't exist. How I found those confguring files?