Est-il possible d'afficher l'Indentation guides dans Vim?
Je suis un vieil utilisateur de Vim (3 ou 4 ans) qui a récemment commencé à traiter avec certains profondément imbriquée code. Ce code est indenté avec des espaces, pas d'onglets. Je tiens un peu de nettoyage et de non-distraction indication de l'indentation pour aider à garder la trace de bloc de code je suis quand je suis à la recherche de quelque chose de beaucoup de niveaux de profondeur.
:set list
Seulement onglet affichage, et de la ligne de caractères. J'ai trouvé un plug-in (ne semblent pas pour le creuser jusqu'à l'instant) qui mettra en évidence chaque niveau d'indentation au fur et à mesure des couleurs plus sombres, mais c'est visuellement attrayant. Idéalement, je voudrais voir de fines lignes verticales à chaque niveau d'indentation. De nombreux un nouveau genre éditeurs ont cette fonctionnalité, mais je ne suis pas prêt à renoncer à Vim pour l'instant.
Personne ne sait comment cela peut être réalisé?
- Jetez un oeil à github.com/nathanaelkane/vim-indent-guides
Vous devez vous connecter pour publier un commentaire.
NOTE: Cette réponse est un peu tardive pour le parti et aussi un plug sans vergogne 🙂
Peu importe, essayez mon Tiret-Guides.vim plugin. Il a été créé pour gratter ma propre démangeaisons liées à l'absence de tiret guides dans vim. Je suis assez d'attente pour quelqu'un d'autre de venir et de le créer, alors je l'ai fait moi-même.
Caractéristiques:
Voici quelques captures d'écran du plugin en action: mettez votre souris et cliquez sur ici.
let g:indent_guides_enable_on_vim_startup=1
à mon .vimrc pour permettre cela. (Je ne pouvais pas obtenir les fichiers d'aide à charger, mais le plugin a bien fonctionné après l'ajout de cette ligne.vous pouvez utiliser les onglets pour afficher l'indentation des guides et supprimer des onglets avant d'enregistrer le fichier:
Si vous indenter le code avec des espaces, vous pouvez essayer de mon plugin: https://github.com/Yggdroot/indentLine, il affiche fines lignes verticales, mais pas épais lignes verticales, comme les réponses ci-dessus mentionne. Si vous indenter le code avec onglet, il suffit de
:set list lcs=tab:\|\ (here is a space)
Cela permettra d'afficher les points d'indiquer votre niveau d'indentation que vous tapez. Les points de magie disparaître dès que vous quittez la ligne.
E. g:
Assez cool hein?
Probablement la solution la plus efficace serait de "tracer" indentation guides
à l'aide de match-mettre en évidence. Pour comprendre comment cela peut aider, regardez cet exemple:
Il met en évidence (à l'aide de la Recherche mettant en évidence groupe, il est possible d'utiliser tout
d'autres, bien sûr) les premier, cinquième, neuvième (et on continue)
colonne virtuelle de l'espace occupé par le symbole précédent, mais rien d'espaces de
le début de la ligne. Donc, ce produit quatre-espace de l'indentation en soulignant
pour les trois niveaux de profondeur.
De généraliser cette idée, il ne reste plus qu'à générer schéma comme celui
mentionnés ci-dessus en fonction du courant du tampon
textwidth
etshiftwidth
(pour traiter les plus profonds niveaux de retrait et le bon de retrait de la largeur). Cette tâche pourrait être
simplement automatisé, comme illustré dans la fonction ci-dessous.
Chaque fois que vous devez à l'indentation des guides dans la mémoire tampon, il peut être activé par
:call ToggleIndentGuides()
. Bien sûr, vous pouvez changer en soulignant groupe(ou en créer un spécial pour une utilisation dans l'indentation guides seulement), le programme d'installation pratique
mapping1, et/ou de l'appeler à partir d'
autocmd
pour certains fichiersles types.
1 Indentation guides mettant en évidence la configuration de mon
.vimrc
fichier: https://gist.github.com/734422
shiftwidth
positions, ce qui est exactement ce que la solution proposée ici n'.Essayer ce plugin VIM BlockHL
Il les codes de couleurs de l'indentation de chaque niveau différemment.
EDIT:Ce que lanaguge utilisez-vous? Ce plugin est pour le style C langues.
utilisez le Tiret-Guides.vim plugin, et de bascule de l'utilisation de l'ig quand vous en avez besoin. Parfois, il pourrait être gênant bien 🙂