title: vim - set auto indent to fill the leading space with space or tabstop
body: <p>It seems if we enable 'ai', vim will fill the the leading space with tabstop.
  I can make it fill with just space with 'et'. I don't like a C file mixed with space and tabstop.</p>
  
  <p>My vimrc:</p>
  
  <pre><code>set ts=4 et
  set ai
  set hlsearch
  syntax on
  filetype plugin indent on
  autocmd FileType make setlocal noexpandtab
  </code></pre>
  
  <p>However, in some condition I do need to input tabstop when I hit the 'TAB' on keyboard, for example, in makefile and some others.
  The 'autocmd FileType' command is not good: I can't add every file type in vimrc.</p>
  
  <p><strong>What I want is simple</strong>:</p>
  
  <ol>
  <li>autoindent to fill leading area with
  space;</li>
  <li>when hit 'TAB' on keyboard, tabstop
  input, not space (so no 'et')</li>
  </ol>
  
  <p>How to do it?</p>