How I Setup Neovim To Make It AMAZING in 2024: The Ultimate Guide

Поділитися
Вставка
  • Опубліковано 14 чер 2024
  • This is my complete beginner's guide to setting up Neovim from scratch in 2024. Neovim has evolved a lot since my last complete setup guide which I created more than a year ago. I hope you enjoy the video, find it helpful and it sets you on your own Neovim journey!
    ✍🏽 Blog Post With Code & Commands: bit.ly/4agkTyQ
    💻 Source Code/Dotfiles: bit.ly/4cFlPyq
    📧 Subscribe To My Newsletter: buttondown.email/josean
    ☕️ Help Support Me And The Channel: www.buymeacoffee.com/joseanma...
    ✨ My Wallpaper Pack: bit.ly/49pC13Q
    🔗 Other Links
    Alpha-nvim Greeter Inspo: bit.ly/3TKSlq5
    🎥 How To Use Nvim With Tmux: • How I Use Tmux With Ne...
    🛠️⌨️ Visit the SplitType Shop To Build A Corne: splittype.com
    🎥 How to build a Corne keyboard: • How To Build A Corne K...
    -----
    ⌨️ Corne Keyboard Parts
    1. Cherry MX Corne V3 Kit:
    - Partially Assembled Kit: bit.ly/3wPLofX
    - Regular Kit: bit.ly/3PicaE5
    2. Elite-C Microcontroller:
    - Little Keyboards: bit.ly/48Q9CDR
    - Keebio: bit.ly/3Pm9lBJ
    3. Low Profile Sockets & Mill-Max Pins: bit.ly/3TePp4V
    4. 128x32 Oled Screens: bit.ly/3TdjZMf
    5. Corne Keyboard Case: bit.ly/48W6bLP or etsy.me/4ca7fPc
    6. Corne Display Covers: bit.ly/48QgkJW
    7. Switches & Keycaps: bit.ly/3Vbvrus
    8. TRRS Cable: amzn.to/3PjyfBX
    ⏰ Timestamps
    00:00 - introduction
    01:17 - initial installs
    03:03 - setup file structure
    05:06 - basic options
    10:36 - basic keymaps
    14:33 - lazy.nvim plugin manager
    16:08 - vim-tmux-navigator
    18:16 - colorscheme
    20:45 - file explorer
    24:17 - which-key
    26:43 - fuzzy finder
    30:48 - greeter
    32:38 - auto sessions
    35:43 - bufferline
    37:30 - statusline
    41:02 - dressing.nvim
    42:07 - maximize splits
    43:46 - treesitter
    47:19 - indent guides
    48:22 - autocomplete
    51:34 - autopairs
    52:58 - comments
    54:51 - todo comments
    57:17 - substitution
    58:50 - surround plugin
    1:00:47 - lsp setup
    1:11:47 - trouble.nvim
    1:13:36 - formatting
    1:17:31 - linting
    1:20:39 - git integration
    1:26:03 - conclusion
    ** Disclaimers **
    Links included 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 all of your support.
  • Наука та технологія

