2012년 5월 29일 화요일

Emacs용 달력 프레임워크 Calfw

Emacs에는 이미 calendar라는 함수가 있어서 실행(M-x calendar)시키면 달력이 표시된다. 하지만 그냥 달력만 표시될 뿐 뭐 특별히 일정 관리라던가 등의 달력과 연관된 기능을 제공하지는 않는다. 당연히 정보를 제공 할 만한 여유 공간도 없다.

Calfw의 등장은 아마도 이런 달력과 연관된 기능을 제공할 목적인 것 같다. 달력을 표시하고 이 달력에 어떤 정보를 넣을 것인지 등의 정보를 입력해서 달력의 기능을 확장 할 수 있는 것이다.

위 두 링크는 내용이 거의 동일하다.

어쨌건, 위 사이트에 있는 이미지들을 보면 (나만 그럴지도 모르겠지만) 꼭 구글 칼렌다를 보는 듯한 착각을 일으킨다.

설치방법은 github 저장소 사이트에서 설명하고 있는데, 그냥 파일을 받아서 emacs load-path로 지정된 곳에 파일을 몰아 넣고 단순히 다음 한 줄이면 프레임워크를 사용 할 수 있게 된다. 물론 원하는 디렉토리에 넣고 add-to-list로 load-path에 해당 디렉토리를 추가해 줘도 된다.
;(add-to-list 'load-path "MY CALFW DIRECTORY")
(require 'calfw)
이름에서 알 수 있겠지만, Calfw는 그 자체로는 프레임워크이다. 따라서 아무런 동작을 하지 않을 수도 있다. 하지만, 기본적으로 몇 가지 플러그인이 함께 배포되는데 org-mode의 agenda와 연계가 가능한 calfw-org나 구글 칼렌다나 iCal 등과 연계가 가능한 calfw-ical 등등이 그 예이다.

예제삼아 org-mode agenda를 Calfw와 연동시켜 보자. 위 설정에서 다음 한 줄을 더 추가한다.
(require 'calfw-org)
그리고 M-x cfw:open-org-calendar 를 실행시키면 같은 스크린샷이 나온다.
솔직히 말해서 색상이 너무 추하다 -_- color-theme와 뭔가 맞지 않는 색상이다. 다만, 아직 개발중이라는 상황을 이해해야 한다. 더불어 좀 (아니 많이 아주 많이) 귀찮겠지만, 색상을 적당히 face에 맞게 다시 조절해 주면 된다.

그리고 위 스크린샷에는 중요한 문제점이 있는데... agenda의 내용이 전혀 안보인다. 오류가 있다거나 이런게 아니고 그저 내 agenda에 일정 정보가 전혀 없다는 문제가 있을 뿐이다. :-p

그럼 각 날짜마다 글자가 적혀있는 것은 뭐냐 라고 물어볼 이가 있을지도 모르겠는데, 일본의 공휴일이나 기념일이다. 제작자가 일본인이라는 점을 밝혀야 할 것 같다.

안타깝지만, 음력 달력 등의 기능은 제공되기 힘드리라 생각된다. 따라서 한국의 공휴일이나 기념일을 모두 입력하기에는 무리일 것 같다.

...

Calfw는 활용할 수 있는 플러그인의 등장 여부에 따라 엄청난 인기를 끌거나 묻히거나 할 수 있을 것이다. 물론 현재 상황 만으로도 제법 쓸 만한 도구임에는 분명하다. 단지 개인적으로 별로 쓸 일이 없을 것 같다라는 문제점이 있을 뿐이다. ;-)

재미있는 프로젝트 임에는 분명하기에 일단은 지켜봐야 할 것 같다는 생각이 든다.

댓글 없음 :