Emacs org-modeを使ってみる: (7) ハイパーリンク

このエントリーをはてなブックマークに追加

今回はハイパーリンクについて,使い方をまとめてみる.
なおUbuntu 8.04 LTSとEmacs22上で, org-6.34c (2010年1月10日リリース)の利用を前提にしている.

ハイパーリンクの書き方

ハイパーリンクは [[リンク]]あるいは [[リンク][表示]] のように記述する.記述すると,その部分は特別なハイライト表示になる.
編集するには,ハイパーリンクの後ろでバックスペースをタイプするか, OrgメニューのHyperlinksを開き,Literal linksを選択する.

ハイパーリンクを開く

ハイパーリンクを開くには「C-c C-o」とタイプする.
Webブラウザの設定が必要な場合は,以下のように設定しておく(以下はFirefoxを利用する場合).

(setq browse-url-browser-function 'browse-url-firefox)

内部リンク

[[文字列]] のように記述すれば,同一ファイル内の「文字列」を含む最初の行にリンクできる.また,文字列の先頭に「*」を付けると,対象を見出しに限定できる.
例えば,以下のように記述すると「第1回ORG会議」を含む見出しへのリンクとなる

   - [[*第1回ORG会議]]

[[#ID]] のように記述すれば, CUSTOM_ID プロパティとして「ID」という文字列が設定されている見出しへのリンクとなる.
例えば,以下のように記述する.

  - [[#org2][第2回ORG会議]]
* 第2回ORG会議 <2010-03-05 金 13:30-14:30>
  :PROPERTIES:
  :CUSTOM_ID: org2
  :END:

CUSTOM_ID プロパティを入力するには,「C-c C-x p」とタイプすれば良い.

外部リンク

org-modeでは, Webページ,ファイル,Emacs mewのメールなどに対し,非常に簡単にリンクを張ることができる.

Webページ

Webページへのリンクは,以下のように記述する.

  - [[http://orgmode.org/manual/Hyperlinks.html][ハイパーリンク]]

「C-c C-o」をタイプすると,browse-url-browser-function等で設定したWebブラウザが起動し,Webページが開かれる.

ファイル中の文字列へのリンク

テキストファイルやプログラムのファイル中で,「C-c l」をタイプすると,その場所へのリンクが保存される.
例えば,.emacsファイルを開いて,「(require 'org-install)」の行で「C-c l」とタイプする.
次に ~/org/notes.org を開いて,以下のように「C-c C-l」をタイプする.

  - [ここでC-c C-lをタイプ]

メッセージ行に「Link:」と表示されるので,「UP RET RET」とタイプすると以下のように保存したリンクが挿入される.

  - [[file:~/.emacs::require%20org%20install][file:~/.emacs::require org install]]

ここで,「~/.emacs」の部分はファイル名,「::」より後ろの「require%20org%20install」は検索する文字列を表す.
リンクの所で「C-c C-o」をタイプすると,「~/.emacs」のファイルが開き,「require%20org%20install」の文字列を含む行にカーソルが移動する.

ファイルへのリンク(diredを利用)

Emacs diredでファイル一覧を表示している時,「C-c l」でファイルへのリンクを保存できる.
orgファイルへのリンクの挿入は,「ファイル中の文字列へのリンク」と同様である.

メールへのリンク(mewを利用)

Emacs mewでメールのサマリーを表示している時,「C-c l」でメールへのリンクを保存できる.すごい!
リンクの形式は「mew:%2Bフォルダ名#メッセージID」の形式になっているので, inbox中ではなく,フォルダに移動してからリンクするのが良い.
orgファイルへのリンクの挿入は,「ファイル中の文字列へのリンク」と同様である.

主なキーバインドのまとめ

キー 処理
C-c l その場所をリンクとして保存(任意のmode)
C-c C-l 保存したリンクをorgファイルに貼り付ける
C-c C-o ハイパーリンクを開く