Wednesday, May 29, 2013

Upgrade org-mode in aquamacs

Aquamacs에서 Org-mode 업그레이드

Aquamacs에서 Org-mode 업그레이드


e⎋m⌘a⌥c⌃s⇧ is Esc Meta Alt Ctrl Shift


이 문서는 emacs org-mode 로 작성된 글입니다.

Operating System Environments

  • Main- : OS X Mountain Lion (10.8.3)
  • Sub- : Debian GNU/Linux Squeeze (6.0.7)
  • Server : Debian GNU/Linux Squeeze || Lenny
  • Mobile : iOS 6.1.3

태초에 e⎋m⌘a⌥c⌃s⇧1라는 이름의 초강력 editor 가 있었다. Richard Stallman이 이끄는 GNU Project에서 1976년에 처음으로 배포된 후, 아직까지 최강의 editor로 군림하고 있다. Lisp라는 언어로 쓰여진 e⎋m⌘a⌥c⌃s⇧는 거의 못 하는 것이 없는데, 특히 LaTeX, Fortran, C, 등의 coding에 강력한 힘을 발휘하며, .el의 확장자를 가진 일종의 plugin을 설치하면 Mathematica source, Markdown, 등도 편리하게 사용할 수 있다. 역사가 오래된 만큼 다양한 emacs variants(or forks)가 존재하는데, windows users 사이에서는 xemacs가 가장 유명하고, os x users 사이에서는 aquamacsemacs(cocoa)가 널리 사용되고 있다. 내 MacBookPro에는 둘다 깔려있긴한데, 그중에서 aquamacs가 나의 메인 editor이다. Debian GNU/Linux에서는 당연히 gnu emacs를 쓴다.

e⎋m⌘a⌥c⌃s⇧ org-mode

Org-mode는 기본으로 설치되어 있는 Major-mode 중의 하나로, notes, TODOs, GTD(Get Things Done), HTML, LaTeX, 등을 plain text로 해결하자는 취지로 Carsten Dominik 가 고안한 언어(혹은 macro)이다. Markdown 언어와 마찬가지로(아니 더 강력하게) source code가 간단해서 배우기 쉽고 debugging이 용이하다. 게다가 특별히 emacs가 꼭 아니라도 source code를 일반 text editor로도 보거나 편집에 전혀(혹은 거의) 문제가 없다는 점이 큰 장점이다. 특히 HTML을 모르는 나 같은 사람이 blogging을 하는데 훌륭한 도구이다. Markdown에 비해 특히 표 지원이 탁월하며, 간단한 수식을 위한 LaTeX 지원도 조금 더 나은 것 같다. Org-mode의 강력한 기능은 Carsten Dominik 이 직접 발표한 40여분짜리 동영상을 보면 한눈에 확인할 수 있다.

Org-mode

Aquamacs 에서의 문제점

주로 한글을 쓰는 사이트의 경우, link를 걸때 가끔 aquamacs 에서는 link가 깨진다. 즉 link를 복사해서 aquamacs에 붙이고 compile 하면, output인 html 파일에서 link된 페이지로 가지 않는다. 이는 aquamacs 2.4(현재 2013년 5월)가 gnu emacs 23을 기반으로 만들어 졌기때문에 org version 6.33x 깔려있는데, 이 버젼에서 문제가 생기는 것으로 보인다. 현재 emacs(cocoa)는 gnu emacs와 같은 emacs 24이고 org version 7.3.3f 이며, 여기서는 아무런 문제 없이 link가 동작한다. org-mode의 최신 버젼은 8.0.x 인데, 어떠한 방법으로든 aquamacs의 org-mode version을 7.3.x 이상으로 올리면 aquamacs에서도 자유롭게 쓸 수 있다.

Org-mode upgrade 방법 3

0. 는 aquamacs에 marmalade라는 elisp repository를 이용해서, package manager를 설치한 후, aquamacs 안에서 upgrade하는 것이다.

I. 우선 여기(package.el 바로가기)를 클릭해서, 페이지 전체를 복사한다.

II. Aquamacs에서 new buffer를 열어, 붙여넣은 후 ~/Library/Preferences/Aquamacs Emacs/package.el 으로 저장한다.

III. ~/Library/Preferences/Aquamacs Emacs/Preferences.el 를 열어, 다음을 적어넣고 저장한 후, aquamacs를 재시작한다.

(require 'package)
;; Marmalade
(add-to-list 'package-archives
             '("marmalade" . "http://marmalade-repo.org/packages/"))
;; The original ELPA archive still has some useful
;; stuff.
;; (add-to-list 'package-archives<br />
;;              '("elpa" . "http://tromey.com/elpa/"))
(package-initialize)

IV. mini-buffer(⌥x)를 열어, list-packages 를 타이핑한 후 return 키를 누른다. 즉, ⌥x list-packages .

V. 조금 기다리면 아래와 같은 화면이 뜨는데, 빨간 화살표가 가리키는 org 를 그냥 클릭하면 설치된다.

8873567984_4d628c16df_z.jpg

알아두면 유용한 단축키

  • Export/Publish… → ⌃c ⌃eh o
  • Insert Link → ⌃c ⌃l

FYI) Insert Link는 미리 org-mode source에 적어둔 links(#+Link …)를 간단한 명령으로 바로 부르는 역할을 한다. LaTeX에서 BibTeX에 적어둔 bibliography를 부르는 것과 유사하다.


Footnotes:

1

여기서, e⎋m⌘a⌥c⌃s⇧라 함은 OS X에서 aquamacs와 emacs(cocoa) 그리고 Debian GNU/Linux에서의 gnu emacs를 모두 포괄하는 용어로 사용되었다.

Created: 2013-05-29 Wed 21:13

Emacs 23.3.50.1 (Org mode 8.0.2)

Validate XHTML 1.0

No comments:

Post a Comment