Hi all,

when the lazyredraw option is set I've been observing a bizarre behavior which 
I'm not sure whether is a bug or not.

Say I'm editing the following python script:

def f1():
    f3()

def f2():
    f1()

f2()

And I've defined the following function and map:

function! Make(makeprg, errorformat)
  write
  let &l:makeprg = a:makeprg
  let &l:errorformat = a:errorformat
  silent make
  redraw!
  cw
endfunction

map <buffer> <silent> <Leader>mp
    \ :call Make("python %", '  File "%f"\, line %l%.%#')<CR>
    \ :clast<CR>:cprev<CR>

If I press <Leader>mp once the error window is opened and the last error (out 
of three in the backtrace) with a filename in it is highlighted as expected. If 
I press <Leader>mp again then the first and last errors with a filename are 
highlighted at the same time (see attached screenshot). This seems a problem in 
redrawing, and indeed redraw! removes the double highlighting.

Now, maybe this is expected when lazyredraw is on:

:redr[aw][!]
[...] Also when halfway a mapping and 'lazyredraw' is set.

Although I'm not halfway a mapping. So maybe not.
Cheers
--
Carlos

-- 
-- 
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 vim_dev+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Raspunde prin e-mail lui