обнаружение, если ctrlp открыт / активен

#vim #ctrlp

#vim #ctrlp

Вопрос:

Мне нравятся relativenumber s, но они оказываются медленными, если я перемещаюсь по файлам с очень длинными строками. Поэтому я добавил

 autocmd CursorMoved,CursorMovedI * if amp;relativenumber | set norelativenumber | endif
autocmd CursorHold,CursorHoldI * set relativenumber
set updatetime=500
  

в мой vimrc. Он отключает относительные числа во время перемещения курсора и снова включает их после этого. Однако это также позволяет использовать их в ctrlp. Тем более, что ctrlp отключается number , это приводит к переходу столбцов при наведении курсора. Есть ли способ определить, нахожусь ли я в данный момент в браузере файлов curlp?

Ответ №1:

Буфер CtrlP scratch, вероятно, имеет отдельное имя ( if bufname('') =~ 'ctrlp') ) или filetype ( if amp;filetype ==# 'ctrlp' ), которое вы можете использовать в аналогичном условии autocmd BufEnter .

(Примечание: я не использую плагин, поэтому приведенные выше имена приведены только для иллюстрации.)