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.
I agree that remembering all these commands is a hassle, and so do nvim devs. that’s why they recommend not to learn the commands1. these will become your second habit if used enough number of times. just like
Ctrl+c/v
.1: from
:Tutor
in nvim:also, even if you don’t want to use a terminal-based editor, I’d recommended you to give this talk from Bram Moolenaar(creator of vim) a watch. not the whole talk, just a few first minutes. you can even use YouTube chapters to skim through.
have a nice day :)
Here is an alternative Piped link(s):
this talk from Bram Moolenaar
Piped is a privacy-respecting open-source alternative frontend to YouTube.
I’m open-source; check me out at GitHub.