Я пытаюсь установить hlsearch по умолчанию при вводе буфера в vim.
Выполнение :set hls
вручную при входе в буфер выполняет ожидаемое мной действие. Однако, когда я добавляю autocmd BufEnter * set hls
в мой .vimrc (и перезагружаю vim), ничего не происходит при открытии буфера. Добавление двоеточия перед set
не меняет поведение.
Для контекста я пытаюсь использовать этот скрипт, но по умолчанию он включен. Я попробовал оба совета, упомянутые в разделе "загрузка при запуске" на странице, но безуспешно.
Я удалил все остальное из моего .vimrc, так что это не вмешательство чего-то другого.
РЕДАКТИРОВАТЬ:
Я на Vim 7.4, «огромная» версия, приобретенная с homebrew.
Вот содержимое моего .vimrc, когда я тестировал call AutoHighlightToggle()
. Он не выделяется при запуске, но после двух нажатий z/
работает правильно:
nnoremap z/ :if AutoHighlightToggle()<Bar>set hls<Bar>endif<CR>
function! AutoHighlightToggle()
let @/ = ''
if exists('#auto_highlight')
au! auto_highlight
augroup! auto_highlight
setl updatetime=4000
echo 'Highlight current word: off'
return 0
else
augroup auto_highlight
au!
au CursorHold * let @/ = '\V\<'.escape(expand('<cword>'), '\').'\>'
augroup end
setl updatetime=500
echo 'Highlight current word: ON'
return 1
endif
endfunction
call AutoHighlightToggle()