Parfois, j'essaie une personnalisation/commande dans mon vimrc. Tout semble correct, mais cela ne fonctionne tout simplement pas.
Il est difficile de savoir ce qui se passe au démarrage de vim et de savoir quelle commande a échoué ou non, il est donc très difficile de déboguer ce qui peut causer un problème dans mon vimrc. C'est une approche par erreur d'essai, qui prend du temps et qui est vraiment un PITA. Par exemple, j'ai des problèmes avec le plugin snipmate dans certains fichiers et je n'ai tout simplement pas la moindre idée de la façon de découvrir le problème.
Existe-t-il un "journal d'exécution" au démarrage de vim, indiquant quelles commandes il a exécutées, lesquelles ont échoué et autres? Cela m'aiderait beaucoup.
exécuter vim avec l'option -V [N] fera un journal d'exécution assez lourd, ici N est le niveau de débogage.
vim -V9myVim.log
créerait un journal du niveau de débogage 9 dans le répertoire courant avec le nom de fichier myVim.log
:messages
affiche tous les avertissements, erreurs et messages d'information qui sont apparus (éventuellement brièvement) dans la ligne d'état de vim.
:echo errmsg
imprime le message d'erreur le plus récent.
g<
est une autre fonctionnalité que peu de gens connaissent. De :help g<
:
Le
g<
La commande peut être utilisée pour voir la dernière page de la sortie de la commande précédente. Ceci est particulièrement utile si vous avez accidentellement tapé<Space>
à l'invite de saisie.
Par exemple, essayez :!ls
puis annulez l'invite, puis appuyez sur g<
.
Mettez cette fonction dans .vimrc:
function! ToggleVerbose()
if !&verbose
set verbosefile=~/.log/vim/verbose.log
set verbose=15
else
set verbose=0
set verbosefile=
endif
endfunction
Créez ensuite le répertoire ~/.log/vim
Et appelez ToggleVerbose()
pour obtenir votre journal ~/.log/vim/verbose.log
. Notez que vous pouvez intercepter l'erreur "variable imbriquée trop profondément pour l'affichage" qui n'apparaîtra pas normalement simplement parce que vous avez augmenté votre niveau de détail.
Je ne pense pas qu'il existe un journal d'exécution, en soi , mais vous pouvez l'exécuter en mode débogage.
http://web.archive.org/web/20090323034339/http://www.troubleshootingwiki.org/Debugging_Vim_Scripts
J'ai dû ajouter "set nocp" pour utiliser la fonction "ToggleVerbose ()" lors de l'exécution en root à cause de & verbose
Cela va probablement à l'encontre de tout SO signifie, mais voici ce que je fais: je viens de frapper l'écran d'impression dès que l'avertissement apparaît et regarde l'image.