vendredi 3 décembre 2010

Dreamweaver CS4 et CS5 et le "bug de la ligne vide"

Si vous utilisez Dreamweaver CS4 ou CS5, peut-être avez vous déjà rencontré un bug récurrent assez gênant que j'ai nommé le "bug de la ligne vide".

Vous venez de finir de coder un fichier (HTML, PHP, CSS) et vous l'uploadez sur votre serveur d'hébergement via Dreamweaver CS4 ou CS5. Jusque là, pas de problèmes et tout va bien dans le meilleur des mondes. D'ailleurs, si vous vous contentez de suivre cette procédure à chaque fois vous ne rencontrerez probablement jamais ce bug.

Qu'est-ce que le "bug de la ligne vide" ?
Le problème survient à partir du moment où vous téléchargez votre fichier fraichement codé depuis votre serveur FTP vers votre ordinateur via l'interface FTP de Dreamweaver CS4 ou CS5.

En effet, lorsque vous ouvrez votre fichier que vous venez de télécharger, vous remarquez instantanément que chaque ligne de votre code est suivie par une ligne blanche vide.
Ce qui pour un fichier de peu de lignes pourrait dans un premier temps ne pas être considéré comme grave, le devient beaucoup plus si votre fichier d'origine comptait par exemple 1000 lignes car il en compte désormais 2000.
Le fainéants diront peut-être que ce n'est pas grave et qu'ils ne vont pas s'amuser à aller enlever toutes les lignes vides du fichier et je les comprends.
Par contre le problème ne fera qu'empirer si vous continuez à uploader et ensuite télécharger le même fichier, car les 2000 lignes deviendront 4000 lignes, puis 8000, puis 16000, si aucune mesure radicale n'est prise.


D'où provient ce bug ?
Avant d'aborder la solution à proprement parler, il peut être utile de se poser la question de savoir d'où provient ce bug ?
Ce bug provient de l'encodage par défaut des fichiers lors de l'envoi et du téléchargement du fichier par Dreamweaver CS4 ou CS5.
En effet, la plupart des fichiers de script classiques (HTML, XHTML, PHP, ASP, CSS, JS, etc.) sont encodés par défaut en ASCII, ce qui dans Dreamweaver CS4 provoque le "bug de la ligne vide".


La fausse solution
L'une des solutions à ce bug est de tout simplement utiliser un autre client FTP pour envoyer et télécharger vos fichiers.
Mais est-ce vraiment une solution ? Vous auriez dès lors besoin de deux programmes pour travailler au lieu d'un seul.


La vraie solution
Ah si seulement Adobe avait prévu une page pour gérer les préférences d'encodage lors du transfert de fichier par FTP tout aurait été si simple. Il aurait suffit de permettre de choisir pour chaque type de fichier le type d'encodage désiré entre ASCII et BINARY.
Mais non, pourquoi faire simple quand on veut faire compliqué. Dès lors, la seule solution est de mettre un tout petit peu la main dans le code.


Pour cela la première chose à faire va être d'afficher les fichiers cachés de votre ordinateur. Ensuite vous devez trouver le fichier "FTPExtensionMap.txt" dans votre ordinateur.
Pour cela, vous pouvez soit faire une recherche dans votre disque dur C:, soit suivre le chemin suivant : C:/Utilisateurs/votrenom/AppData/Roaming/Adobe/Dreamweaver CS4/fr_FR/Configuration.


Une fois le fichier "FTPExtensionMap.txt" trouvé, ouvrez le en tant qu'administrateur. Vous verrez ensuite deux colonnes, l'une d'elles contient les types de fichiers et l'autre, leur encodage l'ors du transfert par FTP.
Pour ne plus rencontrer le "bug de la ligne blanche" vous devez remplacer l'encodage "ASCII" par "BINARY" pour les fichiers que vous comptez uploader fréquemment.


Un petit conseil, visez large et modifiez tous les types de fichiers que vous seriez susceptibles d'uploader un jour, sans quoi vous risquez de devoir recommencer cette opération très souvent.
Enregistrez et fermez le fichier, redémarrez Dreamweaver CS4 ou CS5 et voilà, normalement, si vous avez bien suivi toutes les étapes, le "bug de la ligne blanche" à disparu.


Encore un conseil pour terminer, si vous utilisez plusieurs ordinateurs différents, pensez à effectuer cette modification sur chacun d'entre eux, sans quoi vous avez de grandes chances de voir réapparaître le "bug de la ligne blanche".

Bon travail !

2 commentaires:

  1. MERCI votre explication est très claire et d'une grande aide

    RépondreSupprimer
  2. Grand merci pour cette astuce!! :)

    RépondreSupprimer