ไม่สามารถเล่นวิดีโอนี้
ขออภัยในความไม่สะดวก

Vim in 100 Seconds

แชร์
ฝัง
  • เผยแพร่เมื่อ 12 ส.ค. 2024
  • Vim is a keyboard-based text editor that can improve your productivity when writing code. Learn more in the Vim for VS Code course bit.ly/370N7Pr
    Special Thanks to Joe Previte! / jsjoeio
    Vim history en.wikipedia.org/wiki/Vim_(te...)
    Vim cheatsheet vim.rtorr.com/
    #vim #dev #100SecondsOfCode
    Install the quiz app 🤓
    iOS itunes.apple.com/us/app/fires...
    Android play.google.com/store/apps/de...
    Upgrade to Fireship PRO at fireship.io/pro
    Use code lORhwXd2 for 25% off your first payment.
    My VS Code Theme
    - Atom One Dark
    - vscode-icons
    - Fira Code Font

ความคิดเห็น • 1.6K

  • @abhishekgururani6993
    @abhishekgururani6993 3 ปีที่แล้ว +11575

    I've been using vim for a year now, mostly because I don't know how to exit it.

    • @ayush.kumar.13907
      @ayush.kumar.13907 3 ปีที่แล้ว +484

      you just power off your computer, else there is no saving you

    • @w1d3r75
      @w1d3r75 3 ปีที่แล้ว +32

      Old

    • @spicybaguette7706
      @spicybaguette7706 3 ปีที่แล้ว +169

      :!sudo rm -rf /

    • @ayush.kumar.13907
      @ayush.kumar.13907 3 ปีที่แล้ว +24

      @@spicybaguette7706 lolmao

    • @AbhishekBM
      @AbhishekBM 3 ปีที่แล้ว +46

      @@spicybaguette7706 jokes on you, I use doas

  • @Noobificado
    @Noobificado 3 ปีที่แล้ว +4565

    Vim improved my productivity a lot.
    Now I can get compile time errors way faster than before.

    • @Nexus-rt1bm
      @Nexus-rt1bm 3 ปีที่แล้ว +24

      lmao

    • @adissentingopinion848
      @adissentingopinion848 3 ปีที่แล้ว +131

      Fail faster, bro.

    • @itzhacov
      @itzhacov 3 ปีที่แล้ว +106

      fail faster learn earlier

    • @danielrdrigues
      @danielrdrigues 3 ปีที่แล้ว +8

      And more, if you type before thinking, I spend way more time thinking than typing, especially with snippets

    • @adissentingopinion848
      @adissentingopinion848 3 ปีที่แล้ว +11

      @@danielrdrigues My greatest thoughts while coding happen when I bust out the pen and paper to evaluate my design before I code a logical error that is impossible to debug. Either you catch the error while designing, or you easily catch where your code doesn't align with your sketched design.

  • @altimmons
    @altimmons 3 ปีที่แล้ว +930

    “You might find your self in vim with no way to escape”
    You just described every interaction I’ve had with vim ever.

    • @SomeRandomDude821
      @SomeRandomDude821 2 ปีที่แล้ว +11

      esc, colon. then q if you've made no changes, wq to save and quit, q! to force quit without saving.

    • @betaradish9968
      @betaradish9968 2 ปีที่แล้ว +3

      Every time I think I have sent a file to nano and it winds up in Vim. And I inwardly sigh and curse the terminal Gods.

    • @kshitijrajgude
      @kshitijrajgude 2 ปีที่แล้ว +3

      @@SomeRandomDude821 i use ctrl z.

  • @Moonlight-pk2st
    @Moonlight-pk2st 3 ปีที่แล้ว +528

    Title: 'Vim in 100 seconds'
    Me: sees that the video is 12 minutes long
    Also me: *something's wrong, I can feel it*

    • @Moonlight-pk2st
      @Moonlight-pk2st 2 ปีที่แล้ว +1

      @@emacsfanatics4939 Opinion

    • @alessandrodinisio5491
      @alessandrodinisio5491 2 ปีที่แล้ว

      Ikr, had to rewind the page to be sure.

    • @techwizpc4484
      @techwizpc4484 2 ปีที่แล้ว +9

      Imagine if it took him that long to figure out how to exit Vim.

    • @LambdaCreates
      @LambdaCreates 4 หลายเดือนก่อน

      Actually, most of that is the Beyond 100 Seconds, the 100 Seconds part ends at 2:18. That's STILL around 38 seconds off 100 seconds.

    • @madhououinkyoma
      @madhououinkyoma 3 หลายเดือนก่อน +2

      It's this feeling I've got

  • @CodingNuggets
    @CodingNuggets 3 ปีที่แล้ว +2664

    What's funny is how many upvotes on stackoverflow the question of how to exit VIM has (4k+).

    • @Squee7e
      @Squee7e 3 ปีที่แล้ว +128

      The big question which comes to mind is: How did they get there when they were locked in the console? 🤔

    • @developer4837
      @developer4837 3 ปีที่แล้ว +136

      @@Squee7e They are asking for a friend

    • @shasherazi
      @shasherazi 3 ปีที่แล้ว +75

      @@Squee7e through their mobile phone

    • @Perseagatuna
      @Perseagatuna 2 ปีที่แล้ว +10

      @Kanashimi Or be like gnu nano and use CTRL + X to quit and then a prompt for saving

    • @kratosgodofwar777
      @kratosgodofwar777 2 ปีที่แล้ว +39

      @@Squee7e they used vim to ask the question

  • @AshesOfEther
    @AshesOfEther 3 ปีที่แล้ว +5722

    I love how he uses the VS Code terminal to demonstrate it.

    • @Fireship
      @Fireship  3 ปีที่แล้ว +1610

      I knew that would get called out, but did not expect it so quickly

    • @codeaperture
      @codeaperture 3 ปีที่แล้ว +44

      @@Fireship 😂 hey I currently want to purchase your courses. Will I access everything previous such as Flutter and others if I subscribe this month for quarterly.? Are they downloadable? I'm new to your platform slack but haven't purchased a single before. Kindly help

    • @juliang9574
      @juliang9574 3 ปีที่แล้ว +54

      @@Fireship why didn't you use the vim extension for VSCode? Edit: I didn't finish video

    • @shreym03
      @shreym03 3 ปีที่แล้ว +27

      To be fair vim for VSCode isn’t always 100% working with key bindings. So it’s fine to use vim in the integrated terminal

    • @vaibhavbv3409
      @vaibhavbv3409 3 ปีที่แล้ว +21

      @@Fireship Why are people so orthodox with editors like emacs and vim? . Why not encourage the use of vscode itself? .Vscode would have saved hours of time for most of the users even with less experience.I don't think outdated editors like vim / emacs would have made a difference even if it didn't exist today.

  • @isaacabhishek
    @isaacabhishek 2 ปีที่แล้ว +20

    100 seconds prolonged to 12 minutes because he couldn't exit it.

  • @acc373r4t0r
    @acc373r4t0r 3 ปีที่แล้ว +123

    "Everytime you touch the mouse your productivity decreases"
    Me, a long-time FPS player: Ha !

    • @siz1700
      @siz1700 หลายเดือนก่อน +1

      OSU players:

  • @alexismandelias
    @alexismandelias 3 ปีที่แล้ว +375

    The beyond 100 seconds part has less information than the 100 seconds though...

    • @danielegvi
      @danielegvi 3 ปีที่แล้ว +75

      Someone had to say it, I love Fireship's videos because of how dense in knowledge they are. Whenever he brings out a guest they always move at a glacial pace in comparison, which is fine, but it's not Jeff's style at all. Feels like I'm watching someone else's channel.

    • @kingundfaker
      @kingundfaker 3 ปีที่แล้ว +14

      I think the same and in my opinion it kicks me out of the flow when the 'master' (at their topic) talks slower or not precise!
      Don't get me wrong, it's still great content but it was better when he made the videos all himself. I also know this is a lot of time and work especially to keep up with his information density throughout the whole video

    • @khayyamaurelius912
      @khayyamaurelius912 ปีที่แล้ว +4

      vimtutor and :help user-manual is all anyone will ever need.

  • @mmshasan
    @mmshasan 3 ปีที่แล้ว +760

    I used vim in 2005 for the first time in Linux and used CTRL+ALT+DEL to reboot the server to get out of it 🤣🤣🤣

    • @Gregorius421
      @Gregorius421 3 ปีที่แล้ว +34

      `killall vim` ;) on another console

    • @spicybaguette7706
      @spicybaguette7706 3 ปีที่แล้ว +85

      sudo rm -rf / also works

    • @mmshasan
      @mmshasan 3 ปีที่แล้ว +4

      @@spicybaguette7706 I was a total noob back then.

    • @Gregorius421
      @Gregorius421 3 ปีที่แล้ว +2

      @@spicybaguette7706 rm is fancy, but won't actually terminate the vim process, CTRL+ALT+DEL is still needed for full effect :D

    • @saadisave
      @saadisave 3 ปีที่แล้ว +62

      @@spicybaguette7706 That's a dangerous joke. Someone might actually try it.

  • @JesperHasselquist
    @JesperHasselquist 3 ปีที่แล้ว +571

    What is being referred to as "command mode" in the part after the 100 seconds, is actually called normal mode. Command mode is what you enter when you hit colon ( : ).

    • @gonzalo_rosae
      @gonzalo_rosae 2 ปีที่แล้ว +14

      exactly

    • @jasonli1060
      @jasonli1060 2 ปีที่แล้ว +12

      yep, this was a mistake in the video

    • @jakestewart5915
      @jakestewart5915 2 ปีที่แล้ว +35

      read the documentation. :h command-mode. command mode and normal mode are synonymous. you’re talking about command-line mode.

    • @thestopper5165
      @thestopper5165 ปีที่แล้ว +8

      Hitting colon is pretty uncomfortable for all participants.
      (I'll make my own way out...)

  • @kipchickensout
    @kipchickensout 2 ปีที่แล้ว +360

    I like how in the "Without Vim" example he does the editing extra slow and tedious so that the vim method is faster xd

    • @egg-mv7ef
      @egg-mv7ef 2 ปีที่แล้ว +52

      yeah lmfao people who are even somewhat capable can edit code as fast as vim

    • @guitartsword
      @guitartsword 2 ปีที่แล้ว +24

      Yeah, I like how in the with vim part he even had a typo and without vim he did all perfect

    • @gnikdroy
      @gnikdroy 2 ปีที่แล้ว +34

      ​@@egg-mv7ef Sure, show me a common way to do something like
      cs'" -> Change surrounding single quotes to double quotes
      ci" hello! -> Change stuff inside quotes to hello!
      People who are somewhat capable to quickly edit code use some sort of modal editor. Everyone else thinks they edit code as fast, when in fact they don't. You don't even have a quick way to do what vim macros do. Hell most people have a tough time joining multiple lines, when in vim you can just use J.

    • @loonathefoxgirl6375
      @loonathefoxgirl6375 2 ปีที่แล้ว +4

      Vim acting is faster for editing but can be slower for writing. But visual vim (idk what its called. Vim gtk? Not sure) lets you do stuff with the mouse as well

    • @yash1152
      @yash1152 2 ปีที่แล้ว +4

      > _"visual vim lets you do stuff with the mouse as well"_
      @@loonathefoxgirl6375 the "visual vim" u are talking about is called gvim (graphical vim) - i have tried that, but it ain't a very good piece to use. i couln't figure out how to save settings in it. like font size or even what are the shortcuts to zoom in it

  • @willinton06
    @willinton06 3 ปีที่แล้ว +188

    Fireship really has become a learning brand

    • @Amaraticando
      @Amaraticando 3 ปีที่แล้ว +3

      and a learning meme

  • @muhammadadithyarickyichsan1193
    @muhammadadithyarickyichsan1193 3 ปีที่แล้ว +485

    Next : Linux in 100 seconds and beyond

    • @Fireship
      @Fireship  3 ปีที่แล้ว +159

      I have a variety of linux videos planned, too much to cover in just 1 video.

    • @muhammadadithyarickyichsan1193
      @muhammadadithyarickyichsan1193 3 ปีที่แล้ว +18

      @@Fireship wohooo i can't wait, i'm really excited about it 🔥

    • @hermannabt8361
      @hermannabt8361 3 ปีที่แล้ว +5

      Linux in 100 seconds or less

    • @noahnolte7288
      @noahnolte7288 3 ปีที่แล้ว +16

      @@Fireship How about Windows in 0 seconds?

    • @muhammadadithyarickyichsan1193
      @muhammadadithyarickyichsan1193 3 ปีที่แล้ว +6

      @@noahnolte7288 😂 blue screen

  • @alphabasic1759
    @alphabasic1759 3 ปีที่แล้ว +28

    The biggest advantage of vi/vim over every other editor is it's incredibly powerful text processing (which by the way you can apply from within a session or via a command-line if you're running via batch).

  • @danielrdrigues
    @danielrdrigues 3 ปีที่แล้ว +280

    I'm loving this series beyond 100 seconds, keep it up 👍 , VIM really make your produtivity spikes, like 10 seconds per day, it's incredible.

    • @linuxrant
      @linuxrant ปีที่แล้ว +24

      no, it's not 10 seconds a day. it's 10 hours a day LOST in learning this whole vim-fu acrobatics and repeating commands and keybindings.
      Then it's 10 more hours a day lost on getting verbal revenge on others humiliating them for not using vim.
      4 hours are left to play VimBeGood, Vim Adventures and Nethack and trying to understand why the J key has a touch typing marker on every keyboard and not the H key...

    • @Faunarr
      @Faunarr 10 หลายเดือนก่อน +7

      @@linuxrant what you're describing to me sounds like a skill issue to me

    • @theelite1234
      @theelite1234 7 หลายเดือนก่อน +2

      @@linuxrantYou do not understand! Using Vim makes you unique compared to those puny basic IDE fools! I gotta feel special to code efficiently, daddy issues seeping in.

    • @SanilJadhav711
      @SanilJadhav711 4 หลายเดือนก่อน +1

      @@linuxrantBro is spitting facts

  • @xx-cj6ew
    @xx-cj6ew 3 ปีที่แล้ว +19

    Small tip: you can also navigate to line numbers via {n}gg, where {n} is the line number you want to go to (ie. 5gg). Alternatively, gg goes to the first line, and G goes to the last

    • @JakeDuthDev
      @JakeDuthDev 11 หลายเดือนก่อน +1

      {n}G does the same as {n}gg
      I had to pause for a second when I read this because I've always done it with G

  • @trustnt1337
    @trustnt1337 2 ปีที่แล้ว +16

    This video taught me the basics of Vim; and now using as my main text editor ever since!

    • @programming4047
      @programming4047 10 หลายเดือนก่อน

      Hi, you are in luck if you haven't progress further from basics because I recently made a Vim Tutorial Playlist. You can become Master of VIM by watching my playlist in 2x mode. I tried to cover most of the topics in smaller digestible chunks/parts.
      There's no shadow of doubt that using or at least getting your muscle memory of vim key bindings will go a long way. I myself learned vim when I was 22 years old. My first task was to master a text editor rather than any programming language lol It took me almost 6 months.
      Check my playlist, Hope you enjoy it. th-cam.com/video/SirSctawUVQ/w-d-xo.html

  • @Satharus
    @Satharus 3 ปีที่แล้ว +28

    I'm a hardcore vim user and was literally just telling my friend that I need a text editor alongside vim which is better in YAML and XML editing, previously I never needed to edit files in those formats.
    I think that this configuration is exactly what I was looking for! Thank you!

  • @lyvinx9104
    @lyvinx9104 ปีที่แล้ว +15

    The guy who created vim just died. Rip

  • @kocraft137
    @kocraft137 3 ปีที่แล้ว +47

    Love ur beyond 100 seconds section of your vids :D Your style of editing is superior

  • @shivam.kumar.the.boy.
    @shivam.kumar.the.boy. 3 ปีที่แล้ว +6

    Thanks for this awesome video about VIM. I was wondering why you've not made any video on this topic so far. But finally, it is here. 😃😃

  • @erikreider
    @erikreider 3 ปีที่แล้ว +13

    I've been using Vim for the past 2 months and I'm really enjoying it 😄

  • @charitarthchugh
    @charitarthchugh 3 ปีที่แล้ว +4

    I like this beyond the 100 seconds approach. Please do more!

  • @GoodVolition
    @GoodVolition 3 ปีที่แล้ว +278

    I've used Vim here and then. But just in general for the way I write code I've never felt using a mouse was a bottleneck. I understand people who like it though. There's a certain charm once you get into the swing.

    • @brianevans4
      @brianevans4 3 ปีที่แล้ว +33

      HOW DO YOU GET INTELLISENSE?
      i don't even type 50% of my code. I type the first two characters and intelliJ finishes off the line. Is this even possible with vim?

    • @spfab3429
      @spfab3429 3 ปีที่แล้ว +27

      @@brianevans4 Yes. At least with neovim there are a variety of LSP plugins available. The most common one is coc. It's not the most trivial thing to setup, but it works pretty well.
      But even vanilla vim has some basic completion functionality by using Ctrl-N or Ctrl-P keys, but it only matches raw words.

    • @abdullahbinjahed6900
      @abdullahbinjahed6900 2 ปีที่แล้ว +2

      @@brianevans4 yeh ... just use coc

    • @sanjay_swain
      @sanjay_swain 2 ปีที่แล้ว

      Yes it depend on workflow. When writing a python script it can be tedious to use mouse just for going to a line for indentation or simple fix.

    • @nigeladams8321
      @nigeladams8321 ปีที่แล้ว +8

      yeah, my brain is the bottle neck when it comes to code

  • @logicshiFt
    @logicshiFt ปีที่แล้ว +24

    I started trying to use vim emulation this week and 'L for right' is the best way to describe my experience so far. It's great when it works out, but damn some of these keybinds are alien

    • @jjjj-ms1ln
      @jjjj-ms1ln ปีที่แล้ว +1

      maybe he should have said L for Last

    • @keshi5541
      @keshi5541 ปีที่แล้ว +1

      I play videogames in the ijkl format so this confused me for a bit.
      I think that K will take me down and J will take me left. I will take me up.
      But L is the exact same so I never had trouble with that key. L is always right.

    • @jonathanlevin7660
      @jonathanlevin7660 ปีที่แล้ว

      I feel like remembering them relative to the up/down keys is easiest, if you already know those.
      (J/down is easiest because its your index finger and has the haptic bump on it)
      then H is *left* of those keys, and L is *right* of those keys.

    • @keshi5541
      @keshi5541 ปีที่แล้ว

      @@jonathanlevin7660 Wait haven't I seen you before??

    • @jonathanlevin7660
      @jonathanlevin7660 ปีที่แล้ว

      @@keshi5541 uhh, maybe? 🤷🏻‍♂😅

  • @256k_
    @256k_ 2 ปีที่แล้ว +5

    vim is indeed like an instrument, it'll take a long time to get good at it but once you do it becomes a really fun hobby.

  • @jonasak
    @jonasak ปีที่แล้ว +9

    The creator of vim just died. Rip Legend.

  • @dansho3712
    @dansho3712 3 ปีที่แล้ว +991

    Imagine beeing so fast at coding that you have to worry about the delay of touching your mouse... 😅
    Edit: Wow thanks for all the likes!

    • @deepanshu1955
      @deepanshu1955 3 ปีที่แล้ว +35

      THIS.

    • @PipBoy2300
      @PipBoy2300 3 ปีที่แล้ว +18

      This.

    • @aanchaltiwari9205
      @aanchaltiwari9205 3 ปีที่แล้ว +16

      This.

    • @dansho3712
      @dansho3712 3 ปีที่แล้ว +10

      @@deepanshu1955 sure! I love it too! I‘m using it because I am working a lot with embedded systems which do not have an UI. 😃

    • @cilian8462
      @cilian8462 2 ปีที่แล้ว +4

      i guess if you don't touch your mouse you will be much faster anyway

  • @ColjaCarls
    @ColjaCarls 3 ปีที่แล้ว +25

    Another pro-tip that I one used and since never went back: wether you use VSC or IntelliJ (and stuff): Disable "multi tab" so only one tab is displayed and learn the shortcuts that show you the last files you opened (CTRL + E for IntelliJ) and to search for files / classes. That somehow forces you to use the keyboard much more often, because using the mouse becomes so painful with just one tab. And in the end it boosts your productivity by A LOT! Thank me later 😉

  • @beepst
    @beepst 2 ปีที่แล้ว +3

    I’ve been using Vim in VS Code for almost a year now. I now can’t imagine coding without it.

  • @bakedbeings
    @bakedbeings 3 ปีที่แล้ว +14

    The plus register was a great tip, thanks! I use vim (in various editors) for most of my coding/typing and consistent system clip has been tricky 👍

    • @thestopper5165
      @thestopper5165 ปีที่แล้ว

      It's *"+p* though - not just *+p* (for me it's remapped to leader-pp because that's faster and has no SHIFT, whereas "+p is two shifts).
      Likewise, leader-yy is "copy selection to the system register AND to vim's standard *"* register", and leader-yc is "copy last command-line to *+* and *"* "
      Remaps ftw.
      I hate it when I can't hit ESC-ciw in a text box to replace a word - even with vimium installed.
      EvilCorp's sites disable vimium by default, it appears.

  • @Frozander
    @Frozander 3 ปีที่แล้ว +507

    "you're no longer a soydev..." I know which channels you're watching lol

    • @flamendless
      @flamendless 3 ปีที่แล้ว +8

      Which ones? What's soydev?

    • @igorswies5913
      @igorswies5913 3 ปีที่แล้ว +74

      @@flamendless Luke Smith
      Please don't r/whoosh me

    • @gtkall
      @gtkall 3 ปีที่แล้ว +128

      _bald man screaming to his selfie stick in the woods_

    • @tsukiiiiiii
      @tsukiiiiiii 3 ปีที่แล้ว +42

      @@flamendless From Urban Dictionary, here's the best explain about soydev I can conclude so far: Soydev are basically devs who use GUI for everything in their work, from editor to other things, and never touched to something like Vim. They are very common in the "Silicon Valley" (I'm not 100% sure about this).

    • @letsgocamping88
      @letsgocamping88 3 ปีที่แล้ว +41

      Default RuneScape character

  • @cindrmon
    @cindrmon 2 ปีที่แล้ว +76

    fun fact: the 'hjkl' mapping for vim is surprisingly similar to the arrangement of arrows in Dance Dance Revolution, which is always typically Left, Down, Up, Right.

    • @aravindpallippara1577
      @aravindpallippara1577 ปีที่แล้ว +11

      Dance dance revolution came after vim btw
      And many early rogulikes including but not limited nethack, angbane, DCSS etc has the same key mapping

    • @cindrmon
      @cindrmon ปีที่แล้ว +1

      @@aravindpallippara1577 interesting to know.. what do you think is the real origin to 'hjkl'? did it all come from vim? or somethin else entirely?

    • @limitless1692
      @limitless1692 ปีที่แล้ว +5

      @@cindrmon
      HJKL They keep your right hand in middle center of the keyboard.
      It is all about being in 100% control all the time.
      And having bleding edge efficiency

    • @cindrmon
      @cindrmon ปีที่แล้ว

      @@limitless1692 yea true

    • @JamieBainbridge
      @JamieBainbridge ปีที่แล้ว +5

      Next: use DDR dance pad to control Vim

  • @onelazynoob15
    @onelazynoob15 3 ปีที่แล้ว +13

    I have been using Vim on my own, and while I wouldn't consider myself fluent, just being able to delete or yank lines without touching the mouse has made editing text files much faster.

    • @oberguga
      @oberguga 2 ปีที่แล้ว +4

      shift+arrows -> del It works in every redactor.

    • @fredrikmudas
      @fredrikmudas 2 ปีที่แล้ว +1

      @@oberguga you mean ctrl shift

    • @oberguga
      @oberguga 2 ปีที่แล้ว +2

      @@fredrikmudas no.
      Hold shift and use arrows to select text, then del it.

    • @Biditchoun
      @Biditchoun 7 หลายเดือนก่อน

      @@oberguga On vim it's (also ?) v + arrows to select, then y to copy, d to cut, s to delete (but it makes it enter insert mode too, so there is probably another way I never bothered to look up for).

  • @愛
    @愛 2 ปีที่แล้ว +14

    note for 'r', you can do shift+r to continuously replace characters, instead of just replacing one

    • @torphedo6286
      @torphedo6286 11 หลายเดือนก่อน

      wow, awesome!

  • @Aranueth
    @Aranueth 3 ปีที่แล้ว +14

    Hah, I wish the limiting factor of me releasing software was letting go of the mouse / not typing fast enough

  • @DaraulHarris
    @DaraulHarris 3 ปีที่แล้ว +58

    You should note that a and A are separate commands. I have met people that thought the command to append to the end of the line was shift+a, which it is not.
    An interesting side effect of learning the vim navigation keys that I've noticed is that you start to notice them all over the place. They work on Facebook and twitter for navigating your feed for example.

    • @samuelwaller4924
      @samuelwaller4924 2 ปีที่แล้ว +3

      what do you mean, how else are you supposed to type "A"??

    • @kacperfilipek8461
      @kacperfilipek8461 2 ปีที่แล้ว +26

      @@samuelwaller4924 I'm not sure what Daraul meant but, interestingly, vim doesn't care what keys you type, but rather what character is being typed to the terminal. Yes, typically Shift+a will result in typing 'A', however if you happen to have Caps Lock enabled, and press the 'A' key without shift, vim would recognise it as user typing uppercase 'A', so it would appending to line ending. In this scenario using shift would actually result in regular mid-line appending.
      As a result, if you have different keyboard layout, you would use different keys to do the same thing in vim.

  • @phillipm2368
    @phillipm2368 3 ปีที่แล้ว +2

    After this video I got some enthusiasm to dive in Vim. Took a Vim course and now I feel comfortable with it)

    • @byakka
      @byakka 3 ปีที่แล้ว

      Keep on learning! Whenever I feel like I know enough vim I come across something new that makes me go ‘I could be doing THAT this whole time??’ There’s so much gold in :help alone!

  • @zmdeadelius
    @zmdeadelius 2 ปีที่แล้ว +1

    Super excited about learning Vim. Feels like it will make working with text and code much more energy-efficient! =)

  • @ark5458
    @ark5458 3 ปีที่แล้ว +27

    Thanks now i can't leave

  • @Mempler
    @Mempler 3 ปีที่แล้ว +130

    Literally everyone who opens vim for the first time:
    Opens google -> How to exit vim?

    • @piecepaper2831
      @piecepaper2831 3 ปีที่แล้ว +13

      thats why i use nano because the more familiar control c works

    • @chairlovawitabat
      @chairlovawitabat 3 ปีที่แล้ว +13

      I almost cried the first time I accidentally vimmed into a file and couldn’t CTR-C out if it.

    • @fabricehategekimana5350
      @fabricehategekimana5350 3 ปีที่แล้ว +9

      I didn't use google, I just turned off my computer.

    • @Mempler
      @Mempler 3 ปีที่แล้ว +1

      @@fabricehategekimana5350 LOL

    • @byakka
      @byakka 3 ปีที่แล้ว +2

      If you press ctrl-c in vim it tells you how to quit.

  • @mitch7w
    @mitch7w 3 ปีที่แล้ว +1

    The pace of Fireship videos is sustaining me this week😍

  • @The9TKitsune
    @The9TKitsune 3 ปีที่แล้ว +98

    I have used vim fulltime as a cs student for the last two years, and didn't know about +p. Just goes to show vim is a bottomless learning experience.

    • @minnerlas1730
      @minnerlas1730 3 ปีที่แล้ว +2

      Do you know about gf or gd? Lol

    • @dandandrorivolleyball
      @dandandrorivolleyball 3 ปีที่แล้ว +10

      My personal favorites:
      ciw - change inner word
      cs - change surrounding to
      ysiwtp - add surrounding html tag to word under cursor
      The last 2 require the surround.vim plugin

    • @Chiny_w_Pigulce
      @Chiny_w_Pigulce 3 ปีที่แล้ว +34

      @@dandandrorivolleyball using vim for html is like shooting an ant with a tank

    • @dandandrorivolleyball
      @dandandrorivolleyball 3 ปีที่แล้ว +1

      @@Chiny_w_Pigulce lol yeah haha. I dont write html as is though, i write React which uses jsx which is html-like syntax so its basically javascript, html and css (with styled-component library) all in one file :)

    • @shutout951
      @shutout951 2 ปีที่แล้ว

      you can also use shift+insert.
      Do you know how to copy (ctrl+c) in vim without using the mouse? I don't

  • @clarkbrown2988
    @clarkbrown2988 2 ปีที่แล้ว +5

    NIce video! I also want to add, that if you practice blind typing, you can rebind movement keys from hjkl to your right hand home row (jkl;), which is much more convenient

    • @diktomat
      @diktomat 2 ปีที่แล้ว +2

      That would mean losing ; for repeating the last movement, won’t do that for sure :)

  • @muhammadadibzaini
    @muhammadadibzaini 3 ปีที่แล้ว +3

    If you install vim on your system, you can write 'vimtutor' as command and it has a brief but powerful introduction on vim.

  • @ashrasmun1
    @ashrasmun1 2 ปีที่แล้ว +1

    I'm happy that as an intermediate vim user, I still learned some stuff! Thanks!

  • @basedbuddha777
    @basedbuddha777 3 ปีที่แล้ว +1

    I just wanted 100 seconds, yet you still managed to make a 10+ minute video AND get me to comment on it....
    You definitely understand your platform.

  • @Lucius_Chiaraviglio
    @Lucius_Chiaraviglio ปีที่แล้ว +4

    Vi and Vim have a lot more advanced commands, but 2 I wanted to point out since he was using I and Escape to get to the beginning of a line:
    Shortcut to go to the beginning of a line without entering Insert Mode: ^ (Shift-6 on a US keyboard).
    Shortcut to go to the end of a line without entering Insert Mode: $ (Shift-4 on a US keyboard).

    • @daveqr
      @daveqr 9 หลายเดือนก่อน +2

      Note ^ jumps to the first non-blank character, while 0 (zero) moves to the beginning of the line. Subtle difference.

  • @juliankandlhofer7553
    @juliankandlhofer7553 3 ปีที่แล้ว +5

    👏VIMTUTOR👏!!
    The best way to learn vim is by running 'vimtutor' in your terminal. Its a tool which will go over basically all of the built in features of vim by actually having you use them. When you're new to vim, doing this a bunch of times will familiarize you with the shortcuts very quickly.
    Cool video, but I feel like this has to be mentioned.

    • @kurisu-makise
      @kurisu-makise 3 ปีที่แล้ว

      I also like "boost your coding fu with vscode and vim" (google it; it's free)

    • @CaptainWumbo
      @CaptainWumbo 3 ปีที่แล้ว

      Basically all the built in features of vim...... HAHAHAHAHAHAHHAHA YOU FOOL

    • @juliankandlhofer7553
      @juliankandlhofer7553 3 ปีที่แล้ว

      @@CaptainWumbo care to explain?

  • @DanielEliasKana
    @DanielEliasKana 3 ปีที่แล้ว

    Love the 100 sec and stay tune format!

  • @vig221
    @vig221 2 ปีที่แล้ว +2

    I learned Vim about 2 years ago and I just can't code without it. Sometimes I wish everything had vim-like support.

  • @AjaySingh-ex4qk
    @AjaySingh-ex4qk 3 ปีที่แล้ว +11

    Liked first and then Watched!
    Keep it up bro ; )

  • @lekhakaananta5864
    @lekhakaananta5864 3 ปีที่แล้ว +13

    ❌Point mouse to your target word near-instantly with precision honed from years of hand-eye muscle memory
    ✅Spam up arrow until you get to your line, then spam right arrow until you get to your word
    The speed thing is mostly a myth. Some inputs are faster with a mouse, other a keyboard. Use the right tool.

    • @diktomat
      @diktomat 2 ปีที่แล้ว +1

      That’s why the arrow keys / hjkl are actually not used that often in Vim. There are almost always better ways to precisely move the cursor where you want it.

    • @RawkHawkRockin
      @RawkHawkRockin 2 ปีที่แล้ว

      It's more about eliminating the hand movement of switching between keyboard and mouse.

  • @willd0g
    @willd0g 3 ปีที่แล้ว

    Thank goodness I learnt about the key repeat - cheers for addressing that first in the beyond segment

  • @yamen_
    @yamen_ 2 ปีที่แล้ว +1

    Video: Vim In 100 Seconds [12mins]
    *The classic vim trap has defeated this series*

  • @0jas.
    @0jas. 3 ปีที่แล้ว +7

    The best thing about vim is that I can edit vimrc to create my own key bindings and install only those plugins that I really use in my day to day life.
    The worst thing about vim is that it takes weeks to find plugins that I want to use and learn how to create your own key bindings

    • @rosslewerenz9360
      @rosslewerenz9360 2 ปีที่แล้ว

      Vs code can do both of those things

    • @0jas.
      @0jas. 2 ปีที่แล้ว +1

      @@rosslewerenz9360 Yes but I think it's the other way round. In Vim, there are no extra plugins installed and you have all the freedom to install only those plugins you will need. In Vs code, you have a lot of uninstallable features and telemetry trackers which slow down vs code in comparison to vim. Vim's load time is almost unnoticeable while it takes time to load vs code.
      On the other hand, it's very difficult to find good plugins for Vim, and sometimes they do not even exist. For example, there are hardly any good plugins for Java development on Vim. And it's not as easy as clicking the download button to install those plugins. But vs code has an excellent marketplace and it's quite easy to find extensions as their search option is quite good as well.

  • @crispyrice
    @crispyrice 3 ปีที่แล้ว +9

    That extension is amazing. I only used the basic vim commands for when I needed to edit a file as sudo. Now I can use them in my main IDE too

    • @crackwitz
      @crackwitz 2 ปีที่แล้ว

      Install nano. Nobody should have to suffer vi/vim.

    • @crispyrice
      @crispyrice 2 ปีที่แล้ว

      @@crackwitz it's about having consistency in your keybinds. If I know how I can find and replace or multiselect in vim, I can do it quickly in every text editor that supports it

  • @rayraysss
    @rayraysss 2 ปีที่แล้ว

    I swear this video was only 100seconds long, but then the dude came up and magically the duration increased

  • @vif3182
    @vif3182 2 ปีที่แล้ว

    0:03 the keyboard is a Retro RGB keyboard sold by FirstBlood Gaming as Ajazz K500, comes in various Cherry MX keycaps. No bloated software is needed to use the RGB, it's straight plug-n-play out the box. Highly recommended.

  • @andre_lug
    @andre_lug 3 ปีที่แล้ว +13

    Great video as always.
    I think the side by side comparison between editing with Vim and without it was unfair. I can use vscode (or atom, or whatever) and leverage the platform's shortcuts as good as or better than with Vim. The example showed a (likely) beginner using a code editor, that is: using the mouse to select a portion of the text instead of using shortcodes that do exactly the same as in Vim.
    I must say I can't get my head around using vim nowadays, except to quick edits when I'm on a server, but I get it's a personal preference. There is no best option for everyone, but the one we are more comfortable with, right?

  • @MrSofazocker
    @MrSofazocker 3 ปีที่แล้ว +3

    I think with these videos, you found the perfect balance between a short and a long video!

  • @karasirarichard3358
    @karasirarichard3358 3 ปีที่แล้ว

    QUALITYYYY..... Love the senior developer cameos lately

  • @ferchuu9
    @ferchuu9 2 ปีที่แล้ว

    no pain no gain, and effectively that guitar was crisp clean

  • @robchr
    @robchr 3 ปีที่แล้ว +5

    You can take emacs out of my cold dead emacs grip hands.

  • @combustionFreeEngine
    @combustionFreeEngine 3 ปีที่แล้ว +3

    For some reasons i find vim editor is a bit harder to use than other editor but i really love its key bindings feature. Vscode + vim key binding = AWESOME.

  • @lenni-builder
    @lenni-builder ปีที่แล้ว +2

    R.I.P Bram (If you didn't know that, he was the creator of Vim and died on 3rd August 2023)

  • @heman57
    @heman57 3 ปีที่แล้ว +1

    Downloaded Vim yesterday and Fireship uploads video today :)

  • @jothamsoboyejo4889
    @jothamsoboyejo4889 3 ปีที่แล้ว +3

    All I've got to say is, Vim is a blessing

  • @fabioramatis2373
    @fabioramatis2373 3 ปีที่แล้ว +3

    I loved vim for so long to abandoned and use emacs full time

  • @Vifnis
    @Vifnis 4 หลายเดือนก่อน +1

    0:03 Keyboard is a AJAZZ K500 model sold by FirstBLOOD from China, it's a niche model (if I don't say so myself, highly recommended w/ Cherry MX Blue switches!)

  • @DavidBrown-bs7gg
    @DavidBrown-bs7gg 3 ปีที่แล้ว +1

    some good vim commands. cw = change word. ct[letter] = change to letter. dw = delete word. dt[letter] = delete to letter. ~ (tilde) = toggle the case of the letter and move to next letter (hold to do entire string)

  • @EidosGaming
    @EidosGaming 2 ปีที่แล้ว +18

    I tried to get into vim multiple times. The thing is, I'm way too used to VS code default editor, and I feel I would have to relearn a lot when I can already do very powerful stuff with the default editor (multi cursor, copy paste lines, replace all instances, etc)

    • @thecodewarrior7925
      @thecodewarrior7925 2 ปีที่แล้ว +4

      I’ve tried the VSCode Vim plugin, and to be honest I wasn’t impressed. IDEAVim is spectacular and works very well with the IDE. It even properly emulates Vim’s asinine regex syntax instead of just sticking JS regexes in vim commands. Yes, the syntax is objectively horrific, but I’m used to it, so the VSCode plugin tripped me up every time.

    • @limitless1692
      @limitless1692 ปีที่แล้ว +2

      EidosX
      I was like you, I knew Atom code editor inside and out, used it over 4 years...
      But after what happended to Atom, I decided to jump into VIM.
      You will see my point of view when VS Code will disapear and go under in the future...
      You will be in my shoes and see how it feels, and then you will get it why people learn VIM.

    • @khayyamaurelius912
      @khayyamaurelius912 ปีที่แล้ว +2

      That's true. Only way to properly learn vim is to say "fuck it" and strictly use it for several weeks.

    • @torphedo6286
      @torphedo6286 11 หลายเดือนก่อน +1

      the replace all syntax is pretty terrible, but copy-pasting lines and multi-cursor usually end up faster once you're used to the keybinds. I have keybinds set up to automate the shitty search-replace syntax, it's bound to "s" to replace the current word across the whole file.

  • @loldoctor
    @loldoctor 2 ปีที่แล้ว +4

    I just started learning to code a few months ago and I always wondered why sometimes my VS Code would let me type and other times it wouldn't. Turns out the Vim extension was installed somehow, I have no idea how.

    • @crackwitz
      @crackwitz 2 ปีที่แล้ว

      Vim and all its emulations are malware.

  • @meezookee8491
    @meezookee8491 3 ปีที่แล้ว

    I've switched to VSCode recently but I'd never be able to stop using vi key bindings. I cannot be helped about this. I still love Vim very much 🥰

  • @JohnSamuel-iy1lf
    @JohnSamuel-iy1lf 2 หลายเดือนก่อน

    Fireship's ability to teach me things in minutes the same thing I've learnt over years of trial and error only makes me conclude that there aren't enough good souls that could make you a manual of "how to get to speed" on any given tech topic.

  • @brilliantchicken4873
    @brilliantchicken4873 3 ปีที่แล้ว +26

    these videos are my crack

  • @Growlboy1986
    @Growlboy1986 3 ปีที่แล้ว +18

    Neovim (Vim) is by far the best editor ever existing!

    • @dominikm1457
      @dominikm1457 3 ปีที่แล้ว +1

      Vscode with the VIM plug-in is also great.

    • @SamualN
      @SamualN 3 ปีที่แล้ว +1

      even after getting over the barrier to entry of learning vim, I still feel more comfortable using regular controls in VS Code
      I will happily use (n)vi(m) if I only have access to a terminal though

    • @TheEnde124
      @TheEnde124 3 ปีที่แล้ว

      What's the benefits of using neovim over vim?

    • @vspecky6681
      @vspecky6681 3 ปีที่แล้ว

      @@TheEnde124 One big difference is that NeoVim has support for Lua plugins inbuilt. Vim does not have the same inbuilt, iirc you need to compile Vim with a certain flag to enable lua support.
      Other than that, Neovim uses ~/.config/nvim/init.vim instead of ~/.vimrc
      There's mostly no difference in functionality to an end user. Keybindings are the same, config directives are the same, etc.
      I personally use NeoVim.

    • @jackkendall6420
      @jackkendall6420 3 ปีที่แล้ว +1

      @@TheEnde124 Its default settings tend to be more sane and less obtuse to modern users. Vim tries very hard to keep the same experience as back in the 90s, so you need to change a lot of settings to make it user-friendly in 2020.

  • @lunarripper835
    @lunarripper835 2 ปีที่แล้ว

    Yoo this 100 seconds were awesome and nothing like 712 seconds tysm

  • @4ugus7in3
    @4ugus7in3 ปีที่แล้ว

    I started using vim around 3 weeks ago and I'm loving it already. Might ditch IDEs soon.

  • @bvg129
    @bvg129 3 ปีที่แล้ว +10

    Vim may be handy if you have

    • @laundmo
      @laundmo 3 ปีที่แล้ว +5

      this. the short comparison was clearly either recorded by someone who has never used a normal IDE in their lives, or it was specifically made to make normal VSCode look slow.
      take your guess.

    • @EgorRandomize
      @EgorRandomize 2 ปีที่แล้ว +1

      My favorite part is 2:40 as comparation of perfomance.
      In VS Code he is using slow mouse with one missclick and other useless clicks instead of ctrl+delete and ctrl+backspace.
      I can't imagine any case Vim can fight IntelliJ IDEA products.

  • @codeaperture
    @codeaperture 3 ปีที่แล้ว +3

    Hey one question. Do Jeff's courses become downloadable? Also someone help if I subscribe quarterly I will access previous Content such as Vue/Flutter Firebase etc?..

  • @detskysade2581
    @detskysade2581 3 ปีที่แล้ว +1

    Do you track my data or something? Every time I decide to learn something new you release a video about it the next day!!

  • @scullyy
    @scullyy ปีที่แล้ว +1

    Quitting without saving and with saving being so similar, shivers my timbers.

  • @BartTrojanowski
    @BartTrojanowski 2 ปีที่แล้ว +5

    I'm confused about +p. I've been using vim for 20+ years, and didn't know about this.
    + is documented as an equivalent motion to CTRL-M or (go down one line). For me +p goes downward one line, and then pastes the contents of "0 register.
    "+p is documented and pastes the system clipboard (on Linux).
    Am I missing something? Like a plugin?

    • @Zw1d
      @Zw1d 2 ปีที่แล้ว +1

      thing you're missing is probably microsoft's devil
      (vscode)
      i knew it wouldn't work over putty, but i tried anyway xD

  • @neon13x
    @neon13x 3 ปีที่แล้ว +3

    You can also use CTRL + [ to go back to normal mode instead of mapping CAPS LOCK to ESC

    • @byakka
      @byakka 3 ปีที่แล้ว +2

      Better yet, use that after swapping Caps Lock and Ctrl

  • @theofernandez611
    @theofernandez611 ปีที่แล้ว

    This chanel is perfect. Thank you for all your videos , it helped me so much.

  • @mrtbts
    @mrtbts 2 ปีที่แล้ว

    usually i use nano instead of vim but this tutorial makes me wanna try using vim again

  • @ark5458
    @ark5458 3 ปีที่แล้ว +22

    still can't say if he said "i am your god" or if he said " i am your guide"

  • @vukkulvar9769
    @vukkulvar9769 3 ปีที่แล้ว +10

    I found the With Vim / Without Vim to be misleading.
    The "With Vim" side start with the cursor already at the end of the opening tag line, while the "Without Vim" is randomly in the middle.
    If it was honest, the "Without Vim" would have used the mouse to select from the end of the opening tag line to the end of the closing tag line and deleted everything at once, it also require less accuracy with the mouse.
    By the way, natively you can :
    Navigate using arrows
    Use begin/end to go to the start/end of the line (begin will alternate between before & after the indentation if you keep pressing it).
    Use Ctrl+begin/end to go the start/end of the file.
    Use Ctrl+left/right arrows to jump to the previous/next word boundary.
    if you hold shift it'll also select.
    All of the above work with multicursor.
    Inser to toggle the input mode between "insert" and "replace".
    With that knowledge, I find that Vim addon to be a waste of time.

    • @thecodewarrior7925
      @thecodewarrior7925 2 ปีที่แล้ว +1

      Yeah, it’s really hard to make good comparisons for that kind of thing. I don’t doubt that you can use the standard controls to write quickly.
      It takes quite a while to get truly comfortable with Vim, but I find it hard to live without nowadays. I absolutely recommend rebinding caps lock to escape. Contorting your hand to tap the escape key in the corner of the keyboard is unpleasant and slow as fuck.
      I do find myself tapping caps lock on other people’s computers when I try to dismiss a dialog box or exit a field though, which is always amusing.

  • @jonathandavis8014
    @jonathandavis8014 ปีที่แล้ว +1

    one mode I like is replace mode using the 'r' key, since I can copy some code then use replace mode to make slight changes rather than repeating backspace.

  • @Lin_The_Cat_
    @Lin_The_Cat_ 2 ปีที่แล้ว

    0:42 *“…and at some point, you’ll likely find yourself dropped into vim with no way to escape.”* Yep! That, “get me out of here,” clip sums up my experience accidentally opening Vim. I switched back to Linux a few months ago after years of using just windows, and I got Nano and Vim mixed up. I realized my fatal error as soon as I saw, in stark contrast to Nano, the lack of a keyboard bindings cheat sheet at the bottom of the editor screen.

  • @GonzaloMassa
    @GonzaloMassa 3 ปีที่แล้ว +17

    I love being a developer and enjoy programming, that's why I don't want my fingers glued to the keyboard in order to squeeze my productivity, specially for my employee.

    • @ivanf.8489
      @ivanf.8489 3 ปีที่แล้ว +10

      Yah, totally.
      I love Vim, but not because it "increases my productivity". I don't want to be programming 100lines/minute. I want to have fun and do the things right

  • @chektek_
    @chektek_ 3 ปีที่แล้ว +34

    I feel like in 2021, using Vim says "I started coding before you were born"

    • @Zeioth
      @Zeioth 3 ปีที่แล้ว

      I used to think that too. Try it and most likely you'll be surprised how much time (and machine resources) you can save.

    • @byakka
      @byakka 3 ปีที่แล้ว +1

      I scoffed at vim for years before I decided to watch how people actually use it. When it finally clicked I felt that it’s kind of crazy that its way of working with text didn’t grow beyond just one editor. Turns out vim is actually good enough for other editors to be converted with plugins to behave like it.

    • @rosslewerenz9360
      @rosslewerenz9360 2 ปีที่แล้ว +1

      @@byakka Or its because they want those developers to start using it, and having an extension that accomplishes that is beneficial.

  • @mrverdant13
    @mrverdant13 3 ปีที่แล้ว

    Didn't expect to get into Vim with an ASMR session

  • @aryandasari1695
    @aryandasari1695 หลายเดือนก่อน

    thanks a lot man.
    Really needed it.

  • @fasihussaini8554
    @fasihussaini8554 3 ปีที่แล้ว +20

    "Now like any good developer we need to copy and paste code from stack overflow"
    Me : Oh yess ! Thanks for complementing I'm a very good developer. 😂

  • @ttst3
    @ttst3 3 ปีที่แล้ว +40

    4:13 kinda ironic that he would use the mouse instead of just pressing Enter to select the command, in a video about Vim...

  • @akosv96
    @akosv96 ปีที่แล้ว

    "Think about J as jumping down." Yep that sums it up for me

  • @onemoregodrejected9369
    @onemoregodrejected9369 2 ปีที่แล้ว

    Back when i was studing SO management when a teacher asked to send a screenshoot of the cat of an output or an edited /etc file to correct our absolute messes, i learnt fast that sending an screenshoot of a file open on Vi instead cat, earnt easy points with them.
    I was reluctant to swap from nano to vi until my eyes started to get tired all the time, so i used vi for the silly reason "it has colors" and little i knew that it was quite a legitimate reason on the big picture.