サインが追加されていない場合でも、サイン列を常に表示するにはどうすればよいですか?

サインが追加されていない場合でも、サイン列を常に表示するにはどうすればよいですか?

私は今、Git ガタープラグインVim の場合は、 に従って追加/変更/削除された行を表示しますgit diff。 は、Sign Column各行の横に文字を表示するために使用します。

現時点では、保存時に列が表示されますが、これはかなり不快です。空であっても、常に列が表示されるようにしたいと思います。

サイン列を常に表示するにはどうすればよいですか?

答え1

Vim 7.4.2201 以降では、次の操作を実行できます。

:set signcolumn=yes

Cp.:help 'signcolumn'古いバージョンの Vim では、ダミー記号を定義して現在のバッファに配置する必要があります。

:sign define dummy
:execute 'sign place 9999 line=1 name=dummy buffer=' . bufnr('')

答え2

vim-gitgutter の場合、 で次の変数を設定することもできます~/.vimrc

let g:gitgutter_sign_column_always = 1

アップデート

プラグインは上記の行を削除して代わりに次の行を使用するように警告を発します。

set signcolumn="yes"

答え3

サインを定義して配置するというちょっとしたダンスはうまく機能しますが、私にとってうまく機能するよりエレガントな代替案は次のとおりです。

autocmd BufRead,BufNewFile * setlocal signcolumn=yes

また、列が存在しないはずの特定のファイルタイプがある場合:

autocmd FileType tagbar,nerdtree setlocal signcolumn=no

関連情報