スキップしてメイン コンテンツに移動

投稿

2月, 2011の投稿を表示しています

vimスクリプトのuniteでsvn statusとsvn diffするsource書いた

書きました。 普段使い用に自己満足化した状態で作ってしまっているので、 必要だろうと思われる設定や機能等、教えていただけるとありがたいです。 更には“既にもっと便利なプラグインあるよ!”みたいなのもあれば教えていただけると助かります。 使い方は 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 に関してはこれ