How To Setup Linting And Formatting In Neovim To Replace null-ls

preview_player
Показать описание
I hope you enjoy it and find it helpful!

Helpful links:

⏰ Timestamps:
00:00 - Introduction
01:52 - Removing null-ls & mason-null-ls
13:52 - Linting with nvim-lint
23:58 - Auto installing linters & formatters with mason
24:57 - New colorscheme
26:00 - Conclusion

--------------------------------------------------------------------------------
🖥️ My Desk Setup:

💻 Computer & Monitor

🖱️ Mouse

⌨️ Keyboard

🎧 Headphones

----------------------------------
🎬 My Video Gear:

📹 Camera

Recommended Cameras:

🎙️ Audio

💡 Lighting

---------------------------------------------------------------------------------------------
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!
Рекомендации по теме
Комментарии
Автор

Hey guys!

So there's also a community fork for null-ls you can also try called none-ls. I've added this to my config in case you want to stick with that. You'd have to uncomment the event property of the "lsp/none-ls.lua" file if you want to use that and you can disable the alternative approach in this video by commenting this line out in "linting.lua" and "formatting.lua". That's of course if you're using my config as is, but I'd recommend you adapt it to your liking instead.

I also wanted to point out from the video that the reason I chose conform.nvim over formatter.nvim is how easy and similar it was to nvim-lint and because when using formatters like "prettier", it'll check if you have it installed in node_modules first and execute that instead!

joseanmartinez
Автор

Thanks for sometimes explaining these git repos. This is much better than the generic "copy this, copy that, pc will go beep boop".

SlothProgrammer
Автор

I just spent most of the day following your vids and FINALLY I have the neovim setup I have always wanted. AMAZING!

JT-mrdb
Автор

Exceptional tutorial how to really PROPER configure FORMATTING and LINTING in 2024 !!! Thx a lot!

ayanko
Автор

Great content as usual! Still undecided if I'll use both of these or none-ls as a replacement but really appreciate the walkthrough! Nice to have formatting and linting separated out like this.

JonathanMorrisMusic
Автор

Thank you so much, great video. Makes it much easier for me to understand how to configure Neovim correctly. But there is still one question: How to setup neovim so that pylint or mypy works correctly in virtual environments.

theoldeenglish
Автор

I followed your config and works really nice, i really like it. I moved from Astrovim to my own configuration based on yours. Thanks for your amazing work.

rk
Автор

It's crazy when you think that a single plugin could solve all this on its own. No wonder he got tired

micaelviana
Автор

Man, you are the wizzard! I watched your previous videos and I was thinking "I need to figure out how to setup Swift linter & formatter (which are not available in Mason)". The next day you published the video! THANKS, you make great tutorials!

wojciech-kulik
Автор

hi Josean, thank you for this tutorial, I wanted to update my config to add formatter, but could not understand how can I add conform to my kickstart.nvim. This video make it a breeze! thank you so much

yanuar
Автор

I was anxious waiting for this... worked fine here! Thanks man, keep publishing.

thiagopuntar
Автор

Hi Josean,

I've followed all your config env videos and must say, I REALLY ENJOY THEM. Having no development experience, your content has sparked my interest in coding. Thank you!

For your upcoming videos, I'd love to see one on integrating GIT into the workflow, along with some tips on file/folder management for developers. Additionally, code sessions or small demo projects demonstrating the use of those keymaps in a real scenario would be incredibly helpful. As a beginner, it's challenging to remember and implement all those shortcuts.

Also, I know you don't typically code in Python, but I'm curious if you could create videos on integrating ChatGPT within the terminal environment and developing some projects with it.

Many thanks and best regards!

xzskywalkersun
Автор

Man Thanks you a lot of, your nvim videos restored my spirits, I had my nvim config with only vimscript, when lua appeared I couldn't understand how to implement, because I couldn't find something concise, each guide I found had different implementations, added to the fact that there was competition between package installers, English is not my native language but Spanish and there was no information in my language so it personally seemed very difficult to stay up to date besides the fact that I had started using new technologies in my work and I didn't have time, I had to go back to vscode, but your videos and your configuration helped me finally understand lua in neovim and make my own configurations, thank you very much

yesidev
Автор

Thank you Josean for keeping us up to date. Amazing work!

elveglos
Автор

Hey great setup!! I am using a lot of this as you explained and it is working great... Please keep up the good work - Awesome work !!!!

pierre-malan
Автор

Oh, thank you very much! I was able to make the switch from lsp-zero and null-ls to your settings super quickly. I managed to reconfigure my rust setup (which I did break), and I was even able to use an SQL formatter not supported yet (sleek). Thank you very much!

I had been looking for a replacement since the author announced the archiving, but I didn't find anything.

nikensss
Автор

Well done, thank you very much for this content!
The only thing I wish you added to the explanation is how to manually disable linting messages for a file if we find them distracting.

All the best!

blz
Автор

Great video! Just FYI, someone forked null-ls and made a new repo none-ls. LazyVim has already added it as the default since it's meant to be a drop-in replacement.

Your setup seems faster to me though, so I might give it a try.

I was also burned by null-ls recently when i tried a few new things, forgot i added them, and then started getting nvim-cmp errors all over the place.

Took me ages to figure out the source of the issue.

I like here how you have things split up.

IainSimmons
Автор

Nice! Thanks. Exactly what I was looking for! Now to find a way to use only the tools a certain project uses based on which config files are present. Like only use prettier if a prettierrc exists, only use deno_fmt if a deno.json exists, only use biome if a biome.json exists etc. Thankfully neovim uses lua, so I'm certain I can look up how to conditionally call that format function!

NickyTheRook
Автор

Great job, thank you very much. I switched to Lazy following your videos and I'm loving them

gioelem