Penguin

Differences between version 7 and previous revision of Vim.

Other diffs: Previous Major Revision, Previous Author, or view the Annotated Edit History

Newer page: version 7 Last edited on Sunday, September 7, 2003 10:44:21 am by AristotlePagaltzis Revert
Older page: version 6 Last edited on Sunday, September 7, 2003 10:20:19 am by AristotlePagaltzis Revert
@@ -3,11 +3,11 @@
 vi(1) is a text editor that comes with the original Unix system as well as pretty much every other flavour, variation or clone of it known to mankind. They're all the same, except for when they're different (see below). vi(1) is rather unique among text editors because it explicitly operates in "modes", of which it knows three: 
  
 ; __Normal__ : you move the cursor and perform single-keystroke commands here 
 ; __Insert__ : you enter text in this mode, which you invoke using the __i__ command in normal mode and leave using __Esc__. 
-; __Ex__ : here you enter ex(1) commands like search-and-replace commands into a commandline at the bottom of the screen 
+; __Ex__ : ex(1) commands like search-and-replace commands can be entered into a CommandLine at the bottom of the screen in this mode  
  
-Most people find it confusing that you can't just start hacking text into a file as soon as the editor loads. It has to be noted however that while it may seem so, the concept of modes is inherent in ''every'' editor, though only implictly. In [Emacs] f.ex, you can think of pressing __Ctrl__ as "entering normal mode": as long as you hold that key, you can enter command shortcuts. Once you let go (and optionally enter some command or whatever), you're "back in insert mode". [GUI] text editors work much the same way: once you activate a menu, keystrokes get interpreted as menu navigation - essentially command shortcuts -, and no longer as text input. You get back to "input mode" by leaving the menus. 
+The default mode is normal. While this makes more sense than defaulting to insert mode, most people find it confusing that you can't just start hacking text into a file as soon as the editor loads and get scared away from vi(1) after their first encounter . It has to be noted, however, that while it may seem so the concept of modes is inherent in ''every'' editor, if only implictly. In [Emacs] f.ex, you can think of pressing __Ctrl__ as "entering normal mode": as long as you hold that key, you can enter command shortcuts. Once you let go (and optionally enter some command or whatever), you're "back in insert mode". [GUI] text editors work much the same way: once you activate a menu, keystrokes get interpreted as menu navigation - essentially command shortcuts -, and no longer as text input. You get back to "input mode" by leaving the menus. 
  
 So when you get down to it vi(1) doesn't work much different from any [GUI] editor except perhaps for the lack of displayed drop down menu. And unlike any [GUI] editor, it has a CommandLine with a vocabulary that leaves little to be desired once you've memorized a handful of the commands. 
  
 Another thing to remember is that as opposed to [Emacs], even the bog standard vi(1) offers a huge pile of useful bindings out of the box. You don't ''need'' to synchronize [DotFile]s across machines or spend a lot of time setting things up to achive an environment close to what your very own configuration feels like, even if you may still want to in order to do an extended amount of work. You can immediately work productively on any random machine a vi(1) is installed on (which means everywhere). 
The following authors of this page have not agreed to the WlugWikiLicense. As such copyright to all content on this page is retained by the original authors.
  • BartvanDeventer
The following authors of this page have agreed to the WlugWikiLicense.

PHP Warning

lib/blame.php (In template 'html'):177: Warning: Invalid argument supplied for foreach()

lib/plugin/WlugLicense.php (In template 'html'):99: Warning: Invalid argument supplied for foreach()

lib/plugin/WlugLicense.php (In template 'html'):111: Warning: in_array() [<a href='function.in-array'>function.in-array</a>]: Wrong datatype for second argument