Vi has been my favorite text editor for many years. I learned how to use Vi in university and I never use any other text editor since then. Vi is an open source software and it come with any Linux distribution. Vi is still the most powerful and most efficient text editor even when comparing to the newer GUI based text editor nowadays. Unlike the newer editor, you won’t find any bell and whistle user friendly features in Vi. You have to master at least the basic shortcut keys and commands to get start. Many first time Vi user are hopelessly lost when they are welcome by a blank screen that they can’t even type a single character or exit.
Once the short cut keys become your second nature, Vi is a lot faster than any other GUI text editor. Your finger never have to leave the keyboard or even touch the mouse. Vi has a a different design philosophy than other editors. Vi is modal editor, which means you have to toggle between different modes. In navigation mode you can move the cursor, search, replace, copy and delete text. In insert mode, you enter the text. Many people argue that the modal editor is so out dated and it is inferior to GUI text editor. But they forget all editor are implicit modal editor. They can not type at the same time when they take their hand off the keyboard, moving the mouse to click the menu item.
Vi and Emacs are the two text editors of choice for all geeks or real programmer. Each side has gathered a cult of followers with Tim O’Reilly as the figure head for the Vi camp and Linus Torvalds as the figure head for the Emacs camp. Asking the question of which editor is better often becomes a religious debate. It is true that Emacs is more flexible and powerful than Vi, thanks to its LISP engine at the core. Emacs is good at many things but I think Vi is better on text editing. I found the Emacs commands are too hard to use and worse of all not very finger friendly. Although Vi and Emacs users may debate among themselves which editor is better, they all agree Vi or Emacs are far better than the other toy editors.