0 to LSP : Neovim RC From Scratch

Поделиться
HTML-код
  • Опубликовано: 8 фев 2025

Комментарии • 2,3 тыс.

  • @ThePrimeagen
    @ThePrimeagen  2 года назад +2148

    *Requires neovim 0.9.x*
    This took 10 hours to record :) It was really really hard.
    I forgot to link this: github.com/ThePrimeagen/init.lua

    • @arcariusmexen1104
      @arcariusmexen1104 2 года назад +34

      It's really good. Well done!

    • @ditchcomfort
      @ditchcomfort 2 года назад +25

      Can I pretty much copy/paste this configuration and be up and running?

    • @newsgroupsusenet5486
      @newsgroupsusenet5486 2 года назад

      Good job, love your courses on FEM. Also hope that you can bring DevAsLife on RUclips to your show! ruclips.net/video/XTGABtNh2EY/видео.html

    • @ThePrimeagen
      @ThePrimeagen  2 года назад +37

      @@ditchcomfort yes

    • @jdawgforealz
      @jdawgforealz 2 года назад +4

      @@ditchcomfort You should be able to!

  • @dotbhav
    @dotbhav 6 месяцев назад +456

    We need a support group for anyone that has tried to follow this.

    • @QuantumVirus
      @QuantumVirus 5 месяцев назад +24

      Not really; you should only need to literally follow along for the first couple of plugins,
      after that; you should've already known the pattern, you'll find a lot of plugin setup methods being called differently now in their repos, just use what's in their docs and not exactly copy what's in the video because things change

    • @katto1937
      @katto1937 5 месяцев назад

      I followed it and actually been using nvim ever since, and it's been fucking great. I tried to switch like 3-4 times before but I could never get completions, highlighting and intellisense working without hours of wasted effort. And this legend just showed me how to do all 3 in 10 minutes
      What did you not get? It's all pretty "do this, do y" imo

    • @marcpearson2913
      @marcpearson2913 4 месяца назад +19

      @@QuantumVirus That and packer is now abandoned so the video is obsolete as he's migrated to lazy in his own video.

    • @awrarisq
      @awrarisq 4 месяца назад +6

      learned so much in the first 40 seconds

    • @demolazer
      @demolazer 4 месяца назад

      Just needs a lot of pausing to copy the code in. Easy.

  • @earthling_parth
    @earthling_parth 2 года назад +478

    Prime, I'll do you one better by pre-thanking you! Words cannot describe how useful this video will be to me and many many other people starting out with Neovim. Much, much appreciated ♥️

    • @earthling_parth
      @earthling_parth 2 года назад +19

      After watching the video, I can say I learned much more than I expected. *SO MUCH COCONUT OIL* that my hands are _slipping_ from the keyboard 🤩

    • @nezby3945
      @nezby3945 2 года назад +1

      I've got to say insane video! thanks for donating to this amazing person I've struggled a bit to configure neovim myself and this video explained it really well and in very nice detail I can even do my own remaps now! Amazing

  • @hm_webdev
    @hm_webdev Год назад +207

    Regarding the Harpoon keymaps, Prime uses a dvorak keyboard, so the equivalent keymaps for the ui.nav_file lines on a qwerty keyboard would be "", "", "" and "".

    • @ulicnikmark24
      @ulicnikmark24 Год назад +13

      You're a legend. I searched for comments containing harpoon to try to explain this, thanks!

    • @hm_webdev
      @hm_webdev Год назад +4

      @@ulicnikmark24 I'm happy this helped. Thanks for commenting :)

    • @adityapradhan675
      @adityapradhan675 11 месяцев назад +2

      God send!

    • @prawtism
      @prawtism 10 месяцев назад +2

      did this, I see he's switching between files with ctrl+t and ctrl+h, but for me neither these two nor hjkl do anything (Edit: was missing the < before every "C -" :D)

    • @gg1k
      @gg1k 7 месяцев назад +3

      Opposite problem. I was expecting to have to remap those to something nice on dvorak, only to discover it was already done.

  • @captainbrainless
    @captainbrainless 2 года назад +1066

    Small note: At 6:50, you need to have ripgrep installed to make the grep-keymap work.

    • @clearnitesky
      @clearnitesky Год назад +7

      thanks!

    • @GottZ
      @GottZ Год назад +8

      ye. he should have pointed out to go to the repo for further instructions. he has it in the readme for a couple months :)

    • @captainbrainless
      @captainbrainless Год назад +3

      @@GottZ thanks for the hint. For some odd reason, I had this self-implied (irrational) limitation of: „Either do it yourself from scratch OR check out the repo.“ 🙈 It’s generally advisable to look at every available information before starting.☝️

    • @iamvalenci4
      @iamvalenci4 Год назад +4

      thank you so much

    • @AbhayFaldu
      @AbhayFaldu Год назад +3

      Thanks a lot man

  • @Gokuroro
    @Gokuroro 2 года назад +522

    I never pre-like videos... but when I do, it is The Primeagen talking exactly about the topic I need to learn.

    • @nodidog
      @nodidog 2 года назад +23

      I usually get mildly annoyed at being told to like a video, but Prime is a rare exception that qualifies for a pre-like

    • @seantwie0316
      @seantwie0316 2 года назад +1

      I did the same thing. Thanks Prime for showing me LSP Zero. I was struggling with nvim-cmp this morning.

    • @NeverCodeAlone
      @NeverCodeAlone 2 года назад

      I love his kind of art in his movies. I also do a lot of videos but can not do it so nice.

    • @marwanfikrat7716
      @marwanfikrat7716 2 года назад +5

      I always pre-like this dudes videos. Even if I don't watch them

    • @NeverCodeAlone
      @NeverCodeAlone 2 года назад +1

      @@marwanfikrat7716 Open source passion - i love it!!

  • @iuribrindeiro5009
    @iuribrindeiro5009 11 месяцев назад +6

    Amazing! Ty so much for helping me spend 10h configuring vim so I can forget how to close and save the file next week and go back to vs code.

  • @martiananomaly
    @martiananomaly 2 года назад +1486

    0:38 Just a reminder for people to use nvim command and not vim command to open neovim. He has the vim command aliased to open nvim.

    • @manofqwerty
      @manofqwerty Год назад +18

      Thanks for this - I created a alias in ~/.bashrc to have the same alias'

    • @zoc2
      @zoc2 Год назад +31

      Jeez,thanks for the reminder! I was so confused!

    • @swaeyl3883
      @swaeyl3883 Год назад +11

      OR, just use vim instead of nvim :)

    • @silak33
      @silak33 Год назад +25

      @@swaeyl3883 :O BLASPHEMY!!!

    • @pabloaguila7977
      @pabloaguila7977 Год назад +20

      not all heroes wear capes

  • @nickmead8146
    @nickmead8146 Год назад +165

    Anybody else have to watch this video at 0.75 speed just to follow along? Awesome stuff, thanks for sharing, @Theprimeagen!

    • @SlavkoStojshic
      @SlavkoStojshic 11 месяцев назад +5

      I'm glad I'm not the only one :) Great video, just way too fast for me to follow :)

    • @thux2828
      @thux2828 11 месяцев назад +15

      .75? You're quick. More like 0.5 and pausing to check the feed of keystrokes.

    • @mrfli24
      @mrfli24 11 месяцев назад +8

      I actually pressed the control to set to 0.75 then found out I had done that already.

    • @nostalgicnow6001
      @nostalgicnow6001 11 месяцев назад +1

      😅 I thought I was the only one 😂🤦🏾‍♂️

    • @nostalgicnow6001
      @nostalgicnow6001 11 месяцев назад

      @@thux2828😂 exactly

  • @splitchunks7055
    @splitchunks7055 Год назад +294

    For those who find themselves faced with the following error from nvim-treesitter: "lua:86: Parser not available for language...'". Re-watch 11:18 but DO NOT add "help" to the "ensure_installed" options list. Instead, you'll want to replace it with "vimdoc". After that, as of writing this, you shouldn't get any parser errors coming from nvim-treesitter.

    • @r0yce
      @r0yce Год назад +2

      Thanks man.

    • @JuanSB827
      @JuanSB827 Год назад +8

      also, if you are on macOS (and u have apple silicon ) make sure your terminal app (e.g iTerm2) is not running in rosetta mode
      otherwise tree sitter will throw `wrong architecture needs arm64 found x86_64`

    • @greglocker2124
      @greglocker2124 Год назад +2

      ​@@JuanSB827 nobody here made that mistake

    • @joshduffney7954
      @joshduffney7954 Год назад

      Thank you!

    • @wazz6003
      @wazz6003 Год назад

      Thanks dude!

  • @scottiedoesno
    @scottiedoesno 2 года назад +353

    Videos like this make vim SO much more approachable. If not for your original vimrc videos, I wouldn't have stuck with it for over 2 years at this point. Thank you for what you do!

    • @ThePrimeagen
      @ThePrimeagen  2 года назад +82

      yayayayaya

    • @eduingarciacordero9255
      @eduingarciacordero9255 2 года назад +4

      the same here hahaaahah

    • @paulzupan3732
      @paulzupan3732 Год назад +1

      Yes same here. Prime was the one that explained plugins in a way that I finally understood. If not for prime, I'm not sure if I would even be as into tech in general as I am today.

  • @ioewguboiuewrgnl
    @ioewguboiuewrgnl 2 года назад +691

    Wait wait, let me get my popcorn, blanket and laptop.

    • @sagarkapasi099
      @sagarkapasi099 2 года назад +6

      I love this comment

    • @ahmadieb
      @ahmadieb 2 года назад +3

      Agreee watching this while waiting ❤️

    • @ericlawrencebrown3657
      @ericlawrencebrown3657 2 года назад +2

      :this:

    • @hasanpasha01
      @hasanpasha01 2 года назад +1

      Right now under my blanket, sipping tea and watching this video.

    • @BGraves
      @BGraves Год назад +7

      You forgot your coconut oil and tissue

  • @duwangchew
    @duwangchew 2 года назад +39

    This is amazing.
    Finally allowed me to properly use nvim.
    I tried other preconfigured nvim setups, like lunarvim or nvchad and never fully liked them.
    Yet messing around with nvim rc seemed daunting and other videos weren't quite as comprehensive.
    Thanks primeagen, keep up the good work.

  • @anthonyparks505
    @anthonyparks505 Год назад +4

    Thanks! Saved my ass after years of vscode hell and its terrible C++ support and general terribleness. Using the vim keybindings for years but nvim + tmux is all I need anymore. On top of that, I regained enthusiasm for my work because I am not yelling at my editor all the time. THANK YOU

    • @jobinthomas6372
      @jobinthomas6372 Год назад

      Can i ask which lsp you use for c++ ? Did you use Mason or something else?

    • @anthonyparks505
      @anthonyparks505 Год назад

      clangd based@@jobinthomas6372

  • @paterson.
    @paterson. Год назад +29

    My terminal colors went nuts when I installed the rose-pine package (7:10) for coloring (funnily all background went CYAN lol). It turned out the reason why the colors went haywire was because of the terminal I was using. (I was using just the native Mac terminal). I think it was something like rose-pine was using colors that the terminal didn't support. I installed iTerm2 and everything was good. Thanks for the video Primeagen!

    • @ofeenee
      @ofeenee Год назад +2

      I have the same problem. Thank you for sharing.

    • @reandov
      @reandov Год назад +1

      I'm having the same issue... I did't want to go to iterm2 but that will be the case now :)

    • @goshmain982
      @goshmain982 Год назад

      Thanks for helping

    • @ShadowKestrel
      @ShadowKestrel Год назад +2

      the default mac terminal doesn't support truecolor. Color schemes *do not like this one bit.*

    • @jayreddy6038
      @jayreddy6038 Год назад +2

      tmux is an alternative - supports truecolor

  • @Code12x
    @Code12x 2 года назад +60

    Honestly, I don't know how anyone is supposed to get started with vim without your videos... I've been going over your last several vim videos the past few days trying to figure out how to get it to work. This video helped more than you could imagine :D Thank you!

    • @ThePrimeagen
      @ThePrimeagen  2 года назад +27

      Let's go!!!!!

    • @greglocker2124
      @greglocker2124 Год назад +3

      ​@@lostintheinternet2814 VSC is trash

    • @joshuarose20
      @joshuarose20 Год назад +5

      @@greglocker2124 we don't say that word here...

  • @norcal6181
    @norcal6181 Год назад +4

    fyi, the greatest key remap ever @ 27:11, where you paste without copying the selected text that you're pasting over. You can accomplish the same thing by just pasting with capital "P" instead of lowercase "p".

  • @ivanjanjic141
    @ivanjanjic141 Год назад +1

    Thanks! This video finally made me use vim seriously. You're great!

  • @eyal2253
    @eyal2253 Год назад

    Thanks! Super useful after only thinking for a couple of years to try out Neovim

  • @industry_std
    @industry_std 2 года назад +18

    I don't know who needs to hear this, but order of operations matter when setting up remaps and options. I have spent 30 minutes trying to figure out why my pv wasn't working and the problem was the remap.lua was "required" before the set.lua thus the leader key was not yet remapped to the space key. Great video as always, though. Keep them coming.

    • @ThePrimeagen
      @ThePrimeagen  2 года назад +3

      Absolutely correct and my fault!!!

    • @cipher01
      @cipher01 11 месяцев назад +1

      @@ThePrimeagen pin this please !

    • @lostprince2251
      @lostprince2251 9 месяцев назад

      Hey, I'm completely new to this and have this issue. But I have no idea what you mean by 'remap.lua was "required" before the set.lua'... Can you tell me what to do to get this to work? For now, I'm trying to continue without remapping it, but I'd really appreciate the help :)
      Edit:
      Sorry, now that I have continued watching the Video I know what you mean, sadly this was not the issue that I was having :(
      If you want / know how to help anyway: When I press pv it doesn't recognize(?) it as leader and I just paste and then go into visual mode...

    • @jariocmjunior
      @jariocmjunior 9 месяцев назад

      @@lostprince2251 You need to prime the keys in a certain time to map works as expected (i.e. if you delay in prime " "pv the map maybe not work).

    • @lostprince2251
      @lostprince2251 9 месяцев назад +2

      @@jariocmjunior Oh wow, now I feel dumb, this was actually my problem, ty :)

  • @112358d15
    @112358d15 Год назад +8

    Setting up my own nvim config along-side this video was great! (much pausing and seeking back needed ). Truly a great video.
    P.S. 8 months down the line some of the plugins have evolved from the versions shown in the video (i.e. the configuration snippets taken from the various plugin readme files don't match anymore).

  • @Aikchun616
    @Aikchun616 Год назад +3

    Thanks for making neovim so much more accessible. Especially to a long time vim user. The LSP setup made it so much easier to start and get productive with my current projects. Really appreciate it!

    • @veerpratap1177
      @veerpratap1177 Год назад

      in lsp git directory i cant see the code for packer

  • @hal1227
    @hal1227 Год назад

    Thanks - solved a lot of issues for setting up nvim. Really appreciate the channel!

  • @kyumullo
    @kyumullo Год назад +13

    I'm running this video at 0.5 speed to follow along, and by howdy is that a trip. Thanks for putting this together Prime!

  • @geekboy328
    @geekboy328 2 года назад +21

    I've used vim on and off since college, but not gonna lie all the new complexity around LSP & Lua has kept me away from trying it seriously. I really appreciate having a resource like this that shows how to go from zero to an IDE-like experience. Keep up the good work!

    • @HarshYadav-yi7tv
      @HarshYadav-yi7tv Год назад +1

      Bro, you just got my words ! Exactly the complexity around LSP & Lua is f*ckin sick. You have to spend ages to learn this stuff I will step back and would like to appreciate the beauty of simplicity of vim...

  • @awabkhan2977
    @awabkhan2977 2 года назад +60

    we need this video every year.

  • @maxreuv
    @maxreuv 2 года назад +70

    This is great. I particularly liked how `after` is being used to configure installed plugints.

    • @ThePrimeagen
      @ThePrimeagen  2 года назад +13

      yayaya!

    • @JohnCostanzo
      @JohnCostanzo 2 года назад +3

      Took me awhile to understand why he was doing this.

    • @SuperQuwertz
      @SuperQuwertz Год назад +1

      My after folder is not loading, but it works with other configs. What could I have done wrong?

    • @nicholaswatching
      @nicholaswatching Год назад +1

      @@SuperQuwertz same

    • @iron7956
      @iron7956 Год назад

      @@JohnCostanzo I don't understand, can you explain it to me?

  • @HassaanAlvi-e3g
    @HassaanAlvi-e3g 4 дня назад

    I started with Neovim yesterday used. made a basic program on it and saw your video with your nvim looking sick af. I have been sitting here for like an hour following the tutorial my mind is melting but I persevere.

  • @Comradin
    @Comradin Год назад

    Thanks a lot, this video was an eye opener in many regards. Learned a lot!

  • @jona5002
    @jona5002 2 года назад +32

    Amazing video! The information density is impressive. I have been on the journey for over a year now, but I still learned a lot in the past 30 minutes. I would absolutely love a video in this style about setting up the DAP. But most importantly, enjoy the Christmas break :)

    • @ThePrimeagen
      @ThePrimeagen  2 года назад +8

      Tyty

    • @denverfishsauce9977
      @denverfishsauce9977 Год назад

      Second the DAP. that's the last feature I'm interested in diving deep into with Neovim. Thanks again @ThePrimeagen

  • @Don_XII
    @Don_XII 2 года назад +10

    Pressing the like button is honestly not enough for an effort like this. I have to thank you. Even though I have my own config it is always fun and interesting to see other people's setup. Thank you so much 🙏

  • @wolverine9632
    @wolverine9632 Год назад +4

    Man, I've been putting off switching to neovim for too long now. I can't thank you enough for this extremely helpful video!

  • @AubreyLavigne
    @AubreyLavigne Год назад +2

    Thank you! I've been using vim full time since 2016, and I have been meaning to give Neovim a try but have been dragging my feet. This primer is a great entrypoint for understanding neovim configuration, so I actually have an idea how the neovim ecosystem actually works

  • @tkd2526
    @tkd2526 2 года назад +54

    Helpful mention for telescope's grep_string:
    "BurntSushi/ripgrep is required for live_grep and grep_string and is the first priority for find_files."

    • @Zerosupl
      @Zerosupl 2 года назад +1

      Thanks a lot :) I was wondering why this is not working.

    • @PeterJahnes
      @PeterJahnes Год назад +1

      Thank you for this!!!!!!

    • @sacredgeometry
      @sacredgeometry Год назад

      This should be pinned

    • @brenner1235
      @brenner1235 Год назад +1

      Thanks :)

  • @nathanielthomas4437
    @nathanielthomas4437 8 месяцев назад +13

    I would love an updated video. A lot has changed since this video came out, for example, Packer is deprecated and Harpoon is now on V2. It makes this a little harder to follow. But still an awesome video! Thanks!

    • @corbinslaymaker3346
      @corbinslaymaker3346 5 месяцев назад +3

      i didn't even realize it was deprecated, ive been doing this all morning and it's been working fine.

    • @nathanielthomas4437
      @nathanielthomas4437 5 месяцев назад

      @@corbinslaymaker3346 It may work fine now, but using depracated software is generally discouraged. A new nvim releaase can break it, other plugins can break it, and nothing can be done to fix it (unless you go and fork packer yourself to fix it, but then you're just making your own plugin manager).

    • @corbinslaymaker3346
      @corbinslaymaker3346 5 месяцев назад

      @@nathanielthomas4437 thanks ya i didn't know much about all that. i ended up installing NvChad anyways, which i'm already liking a lot. it's still really minimal but didn't require really any configuration at all.

    • @nathanielthomas4437
      @nathanielthomas4437 5 месяцев назад

      @@corbinslaymaker3346 Nothing wrong with using a preconfigured nvim setup, they come with just about everything you need.

    • @katto1937
      @katto1937 5 месяцев назад

      Just use something else for plugins, the actual process is still the same

  • @oajitho
    @oajitho 2 года назад +9

    I really needed a starter for neovim and this was really comprehensive. Thank you!

  • @DanielTateNZ
    @DanielTateNZ 2 года назад +20

    This is the best neovim video on the internet. We need a new one of these every 6 months to keep up to date with the best starting packages and if any apis of configs have changed. Awesome work.

  • @ingmarfalk3306
    @ingmarfalk3306 2 года назад +5

    The best vim/nvim starter video I have seen to date. Love it, you really helped me actually understand and create my own nvim setup instead of mindlessly copying somebody elses config

  • @ooogabooga5111
    @ooogabooga5111 Год назад +1

    I want to thank you primeagen after 1 month of neovim, everything is better now, life is alot greener. I do almost everything in neovim except java(my new hobby learning). Thank you for all your community contributions. Long live humanity.

  • @pavloburyanov5842
    @pavloburyanov5842 Год назад +2

    This video took 0.5 day for me. I got a lot of issues with nvim. But! Now Im able to write some rustic code in nvim. Thank you very much, you changed my life kinda)

  • @sykotes
    @sykotes Год назад +4

    i didn't follow this exactly but i built up my own neovim by the end it took me in the range of 5 - 8 hours i think but its worth it because i not only know everything i have installed but i also understand how it all works and got to set my own binds. for someone who is new to neovim this was extremely helpful

  • @SownJevan
    @SownJevan 2 года назад +3

    This video is so damn fire. I like it a lot, the humour with prime just closes your eyes to the multiple errors along the way.

    • @ThePrimeagen
      @ThePrimeagen  2 года назад +2

      i think this is a compliment, ty

  • @richienguyen2703
    @richienguyen2703 2 года назад +26

    For those of you who stuck from 2:32, I had a old version of Neovim (0.6.1) and installed the latest release (0.8.1). The error goes away!

    • @dave4347
      @dave4347 2 года назад

      Yep, same. Wish I would have seen your comment first lol.

    • @selmanisaidamine9321
      @selmanisaidamine9321 Год назад +1

      just use unstabble version

    • @eamonburns9597
      @eamonburns9597 Год назад

      How did you install the version? The latest version apt has is 0.6.x

    • @aligulli123
      @aligulli123 Год назад

      @@eamonburns9597 download from the releases section of the neovim git repo. They have detailed instructions for every environment.

    • @rc8s
      @rc8s Год назад

      @@eamonburns9597 Install it from source.

  • @TheW00tguy
    @TheW00tguy 10 месяцев назад

    I’ve been using neovim out of the box plug-ins like LunarVim and LazyVim and never really thought about doing my own config, least to say I haven’t looked back I’m having so much fun customising it, been a treat!

  • @hugog.cintra2573
    @hugog.cintra2573 21 день назад

    I have to say, this was the most educational tutorial I have ever watched in this cursed web site. Really nice Prime, congrats on the content.

  • @codyk3383
    @codyk3383 Год назад +7

    Former Vim user for 10 years, but switched to VSCode for TS/React. Going back. I love you, thank you for revitalizing my interest in Vim and Neovim. Everything made sense.

  • @xtunasil0
    @xtunasil0 2 года назад +4

    I recently started learning vim because of you.
    You make it look so easier and way less overcomplicated.
    I might definitely replace intelliJ (with which I'm proficient) with it soon.
    Thank you!

    • @greglocker2124
      @greglocker2124 Год назад

      Do it. Nobody ever told me those editors start lagging balls when you build a large codebase.

    • @xtunasil0
      @xtunasil0 Год назад

      @@greglocker2124 I'm working on a very large one.
      IntelliJ's products work pretty well on it except... When I switch to a previous version for XYZ reason. Then, the IDE starts to scan the repo(s) to rebuild its indexes and this takes a shit tons load of time. :/

  • @coldcircuit99
    @coldcircuit99 2 года назад +6

    Was doing 2-3 times but at last I found that building on top of nvchad config works the best for me.

  • @aleatoriedades975
    @aleatoriedades975 4 месяца назад

    I've started with astronvim and I was lost in how the things worked.
    After watching the setup from scratch I feel much more comfortable now!

  • @player-ye3hk
    @player-ye3hk Год назад

    Thanks so much, there is a longer comment somewhere explaining the why and how :P

  • @dannielrolfe8079
    @dannielrolfe8079 Год назад +3

    Thank you for such a fantastic walk through. I was looking for alternatives to my current IDE. This is exactly what I was looking for. The speed of these tools is impressive. Also I have been using Harpoon for a week now. What a solid tool. Great work.

  • @wiskasIO
    @wiskasIO Год назад +3

    I'm an old new programmer and I just get overwhelmed with this guy so easy but it only feeds my curiosity so much to aspire to higher levels of skill one day! 🙏

  • @aziz0x00
    @aziz0x00 Год назад +11

    The keymaps at 25:36 for moving lines in visual mode are crazy!! Amazing video

    • @dan61616
      @dan61616 Год назад +1

      but also quite uneccesary imo, you rarely need to use visual mode - why not just d the lines and p them in where you want?

    • @aziz0x00
      @aziz0x00 Год назад

      @@dan61616 they flicker on my computer also

    • @aziz0x00
      @aziz0x00 Год назад

      @@dan61616 why not? because it automatically indents 👍

  • @theArgonautics
    @theArgonautics 5 месяцев назад

    The content of the video is nice, but what was the most useful is following the keystrokes to learn how you navigate and edit documents. It was eye opening!

  • @domizianoscarcelli1936
    @domizianoscarcelli1936 10 месяцев назад

    It has been a few months since I’ve installed vim extension in vscode to familiarize with vim motions, and now I feel like starting to make the switch. This video was fantastic to better understand the nvim setup, which can be overwhelming to a heavy vscoder lol. Also those remaps are ESSENTIAL

  • @chrboesch
    @chrboesch 2 года назад +8

    I think it's great that you made this video, because now all newcomers can not only see how great (Neo)Vim is, but also get a very solid basic equipment at hand, which actually leaves nothing to be desired. And if you do, it's very easy to expand it. Thanks for that! 🙂

  • @khps9176
    @khps9176 2 года назад +24

    I've been using Neovim with your config for 2 hours now, and absolutely love it! Never touched vim before this, time to ditch VSCode! Let's go!

    • @r2com641
      @r2com641 Год назад +1

      🤡

    • @greglocker2124
      @greglocker2124 Год назад

      Did you go past 2 hours?

    • @greglocker2124
      @greglocker2124 Год назад

      ​@@r2com641 you should make that your pfp

    • @khps9176
      @khps9176 Год назад +1

      @@greglocker2124 I did! I'm still using neovim, not used vscode again at all.

  • @heitorvrb
    @heitorvrb 9 месяцев назад +239

    2024 Remake when

    • @TechnicolorMammoth
      @TechnicolorMammoth 8 месяцев назад +9

      Besides updated plugins, what else has changed that you can’t extrapolate yourself? Writing lua code and vim scripts hasn’t changed. Why does he need to spend another 10+ hours on this a year and a half over the previous was made? A lot if not everything is the same in this….

    • @erickgilmore3810
      @erickgilmore3810 7 месяцев назад +8

      @@TechnicolorMammoth The only thing that has change is treesitter playground, its deprecated since the functionality is included in Neovim

    • @ofeenee
      @ofeenee 7 месяцев назад +8

      Yes please! Please please please remake with the lazy package manager! Please!🙏 🙏🙏🙏🙏

    • @katto1937
      @katto1937 5 месяцев назад +2

      @@ofeenee Why... you just use like 2 different words to download the package

    • @jtrtsay
      @jtrtsay 4 месяца назад +1

      Yeah lazyvim is the goat now, packer rip

  • @bmacf
    @bmacf 7 месяцев назад

    Knowledge + Charisma = Quality content. Amazing video. I've followed another guides and have mason as a plugin manager, but I'm really looking forward to implement some of your tweaks.

  • @cagnolin.A
    @cagnolin.A Год назад

    Was just rewriting my vim config and stumbled upon this, love it! it helps that i learned so much of my vim setup from you in the past, so every plugin you mention is a slamdunk for me already.

  • @MichaelDovgal
    @MichaelDovgal Год назад +6

    Oh man. I’m using vim and neovim for last six years, but never tried to setup it for more that just text editor. This is looks amazing! Inspiring! 🎉

  • @oscare123
    @oscare123 Год назад +7

    His harpoon shortcuts make sense on dvorak. The equivalent for qwerty would be ctrl + h/j/k/l. These will clash with his quick fix navigation remaps so you'll need to find something that works for you (for example you could change the quickfix navs to use ctrl + uppercase J and K)

    • @NilEoe
      @NilEoe Год назад

      would ctrl + 9/0/-/= work?

    • @muhwyndham
      @muhwyndham Год назад

      I use 9/0/-/= for hotkeys and use \ for harpoon window. it works flawlessly

  • @AlexBlack-xz8hp
    @AlexBlack-xz8hp Год назад +4

    This is sooooo cool! Only wish I watched this like 15 years ago when I was first getting into coding. I remember trying to figure out why everyone loved vim so much and just never saw this side of it. This is awesome!

  • @sutirk
    @sutirk Год назад

    I had used vim in college for a while, but nothing too serious. I had dabbled in the configs of registers and remaps, looked up into fuzzy file search and buffers and such but i ended up never really using vim for anything serious.
    Its a extremely customizable ecosystem, but that creates a huge barrier of entry (its not just clicking on pretty buttons like vscode lol)
    I cannot stress enough how much valuable tutorials like these are, showing step by step, explaining each config line, showing examples and how to install/configure new plugins
    I've lost count of how many things i learned, either directly by something you said or indirectly by looking at your keystrokes, or reading the documentation for plugins
    Its much easier now to get back to vim and actually be productive in it, its literally blazingly fast

  • @trevor8416
    @trevor8416 11 месяцев назад

    I decided to get into vim the other day, after some googling I have found this video and I very much appreciate your work. Thank you!

  • @qmurec
    @qmurec 2 года назад +9

    Had to add a "require("user.packer")" to the lua/user/init.lua, otherwiese packer would not be loaded up when starting nvim. Otherwise: great video, really helped to get up to speed with neovim!

    • @williy_cole
      @williy_cole Год назад

      Thanks, you saved me from just going the lazyvim route. Been using vimplugins for a hot min and really wanna run a base set up before dabbling with something pre configured.

    • @AdamDymitruk
      @AdamDymitruk Год назад

      Was wondering if this was done on purpose. I want to make a more thorough version of this video

    • @ScrotoTBaggins
      @ScrotoTBaggins 9 месяцев назад

      ​@@AdamDymitrukDid you make a video? I'm getting a ritalin contact high from this video

    • @tortugatortuga7505
      @tortugatortuga7505 7 месяцев назад

      I was stuck at 4:38, thank you @qmurec

  • @aaronmcadam
    @aaronmcadam 2 года назад +12

    I loved every second of this! More vim macro magic, please! 🙏

  • @TBV4050
    @TBV4050 2 года назад +7

    Nice to do this once a year or so as a way to see what you really still need and rethink some pieces that you don't like anymore.

  • @LanceMarks
    @LanceMarks 2 года назад

    Thank you for making this!

  • @DavidHanks90
    @DavidHanks90 Год назад

    No cap, this is amazing. I've bounced around editors for the past few years, most recently using VSCode with an extension that makes it work like Spacemacs (long story). This is great. I've used Vim bindings for a long time now and this was the push to get me fully onboard with using Vim as my actual editor.
    Harpoon is *chef's kiss* beautiful. Thanks for taking the time to make this!

    • @zekicaneksi
      @zekicaneksi Год назад

      package manager used here is left to die... fuck this tutorial

  • @esquilo_atomico
    @esquilo_atomico 2 года назад +4

    finalmente consegui entender como configurar o nvim, mt bom... e de quebra ainda deu pra aprender um pouco de lua

    • @hermessantos181
      @hermessantos181 2 года назад

      meu problema só está dando ao configurar a leader key, sempre que entro e saio do vim ela não funciona mais, preciso is dentro do remap.lua e rodar :so de novo :(

  • @richa8855
    @richa8855 Год назад +5

    Ameutuer programmer and now comp sci major here, used vscode and the arduino ide for around a year before discovering your videos and eventually being convinced to move to vim, and now neovim. Just wanted to say thanks for all the useful information, switching to vim has been a real time-saver, and I can no longer live without the speed lol. Great stuff man.

  • @blkgames1447
    @blkgames1447 Год назад

    I've been trying to find time to explore Neovim for a long time. Finally, I found time to watch your video. Thank you for the content.

  • @rbledsaw3
    @rbledsaw3 Год назад +17

    @11:48 if you are getting an error the "help" parser cannot be installed, it's because it's been renamed to "vimdoc" since this video has been made.

  • @BRY0402
    @BRY0402 9 месяцев назад +7

    As a newcomer to vim, all i saw was you doing black magic

  • @jdawgforealz
    @jdawgforealz 2 года назад +6

    Another thing to note, if you find some of his key mappings a little wonky, its because he's ascended as uses a non-standard keyboard layout like dvorak. Adjust to your liking!

  • @diodeno
    @diodeno 3 месяца назад

    Excellent video. It's interesting to see how fast paced the development of Neovim (and its ecosystem) is. For instance, Packer is no longer the recommended "plugin manager" and "lsp-zero" is not really a plugin anymore.

  • @juangiordana
    @juangiordana Год назад +2

    There aren't just enough likes for me to add to this video.
    I've watched it SO MANY times in the pasts few months and I just keep learning and improving my Neovim experience withi it.
    Thanks so much!

    • @chidam333
      @chidam333 Год назад

      bro what why do you rewatch it ??

  • @aeiou3701
    @aeiou3701 9 месяцев назад +6

    it took 3 uninstalls, a bruise on my hand, and a dent in my desk but I am changed man. Also I use vim.

  • @sculpt0r
    @sculpt0r 2 года назад +8

    I've watch videos about navigation and I have to say: I know most of them - not a the fastest typer, but still they are really cool. The thing is I still use vim plugin for vsc... Mostly because of plugins etc. The last chance in this year to back to pure nvim... 🤞

  • @a8lg6p
    @a8lg6p Год назад +4

    This is fantastic. After like 5 years of primarily using VSCode with Vim extensions, I think I want to make the switch. But... at the LSP part, and it looks like there have been a lot of breaking changes. Looks like I'm going to have to actually read and work my way through the docs... 😠

  • @FreddyRangel85
    @FreddyRangel85 Год назад

    Dude this was awesome for me as a Vim user for 10 years. I've been meaning to cleanup my Vim setup for such a long time but honestly ... I've forgot what half the things in the Vim setup ACTUALLY do. I'm removing a bunch of stuff and either replacing it with some of the simple remaps here or getting rid of it altogether. Also getting rid of CoC and putting LSP Zero in. I had such a headache with all the configuring I needed to do with that. Thanks for the vid!

  • @bob80808
    @bob80808 Год назад +1

    This video is just the best! I must have watched it like 5 times in the last six months...
    I have to watch it at x0.5 speed tho 🤣 great job as always!!

  • @СергейЛюбимов-у3ф
    @СергейЛюбимов-у3ф 2 года назад +9

    Yet another great video! Could you also add setting up debugger in Nvim, working with virtualenvs and terminals (I use toggleterm and it's great)

  • @EthanBradley1231
    @EthanBradley1231 Год назад +6

    At 10:15, if you have never installed treesitter before then the "use" line in the video won't work. You need the following to install treesitter (then source the lua file and run PackerSync), and then you can change it to be the "use" line that Prime gave.
    use {
    'nvim-treesitter/nvim-treesitter',
    run = function()
    local ts_update = require('nvim-treesitter.install').update({ with_sync = true })
    ts_update()
    end,
    }

  • @NullPointerExpert
    @NullPointerExpert Год назад +5

    I was trying to figure out `h`, `t`, `n` and `s` by looking at a QWERTY keymap, and it made no sense. Then I realized - ThePrimeagen uses dvorak! (hint - those are home row on the right hand on dvorak)...

  • @henriquefugaduran219
    @henriquefugaduran219 Год назад

    Excelent video, makes it very clear and fast. That leaves no time for you to think about if you're doing really the right thing configuring this damn thing and in the and, when you less expect, you have a nvim configured. Congrats my boy

  • @MurtagBY
    @MurtagBY Год назад +1

    Keep the energy bro. Thanks for your content, amazed how you keep positive vibe over so long and intense sessions - I get into more reflexive state really fast

  • @splo2766
    @splo2766 2 года назад +4

    I get into nvim recently, I am so happy about your video and I like your energy.
    Do you have any thoughts of starting with lunarvim project default as nvim config? I found it less scary / more practical rather than learning to do a config from scratch.

    • @ThePrimeagen
      @ThePrimeagen  2 года назад +3

      i don't love lunar vim, but its also really good place to start if you don't know about vim :)

  • @emeraldwhovian5213
    @emeraldwhovian5213 2 года назад +17

    Thanks for the content !
    An issue I had was setting the grep_string function. It didn't work, after checking :checkhealth, I found out it's because you need ripgrep installed on your system

    • @j0a0m4
      @j0a0m4 2 года назад +1

      Thanks! That helped a lot

    • @MrAweosmeJr
      @MrAweosmeJr 2 года назад

      tysm

  • @smugtomato5972
    @smugtomato5972 2 года назад +7

    If anyone is wondering why grep_string isn't working, you need to have 'ripgrep' installed

  • @zehph
    @zehph Год назад

    Great tutorial! I started using vim again after watching your stuff, I cobbled together a config with vimscript which is what I knew, but this video I have converted my setup to this modularized setup with lua and copied some sections, but made it my own with some different bindings and other plugins. This was quite comprehensive and easy to follow despite the huge amount of information.

  • @priyanshukatuwal
    @priyanshukatuwal 2 месяца назад

    This was so overwhelming to me at first but now since I have a better understand, I pretty much understood everything he did here.

  • @adriankocis8986
    @adriankocis8986 2 года назад +12

    Hey Prime, you can drop the greatest remap ever (p), the functionality is built-in since Vim 8.2.4881 / NVIM v0.8.0 (g7978660e).
    Just paste with P in visual mode to not replace the unnamed register (see :help v_P).

  • @brainstormsurge154
    @brainstormsurge154 Год назад +5

    Unfortunately the LSP Setup at 18:06 is already out of date. This video is showing their 1.x version and as of now they are on 3.x and while they have a guide for the new version I was only able to fix the Mason stuff as I'm just a noob.

    • @chamalsena
      @chamalsena 2 месяца назад

      bro can you please share the dotfile

  • @gymdis
    @gymdis Год назад +8

    To those who got stuck at 1:10 with %-sign/percent-sign not working - you need to start with "vim ." to enter netrw mode from the command line, not "vim".

    • @martinalvarez5128
      @martinalvarez5128 10 месяцев назад +1

      Thank you, I was able to move on because of this comment!

    • @omathalye3074
      @omathalye3074 2 месяца назад +1

      Thanks a lot!

  • @berkackgoz7825
    @berkackgoz7825 Год назад

    I finally took the bullet with your vim playlist and started deep diving into it. I'll edit my progress in a month.
    Thanks a lot for your videos, please keep the humor coming.

    • @Paul-ys3eu
      @Paul-ys3eu 10 месяцев назад +1

      its been 2 months boi

    • @berkackgoz7825
      @berkackgoz7825 10 месяцев назад

      @@Paul-ys3eu I could just exit vim. Jokes aside, here's the progress:
      - I implemented most of the stuff in this video but since Prime uses Packer here, I adding them with lazy.nvim instead,
      - After having a basic plugin, I slowly started to replace my old IDE's (Jetbrains stuff) with Neovim to try the plugins out,
      - During this switching phase, I found stuff that I do not need in my config and vice versa, so I removed some stuff started diving deep into custom plugins and how they work,
      - I also adjusted some of the keymaps to my liking to make them feel more comfortable.
      At this point, I feel pretty damn comfortable sitting in Neovim and I definitely do not want to go back to IDEs. And the whole journey is just so damn fun.
      The only thing that bothers me right now is configuring C# in Neovim, the LSP is not that good and the debugging experience is just not there compared to Rider. I might write a custom plugin for my needs but currently I still use Rider for some of my day to day work.
      However, by diving into Neovim I learnt a lot of side things, like session management with tmux and automating my own environment. It feels like it made me a better developer than what I was 2 months ago.
      I'd say that I still have a lot to learn but the journey is definitely worth it.
      If anyone has doubts about Vim, just try it out for a week and if it sticks with you, have fun with it, if not, you always have your current comfort zone anyway.

    • @berkackgoz7825
      @berkackgoz7825 7 месяцев назад

      @@Paul-ys3eu Shit I kind of forgot LOL.
      It's been 6 months and right now I cannot use anything other than the terminal. I only open up IDE's for meetings, since people cannot follow when you do pair programming in vim.
      I'm still using the nvim config I learnt from here, just added a couple of plugins for my own taste.
      I'd absolutely recommend everyone watching this video to give it a try (learn touch typing too!) for at least a month. If it doesn't work, you can always go back to your IDE of choice, but if it does you will never approach your day to day life the same.
      To be honest learning vim did not make me 10x faster. BUT it allowed me to make terminal feel like home, which motivated me to go dive in Linux and Ansible and then automate the sh*t out of my local dev environment. I even wrote a basic nvim plugin.
      Right now I have an environment which is tailored for me, and I know exactly what I can and cannot do with it.
      Coding has truly become so much fun.

  • @This_Guy-
    @This_Guy- Год назад

    wow the way you customized vim is next level i followed your config as a templet and made it fully according to my preference . Thank you

  • @n0m-cg2xn
    @n0m-cg2xn 3 месяца назад +6

    I ended up deleting system32 and eating sardines

  •  Год назад +3

    If you think that you will do this in 30 minutes, think again sunshine... this video is blazingly fast

    • @d4rks1gm39
      @d4rks1gm39 Год назад +1

      Doesn't help being in Windows 😭