Bonjour ,
Apres qqs desagrement de fonctionnement de mon PC j'ai recupéré les sources
de mon petit site perso ( *.html )
qd je les ouvre avec emacs a chaque fin de ligne , j'ai la chaine de
caractere ^M^M
Je suis vraiment un neuneu en regexp et je sais que le caractere ^ a une
signification en "regexp"
or , pour remplacer massivement , je n'utilise ( parceque je ne sais
utiliser ) que C-M-%
C-M-% utilise les regexp . je souhaiterai me deberasser de ces "^M^M"
1°) y aurai-til une commande similaire a C-M-% mais qui n'utilise pas lees
regexp ?
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Lam
Rakotomandimby Mihamina writes:
Bonjour , Apres qqs desagrement de fonctionnement de mon PC j'ai recupéré les sources de mon petit site perso ( *.html ) qd je les ouvre avec emacs a chaque fin de ligne , j'ai la chaine de caractere ^M^M
Je suis vraiment un neuneu en regexp et je sais que le caractere ^ a une signification en "regexp" or , pour remplacer massivement , je n'utilise ( parceque je ne sais utiliser ) que C-M-%
C-M-% utilise les regexp . je souhaiterai me deberasser de ces "^M^M"
1°) y aurai-til une commande similaire a C-M-% mais qui n'utilise pas lees regexp ?
OU 2°) quelle regexp correspodrai a ^M^M ?
Merci d'avance
moi j'ai ca :
;; convertit un fichier dos vers unix (defun dos-unix () "Convertit un fichier dos vers unix" (interactive) (goto-char (point-min)) (while (search-forward "r" nil t) (replace-match "")))
;; convertit un fichier unix vers dos (defun unix-dos () "Convertit un fichier unix vers dos" (interactive) (goto-char (point-min)) (while (search-forward "n" nil t) (replace-match "rn")))
Bonjour ,
Apres qqs desagrement de fonctionnement de mon PC j'ai recupéré les sources
de mon petit site perso ( *.html )
qd je les ouvre avec emacs a chaque fin de ligne , j'ai la chaine de
caractere ^M^M
Je suis vraiment un neuneu en regexp et je sais que le caractere ^ a une
signification en "regexp"
or , pour remplacer massivement , je n'utilise ( parceque je ne sais
utiliser ) que C-M-%
C-M-% utilise les regexp . je souhaiterai me deberasser de ces "^M^M"
1°) y aurai-til une commande similaire a C-M-% mais qui n'utilise pas lees
regexp ?
OU
2°) quelle regexp correspodrai a ^M^M ?
Merci d'avance
moi j'ai ca :
;; convertit un fichier dos vers unix
(defun dos-unix ()
"Convertit un fichier dos vers unix"
(interactive)
(goto-char (point-min))
(while (search-forward "r" nil t)
(replace-match "")))
;; convertit un fichier unix vers dos
(defun unix-dos ()
"Convertit un fichier unix vers dos"
(interactive)
(goto-char (point-min))
(while (search-forward "n" nil t)
(replace-match "rn")))
Bonjour , Apres qqs desagrement de fonctionnement de mon PC j'ai recupéré les sources de mon petit site perso ( *.html ) qd je les ouvre avec emacs a chaque fin de ligne , j'ai la chaine de caractere ^M^M
Je suis vraiment un neuneu en regexp et je sais que le caractere ^ a une signification en "regexp" or , pour remplacer massivement , je n'utilise ( parceque je ne sais utiliser ) que C-M-%
C-M-% utilise les regexp . je souhaiterai me deberasser de ces "^M^M"
1°) y aurai-til une commande similaire a C-M-% mais qui n'utilise pas lees regexp ?
OU 2°) quelle regexp correspodrai a ^M^M ?
Merci d'avance
moi j'ai ca :
;; convertit un fichier dos vers unix (defun dos-unix () "Convertit un fichier dos vers unix" (interactive) (goto-char (point-min)) (while (search-forward "r" nil t) (replace-match "")))
;; convertit un fichier unix vers dos (defun unix-dos () "Convertit un fichier unix vers dos" (interactive) (goto-char (point-min)) (while (search-forward "n" nil t) (replace-match "rn")))
Bonjour , Apres qqs desagrement de fonctionnement de mon PC j'ai recupéré les sources de mon petit site perso ( *.html ) qd je les ouvre avec emacs a chaque fin de ligne , j'ai la chaine de caractere ^M^M
Je suis vraiment un neuneu en regexp et je sais que le caractere ^ a une signification en "regexp" or , pour remplacer massivement , je n'utilise ( parceque je ne sais utiliser ) que C-M-%
C-M-% utilise les regexp . je souhaiterai me deberasser de ces "^M^M"
1°) y aurai-til une commande similaire a C-M-% mais qui n'utilise pas lees regexp ?
OU 2°) quelle regexp correspodrai a ^M^M ?
Merci d'avance
Ici le ^ indique un caractere non imprimable, en fait "^M" qui doit etre carriage return et censement la meme chose que ctrl-M. Une solution simple : prendre cette zone a la souris, cliquer gauche au dessus pour desactiver la zone, ensuite ESC-% cliquer-milieu pour mettre le texte, et remplacer par rien ici.
Il me semblait que dosify et undosify existait mais j'ai perdu le package ...
^ en regexp signifie debut-de-ligne, ou plus precisement, chaine-vide-en-debut-de-ligne.
Donc C-M-% rr[return] a remplacer par rien doit fonctionner ... C'est un peu tordu mais c'est ce que fait la fonction dos-unix : enfin, elle elle est encore plus cool, elle remplace tous les r par rien !
Amities, Olivier
Rakotomandimby Mihamina wrote:
Bonjour ,
Apres qqs desagrement de fonctionnement de mon PC j'ai recupéré les sources
de mon petit site perso ( *.html )
qd je les ouvre avec emacs a chaque fin de ligne , j'ai la chaine de
caractere ^M^M
Je suis vraiment un neuneu en regexp et je sais que le caractere ^ a une
signification en "regexp"
or , pour remplacer massivement , je n'utilise ( parceque je ne sais
utiliser ) que C-M-%
C-M-% utilise les regexp . je souhaiterai me deberasser de ces "^M^M"
1°) y aurai-til une commande similaire a C-M-% mais qui n'utilise pas lees
regexp ?
OU
2°) quelle regexp correspodrai a ^M^M ?
Merci d'avance
Ici le ^ indique un caractere non imprimable, en fait "^M"
qui doit etre carriage return et
censement la meme chose que ctrl-M.
Une solution simple : prendre cette zone a la souris,
cliquer gauche au dessus pour desactiver la zone,
ensuite ESC-% cliquer-milieu pour mettre le texte, et remplacer
par rien ici.
Il me semblait que dosify et undosify existait mais j'ai
perdu le package ...
^ en regexp signifie debut-de-ligne, ou plus precisement,
chaine-vide-en-debut-de-ligne.
Donc C-M-% \r\r[return] a remplacer par rien doit
fonctionner ... C'est un peu tordu mais c'est ce que
fait la fonction dos-unix : enfin, elle elle est encore plus
cool, elle remplace tous les r par rien !
Bonjour , Apres qqs desagrement de fonctionnement de mon PC j'ai recupéré les sources de mon petit site perso ( *.html ) qd je les ouvre avec emacs a chaque fin de ligne , j'ai la chaine de caractere ^M^M
Je suis vraiment un neuneu en regexp et je sais que le caractere ^ a une signification en "regexp" or , pour remplacer massivement , je n'utilise ( parceque je ne sais utiliser ) que C-M-%
C-M-% utilise les regexp . je souhaiterai me deberasser de ces "^M^M"
1°) y aurai-til une commande similaire a C-M-% mais qui n'utilise pas lees regexp ?
OU 2°) quelle regexp correspodrai a ^M^M ?
Merci d'avance
Ici le ^ indique un caractere non imprimable, en fait "^M" qui doit etre carriage return et censement la meme chose que ctrl-M. Une solution simple : prendre cette zone a la souris, cliquer gauche au dessus pour desactiver la zone, ensuite ESC-% cliquer-milieu pour mettre le texte, et remplacer par rien ici.
Il me semblait que dosify et undosify existait mais j'ai perdu le package ...
^ en regexp signifie debut-de-ligne, ou plus precisement, chaine-vide-en-debut-de-ligne.
Donc C-M-% rr[return] a remplacer par rien doit fonctionner ... C'est un peu tordu mais c'est ce que fait la fonction dos-unix : enfin, elle elle est encore plus cool, elle remplace tous les r par rien !
Amities, Olivier
raphael.berbain
Rakotomandimby Mihamina writes:
Bonjour , Apres qqs desagrement de fonctionnement de mon PC j'ai recupéré les sources de mon petit site perso ( *.html ) qd je les ouvre avec emacs a chaque fin de ligne , j'ai la chaine de caractere ^M^M
Je suis vraiment un neuneu en regexp et je sais que le caractere ^ a une signification en "regexp" or , pour remplacer massivement , je n'utilise ( parceque je ne sais utiliser ) que C-M-%
C-M-% utilise les regexp . je souhaiterai me deberasser de ces "^M^M"
1°) y aurai-til une commande similaire a C-M-% mais qui n'utilise pas lees regexp ?
L'analogue de query-replace-regexp (C-M-%) sans les regexp est ... query-replace (M-%). Mais voir ci-dessous, AMHA ça n'est pas un problème de regexp. En bref, il s'agit de taper 'C-q RET' ou 'C-q C-m' en lieu et place de '^M'.
2°) quelle regexp correspodrai a ^M^M ?
"^M^M", entré avec 'C-q RET C-q RET'.
Si j'ai a peu près compris, dans ton cas, ^M est la représentation à l'écran du caractère non-imprimable 'C-m' - différent de la séquence de deux caractères '^' et 'M'. Et le caractère 'C-m' n'a aucune signification spécifique en syntaxe regexp.
Donc, au final l'incantation magique:
'C-M-% (ou M-%) RET C-q RET C-q RET RET RET !'
Sinon, si tes fichiers sont encodés avec je-ne-sais-trop quel encodage exotique (visible en bas à gauche, dans la mode-line). set-buffer-file-coding-system (C-x RET f) permet de changer l'encodage utilisé : 'C-x RET f RET C-x C-s' permet d'enregistrer le fichier avec un encodage convenable. Mais dans ton cas, si tu vois des ^M^M, ça ne doit pas pouvoir aider.
Bonjour ,
Apres qqs desagrement de fonctionnement de mon PC j'ai recupéré les sources
de mon petit site perso ( *.html )
qd je les ouvre avec emacs a chaque fin de ligne , j'ai la chaine de
caractere ^M^M
Je suis vraiment un neuneu en regexp et je sais que le caractere ^ a une
signification en "regexp"
or , pour remplacer massivement , je n'utilise ( parceque je ne sais
utiliser ) que C-M-%
C-M-% utilise les regexp . je souhaiterai me deberasser de ces "^M^M"
1°) y aurai-til une commande similaire a C-M-% mais qui n'utilise pas lees
regexp ?
L'analogue de query-replace-regexp (C-M-%) sans les regexp est ...
query-replace (M-%). Mais voir ci-dessous, AMHA ça n'est pas un
problème de regexp. En bref, il s'agit de taper 'C-q RET' ou 'C-q
C-m' en lieu et place de '^M'.
2°) quelle regexp correspodrai a ^M^M ?
"^M^M", entré avec 'C-q RET C-q RET'.
Si j'ai a peu près compris, dans ton cas, ^M est la représentation à
l'écran du caractère non-imprimable 'C-m' - différent de la séquence
de deux caractères '^' et 'M'. Et le caractère 'C-m' n'a aucune
signification spécifique en syntaxe regexp.
Donc, au final l'incantation magique:
'C-M-% (ou M-%) RET C-q RET C-q RET RET RET !'
Sinon, si tes fichiers sont encodés avec je-ne-sais-trop quel encodage
exotique (visible en bas à gauche, dans la mode-line).
set-buffer-file-coding-system (C-x RET f) permet de changer l'encodage
utilisé : 'C-x RET f RET C-x C-s' permet d'enregistrer le fichier avec
un encodage convenable. Mais dans ton cas, si tu vois des ^M^M, ça ne
doit pas pouvoir aider.
Bonjour , Apres qqs desagrement de fonctionnement de mon PC j'ai recupéré les sources de mon petit site perso ( *.html ) qd je les ouvre avec emacs a chaque fin de ligne , j'ai la chaine de caractere ^M^M
Je suis vraiment un neuneu en regexp et je sais que le caractere ^ a une signification en "regexp" or , pour remplacer massivement , je n'utilise ( parceque je ne sais utiliser ) que C-M-%
C-M-% utilise les regexp . je souhaiterai me deberasser de ces "^M^M"
1°) y aurai-til une commande similaire a C-M-% mais qui n'utilise pas lees regexp ?
L'analogue de query-replace-regexp (C-M-%) sans les regexp est ... query-replace (M-%). Mais voir ci-dessous, AMHA ça n'est pas un problème de regexp. En bref, il s'agit de taper 'C-q RET' ou 'C-q C-m' en lieu et place de '^M'.
2°) quelle regexp correspodrai a ^M^M ?
"^M^M", entré avec 'C-q RET C-q RET'.
Si j'ai a peu près compris, dans ton cas, ^M est la représentation à l'écran du caractère non-imprimable 'C-m' - différent de la séquence de deux caractères '^' et 'M'. Et le caractère 'C-m' n'a aucune signification spécifique en syntaxe regexp.
Donc, au final l'incantation magique:
'C-M-% (ou M-%) RET C-q RET C-q RET RET RET !'
Sinon, si tes fichiers sont encodés avec je-ne-sais-trop quel encodage exotique (visible en bas à gauche, dans la mode-line). set-buffer-file-coding-system (C-x RET f) permet de changer l'encodage utilisé : 'C-x RET f RET C-x C-s' permet d'enregistrer le fichier avec un encodage convenable. Mais dans ton cas, si tu vois des ^M^M, ça ne doit pas pouvoir aider.
-- Raphaël
lhabert
Rakotomandimby Mihamina :
qd je les ouvre avec emacs a chaque fin de ligne , j'ai la chaine de caractere ^M^M
Sous windows les fins de lignes sont codées par une séquence de deux caractères : « ^M^J » (signification expliquée plus loin) tandis que sous unix c'est juste « ^J » et sous mac juste « ^M » je crois. Tu t'es fait tester par un transfert entre deux os différents j'imagine.
Je suis vraiment un neuneu en regexp et je sais que le caractere ^ a une signification en "regexp"
Oui, cela veut dire que la regexp doit commencer à matcher en début de ligne. Mais ici ça n'est pas un vrai « ^ » ni un vrai « M » qui sont affichés. Si tu passes le curseur dessus, tu verras qu'il saute les deux caractères d'un coup : le « ^M » est juste là pour représenter un unique caractère (le numéro 13 du code ascii), et se prononce « controle M » parce qu'on peut l'obtenir en tapant « ctrl M » (sauf qu'il se fait 9 fois sur 10 transformer en retour à la ligne « ^J » (caractère numéro 10) en cours de route).
or , pour remplacer massivement , je n'utilise ( parceque je ne sais utiliser ) que C-M-%
C-M-% utilise les regexp . je souhaiterai me deberasser de ces "^M^M"
1°) y aurai-til une commande similaire a C-M-% mais qui n'utilise pas lees regexp ?
Oui : « M-% ». Mais ça ne changera rien ici : ton problème n'est pas avec les regexps, mais avec la manière d'entrer le caractère « ^M ». Si tu tapes « C-m », emacs va faire comme si tu avais appuyé sur entrée, mais il suffit de taper « C-q » d'abord pour qu'il prenne le « ^M » tel quel.
Rakotomandimby Mihamina :
qd je les ouvre avec emacs a chaque fin de ligne , j'ai la chaine de
caractere ^M^M
Sous windows les fins de lignes sont codées par une séquence de deux
caractères : « ^M^J » (signification expliquée plus loin) tandis que sous
unix c'est juste « ^J » et sous mac juste « ^M » je crois. Tu t'es fait
tester par un transfert entre deux os différents j'imagine.
Je suis vraiment un neuneu en regexp et je sais que le caractere ^ a une
signification en "regexp"
Oui, cela veut dire que la regexp doit commencer à matcher en début de
ligne. Mais ici ça n'est pas un vrai « ^ » ni un vrai « M » qui sont
affichés. Si tu passes le curseur dessus, tu verras qu'il saute les deux
caractères d'un coup : le « ^M » est juste là pour représenter un unique
caractère (le numéro 13 du code ascii), et se prononce « controle M » parce
qu'on peut l'obtenir en tapant « ctrl M » (sauf qu'il se fait 9 fois sur 10
transformer en retour à la ligne « ^J » (caractère numéro 10) en cours de
route).
or , pour remplacer massivement , je n'utilise ( parceque je ne sais
utiliser ) que C-M-%
C-M-% utilise les regexp . je souhaiterai me deberasser de ces "^M^M"
1°) y aurai-til une commande similaire a C-M-% mais qui n'utilise pas lees
regexp ?
Oui : « M-% ». Mais ça ne changera rien ici : ton problème n'est pas avec
les regexps, mais avec la manière d'entrer le caractère « ^M ». Si tu tapes
« C-m », emacs va faire comme si tu avais appuyé sur entrée, mais il suffit
de taper « C-q » d'abord pour qu'il prenne le « ^M » tel quel.
qd je les ouvre avec emacs a chaque fin de ligne , j'ai la chaine de caractere ^M^M
Sous windows les fins de lignes sont codées par une séquence de deux caractères : « ^M^J » (signification expliquée plus loin) tandis que sous unix c'est juste « ^J » et sous mac juste « ^M » je crois. Tu t'es fait tester par un transfert entre deux os différents j'imagine.
Je suis vraiment un neuneu en regexp et je sais que le caractere ^ a une signification en "regexp"
Oui, cela veut dire que la regexp doit commencer à matcher en début de ligne. Mais ici ça n'est pas un vrai « ^ » ni un vrai « M » qui sont affichés. Si tu passes le curseur dessus, tu verras qu'il saute les deux caractères d'un coup : le « ^M » est juste là pour représenter un unique caractère (le numéro 13 du code ascii), et se prononce « controle M » parce qu'on peut l'obtenir en tapant « ctrl M » (sauf qu'il se fait 9 fois sur 10 transformer en retour à la ligne « ^J » (caractère numéro 10) en cours de route).
or , pour remplacer massivement , je n'utilise ( parceque je ne sais utiliser ) que C-M-%
C-M-% utilise les regexp . je souhaiterai me deberasser de ces "^M^M"
1°) y aurai-til une commande similaire a C-M-% mais qui n'utilise pas lees regexp ?
Oui : « M-% ». Mais ça ne changera rien ici : ton problème n'est pas avec les regexps, mais avec la manière d'entrer le caractère « ^M ». Si tu tapes « C-m », emacs va faire comme si tu avais appuyé sur entrée, mais il suffit de taper « C-q » d'abord pour qu'il prenne le « ^M » tel quel.
Rakotomandimby Mihamina
Raphaël Berbain wrote:
'C-M-% (ou M-%) RET C-q RET C-q RET RET RET !'
merci ca marche .... merci beaucoup -- RKTMB http://mrakotom.free.fr
Raphaël Berbain wrote:
'C-M-% (ou M-%) RET C-q RET C-q RET RET RET !'
merci ca marche ....
merci beaucoup
--
RKTMB http://mrakotom.free.fr