元に戻すツリーでファイルのすべてのバージョンを検索する


11

(バニラVIMコマンド、Gundo、または別のプラグインを使用して)ファイルのランダムな古いバージョンを1つずつ確認するよりも、Vimの取り消しツリーで特定の変更を見つける簡単な方法はありますか?

理想的には、Gundoによってプレビューペインに表示されるすべてのdiffと照合する検索パターンを入力し、その検索に一致するdiffがあるバージョンをGundoに表示させたいです。

この質問はほとんど同じものを尋ねますが、質問者は単にGundoを推奨する回答を受け入れました。これは素晴らしいのですが、私が求めていることを実行していないようです。

これをGundoの新機能として売り込みましたが、返答はありませんでした。

編集: undotreeのこの機能に対するオープンリクエストがあります。

注:この質問は、スーパーユーザーから「手動で移行」されています


注:plugin-gundoこの質問には適切なタグになりますが、残念ながらそのタグはまだ存在せず、担当者がいません。
カイルストランド

1
undotreeあります。それがgundoとどのように正確に異なるのか、または必要な機能をサポートしているのかどうかはわかりませんが、チェックしてみてください。
Martin Tournoij、2015

2
バンプ!Gundoの問題を確認すると、誰かが検索機能を提供するフォークを投稿しています。
joeytwiddle 2015年

@joeytwiddle見ました!まだチェックアウトしていません。
カイルストランド

回答:


6

では、いくつかのケースでは、これで十分かもしれません。

:changes

残念ながら、編集履歴の完全な概要は表示されません。変更のたびに表示されるテキスト行のみが表示されているようです。

これは、すべての単一行の挿入または編集を表示するには十分ですが、複数行の挿入の最後の行のみを表示し、削除されたテキストは表示しません。

自動的にではなく、視覚的にのみ検索できますが、このコマンドを取得し実行できます。

:PipeCmd changes | less

で検索できるようになり/ます。またはのgrep代わりににパイプしますless

そのリストを検索する別の方法は、Uniteプラグインをインストールしてから実行することです。

:Unite change

1
うーん。検索と置換を行うと、置換される単語がから完全に見えなくなる可能性があるため、changesそれほど役に立ちません。私が本当に望んでいるのは、できることであり:%s/foo/bar/g、それを検索しfooて(再構築して)foo存在していたファイルの最新バージョンを表示します。
カイルストランド

2

この機能を備えた「mundo」と呼ばれるgundoフォークがあります。

アンドゥツリーウィンドウで/は、ウィンドウ自体に表示されるテキストではなく、履歴を検索します。

(注:この機能は別のgundoフォークから採用されたようです。実装のクレジットがどこに属しているかわからないので、どちらのフォークがどちらが適切に機能するかを確認していません。)

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.