title: iPython-like completion for zsh?
body: <p>I wonder if there's a way to use ipython-like completion in zsh?  </p>
  
  <p>What I mean is in ipython you could type several characters and then loop through your command history, but this will only affect those commands which start with characters you've typed in the first place.<br>
  If your history look like this:  </p>
  
  <pre><code>token = 'something blah blah'    
  import os
  token.split()
  </code></pre>
  
  <p>..and then you type <code>token</code> and loop through history in ipython you will get only 1st and 3rd lines.  </p>
  
  <p>So is there any way to make zsh work this way?</p>