euc-kr 을 utf-8 으로 변환하는 스크립트를 이용한다.
http://kldp.net/forum/forum.php?thread_id=48670&forum_id=712

해당 스크립트에서 변환할 부분이 있다.
모니위키 블로그 형식이  blog/2009-03  일때,
데이터가 blog_2f2009_2d03  이렇게 저장이 되는데, 위 스크립트는 _2d 가 사라져 버린다.

위 링크의 변환 스크립트 를 다운받고(http://moniwiki.kldp.org/dev/pds/2utf.pl)
한줄을 수정한다.
91         $pagename=~ s/_([a-f0-9]{2})/hex($1)>127?chr(hex($1)):$&/eg;
92         #$pagename=~ s/_([a-f0-9]{2})/chr(hex($1))/eg;
원래 92 라인인데, 주석처리하고, 91 라인처럼 수정한다.
그러면  blog_2f2009_2d03   형식도 제대로 변환된다.(꼭 테스트는 하시길...)


moniwiki 설치 디렉토리의 data / text , cache 의 데이터를 변환한다.
text 만 변환하면, 간혹 깨진 데이터가 보일 수 있다.
BlogChanges 등에서 깨져 보일 수 있다.(cache 데이터를 이용하는 듯)

변환 후 이런 문제.
깨지는 부분이 있다. (이 부분은 RecentChanges 부분인 듯 하다.)
이 부분의 데이터는  data / editlog 파일을 변환하면 된다.

즉, 과정은.
1. 스크립트 변환 ( data 디렉토리의 text , cache )
2. data / editlog 변환


일단 여기까지 변환하면 별다른 문제는 발견하지 못했다.
아직 테스트 중이고 별 이상이 없으면 실제로 적용할 예정이다.


반응형

WRITTEN BY
1day1
하루하루 즐거운일 하나씩, 행복한일 하나씩 만들어 가요.

,
한글사이트를 운영하게 되면 어쩔 수 없이 겪게되는 문제.
EUC-KR , UTF-8   여전히 EUC-KR 이 많이 쓰인다.
UTF-8 로 얼른 넘어갔으면 하는데, 일이 쉽지는 않다.

우분투에서 변경하는 방법을 정리해본다.

1) 랭귀지 팩을 깔아야지.
apt-get install language-pack-ko
경우에 따라서 이미 깔려 있는 경우도 있겠지.

2) 추가할 locale 을 설치/재설정 한다.
locale-gen ko_KR.EUC-KR
dpkg-reconfigure locales

3) LANG 환경변수를 바꾸자.
/etc/environment 에
LANG=ko_KR.EUC-KR
으로 바꿔주거나, 추가한다.(로그인시 기본값으로 된다)

/etc/default/locale 을 바꿔준다.(ubuntu 8.04 버전부터 있는 듯, 이전버전 없음)
LANG=ko_KR.EUC-KR
(root 로 로그인시 적용된다. 혹은 전체 설정)

여기까지 하고 재부팅 해보면 바뀐 locale 로 설정된다.


3-2) 또는 update-locale 을 이용
update-locale LANG=ko_KR.EUC-KR 
으로 설정한다.( 저 명령은 /etc/default/locale 의 값을 바꿔주는 명령이다)



결론)

우분투 8.04 부터는 다음과 같이 해주면 된다.
apt-get install language-pack-ko (필요한 경우)
locale-gen ko_KR.EUC-KR
dpkg-reconfigure locales
update-locale LANG=ko_KR.EUC-KR
이렇게 하면 OK.


반응형

WRITTEN BY
1day1
하루하루 즐거운일 하나씩, 행복한일 하나씩 만들어 가요.

,