Christian Brabandt wrote:

> On Sa, 28 Sep 2013, Bram Moolenaar wrote:
> 
> > Dimitar Dimitrov wrote:
> > 
> > > Hi,
> > > The call to histdel below doesn't seem to be doing what I want it to do.
> > > It doesn't delete my 3 search patterns added by the 2 :substitute and
> > > the :global calls.  Not sure what it does exactly, it seems to delete
> > > one correct entry and 2 wrong ones.
> > > All I want is no trace of those patterns in my search history,
> > > but histdel('/', '\\s\\+\$') wouldn't be a solution since I still want
> > > this pattern in my history if I enter it manually at some point.
> > > Any help appreciated.
> > > 
> > > 
> > > " Squeeze empty lines
> > > function! s:Squeeze()
> > >    let save_cursor = getpos(".")
> > >    " empty lines at BOF|EOF
> > >   
> > >  silent  %substitute/\%^\_s*\n\|\_s*\%$//
> > >    " empty line clusters
> > >    silent   global/^\%(\s*$\n\)\{2,}/delete
> > >    silent! %substitute/\s\+$//e
> > >    for i in range(1, 3)
> > >       call histdel('/', -1)
> > >    endfor
> > >    call setpos('.', save_cursor)
> > > endfunction
> > > 
> > > nmap <silent> <leader>z :call <sid>Squeeze()<cr>
> > 
> > Not sure what happens there, but it might be a lot simpler if we have a
> > way to avoid patterns to be put in the history, instead of deleting them
> > afterwards.  When a pattern was typed you may want to keep it, but after
> > executing a :s command you don't know if the pattern was typed before
> > you used it with :s.  That gets complicated.
> > 
> > For :s we could add a flag, but for :g/pattern/ there is is no place to
> > put a flag.  Perhaps we should use a modifier ":keeppatterns", like
> > ":keepjumps" and ":keepmarks" ?
> 
> Here is a patch that adds the :keeppatterns command modifier as well as 
> an additional search flag 'h'

I have included :keeppatterns, but the implementation of the 'h' flag
still changes the history: If the pattern was already present in the
history it gets deleted.  Fixing that is complicated, thus I didn't
include this part of the patch now.


-- 
Mushrooms always grow in damp places and so they look like umbrellas.

 /// Bram Moolenaar -- [email protected] -- http://www.Moolenaar.net   \\\
///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
\\\  an exciting new programming language -- http://www.Zimbu.org        ///
 \\\            help me help AIDS victims -- http://ICCF-Holland.org    ///

-- 
-- 
You received this message from the "vim_dev" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php

--- 
You received this message because you are subscribed to the Google Groups 
"vim_dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/groups/opt_out.

Raspunde prin e-mail lui