LoginSignup
43

More than 5 years have passed since last update.

Org-modeで、ライフログを録ろう

Last updated at Posted at 2015-01-25

今回は、Org-modeが提供する数多の機能の中から、ライフログの録り方を紹介します。
Org-modeのライフログは、「あ、これメモしておこう」とか、「あれ、このサイトのパスワードは何だったけ?」といったシーンで簡単に使用できるで、一度使いだすと手放せなくなります。

Org-modeとは

Emacsのメジャーモードの1つ。Org-modeのホームページでは、以下のように紹介しています。

「Org-mode は、ノートの保存、TODOリストの管理、プロジェクト計画のためのモードです。高速で効率的なプレーンテキストのシステムを使ってファイルを編集します。」

準備

ここからは、Ubuntu 14.10のEmacsをベースに説明します。
Emacsが動く環境であれば、Org-modeは、OSを問わず動作すると思います。

Org-modeのインストール

Ubuntu 14.10のEmacsパッケージをインストールと、Org-modeはインストールは完了です。
ただし、使用するには、Org-modeのActivationが必要です。

1. Org-modeのActivation

\$HOME/.emacsに、以下のlispを追加します。

(add-to-list 'auto-mode-alist '("\\.org\\'" . org-mode))
(global-set-key "\C-cl" 'org-store-link)
(global-set-key "\C-cc" 'org-capture)
(global-set-key "\C-ca" 'org-agenda)
(global-set-key "\C-cb" 'org-iswitchb)
(setq org-capture-templates
      '(("t" "Todo" entry (file+headline "~/org/gtd.org" "Tasks")
     "* TODO %?\n  %i\n  %a")
        ("j" "Journal" entry (file+datetree "~/org/journal.org")
     "* %?\nEntered on %U\n  %i\n  %a")))

2. \$HOME/.emacsファイルのリロード

上記の設定を有効にするために、\$HOME/.emacsの再読込みを行ないます。
\$HOME/.emacsの再読込みには、以下のどちらかの操作を実行してくさい。

  1. Emacsを再起動する。または、
  2. Emacsで、load-file関数をコール(M-x file-load)して、\$HOME/.emacsの再読込みを行う。

3. journal.orgの準備

ライフログの格納先となるjournal.orgファイルを用意します。

  1. \$HOME/orgディレクトリの作成

    $ mkdir $HOME/org

  2. ライフログで使用するタグの定義

    $ emacs $HOME/org/journal.org

    ライフログでのタグ入力時に補完機能が動作するよう、journal.orgの先頭には、今回の例で使用する@home@workの2つのタグを定義します。

    #+TAGS: @home @work
    

    setTags.png

  3. 検索の設定

    録り貯めたログを、簡単に検索できるといいですよね。そこで、OrgのAgendaの検索対象となるように、journal.orgをカレントバッファにした状態で、C-[キーを押下します1

ライフログの入力

それでは早速、ライフログを入力してみましょう。

もし、誤ったキー操作でライフログの記事が折り畳まれたら、Shift+Tabキーを複数回、押下してみてください。記事が元通りに展開された状態に戻ります。

1. Org-modeへの遷移

Org-modeのCaptureをコールし、Journalのテンプレートを選択します。

  1. Org-modeのCaptureをコール

    Org-modeのCaptureは、C-c cキーを押下することで、Emacsのどのバッファからでもコールすることができます。

    selectTemplate.png

  2. Captureのテンプレートを選択

    ミニバッファにTemplate key:と表示されるので、jキーを押下して、journalを選択します(指定可能なCaptureのテンプレートは、Org Selectsバッファに表示されます)。

    startCapture.png

ライフログの入力を取り止めたい時には、C-c C-kキーを押下してください。そうすると、元のバッファに戻ります。

2. ライフログを入力

  1. タイトルの入力

    4つの*(Org-modeでの第4階層のヘッドライン2を意味する)の後に空白を1つ置いて、ライフログのタイトルを入力します。

    insertTitle.png

  2. タグの入力

    次にタグを入力します。
    ヘッドラインにカーソルを置いたたま、C-c C-qキーを押下します。すると、ミニバッファにTags:と表示されます。タグの入力は、Tabキー押下による補完機能を使用することができます3。なお、タグを複数指定する場合は、それぞれを:で区切ります。

    setArticleTag.png

  3. 記事の入力

    そして、記事を作成します。記事の作成が終了したら、C-c C-cキーを押下して、ライフログの記録を終了します。

    writeArticle.png

ライフログの検索

複数のライフログの入力が終了したら、検索機能を使ってみましょう。
検索するには、Org-modeのAgendaをコールします。そして、検索キーを指定して、該当ライフログのリストを表示させます。

  1. Org-modeのAgendaをコール

    Org-modeのAgendaは、C-c a mキーを押下することで、Org-modeのCaptureと同じように、Emacsのどのバッファからでもコールすることができます。

    selectSearchPattern.png

  2. 検索キーの指定

    ミニバッファにMatch:と表示されるので、検索したいタグを入力します。検索時のタグの入力にも、Tabキー押下による補完機能を使用することできます。
    検索キーを決めて、リターンキーを押下すると、Org Agendaバッファに該当するライフログの一覧が表示されます。

    seachTag.png

  3. ライフログの選択

    Org Agendaバッファに該当するライフログの一覧から、表示させたいライフログにカーソルを移動させて、リターンキーを押下します。

    listLifeLog.png

  4. ライフログの参照

    ライフログの参照先に移動しますが、記事は折り畳まれた状態のままです。記事の詳細を見たい時には、Tabキーを押下してください。

    lookArticle.png



  1. 実際には、\$HOME/.emacsに、org-agenda-filesの設定が自動的に挿入されます。 

  2. Journalのテンプレートは、narrowモードで表示されています。ライフログを記録した後、実際の記録ファイルをfind-fileで開くと、第1階層以降のヘッドラインの存在を確認することができます。
    - 第1階層 → 年
    - 第2階層 → 月
    - 第3階層 → 日
    - 第4階層 → 個々のライフログ 

  3. タグには、#+TAGSで指定する以外にも、ミニバッファで新規のタグを指定することができます。 

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
43