as I'm going through the process of learning vim, I'm discovering newfound powers. one of them being to execute commands from vim itself.
below examples might better explain some of them:
-
want to see what files are in current directory? enter command mode(by typing :
) and follow it by a bang(!
). then do ls
like you'd do in a terminal and press enter. this is not limited to just ls. you can enter any command that you can enter in terminal. for example: :! uname --operating-system
(which will output GNU/Linux :))
-
so you want to quickly save just a certain part of your file into another file? just select everything you need by entering visual mode(v
) and do :w filename
(actual command you'll see would be '<,'>:w filename
). verify it using 1.(i.e., :! cat filename
.
-
want to quickly paste another file into current one? do :r filename
. it'll paste its contents below your cursor.
-
or maybe you want to paste results of a command? do :r !ls *.png
.
vim is my ~
sweet ~
now. make it yours too.
I was forced to learn the vim basics. Mainly because I really started with dd-wrt, which I used on my Linksys WRT54GL.
The image was too small to package anything fancy in it, like nano or something, but vi (or vim, I forget) was included. So when I needed to check something over ssh at the command prompt, vim was my only choice.
My skills in vim have not expanded beyond the basics. Getting into edit mode, exciting edit mode, saving, quitting.... Mostly.
I don't spend a lot of time editing files in the CLI, so I haven't needed any more than I already know. Now, when faced with a Linux cli, and needing to check/edit the contents of a file, my go to, is vim. It's pretty much on every system, and it works perfectly fine for what I need to do 99.99% of the time. I like vim, it's been there for me through thick and thin, and helped me out of some serious jams. I won't hate on nano (or any other cli file editor), they all have their pros and cons.
Use what you like.
I'll admit, I took the rage bait.
<3