КОМЕНТАРІ • 386

  • @mshirey
    @mshirey 2 місяці тому +100

    I’ve watched a few of these videos ranging from monolithic 5 hours to completely inadequate 20 minutes. This setup video is almost perfect. You cover everything in a well thought out well ordered manner. You explain everything with just enough detail without breaking off into any severely opinionated sermons about why your way is the correct way and everyone else is wrong (not naming names ;) ). You explain nearly every keystroke and also include on on-screen display of the keys pressed. I cannot tell you how extraordinarily helpful this is. Thank you for the obvious time and effort spent creating and delivering this video. Thank you!

    • @joseanmartinez
      @joseanmartinez  2 місяці тому +11

      That really means a lot. Putting this together is a lot of work, so I’m really happy to hear you’ve found it to be really helpful! Thank you so much for your feedback!

    • @jocelyn-n-tech
      @jocelyn-n-tech 2 місяці тому +1

      @@joseanmartinez I couldn't agree more. I was so confused / frustrated / intimidated by the vim/neovim ecosystem that I avoided it for years and just admired the ones who used it from afar. Then I ran across one of your earlier setup videos using LazyVim package manager. I followed it and actually got the darn thing up and running! I forced myself to use is for 60 days straight and now it's been over a year and half since I've used VSCode as my daily editor! I'll be honest that sometimes I do keep it open and minimized solely for when I have to do some Git Foo and will used it's source control panel to resolve some heavy conflicts but other than that it's neovim all day long. Something about your teaching style just clicks with me and makes it make sense. Thanks so much.

    • @codingwithrendi
      @codingwithrendi Місяць тому +3

      I love neovim because you 😊

    • @user-op7zm5bp9u
      @user-op7zm5bp9u 28 днів тому

      69 likes look better

    • @mohamedbhasith90
      @mohamedbhasith90 15 днів тому

      ​​@@joseanmartinezHey man, thanks for this awesome video, I'm a beginner to vim.. this video helped me a lot, although i have one issue i couldn't able bring transparent or blur background like you, do you have any tutorial for it or a blog post? I can't find a proper newbie guide to it.. pls help

  • @Yesterday_i_ate_rat
    @Yesterday_i_ate_rat Місяць тому +16

    If you are beginner in nvim, then this is the perfect video

  • @_HetShah_
    @_HetShah_ Місяць тому +19

    Maybe most of the viewers may have noticed it, but the way you keep you video behind the terminal transperency really hooks the viewer. Usually when I watching this type of video, I get distracted ton of times but your idea WHAT A GREAT ONE!
    Huge props to you for making such a informative video, as one who's eager to learn linux in general, this tutorial is the best one I have ever seen.
    Once again HUGE PROPS to you and your efforts.
    You gained a follower!

  • @s8x.
    @s8x. 2 місяці тому +49

    ur the reason i switched to neovim over a year ago since ur last video. thank u 🙏

    • @joseanmartinez
      @joseanmartinez  2 місяці тому +5

      Awesome!!

    • @JefCollier
      @JefCollier 2 місяці тому

      Same here! I've mentioned it to @joseanmartinez before, but my workflow is heavily influenced by his dotFiles. I wouldn't have even known about sketchybar without him.
      I'm pretty happy with my current .nvim configs, but that's not stopping me from watching this in its entirety in case I want to procrastinate on real work so I can fiddle with my setup "one last time."

  • @isrsaar
    @isrsaar 23 дні тому +3

    Yooooooooooooooo..... I have been watching your videos for a while, and this is strait up GOLD. I've struggled with some config stuff in the past and of course starting again from the beginning. I'm about 20 minutes in and reading along your blog entry at the same time. The amount of time, detail, and effort you are putting into showing others the magic of nvim, step by step in your blog, without any deviation from your fantastically edited video, all while being effective at explaining everything you do is completely unreal. You're a good person.

  • @marlonmarcello
    @marlonmarcello 12 днів тому +2

    This was the best neovim tutorial I've seen to date. I love how you explain and also illustrate everything you do. I also really appreciate that you are vocal about the commands you are entereing while you doing things. It helps a lot people like me that are still learning Neovim. Thanks Josean!

  • @amrjaafar4522
    @amrjaafar4522 Місяць тому +3

    Most beginner friendly guide and the cleanest setup I've seen on UA-cam.

  • @Peter-CDs
    @Peter-CDs 2 місяці тому +35

    These videos are the best! You have helped me set up my nvim, mac desktop and even tmux! Thank you and please, keep it up!

    • @joseanmartinez
      @joseanmartinez  2 місяці тому +4

      Awesome! Thanks for your feedback, really appreciate it!

    • @ebodshojaei4967
      @ebodshojaei4967 2 місяці тому +3

      Ditto. I'm a better developer thanks to Josean's crystal crisp tutorials. The best I've seen so far. Plus I now find Lua very fascinating. Thank you!

    • @joseanmartinez
      @joseanmartinez  2 місяці тому +2

      @@ebodshojaei4967 Means a lot! Happy to hear the vids have been helpful!

    • @JefCollier
      @JefCollier 2 місяці тому +1

      I started down this rabbit-hole because of his Yabai tutorial. Next thing I know, I'm copying almost everything that Josean has taught us.

  • @DAVE-GM
    @DAVE-GM 2 місяці тому +10

    This is an absolute gem! 🌟 Clear, concise, and incredibly detailed. Thank you so much for delivering such an insightful and easy-to-follow guide!

  • @adamdrake39
    @adamdrake39 2 місяці тому +5

    Man, thank you for taking the time to make these videos. I can't imagine its easy or quick but you have really helped me tweak my neovim setup and now I use it almost fully for my coding. 👍

    • @joseanmartinez
      @joseanmartinez  2 місяці тому +2

      It’s a ton of work so I’m really happy to hear they’ve been helpful for you! Thank you!

  • @Raspace
    @Raspace 2 місяці тому +3

    If you are a beginner looking to learn neovim configuration, this is the best video to start with

  • @GuoGuangChiou
    @GuoGuangChiou 29 днів тому +1

    didn't miss a second to follow each step here. Really great stuff

  • @runonce
    @runonce 2 місяці тому +6

    Just getting started with NeoVim and this is great material, thank you!

  • @neuskonto12
    @neuskonto12 Місяць тому +2

    I'm working back and forth with nvim, vscode and intelliJ for different purposes all the time, but I started vim about 5 years and nvim about 2 years ago. The struggle with nvim for me, is that I'm not familiar with a lot of the plugins and eco system in general, people in the industry almost never explain what cmp, lsp, fugitive, mason, lazy, etc. is, which makes it hard to distinguish the things in an unknown environment. But not Josean, he explains everything from scratch, which is amazing, I can see the work that you put into that video and the blog post, you're a great guy man. Wish you the best for you and your family!

  • @babasbot
    @babasbot Місяць тому +1

    Thank you! I'm coming from a long period of not using vim. This video is helping me a lot to get back into Vim.

  • @AndrewIzatt
    @AndrewIzatt 5 днів тому +2

    For anyone struggling to see the "tree" file format after adding vim.cmd("let g:netrw_liststyle = 3") in the lua//core/options.lua file, when you're in the :Explore view, make sure and type 'i' a few times to toggle the different listing styles. is the help file and it's in there.

  • @sherlockjunior8612
    @sherlockjunior8612 Місяць тому +1

    Oh my gosh I've been practically trying to set up my neovim for months now but 10 minutes into this video and I already have understood so much that i never did before, thanks so so much mate ❤

  • @mbrochh82
    @mbrochh82 Місяць тому

    Loved your video a year ago! Very nice to see that you are still going strong! Production value of your videos is really amazing!

  • @jebotipasmater
    @jebotipasmater Місяць тому

    Just found this channel and this is the second video I'm watching. Great tutorials, loving them! Keep up the great work!

  • @sebby5336
    @sebby5336 2 місяці тому +1

    Literally getting into neovim and you recently uploaded this, is this heaven sent??

  • @ChecedRodgers
    @ChecedRodgers Місяць тому

    Subbed! Echoing what others have said, this is the optimal level of detail and content density. Many thanks!

  • @vichl3853
    @vichl3853 Місяць тому

    This was amazing Josean, keep it up man, you're doing very useful content!

  • @novusomelas
    @novusomelas 11 днів тому

    This is another level of commitment, thank you for the video. It is really perfect, the form and the content. Following!

  • @fredericvannier2848
    @fredericvannier2848 Місяць тому

    This is an amazing video explaining everything just enough to understand and going quickly. Great quality video, time well spent!

  • @zohanrow
    @zohanrow 11 днів тому

    Man this was AMAZING!! Your content and the edit was just INSANE, keep doing it! 🎉

  • @dustin6336
    @dustin6336 20 днів тому

    Dude. This was absolutely phenomenal. Thank you so much for your effort on this video and others like it. Subscribed and liked.

  • @TheDaddyLuigi
    @TheDaddyLuigi 2 місяці тому +4

    Been looking forward to this 🙏🏽

  • @latch909
    @latch909 2 місяці тому +2

    This is an incredibly impressive video and blog. I will absolutely be referring to a lot of great stuff in this to re-organise my config thanks for publishing!

  • @a1b2c3d4x
    @a1b2c3d4x 2 місяці тому +4

    Been waiting for this:)

  • @TheBlueBear1337
    @TheBlueBear1337 9 днів тому

    The transparancy to see you and the terminal at the same time is a really cool touch! Well done

  • @TioJobs
    @TioJobs 23 дні тому

    Without a doubt, this video is the best video of youtube for programmers! Thankyou very much Josean!

  • @farazahmed9247
    @farazahmed9247 2 місяці тому +3

    Just redid my configuration. I built my old one by following your videos last year. Great videos bro!

  • @nelsonfleig5024
    @nelsonfleig5024 20 днів тому

    Beautiful work sir! Followed a few tutorials by the "big name" youtubers and this has been my favorite so far! Was about the give up and just go for an nvim distro, but this really boosted my confidence to create my own config. Thank you so much!!

  • @ThugLifeModafocah
    @ThugLifeModafocah 2 місяці тому

    Learn a lot by following along executing the commands with the video. Thank you.

  • @tdcode
    @tdcode Місяць тому

    As always, I can rely on you to deliver the best updated nvim setup. Awesome stuff. Lazygit - a must 😄

  • @mediablitzeast
    @mediablitzeast 2 місяці тому +5

    this is the best. Love your videos Josean

  • @philiscoolerthanu
    @philiscoolerthanu 2 місяці тому

    That was amazing. Efficient. To the point. Keep doing what you are doing. You are helping bring many to the amazing world of vim, nvim and tmux. Bravo!

  • @Goras147
    @Goras147 Місяць тому

    Thank you SO much, it was a great learning process for me how lazy, LSPs, navigation and general configuration of Neovim works. I am so glad I found this, otherwise I'd just stay at LazyVim, but this actually gives me so much more control! Again, thank you!

  • @stevemccauley
    @stevemccauley Місяць тому

    This is a fantastic video. Thanks, Josean!

  • @ebouchut
    @ebouchut 24 дні тому

    Congratulations for such a useful tutorial video. Great explanations and use of the transparency!

  • @prashlovessamosa
    @prashlovessamosa Місяць тому

    Mr Martinez I have configured mine all credit goes to you
    thanks for making this video very grateful to you.

  • @twettatwaarr
    @twettatwaarr 2 місяці тому +1

    Loving your UA-cam series over the past year. Well done Sir. And would love to see more of the git commit in nvim and push to GitHub if possible.

  • @muhommodshahjalal9811
    @muhommodshahjalal9811 Місяць тому

    brother from bangladesh,,, you can't believe how much gratitude for you,, may Allay peace on you and your whole family

  • @annakarolinafranz5946
    @annakarolinafranz5946 2 місяці тому +1

    And congratulations on the channel, I watched all your videos

  • @AlexGhoro
    @AlexGhoro Місяць тому

    Thanks for the video! I bet it was a lot of work to make it, works perfectly on my new Mac I got from work last week. The video quality is perfect too.

  • @OverMartinez
    @OverMartinez 20 днів тому

    Really amazing videos man! Thank you so much! 😊👍

  • @mnucuello
    @mnucuello Місяць тому

    thanks for taking the time to explain everything

  • @defnlife1683
    @defnlife1683 5 днів тому

    Glad to see a lazyvim from scratch video. awesome.

  • @user-re1qy6kd6p
    @user-re1qy6kd6p 2 місяці тому

    That is such an amazing setup guide!

  • @mr.bojangles6111
    @mr.bojangles6111 2 місяці тому

    This was an excellent tutorial. Thank you so much for making it! Between you, TJ and typecraft Neovim is starting to make sense. And, consider this a vote for a LazyGit tutorial. Definitely looking forward to more!

  • @mqhg
    @mqhg 2 місяці тому +2

    Thats really helpful for me, thanks a lot 🤗

  • @matsomo
    @matsomo 2 місяці тому

    This is an absolute gold mine for a nvim noob like myself, thanks

  • @scorpionesp6510
    @scorpionesp6510 Місяць тому

    You know.. I wanted to watch this just to see the brilliance of how you setup neovim.. not expecting to want to use majority of your plugins. Tell me why I found myself wanting to add majority of your plugins.. Likes this is just brilliant!!!

  • @ronaldinhour
    @ronaldinhour 2 місяці тому

    Thank you very much ! I discovered your channel recently and it's great !

  • @oovnow4422
    @oovnow4422 Місяць тому

    Your videos it is the best way to learn VIM. Thx!

  • @issasafar
    @issasafar Місяць тому +2

    finally i found an understandable neovim video

  • @AndrewIzatt
    @AndrewIzatt 5 днів тому +1

    Also, if you're having trouble remapping your key to "jk" as Josean does, try replacing with or (either worked for me on Linux Mint). might be a MacOS-specific mapping.

  • @astroflexx82
    @astroflexx82 Місяць тому

    bro thanks a lot!!!!!! you helped me a lot in setting up neovim

  • @anre1318
    @anre1318 Місяць тому

    This is just awesome! Thank you so freaking much! :)

  • @LudoTheGreat
    @LudoTheGreat Місяць тому

    Great video! I decided to switch to neovim after years of people telling me to. This was the perfect video to dive into.

  • @janvanveldhuizen
    @janvanveldhuizen Місяць тому

    Awesome video! I changed to a lua based vim config by using NvChad. It works, but I had no clue how the lua config works. This video explains it very well, and gives me all information I need to make my own config with the things I want to have for my own dev environment. Kudos!!

  • @SergioOlivieri89
    @SergioOlivieri89 2 місяці тому

    Thanks to this video i completely switched to Neovim 🎉🎉🎉 much love from Italy

  • @jaronhaberstroh7826
    @jaronhaberstroh7826 Місяць тому

    Awesome video! Looking to make a switch from VSCode to NeoVim, and your setup seems like the perfect starting point. Looking forward to giving it a spin for a few weeks before making my own modifications. Anybody looking to get into customizing their own NeoVim experience should consider starting here.

  • @user-tt1ru8og2n
    @user-tt1ru8og2n 2 місяці тому +1

    Put it in my bookmarks. Thank you for making such video!

  • @Remeroska
    @Remeroska 2 місяці тому +2

    On the train of people that switched because of you. Thanks!

  • @wiseskeshom4673
    @wiseskeshom4673 2 місяці тому

    Thank you so much, this is very helpful.

  • @regather59
    @regather59 2 місяці тому

    Stunningly well made and informative presentation, thanks!

  • @saquibherman1637
    @saquibherman1637 Місяць тому

    Awesome work Josean 😇

  • @anre1318
    @anre1318 Місяць тому

    Thank you so freaking much! One of the best videos on this platform if you are interested in coding! Thanks man!

    • @joseanmartinez
      @joseanmartinez  Місяць тому

      Thank you so much for the support and your kind words. Means a lot!

  • @andyheld3136
    @andyheld3136 2 місяці тому +2

    This is awesome like all the other tutorials from your side! For me it was not easy the first time but with your help i was able to get my nvim to the next level. Do you plan or already have a video how to debug i.e. typescript jest/vitest tests? How to debug, set breakpoints and which plugins do you use here? Would love to see a video focusing on debugging :) Thx a lot!

  • @zeal514
    @zeal514 2 місяці тому

    This is a great video. im only 23 minutes in. But as a user of neovim and lazyvim, who just initiated the starter lazyvim repo. I felt like i really didnt understand it. So watching this, its very concise and clear, but also extremely informative as to what everything does. Just being 23 minutes in, i feel like i really understand how this is working now, and that understanding will continue to grow. Way to go man, you did a really great job with this video. Deff subscribing. Looking forward to seeing more great things from you!

    • @joseanmartinez
      @joseanmartinez  2 місяці тому

      Thank you! That means a lot, happy to hear I could help!

  • @milostean8615
    @milostean8615 3 дні тому

    Brilliant walkthrough 🤠🤠

  • @MaximKuleshov
    @MaximKuleshov 2 місяці тому

    Literally just yesterday watched your video about configuring lazyvim, and today you release this one! Well.. I guess it’s time to update my configuration😅

  • @RazoBeckett.
    @RazoBeckett. 2 місяці тому

    thanks, really helped me lot fixing my LSP-Setup !

  • @BunnyKhatri-pd8zm
    @BunnyKhatri-pd8zm 19 днів тому +1

    jk to enter insert mode was a game changer for me. Good video a sub for you👍

  • @camilofernandez4088
    @camilofernandez4088 3 дні тому

    Thank you Josean!

  • @skallen59
    @skallen59 2 місяці тому

    Brilliant, I learned a lot from this. Thanks!

  • @itisciprian
    @itisciprian Місяць тому

    because of you I switched fully to neovim - all the config refactor to my needs and my liking . Will wait for lazygit video. Cheapeau!

  • @xoanaraujo
    @xoanaraujo Місяць тому

    W tutorial, i'll need to take it all in slowly, thanks

  • @Fullflexno
    @Fullflexno 2 місяці тому

    Thank you for this. Looking forward to check it out! Your last similiar video was epic=)

  • @mmazeto
    @mmazeto Місяць тому

    Absolute genius tutorial!

  • @benarcher372
    @benarcher372 2 місяці тому

    Amazing! What a fantastic video. I normally never change my neovim setup more than twice a year (I need to do some actual work as well :-) ), but next time I'll use this as a template. Thanks and take care.

  • @a_maxed_out_handle_of_30_chars
    @a_maxed_out_handle_of_30_chars 2 місяці тому +1

    this was well done, thank you :)

  • @hotdaq
    @hotdaq 2 місяці тому

    This is sick bro, good work!

  • @michaelrowsey768
    @michaelrowsey768 Місяць тому

    Amazing tutorial!

  • @tryanderrorworld7421
    @tryanderrorworld7421 Місяць тому

    Great content though i got nothing but it was so satisfying seeing u setup neovim from scratch, i will be on the look out for u.

  • @IvesLiu184
    @IvesLiu184 Місяць тому

    It’s sick dude, big thx

  • @JustFreakazoid
    @JustFreakazoid 2 місяці тому

    Very good stuff, thanks a lot!

  • @flaviogalon
    @flaviogalon 2 місяці тому

    Awesome video, thanks for sharing!

  • @yassinetaya7193
    @yassinetaya7193 16 днів тому

    this is looks like asmr to me thanks for the vid mate

  • @kevinr8716
    @kevinr8716 9 днів тому

    This tutorial is excellent. I watched a lot of these and always felt like they were hitting keys without me realizing it and I always had to pause my way through a 10 minute video. I was able to pretty much follow this at speed because you constantly repeat the basics like "now we colon lazy, shift I to install..." Anyways, thanks for taking the time to make this video. I am much more confident messing around with configurations. You set up your split commands pretty much the same as I have however, I wanted to drop something additional for the comments. Navigating between splits can be cumbersome. I always remapped the split navigation commands to "hjkl" to mimic moving in normal mode, if anyone wants to try it out here are my mappings:
    keymap.set("n", "", "wincmd k", { desc = "Move up a split"})
    keymap.set("n", "", "wincmd j", { desc = "Move down a split"})
    keymap.set("n", "", "wincmd h", { desc = "Move left a split"})
    keymap.set("n", "", "wincmd l", { desc = "Move right a split"})
    Cheers!

  • @SamiAhmed-ru4ci
    @SamiAhmed-ru4ci 21 день тому

    Legend. 10/10 video

  • @green3216
    @green3216 2 місяці тому

    Thank you ❤

  • @1rk1n
    @1rk1n 2 місяці тому

    First 5 options alone (not sure if i'll add everything...)make me feel like Tank from the Matrix. Thank you for the configs..!

  • @a21ambre
    @a21ambre 2 місяці тому

    Man this made me start using vim. Epic video. 🙌

    • @joseanmartinez
      @joseanmartinez  2 місяці тому

      Love it, hope you enjoy Neovim as much as I do!

  • @subbunittala2012
    @subbunittala2012 2 місяці тому

    you are the reason for switching to neovim sir ..thank you so much from BHARAT (INDIA)!..please do a video on OBSIDIAN + NEOVIM !

  • @mariodian
    @mariodian 26 днів тому

    Thanks, this was super helpful! This video was also the reason I switched to lazy from vim-plug. So, I guess thanks for that too lol.

  • @ayushkumar2436
    @ayushkumar2436 Місяць тому

    Omg omg omg this is so perfect 😮

  • @0ShinigamiDN0
    @0ShinigamiDN0 2 місяці тому

    It would be nice a video on lazy git, looking forward to it.
    Amazing work as always, thank you!

  • @user-th8gt8gp3u
    @user-th8gt8gp3u 2 місяці тому +1

    Only person I turn to for a solid setup guide