Précédent   Forum du club des développeurs et IT Pro > Environnements de développement > Autres EDI
Autres EDI Forum d'entraide sur les autres EDI
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse
 
Outils de la discussion
Publicité
'
Vieux 31/08/2010, 13h04   #1
BlindeKinder
Membre du Club
 
Inscription : mars 2007
Messages : 116
Détails du profil
Informations forums :
Inscription : mars 2007
Messages : 116
Points : 47
Points : 47
Par défaut [Emacs][Linux] ^M apparu étrangement

Bonjour,
j'ai ces ^M qui sont apparu pour les retour chariot dans emacs, et que dans celui-ci. Bizarrement, je n'ai pas passé ce fichier par dos (mais il a été créé sous windows et téléchargé par ftp). Tous les autres fichiers sont ok. La seule chose que je me souvienne avoir fait d'un peu spécial est un copié-collé d'une portion de code de Bluefish vers Emacs, mais c'est tout...

J'ai tenté la solution donnée un peu partout sur le net:
mais rien...
Quelqu'un peut me dire pourquoi c'est apparu et comment m'en débarrasser?
BlindeKinder est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/09/2010, 10h58   #2
BlindeKinder
Membre du Club
 
Inscription : mars 2007
Messages : 116
Détails du profil
Informations forums :
Inscription : mars 2007
Messages : 116
Points : 47
Points : 47
comme je n'ai toujours pas trouvé de solution, je me permet ce petit up...
BlindeKinder est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/06/2011, 19h24   #3
satenske
Membre confirmé
 
Avatar de satenske
 
Homme Antoine
Licence informatique
Inscription : mars 2011
Messages : 110
Détails du profil
Informations personnelles :
Nom : Homme Antoine
Âge : 21
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations professionnelles :
Activité : Licence informatique
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : mars 2011
Messages : 110
Points : 265
Points : 265
Je ne sais pas si ça vient de la même chose, mais j'avais eu exactement le même problème sous vim, c'était un fichier que j'avais téléchargé...
La seule solution que j'avais trouvé à ce moment là, c'était de les supprimer "à la main" (avec suppr ) et ensuite d'enregistrer le fichier, une fois cela fait, il n'y 'était plus...
Même le rechercher remplacer n'avait pas marché.

Mais je suis resté sur ma fin, à ne pas comprendre pourquoi ils étaient arrivés là.
satenske est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/06/2012, 13h58   #4
jabbounet
Expert Confirmé
 
Avatar de jabbounet
 
Homme frederic frances
Consultant informatique
Inscription : juin 2009
Messages : 1 848
Détails du profil
Informations personnelles :
Nom : Homme frederic frances
Âge : 37

Informations professionnelles :
Activité : Consultant informatique

Informations forums :
Inscription : juin 2009
Messages : 1 848
Points : 2 675
Points : 2 675
Citation:
Envoyé par BlindeKinder Voir le message
(mais il a été créé sous windows et téléchargé par ftp).
Pour information bash est pour linux ce que dos est pour windows (ou a peu près).

Le fait d’éditer un fichier et de le sauver sous windows avec un éditeur qui ne préserve pas le format de fin de ligne fera systématiquement apparaitre des retour charriots (car cet éditeur sous windows fera probablement une conversion implicite au format du systèmes).

Certains éditeur permette de préserver le format de fichier lors de l'édition a condition de les paramétrer correctement. (emacs/vi/ultraedit/notepad++/...)

Sous la plupart des unix/linux, la commande dos2unix permet de convertir le fichier au format unix et unix2dos fait le contraire.

quand cette commande n'existe pas sed peut faire le boulot.

Code unix2dos :
1
2
sed 's/$/\r/' fichier

Code dos2unix :
1
2
sed 's/\x0D$//' fichier
__________________
bazar: http://www.improetcompagnie.com/publ...ctacles-6.html

BÉPO la disposition de clavier francophone, ergonomique et libre: http://bepo.fr/wiki/Accueil

Emacs Wiki: http://www.emacswiki.org/

En attente de ce que produira: http://www.pushmid.com
jabbounet est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 17/06/2012, 07h50   #5
jack-ft
Membre Expert
 
Inscription : avril 2008
Messages : 800
Détails du profil
Informations forums :
Inscription : avril 2008
Messages : 800
Points : 1 809
Points : 1 809
Citation:
Envoyé par BlindeKinder Voir le message
Bonjour,
j'ai ces ^M qui sont apparu pour les retour chariot dans emacs, et que dans celui-ci. Bizarrement, je n'ai pas passé ce fichier par dos (mais il a été créé sous windows et téléchargé par ftp). Tous les autres fichiers sont ok. La seule chose que je me souvienne avoir fait d'un peu spécial est un copié-collé d'une portion de code de Bluefish vers Emacs, mais c'est tout...

J'ai tenté la solution donnée un peu partout sur le net:
mais rien...
Quelqu'un peut me dire pourquoi c'est apparu et comment m'en débarrasser?
Je ne peux pas dire comment ils sont apparus.

Il faudrait savoir (mais c'est peut-être un peu tard maintenant!) s'il s'agit d'un vrai caractère ^M ou de 2 caractères (un "^" suivi d'un "M"). Je crois me souvenir avoir déjà vu ça, il y a quelques décennies, en copiant/collant du texte...

Une manière de savoir le contenu précis du fichier, c'est d'utiliser la commande de base "od" (pour octal dump) od -c fichierS'il s'agit de 2 caractères, "od" devrait afficher quelque chose comme ça:
Code :
1
2
3
4
5
mac-jack$ echo "A^M" > toto

mac-jack$ od -c toto
0000000    A   ^   M  \n                                                
0000002
auquel cas un simple M-% ^ M RET RET ! devrait suffire.

S'il s'agit d'un vrai RET, od -c devrait afficher un backslash suivi d'un "r", peut-être suivi d'un backslash suivi d'un "n", auquel cas une solution devrait bien être de faire C-x RET f unix RET (avec C-x et non C-c).
Le buffer est alors marqué modifié ("**" au début de la modeline). Il faut ensuite le sauver (C-x C-s) pour que le résultat soit effectivement enregistré sur le disque dur.

Avec echo "A" > toto et différents appels de set-buffer-file-coding-system (C-x RET f unix ou mac ou dos RET), "od" affiche alors les résultats suivants:

Code :
1
2
3
4
5
6
7
8
9
mac-jack$ od -c toto  # Après C-x RET f unix RET C-x C-s
0000000    A  \n                                                        
0000002
mac-jack$ od -c toto  # Après C-x RET f mac RET C-x C-s
0000000    A  \r                                                        
0000002
mac-jack$ od -c toto  # Après C-x RET f dos RET C-x C-s
0000000    A  \r  \n                                                    
0000003
En espérant que cela puisse servir à quelqu'un...
)jack(
jack-ft est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse
Outils de la discussion

Navigation rapide


Fuseau horaire GMT +2. Il est actuellement 10h12.


 
 
 
 
Partenaires

Hébergement Web