gDesklets-irc 국제화 패치~

fender옹의 뽐뿌질에 혹해서 뽀대 데스크탑의 결정체 [WWW]gDesklets의 IRC 디스플레이 국제화 패치를 했습니다;; HanIRC는 utf-8이 아니라 cp949를 쓰다보니 아무래도 서양사람이 만든 gDesklets-irc가 제대로 돌아가기는 힘들었는데, 아무래도 gdesklets 센서가 파이썬이다보니 제법 쉽게 패치할 수 있었습니다. :D

gDesklets의 좋은 점은 배경에 녹아있다보니 아무래도 회사원을 위한 플러그인이 아닐까하는! (배경을 한참 보고 있어도 뭔가 채팅하는 것임을 눈치채기가 쉽지가 않다 -.-!!) 입력 창도 마우스가 위로 올라가야지만 나오고.. 아무래도 원 저자도 회사에서 몰래 IRC하는 사람이 아닌가 싶군요 -o-

0405-gdeskletsirc.jpg

전체 보기

고친 것은~

  • 서버 인코딩 설정, 변환 지원 추가: 요 부분은 Twisted가 lineReceived, sendLine 메소드를 오버라이드 할 수 있게 만들어 놔서 다행히 쉬웠습니다~

  • 유저네임 바꿀 수 있게: HanIRC는 유저네임에 한글 쓰는 것을 허용하지 않는데, Twisted의 IRC 프로토콜은 유저네임에 닉네임을 그대로 쓰게 되어있어서, 한글 닉네임을 쓰면 접속을 거부하는 문제가 있었습니다.

  • 패스워드 지원: irssi proxy같은 것에 붙으려면 아무래도 패스워드 입력할 수 있게 해야~

  • 다국어 지원: 누가 어느 방에 들어갔습니다. 같은 메시지가 gettext처리가 안 돼 있었는데 고쳤습니다~

  • 이스케이프 버그 수정: 토픽에 <>가 들어가면 pango 태그 에러가 와장창 뜨는데 escape하도록 고쳤습니다. 외국 사람들은 토픽에 <>를 안 쓰는 것일까요? ;;

  • 글자 제대로 짜르게: 몇몇 부분에서 utf-8 문자열을 그냥 막 짜르게 했는데. str.split()을 하면 0xa0으로도 짜르게 되기때매 UTF-8에서 0xa0이 들어가는 부분에서 utf-8 문자열이 망가집니다. 요 부분은 유니코드로 쓰도록 고쳤습니다.

  • 한국어 번역추가: 흐흐흐

패치는 업스트림 했으니 곧 반영 되겠죠? [WWW]패치 받기 [WWW]한국어 번역 받기

Twisted로 MSN 접속하기

[WWW]Twisted는 그동안 말로나 들어 왔지, 무지 복잡하고 어렵다고 해서 접근도 안 하고 있었는데, 요즘 Twisted의 매력이 흠뻑 빠져서 헤엄치고 삽니다. 이히히. ㄴ(:D)ㄱ へっへっへっへっ 어푸어푸~~

Twisted MSN!

Twisted안에 twisted.protocols.msn에서 MSN 프로토콜을 지원하고 있기에, 그래 [WWW]SugarCube에 MSN 지원이나 넣어볼까 하는 생각에 한번 해 봤는데, 생각보다 매뉴얼이 구현 자체 위주로만 되어있고, 사용하는 것에 대해서는 문서화가 되어있지 않는 바람에 어떻게 하는지 알기가 힘들었습니다. 게다가, 유닛테스트에도 코드가 상당히 들어있는데, 이게 네트워크 프로토콜 코드를 테스트하는 것이다 보니, 전혀 실제 사용하고는 다르게, 부분 부분을 단편적으로 가짜 입력을 넣어서 처리하는거라, 실제로 어떻게 쓰는지 상상하기가 힘들었다는.. 으흐흑. 한 3시간 삽질 끝에, MSN에서 대화하는 방법을 알아냈습니다; 원래 있는 msn_example.py에는 그냥 notification까지만 접속이 되는데 switchboard까지 해서 대답하도록 해 보았습니다. [WWW]소스

