Высокое использование процессора Vim при открытии JS-файлов

Vim и особенно Gvim перестают отвечать и используют 100% процессора при открытии больших файлов .js (1000+ строк). Нажатие Ctrl c останавливает процесс. Независимо от того, какой Vim пытается открыть файл, он отображает содержимое файла – все сворачивается в одну складку – и каждый ввод символов в режиме вставки занимает минуты, чтобы отображать на экране. Затем я должен перезапустить Vim, чтобы иметь возможность редактировать файлы.

Это происходит не каждый раз, даже для тех же файлов, но происходит 3-5 раз в день.

Используя strace -p PID я вижу, что следующие сообщения повторяются непрерывно

 poll([{fd=7, events=POLLIN}, {fd=6, events=POLLIN}, {fd=3, events=POLLIN}, {fd=4, events=POLLIN}, {fd=8, events=POLLIN}], 5, 0) = 0 (Timeout) read(7, 0x7fffc4477280, 16) = -1 EAGAIN (Resource temporarily unavailable) recvfrom(6, 0x21848f4, 4096, 0, 0, 0) = -1 EAGAIN (Resource temporarily unavailable) poll([{fd=7, events=POLLIN}, {fd=6, events=POLLIN}, {fd=3, events=POLLIN}, {fd=4, events=POLLIN}, {fd=8, events=POLLIN}], 5, 0) = 0 (Timeout) read(7, 0x7fffc4477280, 16) = -1 EAGAIN (Resource temporarily unavailable) recvfrom(6, 0x21848f4, 4096, 0, 0, 0) = -1 EAGAIN (Resource temporarily unavailable) poll([{fd=7, events=POLLIN}, {fd=6, events=POLLIN}, {fd=3, events=POLLIN}, {fd=4, events=POLLIN}, {fd=8, events=POLLIN}], 5, 0) = 0 (Timeout) read(7, 0x7fffc4477280, 16) = -1 EAGAIN (Resource temporarily unavailable) recvfrom(6, 0x21848f4, 4096, 0, 0, 0) = -1 EAGAIN (Resource temporarily unavailable) ... 

Я пробовал с vim --noplugin , но та же проблема возникает. Я нахожусь на Ubuntu 12.04.1 x64, работающем самостоятельно скомпилированным Vim. vim :version дает следующую информацию:

 VIM - Vi IMproved 7.3 (2010 Aug 15, compiled Aug 15 2012 17:16:57) Included patches: 1-631 Huge version with GTK2 GUI. Features included (+) or not (-): +arabic +autocmd +balloon_eval +browse ++builtin_terms +byte_offset +cindent +clientserver +clipboard +cmdline_compl +cmdline_hist +cmdline_info +comments +conceal +cryptv +cscope +cursorbind +cursorshape +dialog_con_gui +diff +digraphs +dnd -ebcdic +emacs_tags +eval +ex_extra +extra_search +farsi +file_in_path +find_in_path +float +folding -footer +fork() +gettext -hangul_input +iconv +insert_expand +jumplist +keymap +langmap +libcall +linebreak +lispindent +listcmds +localmap -lua +menu +mksession +modify_fname +mouse +mouseshape +mouse_dec -mouse_gpm -mouse_jsbterm +mouse_netterm -mouse_sysmouse +mouse_xterm +mouse_urxvt +multi_byte +multi_lang -mzscheme +netbeans_intg +path_extra -perl +persistent_undo +postscript +printer +profile +python -python3 +quickfix +reltime +rightleft +ruby +scrollbind +signs +smartindent -sniff +startuptime +statusline -sun_workshop +syntax +tag_binary +tag_old_static -tag_any_white -tcl +terminfo +termresponse +textobjects +title +toolbar +user_commands +vertsplit +virtualedit +visual +visualextra +viminfo +vreplace +wildignore +wildmenu +windows +writebackup +X11 -xfontset +xim +xsmp_interact +xterm_clipboard -xterm_save system vimrc file: "$VIM/vimrc" user vimrc file: "$HOME/.vimrc" user exrc file: "$HOME/.exrc" system gvimrc file: "$VIM/gvimrc" user gvimrc file: "$HOME/.gvimrc" system menu file: "$VIMRUNTIME/menu.vim" fall-back for $VIM: "/usr/local/share/vim" Compilation: gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK -pthread -I/usr/include/gtk-2.0 -I/usr/lib/x86_64-linux-gnu/gtk-2.0/include -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/pango-1.0 -I/usr/include/gio-unix-2.0/ -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -I/usr/include/pixman-1 -I/usr/include/freetype2 -I /usr/include/libpng12 -I/usr/local/include -g -O2 -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1 Linking: gcc -L. -rdynamic -Wl,-export-dynamic -L/usr/local/lib -Wl,--as-needed -o vim -lgtk-x11-2.0 -lgdk-x11-2.0 -latk-1.0 -lgio-2.0 -lpangoft2-1.0 -lpangocairo-1.0 -lgdk_pixbuf-2.0 -lcairo -lpango-1.0 -lfreetype -lfontconfig -lgobject-2.0 -lglib-2.0 -lSM -lICE -lXpm -lXt -lX11 -lXdmcp -lSM -lICE -lm -ltinfo -lnsl -ldl -L/usr/lib/python2.7/config -lpython2.7 -lpthread -ldl -lutil -lm -Xlinker -export-dynamic -Wl,-O1 -Wl,-Bsymbolic-functions -lruby-1.9.1 -lpthread -lrt -ldl -lcrypt -lm -L/usr/lib 

