Comment convertir tout le texte de Vim en minuscules ? Est-ce même possible ?
Ou ggguG si vous voulez le faire sans sélection visuelle. :help gu
Comment convertir tout le texte de Vim en minuscules ? Est-ce même possible ?
Je suppose que vous voulez mettre le texte en minuscules. La solution est assez simple :
ggVGu
Explication :
Si vous voulez vraiment petites capitales alors non, ce n'est pas possible, tout comme il n'est pas possible de convertir un texte en gras ou en italique dans n'importe quel système de gestion de l'information. éditeur de texte (par opposition à traitement de texte ). Si vous voulez convertir du texte en minuscules, créez un bloc visuel et appuyez sur u
(ou U
pour convertir en majuscules). Tilde ( ~
) en mode commande inverse la casse du caractère situé sous le curseur.
Si vous voulez voir tout le texte dans Vim en petites capitales, vous pouvez vous tourner vers l'option guifont
ou tapez :set guifont=*
si votre version de Vim supporte le sélecteur de police GUI.
Je pense qu'il est utile de mentionner que vous ne devez pas nécessairement créer un bloc visuel pour mettre en minuscules un bloc de texte. guu
permet de mettre une ligne en minuscule, et gu[motion]
va mettre en minuscule le texte de cette motion. De même, gUU
y gU[motion]
fonctionnent de la même manière, mais pour les majuscules.
En fait, les petites capitales sont également possibles pour la plupart des lettres, en utilisant cosvwxz.
C'est juste un hack, cependant. Elles ne sont pas destinées à être utilisées comme des petites capitales normales et ne sont pas bien supportées par les polices. (Sur ma machine de bureau, le F rend étrangement, sur mon téléphone il ne rend pas du tout, pour donner un exemple). Quoi qu'il en soit, c'est une partie intéressante d'Unicode, merci !
:%s/.*/\L&
suffirait (il n'est pas nécessaire d'avoir le g
depuis .*
sélectionne la ligne entière)
Comme le ferait :%s/./\L&/g
puisque /g/ désigne une opération qui est globale pour la ligne. Ce qui m'énerve, cependant, c'est le &
. Pourquoi cela est-il nécessaire ?
Il y a plusieurs façons d'écorcher un chat... voici celle que j'ai choisie. posté sur :
:%s/[A-Z]/\L&/g
De même pour les majuscules :
:%s/[a-z]/\U&/g
Je préfère cette méthode parce que j'utilise cette construction ( :%s/[pattern]/replace/g
) tout le temps pour que ce soit plus naturel.
Je pense qu'il y a une erreur de frappe dans le dernier exemple ('de même pour les majuscules') - l'expression doit être remplacée par [a-z] plutôt que par '[A-Z]'.
:%s/./\U&/g
fonctionne également. Il s'avère qu'il ignore les chiffres et les caractères non alphabétiques. Ce qui me gêne, c'est le &
. Pourquoi n'est-ce pas \U (ou \L ) suffit-elle à elle seule ? Peut-on avoir une explication à ce sujet ?
Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.
0 votes
Nous avons beaucoup de pages html avec tous les caractères en majuscules. Cela m'évite de devoir tout retaper en minuscules.
2 votes
Avant que la question ne soit modifiée, il s'agissait de savoir comment convertir tout le texte dans vim en petites capitales. Évidemment, il y a un cas d'utilisation pour convertir du texte en minuscules.
7 votes
Le site web du VIM a la réponse : vim.wikia.com/wiki/Switching_case_of_characters Merci.