8

私はvim-fugitiveを使用しており、ステータスラインに追加%{fugitive#statusline()}すると、現在のgitブランチがうまく表示されます。

しかし、git ファイルのステータス インジケーター (git status出力など) はどうでしょうか。

たとえば、開いているファイルが追跡されていない、ステージングされている、クリーンであるなどの場合、インジケーターは「[?]」、「[M]」、「[C]」などを介してステータスラインに表示します。

そのような指標を追加する方法は?

4

2 に答える 2

2

私のaurumプラグインを試すことができます。1 文字のステータス インジケーターは%{Powerline#Functions#aurum#GetStatus()}です。ただし、aurum の目的の 1 つは、VCS の相違点をプラグイン インターフェイスの背後に隠すことであることに注意してください。また、「index で変更」などのステータスはありません (単に「変更された」だけです)。

「clean」以外のすべてのステータスでは大文字の最初の文字が表示され、「clean」では何も表示されません。aurum#status()これを変更したい場合に使用します。これPowerline#Functions#aurum#GetStatus()は、電力線で使用する関数の 2 行のラッパーですaurum#status()。動作を変更したい場合は、ラッパー用のラッパーを作成する必要はありません。

于 2012-09-22T16:04:33.187 に答える
2

これにより+、現在のファイルが変更されているかどうかが表示されます。

system("[[ -n \"$(git status --porcelain " . shellescape(expand("%")) . ")\" ]] && echo -n +")

vim-powerline セグメントとして:

https://github.com/twe4ked/dotfiles/blob/bd0f98531d3467e041af1b8f17556e0052389735/vim/plugin_config/powerline.vim#L1

于 2013-04-10T03:32:55.063 に答える