Réponses:
Utilisez qsuivi d'une lettre pour enregistrer une macro. Cela va simplement dans l'un des registres copier / coller afin que vous puissiez le coller normalement avec les commandes "xpou "xPen mode normal.
Pour le sauvegarder, ouvrez .vimrc et collez le contenu, puis le registre se trouvera au prochain démarrage de vim.
Le format est quelque chose comme:
let @q = 'macro contents'
Attention cependant aux citations. Il faudrait leur échapper correctement.
Donc, pour enregistrer une macro, vous pouvez faire:
qqq"qppour insérer la macro dans votre let @q = '...'ligneCtrl+r Ctrl+r registerNameles entrées enregistrent le contenu sans les interpréter - mieux que "qp. +1 pour la méthode in-vim néanmoins.
Pour une solution plus robuste, vous pouvez consulter Marvim .
Cela vous permet d'enregistrer une macro dans un espace de noms spécifique (ou d'utiliser le type de fichier comme espace de noms par défaut) et vous pouvez plus tard rechercher vos macros enregistrées et les charger dans un registre prêt à être utilisé.
Si vous réutilisez beaucoup de macros, c'est très utile.
Écrivez vos macros dans votre ~ / .vimrc, pour définir une macro lancée par CTRL + O par exemple, ajoutez la ligne suivante à votre ~ / .vimrc:
map <C-O> MACROTEXT
lorsque vous enregistrez une macro en tapant, qavous pouvez récupérer le texte de votre macro en tapant"ap
aregistre
La commande :mkexrc(ou :mkvimrc) peut être utilisée pour enregistrer tous les paramètres actuels :mapet :setdans un fichier. Voir :help mkexrcpour plus de détails.
Vous pouvez faire comme ça sur votre ~/.vimrc
:let @a="iHello World!\<CR>bye\<Esc>"
REMARQUE: vous devez utiliser des guillemets doubles pour pouvoir utiliser des touches spéciales comme dans \<this silly example>.
CTRL-V <ESC>mode insertion pour insérer le caractère correct. Un littéral<ESC>ne fonctionne pas