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 dols
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.
Help, how do I exit vi?
Hmmm… never thought about that, honestly, but it makes sense
Just make sure you are using a GNU system.
Luckily it shouldn’t do anything but error out on Unix boxes, as
vim
is not a valid process signal and their version of killall expects a signal argument (or just-
)Sudo not even needed unless you were running vim as root
Yeah, but in case I’m on a server, I’m going to free all the other trapped users, too! (Although I’d probably just terminate the ssh session then)