wordpress: korean trackback!

어제 까날옹이 egloos 에서 가볍게 트랙백을 날려주셨는데, egloos 에선 trackback 인코딩을 euc-kr 을 사용하는지 트랙백이 깨져서 와버렸네요. 혹시나 관련된 plugin 을 찾아봤지만 plugin 으로는 아직 존재하지 않는 듯 하고, 관련해서 wind-like 님이 문제를 해결한 버젼의 wp-trackback.php 파일을 배포하시더군요.
하지만 wordpress 기본 파일을 수정할 경우 업데이트를 할 때마다 다시 수정해줘야 하는 번거로움이 있기 때문에 그냥 plugin 을 작성해버렸습니다. 막상 plugin 을 작성하려고 보니 trackback_post 에 대한 action 은 글이 삽입된 이후에 실행되도록 되어 있더군요. 역시 그냥 wp-trackback.php 를 수정해서 사용해야 하는건가 하는 생각이 들었지만, 뭐 정도가 아니면 돌아가면 되는 법!! 이미 데이타베이스에 입력완료된 trackback 을 update 하도록 하는 hack 에 가까운 플러그인이 만들어져버렸습니다. -_-v
혹시나 필요한 분은 아래 url 에서 받아서 사용하시면 되겠습니다.
http://mytears.org/resources/distfiles/wp_korean_trrackback-1.0.zip
p.s) wind-like 님이 수정하신 버젼과는 다르게 ‘트랙백을 받는 경우’ 하고만 관련이 있습니다.

Smartjoy!!


얼마 전에 ebay 를 떠돌다가 발견한 smart joy 입니다. SFC 용 패드를 usb interface 로 연결시킬 수 있도록 해주는 컨버터로 Mac OS X / linux / ms windows 에서 아무 설정없이 사용할 수 있다는군요.
SFC 에 푹 빠져있던 어린 시절에 비싼 가격에 부딪혀 해보지 못했던 수많은 게임들을 에뮬을 통해 해보는 중인데 역시나 재밌습니다. 어렸을 때 많이 하던 스트리트 파이터라거나 슈퍼 마리오카트, 슈퍼마리오 월드 , 슈퍼마리오 3 같은 것들도 해보고 있는데 예전 실력은 나오지 않는군요. 특히 스트리트 파이터는 옛날엔 컨티뉴 따윈 하지 않고도 엔딩정도는 봤었는데… 이제는 꼭 한 두 번씩 지네요 흑흑;;
하튼 역시 저한텐 구형 2D 게임들이 잘 맞는 거 같습니다 -_-!!

Apple FontTools

개인적으로 윤디자인에서 만든 서체 시리즈를 상당히 좋아하는데, 2003 년에 처음 파워북을 살 때 받았던 Font 시디에 들어있던 유니코드 윤고딕, 윤체, 윤명조 등은 Mac OS X 에서 같은 family 로 묶여서 나오지 않는 문제가 있습니다. (윈도우야 원래 묶여서 나오지 않고, 리눅스에서도 마찬가지로 문제가 있습니다.)
그래서 얼마 전까진 FontForge 를 이용해서 이름을 수정해서 사용하고 있었지만 이렇게 만든 서체는 Unicode Cmap 만을 가지고 있고 Korean cmap 은 가지고 있지 않기 때문에 Carbon 기반 프로그램에서는 사용할 수가 없었습니다.
뭐 딱히 해결책이 없는고로 불편한 걸 참아가며 쓰고 있었는데 갑자기 Apple FontTools 이 생각이 나더군요. 패키지를 다운 받아 설치하고 서체 이름을 바꾸기 위해서 name table 을 XML 로 dump 했습니다. vi 로 살살살 수정을 한 뒤 다시 name table 을 덮어 쓰니 꺄홋! 딱 제가 원하는 대로 수정이 되었네요 🙂
드디어 firefox 에서도 산돌고딕, 윤고딕, 윤체, 윤명조 등을 볼 수 있게되었습니다 -_-v 혹시나 저와 비슷한 작업을 하고 싶으신 분들은 apple font tools 를 받아서 설치하시고 터미널에서 아래와 같은 커맨드를 이용하시면 됩니다. (단 Mac OS X 전용입니다.)

