Sis puella magica!

いろいろ書く予定

netrw v147でディレクトリ名が日本語を含むとき正しく動作しない

Ubuntuvimをインストールした時に一緒に入っていたnetrw v147ではディレクトリ名が日本語を含むとき、ディレクトリの移動ができなかったり、ファイルがちゃんと開けなかったりしたので解決法を調べてみた。

最初に見つけたのは
netrwで全角ではじまるディレクトリ名が扱えない · Issue #489 · vim-jp/issues · GitHub
これを読むとv150では直っているらしいのでhttp://www.vim.org/scripts/script.php?script_id=1075からv150をダウンロードしてインストールしてみた。

vim netrw.vba.gz
:let g:vimball_home = "/usr/share/vim/vim74"
:so %
:q

(vimballとかいうものを使っているらしい。http://nanasi.jp/articles/vim/vimball_vim.htmlも参考にした。)

インストールした後動作を確認したところ、今度はディレクトリを移動する度に

function 54_NetrwBrowseChgDir..54_NetrwOptionRestore の処理中にエラー>
が検出されました:
行 69:
E354: 無効なレジスタ名: '*'
続けるにはENTERを押すかコマンドを入力してください

というエラーが出るようになった。

この件については
https://groups.google.com/forum/#!topic/vim_dev/iEiInCavWKc
に添付されているnetrw.vba.gzを使うことで解決できた。