書きました。
普段使い用に自己満足化した状態で作ってしまっているので、
必要だろうと思われる設定や機能等、教えていただけるとありがたいです。
更には“既にもっと便利なプラグインあるよ!”みたいなのもあれば教えていただけると助かります。
使い方は unite.vim を入れた上で、autoloadディレクトリをマージしてもらえればいけると思います。
そもそも Unite とは、emacsのanythingプラグインと似た感じの動作をするvimのプラグインです。すばらしいですね!
Uniteを開発されているShougoさんのリポジトリ(github):https://github.com/Shougo/unite.vim
ということで僕が書いた駄ソースは以下になります。
https://github.com/kmnk/vim-unite-svn
svn/statusに対してsvnコマンドを実行するactionを拡張していますが、ベースは jump_list なので特に違和感は無いと思います。
拡張しているのは以下のコマンドです。
以下、簡単な動作説明
Unite svn/status すると
簡単な一覧が出ます。
Tabでメニューを出して add と打って実行すると
svn addされてステータスが変わります。
複数ファイルの場合もスペースでマークして
Tabでメニューを出して commit と打って実行すると
コメント入力画面になるので(普段使わないので -m 対応してないです)、記述して:wqで
コミットされます。
適当に編集すると差分が発生するので
選択して diff と打って実行すると
Unite svn/diff:{file name 1}:{file name 2}:... が実行された結果が出るので、見たい行を選択して Enter を押すと
デフォルトの open が動作して対象ファイルの対象行に飛びます。
一部を選択して操作するのが若干簡単になるかもしれません。
特に今のところ status と diff に関してはこれで困ってないので他により便利なsourceが見つかったりしなければ、次は blame を書こうと思います。
追記(11/02/12 23:22):
書きました。
blame差分
大き目のブランチで試していないので動作が危ういかもしれないです…
追記(11/02/20 22:04):
↑多分大丈夫そうでした。
gitは自分が使いこなせてないので、実用Gitをもりもり読み終わったら作ってみます。
追記(11/02/21):
↑blameやっぱりエラーが出るようです…
裏では泥臭く正規表現書いてmatchlist呼んでいるだけなのでどこかでつまづくかもしれないです
普段使い用に自己満足化した状態で作ってしまっているので、
必要だろうと思われる設定や機能等、教えていただけるとありがたいです。
更には“既にもっと便利なプラグインあるよ!”みたいなのもあれば教えていただけると助かります。
使い方は unite.vim を入れた上で、autoloadディレクトリをマージしてもらえればいけると思います。
そもそも Unite とは、emacsのanythingプラグインと似た感じの動作をするvimのプラグインです。すばらしいですね!
Uniteを開発されているShougoさんのリポジトリ(github):https://github.com/Shougo/unite.vim
ということで僕が書いた駄ソースは以下になります。
https://github.com/kmnk/vim-unite-svn
svn/statusに対してsvnコマンドを実行するactionを拡張していますが、ベースは jump_list なので特に違和感は無いと思います。
拡張しているのは以下のコマンドです。
- 複数選択可
- commit
- add
- revert
- delete
- diff
- 複数選択不可
- blame
- log
以下、簡単な動作説明
Unite svn/status すると
簡単な一覧が出ます。
Tabでメニューを出して add と打って実行すると
svn addされてステータスが変わります。
複数ファイルの場合もスペースでマークして
Tabでメニューを出して commit と打って実行すると
コメント入力画面になるので(普段使わないので -m 対応してないです)、記述して:wqで
コミットされます。
適当に編集すると差分が発生するので
選択して diff と打って実行すると
Unite svn/diff:{file name 1}:{file name 2}:... が実行された結果が出るので、見たい行を選択して Enter を押すと
デフォルトの open が動作して対象ファイルの対象行に飛びます。
一部を選択して操作するのが若干簡単になるかもしれません。
特に今のところ status と diff に関してはこれで困ってないので他により便利なsourceが見つかったりしなければ、次は blame を書こうと思います。
追記(11/02/12 23:22):
書きました。
blame差分
大き目のブランチで試していないので動作が危ういかもしれないです…
追記(11/02/20 22:04):
↑多分大丈夫そうでした。
gitは自分が使いこなせてないので、実用Gitをもりもり読み終わったら作ってみます。
追記(11/02/21):
↑blameやっぱりエラーが出るようです…
裏では泥臭く正規表現書いてmatchlist呼んでいるだけなのでどこかでつまづくかもしれないです
コメント
コメントを投稿