Bonjour tout le monde !
Alors voila je suis en train de pencher sur un petit script shell pour automatiser le formatage de mes fichiers...
En gros je reçois régulièrement beaucoup de fichier que je dois traiter.
Après réception je change le format des Line Breaks (passage au format unix) et j'ajoute "<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">" au début de mes fichiers pour qu'il soit correctement traiter dans mon logiciel (je fait de la traduction !) :
Voila donc le script :
# find relevant files
find . \( \
-iname "*.html" -o \
-iname "*.htm" -o \
-iname "*.inc" -o \
-iname "*.xml" -o \
-iname "*.js" -o \
-iname "*.css" -o \
-iname "*.txt" -o \
-iname "*.php" -o \
-iname "*.plist" -o \
! -name "*.*" \) -type f -print0 | while read -d $'\0' file; do
echo "$file"
# convert to unix line breaks
perl -pe 's/\r\n|\n|\r/\n/g' "$file" > "$file"_temp
mv -f "$file"_temp "$file"
# add encoding tag if not present
if ! head -n 1 "$file" | grep -qi "UTF-8"; then
echo '<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <!-- Inserted by toto -->' > "$file"_temp
cat "$file" >> "$file"_temp
mv -f "$file"_temp "$file"
fi
Aujourd'hui je cherche une solution pour convertir les caractères spéciaux en HTML entities (uniquement dans les partie textes de mes pages).
Ensuite il me faudra faire l'inverse et supprimer ces HTML entities...
Franchement je ne sais pas comment faire, quelqu'un aurait une idée ?
Merci d'avance, Grego
Message édité par nipoutch le 05-05-2009 à 14:15:26