title: How to map a sequence in vim conditionally to run external programs without printing the else clause
body: <p>How can I map a sequence in <code>vim</code> conditionally to run any of two external programs in such way that the screen is <strong>not</strong> cleared to show the <code>else</code> clause?</p>
  
  <p>For example:</p>
  
  <pre><code>:nmap &lt;c-l&gt; :if filereadable('Makefile')&lt;CR&gt;!make&lt;CR&gt;else&lt;CR&gt;!ls&lt;CR&gt;endif&lt;CR&gt;
  </code></pre>
  
  <p><code>ctrl</code>+<code>m</code> executes <code>make</code> but then clears the screen and prints the following at the bottom of it:</p>
  
  <pre><code>:  else
  :  !ls
  :  endif
  Press ENTER or type command to continue
  </code></pre>