Estou trabalhando no sistema Debian e derivados. Gostaria de converter de uma entrada original ISO-IR-87 para UTF-8. Existe uma maneira fácil de fazer isso?
Para referência:
% iconv -l | grep "IR-8"
ISO-IR-8-1//
ISO-IR-84//
ISO-IR-85//
ISO-IR-86//
ISO-IR-88//
ISO-IR-89//
% dpkg -S /usr/bin/iconv
libc-bin: /usr/bin/iconv
% apt-cache policy libc-bin
libc-bin:
Installed: 2.36-9+deb12u3
Candidate: 2.36-9+deb12u3
Version table:
*** 2.36-9+deb12u3 500
500 http://security.debian.org/debian-security bookworm-security/main amd64 Packages
100 /var/lib/dpkg/status
2.36-9+deb12u2 500
500 http://deb.debian.org/debian bookworm/main amd64 Packages
recode parece estar funcionando no meu sistema (obrigado @frostschutz):
% echo -n 'ABC' > t.txt
% recode -v UTF-8..JIS_X0208 t.txt
Request: UTF-8..:libiconv:..JIS_X0208
Shrunk to: UTF-8..JIS_X0208
Recoding t.txt... done
% recode -v JIS_X0208..UTF-8 t.txt
Request: JIS_X0208..:libiconv:..UTF-8
Shrunk to: JIS_X0208..UTF-8
Recoding t.txt... done
GNU
recode
parece apoiá-lo:Então:
Parece que tem muitos outros nomes (veja https://en.wikipedia.org/wiki/JIS_X_0208 para mais), mas nenhum deles parece ser suportado pela
iconv
GNU libc. Esse artigo da Wikipedia sugere que o conjunto de caracteres japoneses não foi especificado corretamente, com incompatibilidades entre implementações e não está em uso atualmente, o que pode explicar por que ele não foi incluído na libc GNU (mesmo que tenha sido na biblioteca iconv autônoma do GNU, conforme indicado por @ geada).