VIM очень медленно, чтобы начать - PullRequest
0 голосов
/ 26 февраля 2020

OS == FreeBSD-12.1p2
Vim == 8.1.2372

Я столкнулся с проблемой, связанной с чрезмерно медленным временем запуска vim только на одной системе. Содержимое vim --startuptime vim_startuptime.log выглядит следующим образом:

times in msec
 clock   self+sourced   self:  sourced script
 clock   elapsed:              other lines

000.030  000.030: --- VIM STARTING ---
000.166  000.136: Allocated generic buffers
000.293  000.127: locale set
000.307  000.014: GUI prepared
000.309  000.002: clipboard setup
000.334  000.025: window checked
001.000  000.666: inits 1
001.064  000.064: parsing arguments
001.066  000.002: expanding arguments
001.136  000.070: shell init
001.795  000.659: Termcap init
001.846  000.051: inits 2
002.060  000.214: init highlight
003.900  001.183  001.183: sourcing /usr/local/share/vim/vim81/syntax/syncolor.vim
. . .
018.890  001.561: loading plugins
018.997  000.107: loading packages
019.028  000.031: loading after plugins
019.077  000.049: inits 3
019.197  000.120: reading viminfo
75047.076  75027.879: setup clipboard
75047.146  000.070: setting raw mode
75047.161  000.015: start termcap
75047.191  000.030: clearing screen
75047.457  000.266: opening buffers
75047.551  000.094: BufEnter autocommands
75047.555  000.004: editing files in windows
75047.741  000.186: VimEnter autocommands
75047.744  000.003: before starting main loop
75048.149  000.405: first screen update
75048.151  000.002: --- VIM STARTED ---

Однако, если я отключаю X, то это результат (vim -X --startuptime vim_startuptime-X.log):

times in msec
 clock   self+sourced   self:  sourced script
 clock   elapsed:              other lines

000.030  000.030: --- VIM STARTING ---
000.165  000.135: Allocated generic buffers
000.293  000.128: locale set
000.309  000.016: GUI prepared
000.310  000.001: clipboard setup
000.336  000.026: window checked
001.009  000.673: inits 1
001.074  000.065: parsing arguments
001.076  000.002: expanding arguments
001.146  000.070: shell init
001.801  000.655: Termcap init
001.853  000.052: inits 2
002.067  000.214: init highlight
003.936  001.214  001.214: sourcing /usr/local/share/vim/vim81/syntax/syncolor.vim
. . .
019.029  001.555: loading plugins
019.137  000.108: loading packages
019.168  000.031: loading after plugins
019.192  000.024: inits 3
019.307  000.115: reading viminfo
019.309  000.002: setup clipboard
019.363  000.054: setting raw mode
019.376  000.013: start termcap
019.402  000.026: clearing screen
019.811  000.409: opening buffers
019.856  000.045: BufEnter autocommands
019.859  000.003: editing files in windows
020.005  000.146: VimEnter autocommands
020.008  000.003: before starting main loop
020.390  000.382: first screen update
020.391  000.001: --- VIM STARTED ---

Я подключаюсь к этой системе с помощью ssh -X -t и обычно используют gvim для отображения окна редактирования на моем рабочем столе. Когда я делаю это на проблемном хосте в дополнение к длительной задержке, я получаю сообщение о том, что дочерний процесс не может открыть GUI. Ранее я запускал gvim на этом хосте без проблем.

Оба файла / etc / ssh / sshd_config обоих хостов идентичны, за исключением адреса прослушивания. Yhe записи X11 в каждом перечислены ниже:

grep -in x11 /etc/ssh/sshd_config
102:#X11Forwarding yes
103:#X11DisplayOffset 10
104:#X11UseLocalhost yes
147:# To allow ssh tunneling in jails set X11UseLocalhost to NO
148:X11UseLocalhost no
174:#   X11Forwarding no

У меня есть идентично настроенный хост (аппаратное обеспечение, ОС, sshd_config), к которому я также подключаюсь через ssh -X -t, где эта проблема не возникает. Я попытался удалить и переустановить vim на проблемном хосте, без разницы.

Аналогичным образом я удалил каталог .vim и файл .viminfo из домашнего каталога пользователя. Это не повлияло на время запуска. В любом случае эта проблема не ограничивается одним идентификатором пользователя.

Журнал отладки (vim -V9vim_startup_debug.log) содержит следующее:

. . .
Searching for "/usr/local/share/vim/vimfiles/after/plugin/**/*.vim"
Searching for "/root/.vim/after/plugin/**/*.vim"
not found in 'runtimepath': "plugin/**/*.vim"
Reading viminfo file "/root/.viminfo" info oldfiles
Opening the X display failed
Executing BufEnter Autocommands for "*"
autocommand sil call s:LocalBrowse(expand("<amatch>"))
. . .

Я открыт для предложений относительно того, как решить эту проблему проблема. Очевидно, что переадресация X11 так или иначе связана с тем, что проблема заключается в настройке буфера обмена, но я понятия не имею, как выяснить, в чем именно заключается проблема.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...