리눅스 2008. 4. 16. 12:35
RoundCube Webmail은 오픈소스중 알려져 있는 많은 웹메일 중에 하나이다.

나 또한 최근까지 다람쥐 메일이라고 불리우는 Squirrel Mail을 사용했는데,
오랫동안 개발되어 온 만큼 많은 플러그인이 존재하기 때문에 여러 기능이 있다는 강점이 있으나
역시 보기좋은 떡이 먹기에도 좋다고.. 90년대틱한 디자인이 영 마음에 안들었었다.

그러다 어느날 우연히 RoundCube 라는 프로그램을 발견했고,
잠깐의 삽질 끝에 깔끔한 디자인의 괜찮은 프로그램을 사용할 수 있게 되었다.
또한 또하나의 강점으로 Ajax를 지원하며, UTF8이 기본으로 지원되고 있다.

그러나 아직 개발이 꾸준히 일어나고 있는 중이라 그런것인지
stable 이라는 딱지에 맞지 않게 버그도 심심치 않게 발견할 수 있었고,
가장 큰 문제점인 euc-kr이 제대로 지원되지 않는다는 문제가 있었다.

한글 문제는 곧 케릭터셋 문제에 있으리라 확신했고, 고쳐보고자 마음먹고 소스를 뒤적뒤적...
그러다가 디폴트 케릭터셋 처리 코드에 버그가 있음을 발견했고,
이 문제를 roundcube.net (http://trac.roundcube.net/ticket/1484991) 에
문제되는 부분과 패치된 부분의 코드를 현재 포팅해놓은 상태이다.

그 외에도 euc-kr을 처리하려면 패치를 조금 더 해야되는데..
생각보다 꽤 많은 코드에 ISO-8859-1 값이 Static으로 박혀 있었다.
물론 몽땅 다 replace 시켜주면 되겠지만.. 나의 귀차니즘이 어디가겠나?-_-
최소한의 패치로 처리할 수 있는 방법을 선택했다.
현재 tini4u.net에서 테스트중이고, 별 문제는 없는것 같은데.. 시간이 지나봐야 알 것 같다.

아래는 euc-kr 처리를 위한 패치부분이다.
FileName: roundcube/program/include/rcube_imap.php

--- Original Code
+++ Patch Code

=> Line number : 217
-  $this->default_charset = $ch;
+  $this->default_charset = $cs;

=> Line number : 2362
- return rcube_charset_convert($input, !empty($fallback) ? $fallback : 'ISO-8859-1');
+ return rcube_charset_convert($input, !empty($fallback) ? $fallback : 'euc-kr');

euc-kr 패치가 적용되기 전 화면
사용자 삽입 이미지


euc-kr 패치가 완료된 후 화면
사용자 삽입 이미지
posted by 티니
: