LINUX.ORG.RU

Vim popup мерцание

 


0

3

Доброго времени суток. vim-7.4 При перемещении по popup листу автокомплита(YouCompleteMe) мерцает/моргает само меню автодополнения и статуслайн(полоска, которая разделяет основное окно и окно preview) preview окошка сверху. Пробовал:

set lazyredraw
set ttyfast
Все равно мерцает/моргает. Может vim что подскажет?


Я не использую YCM, мне с головой хватает Shougo/neocomplete; скорее всего это баг в самом YCM (включая status line), попробуй обновить вим до свежайшего (7.4.1181), ну и сам YCM тоже.

kep ()
Ответ на: комментарий от kep

Выяснил, что если выключить preview, то не моргает, но мне preview нужно. Попробую обновить, спасибо.

momo ()
Ответ на: комментарий от kep

Еще хотел у тебя спросить, как там neovim? не пользуешься?

momo ()
Ответ на: комментарий от momo

я на

app-editors/vim-core-9999
app-editors/vim-9999
сижу, и тебе советую.

как там neovim? не пользуешься?

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

kep ()
Ответ на: комментарий от kep

Народ пишет везде, что это vim bug, и что надо выключать preview. Выглядит это примерно так. Если не зажимать стрелку/Tab, то так жестко мерцать не будет, но все равно неприятно.

momo ()
Ответ на: комментарий от kep

Перенес

set nocompatible
set lazyredraw
в конец, и всё стало отлично!

В чем может быть причина?

momo ()

И let g:airline#extensions#tabline#enabled = 0, если airline используется.

momo ()
Ответ на: комментарий от momo

preview используешь в neocomplete? или там нет такого?

не в курсе, что это такое, очевидно мне это не нужно, но если это автоматический попап с вариантами комплита по ходу ввода, то в neocomplete емпнип это по-дефолту. Работает отлично.

kep ()
Ответ на: комментарий от momo

лол, я не знал, что quickfix называют как-то иначе, нет, в neocomplete в общих случаях он не используется, только для некоторых языков в паре дополнительными плагинами, например для js это tern_for_vim.

kep ()

Использую вим на разных платформах с ycm - ничего не мерцает. Была когда-то проблема с «тормозами» ycm при каком-то из set foldmethod. Замена на set foldmethod=marker решило проблему тормозов.

И да set lazyredraw у меня включено, а set nocompatible стоит до загрузки всех плагинов и прочих опций.

andreyu ★★★★★ ()
Ответ на: комментарий от andreyu

Посмотри, мерцает, если список автокомплита большой и строки в нем длинные? Если зажать вниз/таб, мерцает? airline стоит? Можешь показать конфиг YCM?

momo ()
Ответ на: комментарий от andreyu

Вернул обратно nocompatible, все отлично. Гнал видимо временно vim или дело только в airline. Но немного все равно подмигивает.

momo ()
Ответ на: комментарий от momo

Посмотри, мерцает, если список автокомплита большой

У меня стоит ограничение на количество строк в попапах.

set pumheight=15        " Limit popup menu height

и строки в нем длинные?

Да, строки бывают длинные.

Если зажать вниз/таб, мерцает?

Нет, не мерцает. Но я для перемещения привык к ctrl+p / ctrl+n

airline стоит?

Да.

Можешь показать конфиг YCM?

let g:ycm_global_ycm_extra_conf               = $HOME.'/.vim/ycm_extra_conf.py'
let g:ycm_confirm_extra_conf                  = 0
let g:ycm_complete_in_comments                = 1
let g:ycm_complete_in_strings                 = 1
let g:ycm_echo_current_diagnostic             = 1
let g:ycm_enable_diagnostic_signs             = 1
let g:ycm_enable_diagnostic_highlighting      = 0
let g:ycm_collect_identifiers_from_tags_files = 0
let g:ycm_min_num_identifier_candidate_chars  = 0
let g:ycm_use_ultisnips_completer             = 1
andreyu ★★★★★ ()

В итоге необходимо

let g:airline_exclude_preview = 1  
let g:airline#extensions#tabline#enabled = 0

Так и не понял есть ли польза от set lazyredraw.

Если нужно, чтобы буферы сверху отображались как табы(let g:airline#extensions#tabline#enabled = 0), то есть fholgado/minibufexpl.vim

Всем спасибо.

momo ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.