Twisted 소감은?

Twisted는 아무래도 크게 할 작정을 하고 만든거라 Medusa와는 완전히 다른 방식이었습니다. 비동기 뿐만 아니라, 쓰레드 스케줄링도 어느 정도 조절이 가능하고, deferred 모델이나, factory, interface-adapter 모델 같이 소스 코드 유지 보수성을 위한 여러가지 도구들을 많이 갖고 있어서 작은 프레임웍 위에서 직접 다 만드는 방식에 비해, 디자인 상 포용력을 넓혀서 “이 산이 아닌게벼!” 하고 느껴질 때에도 다른 산으로 쉽게 옮아갈 수 있는 능력이! 그런데, 좀 아무래도 진입 장벽이 높은 편인데, 입문용 매뉴얼 “The Evolution of Finger”가 아주 잘 쓰여 있어서 입문의 문제점도 어느 정도 극복한 것 같습니다.

CJKPython 2.3.4 RC 릴리스

Python 2.3.4가 원래 지난 주에 릴리스될 예정이었지만, Thomas Heller씨가 집안 사정으로 이번 주말에 릴리스될 예정인데, 미리 따라잡기 위해서 CJKPython 2.3.4작업을 했습니다. 윈도우 쓰시는 분들은 테스트 해 보시고 이상한 것 있으면 알려주세요~

이번에 작업한 곳은

  • 원래 인터프리터에서 u’한글’쓰면 iso8859-1로 인식해버려서 이상하게 들어가는 문제를 패치해서 넣었습니다. (이 부분은 업스트림해서 지금 Martin이 리뷰하는 중입니다.)

  • IDLE에서도 같은 현상이 있던 문제를 고쳤습니다. 이 부분은 idlelib.PyShell에서 runsource할 때 compile에 직접 인코딩해서 던져주기 때문에, 전혀 인코딩 정보를 알 수 없어서 iso8859-1로 인식하는데 ‘# coding: encoding’ 을 앞에 붙여주도록 해버렸습니다. 흐흐

  • MSVCRT와 MSVCIRT등 라이브러리를 전혀 업데이트 안 하게 했습니다. 윈도우 98 사용자분들이 매우 불편해 하시길래~ 뭐 요즘이야 윈도우 업데이트 안 하면 큰일나는 세상이니 웬만큼은 업데이트가 됐겠죠~

http://openlook.org/distfiles/CJKPython2.3.4-RC.exe

레볼루션 OS 상영회 갔다 왔습니다~

레볼루션 OS 좀 오래된 표시가 나기는 했지만 정말 잘 만든 다큐멘터리인 느낌이 확실히 들었습니다. :) 역시 에릭 레이먼드씨는 특유의 불만에 가득찬 표정으로 으흐흐.. 마이클 티맨씨는 언제나 봐도 정말 멋있네요~ CYGNUS가 GNU가 들어간 단어를 골랐다는 것도 정말 오늘 처음 알았는데 이히.

끝나고 오픈소스 프로젝트 진행에 대해서 연설(?)을 했는데, 집에서는 분명히 1페이지에 1분 정도로 32분정도 분량으로 두 번이나 연습해서 갔는데 이게 웬걸, 현장에 가니까 시계를 안 보고 하니 1시간이 넘어버렸네요. -ㅇ- 으흐. 앞에만 가면 시간이 어찌나 빨리가는지.. 사실 집에서는 농담도 이것 저것 생각해 뒀었는데 거의 까먹고 지나간 것도 많고 ㅡ.ㅜ;

앞으로 발표 기회를 좀 더 자주가져서, 스티브 잡스처럼 관중을 사로잡는 연설가로 업그레이드 해야겠다는 결심을 해 봅니다~

레볼루션 OS 상영회

