Vim as your editor - Advanced Motions P2

2024 ж. 15 Мам.
161 488 Рет қаралды

the full vertical goodness of vim along with some find and replace and a quick alternate use of vi*
IF YOU LIKE THIS, BETTER LIKE THE VIDEO BECAUSE I'LL TAKE THIS FAR IF THERE IS ENOUGH LIKES
Twitch
Everything is built live on twitch
Twitch : bit.ly/3xhFO3E
Discord: discord.gg/ThePrimeagen
Spotify DevHour: open.spotify.com/show/4MLaDrQ...
Editor
All my videos are edited by Flip. Give him a follow! / flipmediaprod He is also open to do more editing, so slide deeeeeeeeep into his dms.
Links
Linode: linode.com/prime
/ discord
Twitch: / theprimeagen
Insta: / theprimeagen
Twitter: / theprimeagen
VimRC & i3: github.com/ThePrimeagen/.dotf...
Keyboard 15% off bit.ly/Prime360 USE CODE PRIME360
Sections
0:00 Introduction
0:51 Two Quick Things
1:37 Deleting
2:53 Bonus, just for you
3:21 Yank Paste Dance
4:02 Why not Easy Motion?
4:50 Visual Mode Selecting Tricks
5:54 BLAZINGLY FAST Search & Replace
9:56 { and } -- A note
10:47 My Overall Motion Goal
11:20 PLEASE JUST LIKE THE VIDEO
11:43 SUPER SPECIAL, shhh don't tell plebs
12:40 ACKSHUAL OUTRO
#vim #programming #softwareengineering

