2 votes

Comment convertir un fichier .xml UTF-8 de Mac en quelque chose que Banshee comprend ?

J'ai essayé d'importer ma bibliothèque iTunes dans Banshee mais Banshee ne trouve pas les chansons qui contiennent des accents latins. Il importe la plupart des chansons sans problème sauf celles qui contiennent des accents comme é, è, ç, ñ, etc. ... il dit "fichier inexistant" même si le fichier est sur mon disque dur et les accents s'affichent correctement dans Nautilus ET s'affichent également correctement dans le rapport d'erreur de Banshee!

J'ai trouvé le problème dans bugzilla mais la réponse était que ce n'est pas un bug de Banshee et le problème pourrait venir du fichier provenant d'un Mac (?). J'ai également posté dans ubuntuforums mais jusqu'à présent pas de réponse... J'ai essayé de "Enregistrer-sous" le fichier .xml Mac dans le logiciel Ubuntu en espérant qu'il l'encoderait correctement mais rien ne semble fonctionner. Ma dernière tentative a été d'utiliser l'outil de migration UTF-8 (du centre de logiciels) mais il dit :

Votre encodage actuel n'a pas été trouvé, ou vous utilisez les paramètres régionaux C. Veuillez choisir une langue prise en charge dans /usr/share/i18n/SUPPORTED et reconnectez-vous.

(je n'ai aucune idée de ce que cela signifie, mon système est maintenant configuré en en_US.UTF-8)

Est-ce que quelqu'un ici peut m'aider à comprendre cela?

2voto

Fabiano Soriani Points 543

Je suppose que cela est lié aux caractères diacritiques décomposés par rapport aux caractères précomposés : En Unicode, vous pouvez écrire de nombreux caractères diacritiques comme é soit comme un seul caractère ("précomposé", NFC) soit comme une combinaison du caractère de base "e" et d'un caractère d'accentuation supplémentaire ("décomposé", NFD), voir

OS X utilise toujours des caractères décomposés pour les noms de fichiers. Les systèmes de fichiers Linux ne se soucient pas des caractères mais stockent simplement des octets en tant que noms de fichiers et laissent les programmes les interpréter. NFC et NFD conduisent à des séquences d'octets différentes, Linux considère les noms de fichiers résultants comme différents. La plupart des programmes sous Linux utilisent NFC.

Je ne connais aucun programme capable de convertir du texte entre les deux formes d'encodage. Le programme convmv (non installé par défaut) peut convertir les noms de fichiers entre NFC et NFD. Peut-être cela peut aider, mais cela peut aussi causer d'autres problèmes, donc soyez prudent.

1voto

Arafangion Points 5650

J'avais le même problème, et j'utilise sur mon serveur Debian l'outil convmv. Ça fonctionne à merveille.

J'utilise la commande suivante pour convertir NFD en NFC (pour le fichier dans le RÉPERTOIRE) :

convmv -r --nfc --nosmart -f UTF-8 -t UTF-8 --notest RÉPERTOIRE

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X