Что-то не так с моей настройкой? В чем может быть проблема?

One Solution collect form web for “Высокое использование процессора Vim при открытии JS-файлов”

Попробуйте удалить любые дополнительные плагины или файлы синтаксиса для редактирования файлов JS. Плохо написанный файл vimscript или синтаксиса (в основном пучок регулярных выражений) может заставить Vim мгновенно перекусить все циклы процессора.

  • Клавиши курсора не перескакивают через вкладки в Vim
  • Каковы основные различия между vim и vi?
  • Как включить пакеты админ-пакетов vim?
  • Перемещение одной строки экрана вверх / вниз в многострочном тексте
  • будет ли тот же pid использоваться после убийства?
  • Неудовлетворенные зависимости
  • Сохранение с помощью CTRL-s в vim
  • Можно ли сделать VIM подчеркнутым найденным текстом?
  • xsel </ tmp / xselection не работает в скрипте
  • Сохранение и сохранение в Vim?
  • Как сделать символическую ссылку на / usr / bin / vim, но с параметрами запуска?
  • .exrc файл в домашнем каталоге не эффективен
  • Interesting Posts

    Добавить и скомпилировать apt-get менеджер пакетов для LFS

    Перемещение подкаталога в новый родительский каталог, где новое имя каталога увеличивается на 1

    Пакеты IP-пакетов произвольно

    Могу ли я исчерпывать дисковое пространство, создавая очень большое количество пустых файлов?

    Как установить общую папку из VirtualBox во время загрузки в Debian

    Bashrc имеет псевдоним SSH-команды для подключения и прямого cd к определенному пути

    Односторонняя синхронизация каталога, но оставляйте удаленные файлы, удаленные по месту назначения

    У меня нет закладки «Рабочий стол» в наутилусе, но в Thunar?

    Сколько строк появляется при загрузке типичного дистрибутива Linux?

    Возвращаемое значение процесса и сравнение номера

    Как установить беспроводной драйвер в Fedora 15?

    Простая функция обертки awk или псевдоним

    Команда Dig: гарантирован ли сортировка вывода?

    Удалить пустой раздел конфигурации

    Ошибка при запуске MySQL в кластере MariaDB Galera в CentOS 7

    Linux и Unix - лучшая ОС в мире.