title: Vim auto-generate ctags
body: <p>Right now I have the following in my <code>.vimrc</code>:</p>
  
  <pre><code>au BufWritePost *.c,*.cpp,*.h !ctags -R
  </code></pre>
  
  <p>There are a few problems with this:</p>
  
  <ol>
  <li>It's slow -- regenerates tags for files that haven't changed since the last tag generation.</li>
  <li>I have to push the enter button <em>again</em> after writing the file because of an inevitable "press Enter or type command to continue".</li>
  </ol>
  
  <p>When you combine these two issues I end up pushing the additional enter too soon (before <code>ctags -R</code> has finished), then see the annoying error message, and have to push enter again.</p>
  
  <p>I know it doesn't sound like a big deal, but with the amount of file writes I do on a given day it tends to get really annoying. There's gotta be a better way to do it!</p>