dump: ftxdumperfuser -t name TTF_FILE_NAME > XML_FILE_NAME
restore: ftxdumperfuser -t name -d XML_FILE_NAME TTF_FILE_NAME

link: http://developer.apple.com/textfonts/Fonttools/Index.html

mail.app plugin: letterbox

albireo 사이트에 구경을 갔다가 letterbox 라는 mail.app plugin 을 알게 되었습니다.
mail-app.png
플러그인을 활성화 시킬 경우 위의 사진에서 처럼 세로로 삼단으로 메일이 나오게 되는데, 내용이 긴 경우에도 한 눈에 내용을 확인할 수 있어서 훨씬 편리한 것 같습니다.
거기다가 추가로 ‘규칙 적용’ 을 설정해서 학교에서 오는 메일은 주황색, 요금 고지서 등은 연두색, 거래 승인 내역은 노란색 으로 하일라이트가 되도록 세팅을 했더니 눈까지도 즐거워지는군요.
더 많은 정보를 얻고 싶으시다면 아래 링크로 😉
http://harnly.net/software/letterbox/

backup script 도 작성 완료 -_-v

SCSI HDD 같은 경우야 뭐 오래써도 별 문제가 안생기니까… 이제 겨우 일년 정도밖에 안 쓴 제 서버 하드를 걱정할 일은 아니지만… 그래도 세상일은 어떻게 될 지 모르기 때문에… 귀찮다고 미루고 미루던 백업 스크립트를 작성하게 됐습니다.
shell script 의 고수 분들이야 find 등 도 뭔가 멋지게 쓰고 하는 거 같지만! 전 초보 이기 때문에… 그냥 3일 이상 지난 파일의 경우엔 tmpwatch 가 정리하도록 처리를 해버렸네요… 흐흐
혹시나 제 백업 스크립트가 궁금하신 분들은 more 버튼을 클릭하시길…
Continue reading backup script 도 작성 완료 -_-v

Spam filter #2

오랫만에 코드가 손에 잡히길래… 몇 일 전에 구상해 놨던 spam filter 를 실제 구현해봤습니다. php 와 pecl-mailparse 덕분에 아주 간단히 구현할 수 있었습니다.

  1. text/html, text/plain 뽑아내기 (base64_decode, qprint_decode 는 자동으로 됨)
  2. urldecode
  3. convert to utf-8
  4. decode html entities

딱 위에 얘기한 대로만 구현했습니다. 실제 적용 사례는 아래 링크를…
http://mytears.org/resources/mysrc/php/Parsemail.phps
http://mytears.org/procmailrc
현재는 메일 내용을 full buffering 하고 있는데, 몇십 메가씩 되는 메일들을 처리하게 되면 메모리를 엄청나게 쓸 지도 모르겠군요. tempnam 등을 이용해서 임시파일을 만드는 방법으로 천천히 전환해야겠네요 흐흐흐

Spam filter #1

불량 단어 목록을 만들고 procmail 을 통해 무식하게 matching 시키는 방법을 사용하고 있다보니, 첨부파일이 있는 경우 스팸이 아닌데도 불구하고 스팸으로 판단되는 경우가 너무 잦은 것 같습니다.
sex, viagra, … 등의 불량단어 목록을 대소문자 구별없이 매칭을 시켜서 거르고 있는데, 첨부파일이 BASE64 로 인코딩된 경우에 저런 단어들이 포함될 확률이 상당히 높나 봅니다. 보내는 사람 관련해서 white list 를 만들어서 어떻게든 피해나가고 있긴 하지만 이건 답이 아닌 거 같네요.
시험이 끝나고 나면 꼭!! 시간을 내서 스팸 필터를 조금 더 개선시켜야 겠습니다.

  1. 본문을 fetch

    multipart/alternative, multipart/mixed 인 경우 … text/html, text/plain 인 것들만 fetch

  2. %2digit 형식으로 된 것들을 디코드

    [php:urldecode] 를 이용

  3. utf-8 로 변환

    php 의 [php:iconv] function 들은 conversion 도중에 에러가 발생했는지 알기 힘드므로 다른 프로그램을 이용…

  4. &#digit; 형식으로 된 것들을 디코드

    [php:html_entity_decode]

  5. 불량단어 목록과 매칭

  6. 매칭 결과 리턴

