Vi / vim : comment remplacer des espaces par des espaces insécables ( )
Tout est dans le titre.
J’ai souvent ce problème : je fais copier coller de code dans un article WordPress que je veux publier, je mets le code entre <code></code> mais le problème, c’est que les espaces de début sont ignorés et l’indentation est perdue.
Voici donc l’astuce, sous vi, pour remplacer tous les espaces uniquement au début de la ligne par .
C’est à dire que :
extend: 'Ext.panel.Panel',
devient :
extend: 'Ext.panel.Panel',
Ce que je ne veux pas bien évidemment.
J’ai posé la question ici : vim-regexp-help-change-spaces-to-nbsp.
Et je vous laisse y lire les réponses, mais la solution que j’ai retenue :
:%s/^ \+/\=repeat(" ",strlen(submatch(0)))
Site des vimgolfers : http://vimgolf.com/.