349 votes

Comment faire pour voir quels sont les plugins de prise de Vim lent?

Est-il un moyen pour le profil de Vim plugins?

Mon MacVim devient plus lent et plus lent lorsque j'ouvre un vaste .py. Je sais que je pourrais désélectionner tous les plugins et de sélectionner à nouveau un par un pour vérifier le plugin est le coupable, mais est-il un moyen plus rapide?

Mon dotvim est ici: https://github.com/charlax/dotvim

549voto

ZyX Points 26516

Vous pouvez utiliser les haut-profilage de soutien: après le lancement de vim ne

:profile start profile.log
:profile func *
:profile file *
" At this point do slow actions
:profile pause
:noautocmd qall!

(contrairement à arrêter de fumer noautocmd n'est pas vraiment nécessaire, il est tout à fait vim quitter plus vite).

Remarque: vous ne pourrez pas obtenir d'informations sur les fonctions y ont été supprimés avant de quitter vim.

83voto

feihu Points 573

J'ai trouvé un autre très utile vim bâtiment méthode pour montrer exactement le timing des messages lors du chargement de votre .vimrc.

vim --startuptime timeCost.txt timeCost.txt

S'il vous plaît exécuter:

:help --startuptime

dans VIM pour obtenir plus d'informations.

31voto

Ingo Karkat Points 61399

Il pourrait être un plugin ou la coloration syntaxique; essayez un :syntax off lorsque cela se produit et voir si Vim instantanément devient plus rapide.

Avec les plugins, un "général de la lenteur" vient généralement à partir de autocommands; un :autocmd listes de tous. Étudier en tuant certains d'entre eux via :autocmd! [group] {event}. Procéder de plus en plus fréquentes à des événements ( CursorMoved[I]) de moins en moins fréquentes (par exemple, BufWinEnter).

Si vous pouvez un peu reproduire de manière fiable la lenteur, un binaire de recherche qui pourraient vous aider: se Déplacer loin de la moitié des fichiers dans ~/.vim/plugin/, puis de l'autre, de le répéter dans l'ensemble qui a été lente.

Si vous avez vraiment besoin de regarder sous le capot, obtenir un Vim version qui a l' :profile commande activée. (Pas la vanille BIG version de Windows, mais celui qui est livré avec Cygwin a elle; aussi, l'auto-compilation est assez facile dans la plupart des distributions.)

17voto

Prince Goulash Points 7365

Je trouve cela très utile pour imprimer toutes les Vim activité d'un fichier par le démarrage de Vim avec l' -V option:

vim -V12log

Cela fournit le maximum de verbosité (niveau 12) et des sorties pour le fichier log. Vous pouvez ensuite effectuer certaines Vim actions que vous savez être lente, puis voir quelles fonctions/mappings sont appelés en interne.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X