title: Correct way to define macros \etc \ie in latex
body: <p>In 
  <a href="http://latex-alive.tumblr.com/post/827168808/correct-punctuation-spaces" rel="noreferrer">this article</a> the author discusses the use of \@ to put correct spacings after full stops that are not at the end of a sentence e.g. Mr. i.e. etc.</p>
  
  <p>The macro suggested </p>
  
  <pre><code>\newcommand\etc{etc\@ifnextchar.{}{.\@}}
  </code></pre>
  
  <p>is not quite perfect since in the case <code>(\etc more text)</code> it produces <code>(etc.more text)</code>.</p>
  
  <p>I have seen a lot of authors who have made their own versions of the <code>\etc</code> macro, mostly variations on <code>etc.\</code>. </p>
  
  <p>What macros for <code>\etc</code>, <code>\ie</code>, <code>\etal</code>, <code>\eg</code> produce the nicest results in the most situations? </p>
  
  <p>Is this something too personal in taste to be solved in general?</p>