Choosing
a text editor is a very important decision for a programmer. This is
partly because of the plethora of variables: graphical/non-graphical interfaces,
different shortcuts, language specializations, plugins, customizations,
etc. My advice is not to try to search for the best one. Instead,
choose the one that corresponds best to your habits and your tasks. If
you want to work in a group, it’s generally best to select the same
editor as your co-worker. That way, if you have a problem, you will be
able to find some help.
It is exactly for that reason that I started using Vim a few years ago. Traditionally, Vim is placed in conflict with the legendary Emacs. I confess that I know very little about Emacs, but what you have to know about these two text editors is that they can both be fully customized, and very confusing at first. This tutorial will not explain everything about Vim but will try to give you the basics to use it correctly in the first place, and then present a few tips that will (I hope) allow you to learn on your own.
Vim comes from “VI iMproved”. Vi is a non-graphical text editor widely distributed in Unix systems. It comes by default with Linux. Vim is an enhancement of this original editor. However, unlke Vi, Vim is not installed by default on every distribution.
If you are already interested in some plugins, use the command:
This will give you a long list of packages related to Vim. Among them
are some for various programming languages, addon managers, etc.
For this tutorial, I will be using the latest version of Vim (7.3.154) on Ubuntu. You can use any other version though.
And if you’ve never used Vi or Vim before, it is very likely that you don’t even know how to exit… Yes, it’s true. None of the shortcuts you normally use will work in Vim.
First of all, to use any menu-type function like save or exit, your command should begin with a colon (:). Saving is
So for now, quit Vim and open it on a sample text file. Simply add the name of the text file that you want to edit after the command:
By default, when you open a text file, you are in visual mode. It is quite specific to Vim and confusing at the beginning. Vim is composed mainly of two modes: visual and editing. The visual mode is for viewing a text and using some commands. To go into editing mode, just press
To move the cursor within a text, whether you are in visual or editing mode, you can generally use the keyboard arrows. A real purist would tell you to use the keys h for left, j for down, k for up, and l for right.
Now that you are warmed up and know how to control Vim at a basic level, let’s go to the core.
As a side note for those who always want more, you can type a number before any of these commands and the command will be executed that number of times. For example, 5x will delete five characters in a row, while 3p will paste three times.
It is exactly for that reason that I started using Vim a few years ago. Traditionally, Vim is placed in conflict with the legendary Emacs. I confess that I know very little about Emacs, but what you have to know about these two text editors is that they can both be fully customized, and very confusing at first. This tutorial will not explain everything about Vim but will try to give you the basics to use it correctly in the first place, and then present a few tips that will (I hope) allow you to learn on your own.
Vim comes from “VI iMproved”. Vi is a non-graphical text editor widely distributed in Unix systems. It comes by default with Linux. Vim is an enhancement of this original editor. However, unlke Vi, Vim is not installed by default on every distribution.
Installation
To install Vim on Ubuntu, use the command:sudo apt-get install vim
sudo apt-cache search vim
For this tutorial, I will be using the latest version of Vim (7.3.154) on Ubuntu. You can use any other version though.
Warming Up
Type the commandvim
in a terminal. You should see a nice welcome screen.And if you’ve never used Vi or Vim before, it is very likely that you don’t even know how to exit… Yes, it’s true. None of the shortcuts you normally use will work in Vim.
First of all, to use any menu-type function like save or exit, your command should begin with a colon (:). Saving is
:w
and quitting is :q
. If you want to quit a file without saving, use the force quit command :q!
.
A cool thing with Vim is that you don’t have to type commands
separately. In other words, if you want to save and then quit, you can
directly use :wq
.So for now, quit Vim and open it on a sample text file. Simply add the name of the text file that you want to edit after the command:
vim [text file name]
By default, when you open a text file, you are in visual mode. It is quite specific to Vim and confusing at the beginning. Vim is composed mainly of two modes: visual and editing. The visual mode is for viewing a text and using some commands. To go into editing mode, just press
i
to insert and a
to add some text. To go back into the visual mode and access all the
menu-type functions, press the “Escape” key. The difference between
insertion and addition is simply whether you want the text you type to
appear before or after the cursor in visual mode. To understand this
fully, you should really try it yourself. My advice is: add at the end
of lines, and insert in other cases.To move the cursor within a text, whether you are in visual or editing mode, you can generally use the keyboard arrows. A real purist would tell you to use the keys h for left, j for down, k for up, and l for right.
Now that you are warmed up and know how to control Vim at a basic level, let’s go to the core.
A few basic commands
Now that you master the transformation from visual to editing mode, here are a few commands that you can use in visual mode:- x: to delete a character
- u: to undo an action (the equivalent of Ctrl+z)
- dd: to delete a line
- dw: to delete a word
- yy: to copy a line
- yw: to copy a word
- p: to paste the previously deleted or copied line or word
- e : to move to the next word (faster than just moving with the arrow keys)
- r: to replace a letter (press r, then the new letter)
As a side note for those who always want more, you can type a number before any of these commands and the command will be executed that number of times. For example, 5x will delete five characters in a row, while 3p will paste three times.
Advanced Commands
Finally, as a bonus and an appetizer for your own research, here are a few advanced and very useful commands:- /searched_word : to search for a word within the text
- :sp name_of_a_text_file: will split the screen in half horizontally, showing the new text file in the other half. To shift the focus from the right to the left window, use the shortcut Ctrl+w
- :vsp name_of_a_text_file: same as before, but splits the screen vertically
- Ctrl+Shift+C and Ctrl+Shift+V: to copy and paste text in a terminal
- :! name_of_a_command: to launch a command external to Vim, directly into your shell. For example,
:! ls
will display the files within the directory you are currently working in, without quitting the editor
No comments:
Post a Comment
Thank you for your comment