Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente | ||
linux:utf8 [29-02-2012 10:15] edmc73 |
linux:utf8 [03-05-2016 14:16] (Version actuelle) edmc73 [Fichier hybride] |
||
---|---|---|---|
Ligne 74: | Ligne 74: | ||
|euc-kr |coréen (Unix uniquement)| | |euc-kr |coréen (Unix uniquement)| | ||
|cp936 |chinois simplifié (Windows uniquement)| | |cp936 |chinois simplifié (Windows uniquement)| | ||
- | |euc-cn |chinois simplifié (Unix uniquement)| | + | |euc-cn |chinois simplifié (Unix uniquement)|U+2018 (Left Single Quotation Mark) |
|cp950 |chinois classique (sur Unix, alias pour big5)| | |cp950 |chinois classique (sur Unix, alias pour big5)| | ||
|big5 |chinois classique (sur Windows, alias pour cp950)| | |big5 |chinois classique (sur Windows, alias pour cp950)| | ||
Ligne 89: | Ligne 89: | ||
===== Script pour réencoder les fichiers d'un site web ===== | ===== Script pour réencoder les fichiers d'un site web ===== | ||
+ | Ce script permet d' | ||
+ | Modifiez les variables **chemin** et **extension** suivant ce que vous voulez faire.\\ | ||
+ | Rendez exécutable le script avec **chmod +x encode_utf8.bash**\\ | ||
+ | Puis lancez le **./ | ||
+ | Le script va analyser tous les fichiers du répertoire et des sous répertoire que vous avez spécifié.\\ | ||
+ | Si l' | ||
+ | Si l' | ||
+ | Si l' | ||
+ | D' | ||
+ | |||
+ | <file bash encode_utf8.bash> | ||
+ | #!/bin/bash | ||
+ | |||
+ | # Renseigner le répertoire à traiter | ||
+ | chemin="/ | ||
+ | extension=" | ||
+ | |||
+ | atraiter=`/ | ||
+ | |||
+ | for i in $atraiter | ||
+ | do | ||
+ | enc=`file --mime-encoding $i | awk '{ print $2 }'` | ||
+ | if [ $enc = " | ||
+ | recode $enc..utf-8 $i | ||
+ | echo -e "$i \\033[1;32m Conversion effectuée \\033[0; | ||
+ | elif [ $enc = " | ||
+ | echo -e "$i \\033[1;36m Déjà en utf8 \\033[0; | ||
+ | else | ||
+ | echo -e " | ||
+ | PS3="> | ||
+ | LISTE=(" | ||
+ | select CHOIX in " | ||
+ | case $REPLY in | ||
+ | 1|o) | ||
+ | recode $enc..utf-8 $i | ||
+ | echo -e " | ||
+ | break | ||
+ | ;; | ||
+ | 2|n) | ||
+ | echo Aucun réencodage de fait. | ||
+ | break | ||
+ | ;; | ||
+ | esac | ||
+ | done | ||
+ | fi | ||
+ | done | ||
+ | |||
+ | echo | ||
+ | </ | ||
+ | |||
+ | ===== Mysql ===== | ||
+ | |||
+ | Soit vous réencodé toute la base comme détaillé sur ce site http:// | ||
+ | |||
+ | Soit vous faite la méthode comme moi qui consite à rajouter la ligne | ||
+ | mysql_query(" | ||
+ | Dans votre fichier de connexion à la base. | ||
+ | |||
+ | ===== Réencoder des noms de fichiers avec des caractères bizarre ===== | ||
+ | L' | ||
+ | |||
+ | Le plus simple, mettez dans un répertoire tous les avec des caractères bizarre et lancez la commande | ||
+ | detox * | ||
+ | Le nom de vos fichiers sera lisible ;) | ||
+ | |||
+ | Plein d' | ||
+ | |||
+ | ===== Caractères problématiques ===== | ||
+ | |||
+ | Certains caractères issue de traitement de texte ou de système d' | ||
+ | |||
+ | Bref, il faut alors faire des rechercher/ | ||
+ | |||
+ | Caractères spéciaux courant à rechercher | ||
+ | |||
+ | * U+2018 (Left Single Quotation Mark) | ||
+ | < | ||
+ | |||
+ | * U+201C (left double quotation mark) | ||
+ | < | ||
+ | |||
+ | * U+201D (right double quotation mark) | ||
+ | < | ||
+ | |||
+ | * U+AB (left double angle quotes) | ||
+ | < | ||
+ | |||
+ | * U+BB (right double angle quotes) | ||
+ | < | ||
+ | |||
+ | * U+2026 (horizontal ellipsis) 0xe280a6 | ||
+ | < | ||
+ | |||
+ | |||
+ | On peut aussi afficher le caractère dans postgresql avec la requête | ||
+ | select convert_from(' | ||
+ | si vous avez une vieille version | ||
+ | select convert_from(E' |