Windowsでvimのopsplorer.vimを使ってみた。

| 2011年10月10日月曜日


vimをIDEっぽくできないかと探していると、opsplorer.vimなるものを見つけた。

  1. vim onlineからダウンロード。 リンク:opsplorer.vim
  2. pluginフォルダにopsplorer.vimを配置。(KaoriYaのvimを使っているなら runtime/pluginの下)
  3. vimを起動して :opsplorer
見つけたのはいいが、使ってみるも動かない。

どうやら、Windowsには対応していないようだ。
紹介サイトのスクリーンショットがMacばっかりだったからなんとなく察したけど。
他にも困っている人がいるだろうとさらに調べると対応版を作ってくれている人がいた。


mattn
opsplorer.vimをwin32でも動くようにしてみた。便利かどうかは知らない。http://gist.github.com/333696


十分に便利でありがたいです。
githubで公開されているようなのでダウンロードして、pluginフォルダにおいてみる。

起動するとうまく動いてくれたようだ。

が!

ここでちょっとした問題が・・・
フォルダの展開やファイルの選択系はWindowsに対応してくれたようだけど、コマンド系(ファイルのコピーやリネーム、削除)ができない。

ソースを見てみると、ファイルを削除しているであろう関数FileDelete()の中で呼び出してるコマンドが"rm"だった・・・
これはWindowsでは動かんだろうな。

system()関数で呼び出されるのは、たぶん、CMDのコマンドだろうからここは"del"でないといけないはず。

PowerShellを常時使ってるから、このあたりの機能はなくてもいいんだけど、連休中にやることもなかったので、vimマクロはほとんど触ったことがないけどいじってみた。

詳細は一番下にリンクを張ったコードをダウンロードして見てもらえばいいけど、外部コマンドを呼んでいるっぽいところを変更しただけ。

let i=system("rm -f ".filename)


if has("win32")
let filename = substitute(filename,".*[\\/]",'','')
let i=system("del /Q ".filename)
else
let i=system("rm -f ".filename)
endif

Windowsならフォルダの区切り文字を整理して、"del"コマンドを呼ぶ。
削除、コピー、リネーム、移動を変更してみた。
大体動いているようだけど、なぜか移動だけは動かなかった。
わかる人、助けて下さいm(_ _)m

他にも困ってる人がいると思うので変更したソースを公開する。
本来はgithubを使ったほうがいいんだろうけど、アカウントを持ってないので今回はやめておく。



1 コメント:

Unknown さんのコメント...

私もgvimでOpsploreを入れたのに効かずに困っていたところでした。
こちらを見て無事解決しました、ありがとうございます。