title: Indent preprocessor directives as C code in emacs
body: <p>Emacs, by default, does not indent pre-processor code. I know it has historical roots that are obsolete by now.</p>
  
  <p>However, having a code with a lot of #ifdef unindented is hard to read.</p>
  
  <p>So I would like to make emacs automatic indentation give me something like that:</p>
  
  <pre><code>void myfunc() {
      int foo;
  
      #ifdef BAR
      printf(foo);
      #endif
  
      return foo;
  }
  </code></pre>
  
  <p>Instead of what I get now :</p>
  
  <pre><code>void myfunc() {
      int foo;
  
  #ifdef BAR
      printf(foo);
  #endif
  
      return foo;
  }
  </code></pre>
  
  <p>Any leads on that issue you emacs hackers :) ?</p>