J'essaie de remplacer un personnage - disons ;
- avec une nouvelle ligne utilisant replace-string
et/ou replace-regexp
à Emacs.
J'ai essayé les commandes suivantes:
M-x replace-string
RET ;
RET \n
Cela remplacera ;
avec 2 caractères: \n
.
M-x replace-regex
RET ;
RET \n
Cela entraîne l'erreur suivante (affichée dans le mini-tampon):
Utilisation non valide de "\" dans le texte de remplacement.
Quel est le problème avec l'utilisation de replace-string
pour cette tâche? Y a-t-il un autre moyen de le faire?
Merci.
M-x replace-string
RET ;
RETC-q C-j.
C-q pour quoted-insert
,
C-j est une nouvelle ligne.
À votre santé!
J'ai trouvé quatre manières de mettre une nouvelle ligne dans le mini-tampon.
C-o
C-q C-j
C-q 12
_ (12 est la valeur octale de newline)
C-x o dans la fenêtre principale, tuez une nouvelle ligne avec C-k, puis C-x o retournez au mini-tampon, tirez dessus avec C-y
N'oubliez pas que vous pouvez toujours couper et coller dans le mini-tampon.
Vous pouvez donc simplement copier un caractère de nouvelle ligne (ou n’importe quelle chaîne) à partir de votre mémoire tampon, puis tirez-le à la demande du texte de remplacement.
Plus explicitement:
Pour remplacer le caractère point-virgule (;) par une nouvelle ligne, procédez comme suit.
Un peu plus que l'explication originale.
Passer en mode texte
M-x text-mode
Mettre en surbrillance le bloc à mettre en retrait
Retrait
C+M \
Revenez à n'importe quel mode ..