Пікірлер
  • Chief Edging Officer here. Real talk. Thank you so much for all the amazing support. I cannot thank you all enough. TRULY. You know everything I do is live on twitch? Where you can see me scream at you... BLAZINGLY FAST.

    @ThePrimeagen@ThePrimeagen Жыл бұрын
    • Thank you!

      @noomondai@noomondai Жыл бұрын
    • sus 🧐

      @nick_esqueda@nick_esqueda Жыл бұрын
  • Thnx CEO of multi billion dollar startup.

    @chamber3593@chamber3593 Жыл бұрын
    • what do you mean ?

      @lastaccount500@lastaccount500 Жыл бұрын
    • Really cool

      @NostraDavid2@NostraDavid2 Жыл бұрын
  • Love this series. Please keep em coming! Blazingly Fast. Love the laterally inverted plaque lol.

    @powerslave12r@powerslave12r Жыл бұрын
    • WE ARE TRYING

      @ThePrimeagen@ThePrimeagen Жыл бұрын
    • @@ThePrimeagen I shall send some coconut oil if it helps.

      @powerslave12r@powerslave12r Жыл бұрын
  • the only person whose videos single handedly inspired me to dive deep into vim, learn some of the unusual stuff and gradually get good with it, congratulations to you prime for the 100K and also for these BLAZINGLY FAST contributions to the vim neighborhood. Keep the coconut oily movements coming!

    @amlanjyotilahkar1451@amlanjyotilahkar1451 Жыл бұрын
  • Love the o tip for moving the cursor in visual mode. Another nice one to have is gv to reselect previous visual area

    @gideon1884@gideon1884 Жыл бұрын
    • I was going to mention the “gv” Normal-mode command too. It’s very convenient after you made a mistake with Visual mode, such as selecting one line too few or too many as ThePrimagen did at 9:00.

      @kleanse@kleanse Жыл бұрын
  • You can gp instead of just p to move the cursor to the end of the paste (rather than having to manually navigate). Works with P too, using gP

    @nodidog@nodidog Жыл бұрын
  • This is actually insane. I've been with you since 9k subscribers and it's amazing seeing how much you've improved! KEEP KILLING IT PRIMEAGEN!

    @singularisart2491@singularisart2491 Жыл бұрын
  • Always watching until the end of your videos... there are just way too many priceless scenes that cannot be missed. And the purposed content is amazing as always. Great job, man. Also, congrats on the 100k and the plate. Deserved it!

    @relax4o@relax4o Жыл бұрын
  • You ALWAYS have something new to show about vim, I am very impressed... every time I see you, I have got something amazing and blazingly to learn!

    @alfredoortega4933@alfredoortega4933 Жыл бұрын
  • What I love about your vids is that they aren't pretentious "10 vim commands you don't know", but show so many cool tricks I've not used before. Almost every other video out there is the same 10 commands, probably all sourcing the same medium article on "obscure" vim commands.

    @calder-ty@calder-ty Жыл бұрын
  • So glad you're doing this series. Your video on 'g' was the first of yours I watched and was blown away how f***ing entertaining you were. Not sure this would be vim-specific but it'd fit nicely in this series... a Regex series for things like the fighting kirby and any other oddities that go beyond the basic blob operator

    @brick4667@brick4667 Жыл бұрын
    • have a link handy?

      @loeschg@loeschg Жыл бұрын
  • This series is what I have always dreamed of. Thank you for doing this. The fighting one eyed Kirby is a game changer

    @jamesgourley2239@jamesgourley2239 Жыл бұрын
  • I cant believe people actually work like this, this is incredible. I'm taking the leap of faith into believing this is worth ti

    @sergmont@sergmont4 ай бұрын
  • I finally started to using vim because of this series, this video is the first one that I have to "study" because IMO is the high level stuff, Keep the good work!!!

    @ernesto906@ernesto906 Жыл бұрын
  • Best vim course by far, you really dove right into it. Also everything is so fast haha, need to rewind 10 times to see what you just pressed, but it's amazing seeing firsthand just how fast a true Vim user can code. I'll keep practicing and hopefully will reach that level as well soon.

    @itshassanaziz@itshassanaziz Жыл бұрын
  • Bruh, your Vim videos are so mind blowing, looking forward to coming back and actually understanding half of what you did in this video lol

    @juanmacias5922@juanmacias5922 Жыл бұрын
  • @ThePrimeagen best thing i did to my config was making w => e while in operating and visual mode. If you think about it, you almost always want to use w (include space) while navigating, but use e (exclude space) while performing an operation. So this mapping just combines the two with almost no drawbacks

    @tandlose@tandlose Жыл бұрын
  • loving these motions which go into a pair of parens / quotes and do stuff inside them.

    @yashashwinkarthikeyan1701@yashashwinkarthikeyan1701 Жыл бұрын
  • Thanks! This series is pure gold. Keep it up, please!!

    @rodelias9378@rodelias9378 Жыл бұрын
  • Felt compelled to comment again after watching all the way through. Please make more of these videos! 🙏 This one was hella useful. I already have the muscle memory for the individual steps you showed in this vid, but just hadn't quite figured out how to string them together to assassinate the repetitive little manipulations we do all the time (like your example of setting the elements of that `data` array).

    @evadeflow@evadeflow Жыл бұрын
    • It feels so awesome when you get to it all together

      @ThePrimeagen@ThePrimeagen Жыл бұрын
  • You are the only KZheadr where I need to turn the playback speed down to 0.75x. I watch most tutorials at 1.5x. Blazingly fast was an understatement, dude. Anti-clickbait, that's what it is. Next time I expect a more honest title such as: "Absurdly hypersonic, scratch that, faster than light-speed Vim" I loved every second (which in my case was 25% longer) of this tutorial. Been using Vim for about 1.5 years and some of the tips in this video still managed to blow my mind! Thanks Prime, solid as ever!

    @ThePhiliposophy@ThePhiliposophy Жыл бұрын
    • Yayayayaya

      @ThePrimeagen@ThePrimeagen Жыл бұрын
  • I have always used the vertical select mode to g+control+a, loved to learn that just selecting it with line visual is enough, so much easier! And the "o" to go back and forth in visual mode, also didn't know that! I guess it can be used with the extra tip and the end, if you are in the middle of a humongous json thing, you can do a vi[ and then "o" to go to the top as well.

    @lucastperez@lucastperez Жыл бұрын
  • It's like watching a Sorcerer revealing his secret spells. Thank you very much, that's awesome!

    @YannMetalhead@YannMetalhead Жыл бұрын
  • I just found you and I feel soooo goo bc I already knew every single trick showed heere, I feel so proud of me 💌you are such an inspiration, keep goiing!!

    @ustongs@ustongs Жыл бұрын
  • I watched this whole video in 0.25 speed and still had to go back a few times. Loved it. You just earned another subscriber. Time to check out your other videos.

    @kristofferkristensen9142@kristofferkristensen9142 Жыл бұрын
  • the rule of watching ThePrimeagen video, you like first, then pressing the play button

    @albertgao7256@albertgao7256 Жыл бұрын
    • Good rule

      @ThePrimeagen@ThePrimeagen Жыл бұрын
  • thanks so much brother ..you are my inspiration ..started using it since 1 week ..just loving it ! ....thanks again from INDIA ..this vim skill is MUST NEEDED !

    @subbunittala2012@subbunittala2012 Жыл бұрын
  • This series is awesome. Learning new vim tricks every episode!

    @joshuaward4725@joshuaward4725 Жыл бұрын
    • :)

      @ThePrimeagen@ThePrimeagen Жыл бұрын
  • I've learned more new things about vim in the last 10 minutes than I have in months. You're a beast primagen lol. Please keep this series going!

    @dannelalbert7111@dannelalbert7111 Жыл бұрын
    • you are welcome ^^

      @ThePrimeagen@ThePrimeagen Жыл бұрын
  • I learned alot of great tips here, and I've been using vim for a decade. Thanks

    @w0ntfix@w0ntfix Жыл бұрын
  • Thank you for all videos about Vim Movements! I walked to the end!

    @th3mon@th3mon9 ай бұрын
  • Damn your vim skills are in god mode! Going to take away the % sign tip and work it. Thanks for all your vids, I still go back to the original 1-6 series to refresh skills 👍🏼

    @Wandering_Horse@Wandering_Horse Жыл бұрын
  • I love your videos .... Now I have switched 50% of my workflows to nvim and can use it to get things done. Thanks to your video it's not that scary anymore :D

    @avimehenwal@avimehenwal Жыл бұрын
  • Glad I watched till the end, but happier that caught a glimpse of the elusive plowghini.

    @frederickmichaud6783@frederickmichaud6783 Жыл бұрын
  • I may have converted years ago at this point, but I always learn something useful from these!

    @scottiedoesno@scottiedoesno Жыл бұрын
  • Thanks! I did not yet know about that combination of the g key with that Ctrl a and x increment and decrement. However, I tried something really interesting too, might be worth sharing. And that is trying the 0x and 0b notations for hex and binary numbers, and it turns out that Vim recognizes that as well with this incrementing and decrementing. Very cool!

    @jongeduard@jongeduard11 ай бұрын
  • Thanks a lot for this video. I

    @claudiafischering901@claudiafischering901 Жыл бұрын
  • 8:40 Prime, I am really interesting in seeing a video about the vim sed commands! I have recently started using find and replace a lot in vim, especially where I used to do macros.

    @YashGupta-dr5re@YashGupta-dr5re Жыл бұрын
    • Yeah me too

      @BigToinE976@BigToinE976 Жыл бұрын
  • I’m on team built-in vim motions for the exact stated reason that they will likely work in whatever vim ide plugin you’re already using. Excellent advice!

    @kevinwood5048@kevinwood50487 ай бұрын
  • Holy shit this video was mind blowing thank you!! Looking forward for more vim videos!!

    @Rudia1408@Rudia1408 Жыл бұрын
  • Thanks for the great videos! I always enjoy discovering the intersection my vim workflows with those of other folks. I was a little surprised the you don't introduce `yap` and `dip` using the mnemonics for `a` and `i` that I think I remember learn them under: "delete AROUND para" and "delete INNER/INSIDE para". I always found the "around" and "inside" mnemonics useful, but I honestly can't remember at this point where I learned them.

    @SamClegg@SamClegg10 ай бұрын
  • I didn't even KNOW about p for paragraph and a in visual mode for "around". Nice to keep on learning movement! Finally in my "advanced" phase, I miss seeing new content, like this!

    @jaopredoramires@jaopredoramires Жыл бұрын
  • Really appreciate your content, vim stuff especially, thanks!

    @evadeflow@evadeflow Жыл бұрын
  • Love your content and passion for sharing.

    @chamber3593@chamber3593 Жыл бұрын
  • Damn, I like the g thing. Also, to go to the beginning or end of a function I usually go with [{ or ]}.

    @nikensss@nikensss Жыл бұрын
  • Suggestion for Your bonus tip At the end of the video: vi{ can be replaced by ]}, which will bring you to the end of a “scope”. I think you can repeat by using ; which will navigate to the end of the next (inner) scope

    @andyw732@andyw732 Жыл бұрын
  • seat-belt sign is the beautiful motion

    @thecastiel69@thecastiel69 Жыл бұрын
  • I am SO glad I stayed for the end of this video

    @kylenelson5552@kylenelson5552 Жыл бұрын
  • This series taught me everything. Thanks

    @wizardofounce129@wizardofounce129 Жыл бұрын
  • Thank you, Mr. ThePrimeagen! I wish I had time to watch your streams!

    @petrpechkurov3095@petrpechkurov3095 Жыл бұрын
  • The "vi{" gold nugget at the end also works when editing massive HTML/XML/etc. documents on which you have no idea where a tag begin/ends. You can use 'vit' or 'vat' (select inside tag, or select around tag -or whatever the 'a' means), and it's a good way to jump between opening/closing tags. Pressing 'o' (like in "oily, coconut-oily") helps moving to the start/end of the selection. As always, great video, Primeagen. I felt walking through the Valley of Shadow of Death every time I had to edit an array.

    @pavel_espinal@pavel_espinal Жыл бұрын
    • Even better gold nugget: ]} or [{

      @andyw732@andyw732 Жыл бұрын
    • @@andyw732 Ty. I need to try that. I believe I saw that somewhere before, but didn't work for me 🤔

      @pavel_espinal@pavel_espinal Жыл бұрын
  • Holy shit. This is one of most informative videos that are very entertaining on this entire site

    @tejeshreddy6252@tejeshreddy6252 Жыл бұрын
    • yayaya!

      @ThePrimeagen@ThePrimeagen Жыл бұрын
  • As for your last tip, one thing I end up using quite often is O to jump at the first or last line of a selection without leaving the visual mode.

    @Grouiiiiik@Grouiiiiik Жыл бұрын
  • that background makes gruvbox that much more #hawt prime...glad I stayed until the end!

    @n0kodoko143@n0kodoko143 Жыл бұрын
  • Glad I watched until the end. Loving the high-octane content! 😎👉🚀

    @benjaminschultz6501@benjaminschultz6501 Жыл бұрын
  • I can't believe I'm touching and even learning vim again after I hated it for a decade, just because of this channel

    @Dongdot123@Dongdot1234 ай бұрын
  • Killer video! More vim tricks please. I’m curious how do you go about project wide refactors such as find and replace function names and such.

    @wesbragagt@wesbragagt Жыл бұрын
  • Dang, I love this coconut oiled shiny, amazing, super series💥 Thanks a lot 💪

    @MaxPenderuk@MaxPenderuk4 ай бұрын
  • Love the videos! Been a long time coming the 100k subs :D Would love a little more depth on these motions though, it sometimes goes so quick that I have to rewind and pay a lot of attention to follow what is happening. Would also hugely appreciate a video on quickfix lists... I never use them but heard they are super useful but never was able to wrap my head around them.

    @jimmyjansen6221@jimmyjansen6221 Жыл бұрын
  • I am still learning so much by seeing Prime use vim 😍

    @earthling_parth@earthling_parth Жыл бұрын
  • This series really convinced me to start using Vim motions. Now I have Evil in my Emacs :)

    @TheBusttheboss@TheBusttheboss3 ай бұрын
  • Keep them coming! There is also " :.,.+{numer} norm " to apply a sequence of comands in normal mode from current line + {number}. For exemple, insert a semi-colon at the end of 3 lines: ":.,.+2 norm A; "

    @rickhackro@rickhackro Жыл бұрын
    • You can pre enter ..,..+{number} by pressing, in normal mode, {number} followed by :

      @rickhackro@rickhackro Жыл бұрын
  • Great video, I never use the v in combination with the i{ or a{ but that seems super useful! Also I don't use the p(aragraph) which also seems pretty handy so thanks a lot Prime!

    @joffreybluthe7906@joffreybluthe7906 Жыл бұрын
  • Absolute 🔥🔥as always

    @unTanana@unTanana Жыл бұрын
  • Glad I stayed till the end and got that nice trick!

    @lpanebr@lpanebr Жыл бұрын
  • This series could be in a playlist 😉

    @_baco@_baco Жыл бұрын
  • Love seeing that gruvbox back baby

    @ricardor8044@ricardor8044 Жыл бұрын
  • This one was meaty, gonna have to rewatch a few times to note everything lol (and now it's probably a good time to learn how to use Treesitter)

    @Taernsietr@Taernsietr Жыл бұрын
  • I love how you sprinkle :w everywhere

    @mischavandenburg@mischavandenburg Жыл бұрын
  • ufff such great efficiency, one can only hope.

    @ilChancito@ilChancito Жыл бұрын
  • I love this series

    @pixelbogpixxelbog2090@pixelbogpixxelbog2090 Жыл бұрын
  • I am also able to select a whole function using „vafV“. After watching the video I was playing around a little bit. Perhaps its a feature of treesitter? Also thanks for pointing out the function of the o key in visual mode! You improved my life.

    @TheUmzugskarton@TheUmzugskarton Жыл бұрын
  • Another banger! This one I'll have to rewatch a few times to get it because my vimming isn't quite at this level yet. I guess that's why I'm only Principal Janitor of TheStartup. 😅

    @denzilv@denzilv Жыл бұрын
    • Well... technically you are director of janitorial engineering...

      @ThePrimeagen@ThePrimeagen Жыл бұрын
    • @@ThePrimeagen I stand corrected, Mr. CEO. I will update my business cards and email signature appropriately. 👍

      @denzilv@denzilv Жыл бұрын
  • Vim god hath once again bestowed upon us new knowledge

    @sabirbarahi8299@sabirbarahi8299 Жыл бұрын
  • Prime making my workflow coconut oily smooth

    @blackfrog1534@blackfrog1534 Жыл бұрын
  • I recommend the "." command for the array asignments, at least if you use a single edit to do so: [uppercase I] [end] [esc]

    @SvenHecht@SvenHecht Жыл бұрын
  • I dropped my phone while watching this. Too much coco oil. Thanks sir, I am starting with vim and this is just needed. Would love one where you talk about what you think the “needed” plugins for a bare minimum vim setup are. Keep up the good work Maria.

    @lcarv20@lcarv20 Жыл бұрын
  • If you don't already know - 'verymagic' mode makes writing regular expressions easier (all keys have their special meaning by default besides alphanumerics and _), and it's negative 'verynomagic' is equally great for verbatim text

    @nodidog@nodidog Жыл бұрын
  • Me listening to Prime talking about VIM: "I like your funny words magic man"

    @iMagicGraalOnline@iMagicGraalOnline Жыл бұрын
  • just don't stop teaching, you're the best!

    @tearsinrain2049@tearsinrain2049 Жыл бұрын
    • who says i am teaching? :)

      @ThePrimeagen@ThePrimeagen Жыл бұрын
  • WOW ::::: Mind blown 🤯 I didnt know about the ctrl + a and about the substitute abilities in vim and you can use regex like selection in it I will gladly use these new information in my beautiful blazingly fast VSCode VIM 🔥

    @sck3570@sck3570 Жыл бұрын
    • OH NO!!!! s/\(\w.*\)/data[0] = "\1"; doest work in VSCode vim 😠

      @sck3570@sck3570 Жыл бұрын
  • Amazing content dude! I would love to hear your thoughts/strategy on macros?

    @oliverchalkley1187@oliverchalkley1187 Жыл бұрын
  • Is this the Dr. Disrespect of the IT world? Nice content!

    @JakobWillert@JakobWillert Жыл бұрын
  • One thing I started using a whole ton is capital J - blazingly fast line joining and useful in a lot of cases.

    @feschber@feschber Жыл бұрын
  • Could you do a review of the Kinesis Advantage 360 ? Love Keyboards, vim and your content 😙

    @mon0t0n@mon0t0n Жыл бұрын
  • I'd love to see a look at the G command.. I remembered you doing a video on it before but I can't find it for whatever reason. That and search and replace stuff would be awesome!

    @cameronraw5906@cameronraw5906 Жыл бұрын
  • Wooohooo !! Thank you for this video!

    @laupetre@laupetre Жыл бұрын
  • 🤯 THIS IS AMAZING!

    @anmolpandita290@anmolpandita290 Жыл бұрын
  • you can also do "dib" to delete inside any kind of parens/braces which I find is easier than having to think about what kind of braces you're in or reach for "%"

    @ethanb4058@ethanb4058 Жыл бұрын
    • Oh man I've slept on the "ib" motion and the like, good call

      @kjeksomanen@kjeksomanen9 ай бұрын
  • Just an update, you can also use f with around or inner to select a function, as well as "a" for arguments (if you use treesitter). So for example, to delete a function you just do "daf" or "delete around function". To change the argument your cursor is over you do "caa" or "change around argument".

    @nullptr.@nullptr.2 ай бұрын
  • Love the VIM content

    @Souhail.@Souhail. Жыл бұрын
  • 5:20 Instead of doing va}Vd you can also do dVa} dV is line-wise delete. The advantage to doing dV instead of V...d is that you can repeat it in any pair of curly braces. Repeating V...d just uses the static visual selection, i.e. the same number of lines all the time.

    @Mawkler@Mawkler Жыл бұрын
    • much smart! i didn't realize you could chain it like that!

      @ThePrimeagen@ThePrimeagen Жыл бұрын
  • For pasting and then indenting, you could do >p instead of p>ip

    @alib5503@alib5503 Жыл бұрын
  • Love your office 🎉 😊

    @mohammedalbatati5529@mohammedalbatati5529 Жыл бұрын
  • Great video! I was surprised that you could do ci", di", etc just when you are on the line. For some reason I thought I need to literally be INSIDE the " That's a deal breaker :)

    @VolodymyrMasliy@VolodymyrMasliy Жыл бұрын
    • yes, this is the mind blowing speeds of vim :)

      @ThePrimeagen@ThePrimeagen Жыл бұрын
  • I was watching vim videos, but what kind of amazing keyboard is that lmao

    @vallabhtiwari@vallabhtiwari Жыл бұрын
  • I'm just glad you returned to gruvbox.

    @user-he4ef9br7z@user-he4ef9br7z Жыл бұрын
  • Really enjoying your Neovim series! You'll love vim-matchup if you like %.

    @raindev_@raindev_ Жыл бұрын
  • Love these vids !

    @alexwexov4298@alexwexov4298 Жыл бұрын
  • Wow! I’m glad I stayed until the end!

    @payton6_@payton6_ Жыл бұрын
KZhead