Zsh Mailing List Archive
Messages sorted by: Reverse Date, Date, Thread, Author

Re: Completing strings from history?

Peter Stephenson <pws@xxxxxxx> writes:

 > > Typing `foo<ESC-/>' (bound to _history-complete-older) finds the most recent
 > > word in the history beginning "foo".  Typing <ESC-/> again appears to do
 > > nothing.
 > > 
 > > Is it possible to set things up so that repeatedly typing <ESC-/> cycles back
 > > through all matches in the history?  (ala Emacs' dabbrev-expand)
 > You can do this by setting the `stop' style, which is so called because it
 > stops when it has reached as far back into the history as it can (unlike
 > normal menu completion which would continue cycling).
 >   zstyle ':completion:history-words:*' stop 1

Ideally, I'd prefer <ESC-/> to cycle back through the history _and_ have it
cycle round after reaching the end of the history.  Is this possible?

With the above zstyle, I find that hitting <ESC-/> after having reached the
oldest history item prohibits <ESC-,> from taking my forwards again, and
similarly, hitting <ESC-,> after cycling forwards to the most recent item
prohibits <ESC-/> from taking me backwards again.

Two more questions:

1. Is it possible to turn off the beep that's emitted every time I type <ESC-/>?

2. Can all matching words be displayed as per normal completions (then I'd see
   whether it's worth continuing to bang on <ESC-/> a few more times)?

Thanks again,

    --- John

Messages sorted by: Reverse Date, Date, Thread, Author