Ci-dessous, les différences entre deux révisions de la page.
| Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédente | ||
| linux:utf8 [29-02-2012 09:15] – edmc73 | linux:utf8 [03-05-2016 12:16] (Version actuelle) – [Fichier hybride] edmc73 | ||
|---|---|---|---|
| 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' | ||