Currently, vim bundle netrw v149. It doesn't work with multi-byte strings.
This problem occur in v149, 150j both.
Below is a patch for v150j.
--- autoload/netrw.vim.org 2013-11-29 09:51:50.637597900 +0900
+++ autoload/netrw.vim 2013-11-29 09:53:09.361597900 +0900
@@ -8608,7 +8608,7 @@
" get the list of files contained in the current directory
let dirname = b:netrw_curdir
- let dirnamelen = s:Strlen(b:netrw_curdir)
+ let dirnamelen = strlen(b:netrw_curdir)
let filelist = glob(s:ComposePath(dirname,"*"),0,1)
let filelist = filelist + glob(s:ComposePath(dirname,".*"),0,1)
" call Decho("(LocalListing) filelist=".filelist)
- Yasuhiro Matsumoto
dirnamelen is used for:
let pfile= strpart(pfile,dirnamelen)
* autoload/netrw.vim:L8689
A second argument of strpart should be byte size not display width.
For example, directory name contains multi-byte like follow,
c:/[][][]/foo.txt
* [] is multi-byte.
let pfile = strpart(pfile, length_until_last_slash)
length_until_last_slash should be 10. if using s:Strlen(), it become 7.
So it display broken bytes in netrw.
- Yasuhiro Matsumoto.
v150k doesn't fixed this issue.
--- autoload/netrw.vim.org 2013-12-06 12:49:38.228750700 +0900
+++ autoload/netrw.vim 2013-12-06 12:49:58.907818400 +0900
@@ -8655,7 +8655,7 @@