이번 TatterTools 1.02와 더불어 등장한 Migrator.php를 뜯어보자. 우선 주의할 것은 케릭터셋 변환을 위한 데이터가 들어 있어서 어정쩡한 에디터로 읽었다간 파일이 망가질 수 있다. 가능하면 UTF-8로 읽어 내기를 권장한다.

주의! 여기의 내용은 상당히 위험한 방법일 수 있기 때문에 어느정도 프로그래밍이 가능하고 특별한 처리를 하기 위한 상황에서만 실제 적용을 하기 바랍니다. 초보자를 위한 FAQ같은 것은 아닙니다. 또한.. 언제나 잊지 말것은 Backup!

UTF 판별하기 함수
이전에 UTF8의 판별에 대해 적은 글이 있는데 그 방법의 결정판이 이 파일의 250번째줄 근처에 있는 isUTF8과 adjustUTF8 함수일 것이다. 허나 이 함수에서 주의할 점이 하나 있다. 나름대로 제너럴 하게, 그리고 무난하게 판단하고 변환을 시켜주고 있지만 자신의 데이터가 특별한 경우 가차없이 '?'로 변신 시키는 함수기도 하다. 특수한 언어 체계(?)를 사용중이라던가 컨텐트 중에 특수한 케릭터 변환이 필요하다면 이 함수를 약간 손봐줘야 할 것이다. 0.96 즉 euc-kr에서 변환하는 경우에 xml에서 import 도중 에러가 날때도 역시 여기를 고민해 봐야 할 수 도 있다.

특정 영역의 변환 문제
1.02로의 변환중 특정 영역에 euc-kr로 남아 있어서 문제라거나 utf-8로 변환되어 버려 문제가 생기는 경우, 그리고 특정 문자의 치환이 필요하다면 300라인쯤 부터 펼쳐지는 "각부분처리기"에서 수정할 수 있다.
우선 변환과 관련된 것은 iconver, 그리고 치환자는 str_replace를 사용하고 있다. 특정 글의 특정 부분에 이런것을 적용하거나 해제하고 싶다면 바로 이부분에서 수정할 수 있다. 특히 420번째즘 나오는 $post->content 영역의 경우 글에 들어 있는 스크립트를 1.02에서 사용하기 위해 태터 플러그인족에 공개된 PureCode를 사용하도록 수정할 수 있게 자동 변환할때 사용해야할 키워드일 것이다. "<script>"의 "<"를 "&lt;"로 변환하고 앞뒤로 PURE를 붙여주는 작업등을 할 수 있다. 본인의 경우 글이 100개밖에 안되서 대충 보고 문제되는 놈들은 0.96을 옆에 뛰우고는 에디터로 Copy&Paste를 하는 식으로 작업했지만 도저히 수작업으로 불가능 하다면 이 방법을 생각해 볼 수 있다.

마이그레이션 이후
0.96에서 바로 1.02로 점프한 나로서는 일종의 "플랫폼 변환"을 당하고 말았다. 체계도 달라지고 에디터도 다르고 글을 쓸때 정보도 다르다. "Borland C++ for Windows"를 쓰다가 "Visual Studio 98"로 넘어갈때의 느낌이랄까? 좋아진점도 있지만 나빠진 것도 많고 그보다 중요한 것은 새로운 것을 배워야 하고 적응해야 한다. 그리고 이런 이동에서 격어야 하는 어려움들... Tatter&Company의 개발자도 죽어라 디버깅 했겠지만 나도 이 이동을 위해 한달 전 부터 나름대로 준비를 해 왔다. 그래도 여전히 이동 당일날 약간의 트러블은 생기게 되고 아직도 FF에서는 배경의 격자가 보이지 않고 등등..

그러나, 아픈만큼 성숙해 지는 법이다.
  1. Commented by 9gle at 2006.03.19 03:01

    db백업 받아서 리플레이스 하는 방법도 있지요..

  2. Commented by 찬노양 at 2006.03.20 22:22

    저…, 본문과는 무관한 질문인데요. 그 발표하신 플러그인에 대한 질문을 여쭤보려고 합니다.

    '글속에 스크립트 넣기'

    를 발표하셨는데 이 플러그인에 대해서 여쭤보려고 합니다.
    혹시 본문 뿐 아니라 '코멘트(덧글,리플)'에도 그 코드를 넣어도 가능하겠금 하는 방법은 없을까요?

    혹은 궂이 [PURE]의 코드를 넣지 않아도 알아서 스크립트가 가능하겠금 할수 있을까요?(이건 '본문'뿐 아니라 '코멘트'에도 말입니다.)

    이점에 대해서 답변 부탁드립니다.

    *추신 : '파이어폭스'에서 코멘트 입력하기 버튼이 불통되고 있습니다. 확인 부탁드립니다.

    • Commented by 겐도 at 2006.03.20 22:41

      코멘트나 리플에 스크립트 허용했다간 보안상의 문제가 생기지 않을까요? 아무튼 기술적으로는 이벤트만 찾으면 되긴 합니다만...

      그리고 FF에서도 코멘트 잘 되는거 같은데요.. --?

    • Commented by 찬노양 at 2006.03.21 09:08

      헉?!; 되…되네요;; 죄송합니다.(일시적인 오류였나봐요; llorz.)

      아 본론으로 들어가자면….
      그 이유는 사실 '스크립트'를 쓰려고 하는건 아니고요. 'html태그'를 쓰려고 여쭤본 것입니다.(주변사람들이 html태그놀이를 좋아해서요.) 팁(이곳을 이 문장으로 고쳐라 정도면 됩니다.)을 주시거나 조금 바꿔서 파일로 주신다면 적용 하고서는 스크립트는 금지어로 넣는 수단으로 가야겠지요. 아마도 ^_^;

      배포가 꺼려지신다면 메일로라도 부탁드릴께요.;
      (메일은 "aichanno 앳 gmail 닷 com" 입니다.)
      꼭 부탁드립니다.

  3. Commented by 검포도 at 2006.03.23 13:18

    겐도님 리플 보고 힘내서 9.6업글하고 다시 마이그레이션 도전해봤는데요.
    자꾸만 나오는 에러메시지를 처리할 능력이 없나봐요-_ㅠ
    그래도 리플은 감사합니다^-^)/