오늘은 [WWW]KLDP[WWW]LOGIN에서 공동 주최하는 [WWW]RevolutionOS 공개 상영회 날입니다. 약 80분간의 본 영화 상영이 끝나고 나서 10분 휴식시간 뒤에 퍼키가 30분정도 오픈소스 프로젝트의 작동 방법에 대해서 FreeBSD와 Python 프로젝트의 사례를 발표합니다. 제 세션은 4시 10분정도에 시작할 예정인데요, 연세대학교 신촌캠 제3공학관 C040에서 합니다. 시간 나는 분들은 많이 참석해 주세요~~ 강당이라 자리 썰렁하면 불쌍해 보입니다. ㅠ.ㅠ -O-;

제너레이터 익스프레션 CVS에 들어가다!

서지원님이 구현하신 [PEP]PEP289 Generator Expression이 드디어 [WWW]CVS에 들어갔습니다. 이제 파이썬 CVS에서 체크 아웃하면 패치 안 하고도 바로 제너레이터 익스프레션을 쓸 수 있습니다! 와하하하.

이번에 들어간 것은 첫번째 루프 변수만 precompute하고 나머지는 레이지 바인딩을 하는 귀도가 제안한 스펙으로, 가장 헷갈리지만 가장 실용적이기는 한 방식입니다. 여전히 많은 사람들이 완전한 레이지 바인딩이나 완전한 얼리 바인딩을 하자고 외치고 있긴 하지만, 귀도는 그냥 2.4 알파 1까지는 이대로 가자고 합니다. -ㅇ-; 알파 1을 본 사람들이 뭔가 얘기하면 그 때가서 생각해 보자는군용~ 크흐흐

어쨌거나, 파이썬 2.4의 가장 주된 기능을 구현한 분과 알게 되어 영광 =3 =33

매일 신선한 인덱스를 마시자~

http://www.FreeBSD.org/ports/INDEX http://www.FreeBSD.org/ports/INDEX-5 드디어 드문드문 1~2달에 한번씩 업데이트돼서 실제로 맨날 포트 올리는 열성FreeBSD당원들에겐 무의미한 존재였던 INDEX가 이제 곧 공식적으로 배포가 되게 되었습니다. 아직은 베타상태이고, 거의 매시간 올라갈 예정이라고 합니다. (와와~~)

이제 크론에 등록해서 생생한 포트를 낼름~

레드망고에 뜨다?

오랜만에~ 사발통문 총회가 있어서 신촌에 들렀습니다. 역시 신촌에 한참 안 갔다가 가니, 신촌이 좋다는 것을 흑흑 얼른 신촌으로 돌아가리 ㅡ.ㅜ

그래 오랜만에 레드망고에 갔다가 역시나~ 상큼한 요구르트 아이스크림을 먹고~ 나오면서 『낭랑18세』에 레드망고 나온 것 같은 미디어에 노출된 것들을 문 옆의 게시판에 붙여 놨는데, [코멘트 8개] 이런 게 보이길래, 아~ 요즘은 뉴스에도 pyblosxom하고 비슷한 양식을 쓰나? 하고 생각을 했는데, 날짜 표시가 뭔가 낯익은 모습!

0405-redmango1.jpg

우옷. 자세히 보니 코멘트에 “김창준”님, “nezy”, “딸기”, “창수” 등등 낯익은 이름들이? 헉 가만 보니 이것은 [WWW]오픈룩 7월 26일자 블로그를 인쇄한 것이었습니다. 우흐. 깜짝이야. 깜짝 놀라서 곰곰히 보다가, 냉큼 찍어왔어요.

0405-redmango2.jpg

날짜가 영문으로 인쇄된 것을 보면, 날짜가 한글로 나오기 시작한 것이 2003년 9월 정도부터이니, 그 전부터 걸어뒀다는 뜻이 되는 것일까 하는 생각을 잠시 해 봤습니다. 뭔가 앞으로 블로그에 좀 더 공신력(?) 있는 것을 많이 써야겠다는 생각이 드는군요. -ㅇ-;

신촌 레드망고 가시면 구경하고 오세요~~ :) (별 걸 다 구경을 ;;; )