1

WindowsにVim73があり、ファイルブラウザを介してファイルを移動しようとしています。

「move」が実行可能でないというエラーが表示されていました(この投稿を参照)。デバッグを行った後、vim73\autoload\netrw.vimファイルに問題があることがわかりました。moveコマンドは機能しましたが、別の問題があります。参照している:Exディレクトリが現在の作業ディレクトリではないため、mv.exeコマンド(UnxUtilsから)がソースまたは宛先を見つけることができません。

問題を引き起こすnetrwからの行はこれです:

 let ret= system(g:netrw_localmovecmd." ".shellescape(fname)." ".shellescape(s:netrwmftgt))

shellescape()関数をでラップしようとしましexpand()たが、それは役に立たなかったようです。

ソースと宛先の絶対パスを取得する方法はありますか?

4

2 に答える 2

1

絶対パスを試すのではなく、g:netrw_keepdir0 に設定するとうまくいきますか? それはまさにあなたが望むものではありません (これは、vim CWD を取り、それを netrw に適用することであると思われます)。そのまま。

編集::help netrw-c詳細な説明を見てください。cnetrwのコマンドで十分かもしれません。

于 2012-03-09T00:23:32.287 に答える
0

結局のところ、カーソルが..ファイル リストの にある場合、それはディレクトリと見なされます。

私が実際に行う必要があったのは、試行する前にカーソルをバナー領域に移動すること、mtまたはmt親ディレクトリから移動することだけでした。

おっと!

于 2012-08-01T18:30:53.080 に答える