4

Когда я пытаюсь (например) прокрутить вниз "конец" файла, используя pageDown или клавишу со стрелкой вниз, GVim традиционно издает звук. Я отключил это, но еще одна неприятная вещь, которую он делает, это мерцание (предположительно, чтобы "предупредить" пользователя). Как я могу отключить это?

Я использую Ubuntu 11.04 с установленным PPA Gnome-3. У меня есть видеокарта "ATI Technologies Inc M880G [Mobility Radeon HD 4200]".

Приветствия, Джон Х.

3 ответа3

5

GVim традиционно издает звук. Я отключил это, [...]

Вы обнаружили, что :help visualbell говорит вам. Настройка visualbell не отключает звонок. Это изменяет колокол так , что вместо того , чтобы выводить bel последовательность TERMINFO (TERMCAP код bl он выдает последовательность flash TERMINFO (TERMCAP код vb

Чтобы отключить звонок, вы должны фактически обнулить одну из этих последовательностей terminfo, так как vim не может указать, что вам вообще не нужен "колокол" любого вида, а есть только способ переключения между двумя типами колокол.

Вы можете переопределить возможности терминала из vim с помощью команды :set . Устанавливаемые переменные в vim, которые переопределяют возможности терминала, названы в честь имен termcap, а не имен terminfo, и vim не имеет переменной t_bl . Таким образом, вы должны аннулировать возможность flash , используя переменную, названную в честь ее кода termcap vb , так как нельзя аннулировать возможность bel , а также выбрать ее в качестве используемого вами звонка.

:set visualbell t_vb=
1

Итак, спасибо JdeBP за его ответ, который отлично работал, когда вставлялся в GVIM во время выполнения, но не когда помещался в .vimrc. Я нашел способ здесь Ответ заключается в том, чтобы поместить это в ваш .vimrc:

" - Stop the bell ringing all the time when you do something dumb
" - or unnecessary.
set visualbell t_vb=
au GuiEnter * set visualbell t_vb=
0

Похоже, у вас включена функция vim "визуальный звонок", которая предупреждает пользователя о вспышке каждый раз, когда обычно звучит звонок (как вы и подозревали).

Вы можете отключить его для текущего сеанса, набрав:

:set novb

или, более того, навсегда отключите его, добавив строку set novb в ваш .vimrc .

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