J'ai un objectif simple: Mapper Ctrl-C, une commande que je ne pense pas avoir jamais utilisée pour tuer vim, pour insérer automatiquement au début d'une ligne le caractère correct (s) pour commenter cette ligne en fonction du type de fichier du fichier. J'ai pensé que je pourrais utiliser une autocommande pour reconnaître le type de fichier et définir une variable vim pour le caractère de commentaire correct lorsque le fichier est ouvert. J'ai donc essayé quelque chose comme:Insérer des variables vim dans le texte pour raccourci de commentaire
" Control C, which is NEVER used. Now comments out lines!
autocmd BufNewFile,BufRead *.c let CommentChar = "//"
autocmd BufNewFile,BufRead *.py let CommentChar = "#"
map <C-C> mwI:echo &CommentChar<Esc>`wll
Cette carte marque mon emplacement actuel, va au début de la ligne en mode d'insertion, fait écho le caractère de commentaire (s) à ce moment, entre en mode de commande, REMONTE à la marque set, et va deux caractères juste pour compenser les caractères de commentaire insérés (en supposant que le commentaire de style C).
La partie en italique est la partie avec laquelle j'ai des problèmes; c'est seulement là comme un endroit pour représenter ce que je veux faire. Pouvez-vous m'aider à comprendre comment y parvenir? Points bonus si vous utilisez strlen (CommentChar) pour avancer le bon nombre d'espaces vers la droite! Points bonus supplémentaires pour le maître-vim qui inclut comment faire des commentaires de style bloc si vous êtes en mode visuel !! Je suis encore relativement nouveau chez vim scripting; mon .vimrc est un maigre 98 lignes long, donc si vous pouviez m'aider s'il vous plaît en expliquant les réponses que vous fournissez! Merci.
le '' 'registre est génial :) – Benoit
Merci d'avoir expliqué tout cela. J'avais lu à propos de i_CTRL-R mais je ne l'avais pas compris. Grâce à vous j'ai réussi à faire fonctionner mon petit script (mais j'ai changé 'wll pour' w: exe "normal" .strlen (CommentChar). "L" pour ramener le curseur au bon endroit). Merci aussi à vous, j'ai abandonné mon script et j'utilise maintenant NERDCommenter! Mais au moins j'en ai appris plus sur vim dans le processus. –
physicsmichael