イントロ
Orgはemacsに搭載されているorg-modeで使われる軽量マークアップ言語である。 軽量マークアップ言語といえば、markdownやasciidocやre-structured textなどいろんなものがあるが、自分は研究のログにorgファイルを使っている—neovimを使っているにもかかわらず。
この記事では、orgのメリットとデメリット、そしてそれらを踏まえた自分の中での理想形について吐き出そうと思う。
利点
Orgはemacsのorg-modeに由来するフォーマットであり、markdownなどと違って、エディタの機能と密結合したフォーマットである。 従って、orgは単なるマークアップ言語ではなく、特にエディタとの連携が前提となってくるところが非常に特殊な点で、以下に挙げるメリットもその特徴がよく現れている。
orgの紹介記事は巷にいくらでもあるが、ここでは個人的に重要だと思う機能を厳選して紹介する。
日時情報を表す記法がある
これはログファイルとしてとても重要なのだが、orgには日時の情報を表す記法がある。
たとえば、C-c .で<2025-05-27 火>といったアクティブなタイムスタンプを挿入できたり、インアクティブなタイムスタンプを挿入できる。
ここに時刻の情報をいれたり、範囲を表す記法もある。
現時点でログファイルとして使う6割くらいの理由はこの機能となっているくらい他の軽量マークアップ言語との違いが大きいと思っている。
TODOなどの記法(そして管理機能)がある
見出しなどは
* h1
hogehoge
** h2
fugafuga
のように書くのだが、ここに
* TODO buy some carrot
** DONE go to the grocery
のように、TODOなどを挿入するだけでTODOのアイテムとなる。 さらにエディタ側で気軽にDONEへとトグルできたり、設定でCANCELなど更に状態を追加できたり、重要度を設定できたりと、(emacsの)デフォルトでTODO管理機能が一通り揃っている。 さらに日時の記法と組み合わせることで、タスクの締め切りと予定日時を書くこともできる。 また、エディタ側で設定したパスにあるorgファイルに対して自動でタスクをスクレイプしてきて、タスクの一覧を時系列や重要度などでソートして見れる。
表が使える
ただただ軽量マークアップ言語と信じられないほど快適なのでとりあえず体験してみてほしい。
- emacsを開く
- M-x (Alt-x)を押して、
org-modeと入力してenter - まずは
| a | b|などと打ってみる - Tabを押すと…なんか整形された!!
あとはまるでexcelのように使える。
他…
あんまり書いてると長くなるので箇条書きで
- 時間のロギング(開始と終了時に特定のコマンドを実行するとかかった時間を記録してくれる)
- 文芸的プログラミング(コードと実行結果を同じファイルに書ける…らしい(使ったことがない))
- タグの記法
- 文書内リンクを自由に作れる
- 自分はuuidで生成するようにしているので、タイトルを変えても問題ない
- emacsならかなりリッチ
- 見出しのレベルに応じてフォントサイズを変える
- 画像を表示
- 数式を表示
- リンクはhtmlのようにテキストだけ表示など
欠点
こんなに便利だが、一つ大きな欠点がある。 それはあまりにもemacsというエディタと密結合したシステムだという点だ。
つまり非常に多くの便利機能があるが、それはemacsのorg-modeありきで便利になる/使えるものが多く、他のエディタからは利便性を享受できない。 また、そのためどうしても利用頻度が他と比べて少なくなく知名度も低い。 更にはemacsをベースにしたあまりの柔軟性や機能の多さ故に他のエディタやツールへの移植のハードルが高く、そのため関連ツールも少ない。
自分はneovimユーザーであるため、こうした欠点をもろに感じており、現時点では以下の2つのツールを使い分けつつorgを利用している。
- nvim-orgmode: タイムスタンプの挿入や表の整形などかなり多くの機能がカバーされている。
- emacs: だが、エクスポートだけは微妙1なので、本家を利用する。
理想
nvim-orgmodeもかなり素晴らしいが、どうしてもemacsとの挙動の違いが見られたり、折りたたみ機能2にバグがあったりする。 あと最近結構文書量が増えてきたのか、補完などが遅いと感じるようになってきた。 またcliから簡単にエクスポートしたりより洗練された補完や検索ができるようになると嬉しいと思っているので、やはり最近の流行りに乗ってorg-modeの言語サーバーがほしい。
一応orgの文法はOrg Syntaxにかかれていたり、emacs以外のツールの一覧はOrg Mode toolsにあるのを見つけたのでこのあたりから触っていきたいな… と思って1年が経過した。
あとブラウザ(スマフォ)から簡単に自分の研究ログにアクセスしたい3。
Comments
Reply to this post (misskey) to leave a comment.
Reply