대강 위와 같은 기능을 하는 filter 를 작성하고 procmail 과 연동해서 필터링을 해볼까 싶습니다. 다만 귀차니즘 때문에 언제나 구현할 지 모르겠군요. (백업 스크립트는 도대체 언제 짤건데!!)

msn custom imoticon 백업…

이제 슬슬 개강이 다가오고 있기 때문에 그 전에 자료들을 다 백업하고 포멧을 해야겠는데… MSN 메뉴에선 custom imoticon 을 백업할 방법을 찾을 수가 없더군요. 근 일년간 포멧을 안하고 쓰면서 모은 아기자기한 이모티콘들을 날릴 수가 없다는 생각이 들어서 application data 폴더를 뒤지기 시작했습니다.
…\Application Data\Microsoft\MSN Messenger\2113837779\CustomEmoticons 정도의 폴더 안에 내가 사용하는 custom imoticon 들일거라고 추정되는 파일들이 있었습니다. 몇 개의 파일들을 notepad 등에 던져보니 파일이름과 확장자만이 변경되어 있는 상태로 추정되더군요.
냉큼 모든 파일들을 linux 에 올려놓고 file 커맨드를 통해 확인해보니 역시 제 생각대로더군요.

위와 같은 간단한 스크립트를 통해 커스텀 이모티콘을 모조리 백업할 수 있었습니다 🙂

오묘한 procmail 세상…

마이크로 소프트웨어 1월호를 읽던 중 spam 관련된 기사가 몇 개 실렸길래 재밌게 읽어봤습니다. 불량단어 목록을 외부로 빼서 필터링하는 기법이 소개되었더군요. 웹을 통한 관리까지는 도입할 생각이 없지만, 단어 목록을 외부로 빼면 좀 더 관리가 편해질 듯 하더군요.
뭐 하튼 이래저래 해서 오랫만에 procmail 로 구글링을 해봤습니다. 그러다가 맘에 드는 procmail rule 관련 사이트를 찾아냈습니다!
Continue reading 오묘한 procmail 세상…

php: mytrz-Gallery

개인적인 스크린샷을 올려놓거나 정모 사진등을 쉽게 업데이트 하기 위해 만들어 놓았던 갤러리를 공개해볼까 합니다 🙂 워낙 simple 하기 때문에 이름을 Simple Gallery 라고 지을까 하는데 가져다가 쓰는 사람이 있을지는 모르겠군요 –;
사용법도 정말 심플합니다. 이미지 디렉토리에 ftp 등을 이용해서 파일을 올려놓기만 하면 자동으로 thumbnail 이 생성되고 리스트가 갱신됩니다. 라이센스는 예전 Directory Viewer 와 마찬가지로 BSD License 가 될 듯 싶네요

데모:
http://mytears.org/resources/etc/screenshot/linux/
개발버젼:
http://trac.unfix.net/browser/mytrz-gallery
라이센스: BSD License 예정

아직은 제대로 동작하지 않습니다. 현재 계획 중인 것들은

  1. smary 를 이용한 템플릿 지원
  2. image resizer 를 gd 와 ImageMagick 등 중에 선택가능

뭐 대강 저 정도입니다. 혹시나 쓰는 사람들이 하나 둘 생기고… 개선 요구가 있음 반영하도록 노력할 계획입니다 😉
덧: 이상하게 이건 손이 안가네요.
Change Log:
2006/08/30
1. 개인 repository 를 통합하면서 svn 경로가 변경됨
2. 웹에서 svn 을 구경하기 위한 툴을 trac 으로 변경
3. 프로젝트 이름은 mytrz-gallery 로 변경
2006/01/06
1. 개인적으로 사용하던 걸 코드를 조금 정리하고 svn 에 import