27

Я только что добавил плагин Git Gutter для Vim, который показывает добавленные / измененные / удаленные строки в соответствии с git diff . Он использует Sign Column для отображения символов рядом с каждой строкой.

На данный момент столбец появляется при сохранении, что довольно неприятно. Я бы предпочел, чтобы столбец всегда отображался, даже если он пуст.

Как сделать так, чтобы столбец подписи всегда был виден?

3 ответа3

34

Начиная с Vim 7.4.2201, вы можете делать:

:set signcolumn=yes

Cp. :help 'signcolumn'. Для более старых версий Vim вы должны определить фиктивный знак и поместить его в текущий буфер:

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

В частности, для vim-gitgutter вы можете установить следующую переменную в вашем ~/.vimrc:

let g:gitgutter_sign_column_always = 1

ОБНОВИТЬ

Плагин теперь выдаст предупреждение, чтобы удалить вышеуказанную строку и вместо этого использовать:

set signcolumn="yes"
4

В то время как маленький танец, определяющий знак и размещающий его, работает хорошо, более элегантная альтернатива, которая подходит мне:

autocmd BufRead,BufNewFile * setlocal signcolumn=yes

И если есть определенные типы файлов, которые не должны иметь столбец:

autocmd FileType tagbar,nerdtree setlocal signcolumn=no

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .