I've just spent a few hours trying to track this down. It was very frustrating
as vim's behaviour became unpredictable, though I think I know the cause.
Using :Decho went bananas until I found the comment that explained that
DechoTabOn was necessary, but even that was subject to weirdness caused by the
autocommands running the code being debugged, which interacted with the problem
I was trying to find.
Anyway, to cut a long story short, in V147b the variable g:netrw_xstrlen is
used when it doesn't exist in the function s:Strlen in autoload/netrw.vim, when
it is called in s:LocalListing. Maybe there's :silent on the way to that
point, but s:Strlen's execution is abandoned; trace statements towards the end
(such at the call Dret) are not executed, and the listing code uses a directory
length of 0. If g:netrw_xstrlen or g:Align_xstrlen or g:drawit_xstrlen is
defined, the problem does not occur. Perhaps Dr Chip you have one of those set.
I'm not sure, but I think the code that checks the existence of g:netrw_xstrlen
should look like
if !exists("g:netrw_xstrlen")
if exists("g:Align_xstrlen")
let g:netrw_xstrlen= g:Align_xstrlen
else
if !exists("g:drawit_xstrlen")
if &enc == "latin1" || !has("multi_byte")
let g:drawit_xstrlen= 0
else
let g:drawit_xstrlen= 1
endif
endif
let g:netrw_xstrlen= g:drawit_xstrlen
endif
endif
Regards, John
--
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