title: Good guide on VIM Scripting?
body: <p>I've used VIM for 10+ years, but never really into VIM scripting (always subjectively beliving that this was one area where VIM was weaker than Emacs).</p>
  
  <p>Recently, the realization "in a VIM script, I can execute normal mode commands" made my mind go "a-ha" and suddenly start realizing why parts of VIM script is the way it is.</p>
  
  <pre><code>normal ma10jd'a20kp
  </code></pre>
  
  <p>is much more elegant than</p>
  
  <pre><code>Marker m = currentLocation();
  advanceLines(10);
  Buffer b = delete(currentLocation(), m);
  advanceLines(-20);
  insertBuffer(b);
  </code></pre>
  
  <p>Now question is -- what's a good resource to learn vim scripting from?</p>
  
  <p>Thanks!</p>