- Org Mode 構文は Emacs の外でも使える、直感的で一貫した軽量マークアップ言語として提示されている
- 見出し、リスト、書式、リンクなどの基本文法が シンプルで覚えやすい構造になっており、他の言語より 表現の一貫性 が高い
- Markdown のさまざまな派生バージョンと異なり、Org Mode は 1つの実装(Emacs Org-mode) を中心に比較的 標準化された形 を維持している
- Pandoc など多様なツールで変換でき、Emacs を使わなくても 一般的なテキストエディタで簡単に作成できる
- 軽量マークアップ言語の中でも 可読性、保守性、ツール対応 に優れており、プレーンテキストベースの文書作成の代替として強調されている
Org Mode 構文の概要
- Org Mode 構文は Emacs に依存せず、vim, Atom, Notepad などあらゆるテキストエディタで利用可能
- 見出しは
*, **, ** * で階層を表現
- 文字装飾は
*bold*, /italic/, _underlined_, +strikethrough+, =monospaced= の形式
- リンクは
[[URL][説明]] 形式でシンプル
- リスト(
-, 1.)、チェックボックス([ ], [X])、コードブロック(#+BEGIN_SRC ... #+END_SRC)などもサポート
- 表(table)は手動整列が難しいが、整列を無視しても構文として認識可能
- ユーザーは別途チートシートがなくても 自然に文法を身につけられる
標準化と Markdown の問題点
- Markdown は 多数の派生標準(Original, Extra, MultiMarkdown, GitHub Flavored, CommonMark など) により 互換性の問題 が発生
- 同じ「Markdown」でもツールごとに文法が異なり、データ損失 や 使い勝手の低下 を招く
- Org Mode は Emacs Org-mode 実装1つを基準にすべての文法が定義されているため、一貫した解釈 が可能
- 派生ツールは原典の 部分集合(subset) として動作
- ファイル拡張子は常に
.org に統一されている
- 公式標準文書はないが、Emacs 実装が事実上の標準(golden standard) の役割を果たしている
一貫性と使いやすさの比較
- 見出し構文: Org Mode は
* 接頭辞だけを使って簡単に階層を表現
- Markdown, AsciiDoc, reStructuredText などは接頭・接尾や下線方式など 複雑で不統一な構造 を持つ
- 一部の言語は 混在スタイルを許容 することで混乱を増している
- リンク構文: Org Mode の
[[URL][テキスト]] はシンプルだが、
- Markdown の
[テキスト](URL) や reStructuredText の `テキスト <URL>`_ などは 記号の組み合わせが複雑で一貫性に欠ける
- 書式構文: Org Mode は
/italic/, *bold*, ~monospace~, +strikethrough+ で 一貫した1組の記号構造
- Markdown は
_italic_, **bold**, ~~strike~~ など 記号数や規則が不均一
入力のしやすさとツール非依存性
- Org Mode は 不要な文字入力が少なく、手動整列や複雑な構文もない
- Emacs の外でも Org Mode 構文で書かれたテキストは Pandoc を通じて HTML, PDF, Word など多様な形式へ変換可能
- GitHub, GitLab でも Org ファイルをレンダリングでき、シンプルなテキスト編集環境でも効率的
- 「ツール対応がない環境であるほど Org Mode 構文はより有用」と強調されている
Emacs 内でのツール対応
- Emacs では Org Mode の作成時に TAB, Alt+矢印, Ctrl+Return などで構造操作が可能
- 見出しの折りたたみ/展開、リスト移動、表の行・列移動などを自動化で支援
- メニューベースの操作も可能で、ショートカットを覚えなくても効率的に作成できる
- Emacs を使わなくてもよいが、使う場合は 最も強力なマークアップ編集体験を提供
- Markdown, AsciiDoc, reStructuredText などには 比較できるレベルのツール対応がない
結論と Orgdown の提案
- 軽量マークアップ言語の目的は 簡潔さと効率性 であり、Org Mode はこの点で 最も合理的な設計 を持つ
- Markdown・AsciiDoc・reStructuredText などは 一貫性の不足と複雑な文法 のため使い勝手が落ちる
- Org Mode は 学習コストが低く、ツール非依存で、変換互換性が高い
- 2021年以降、こうした議論から発展して Orgdown という新たな標準化の試みが登場
- Org Mode 構文を基盤にした 独立した軽量マークアップ標準化プロジェクト として紹介されている
追加の議論とフィードバック
- 一部のユーザーは Org Mode の 公式標準の不在 を指摘
- Emacs と Pandoc の間で解釈の違いはあるが、Emacs 実装が事実上の基準 と見なされている
- reStructuredText のリンク参照機能へのフィードバックもあったが、
- 著者は依然として Org Mode を 最も論理的で覚えやすい軽量マークアップ と評価
- 結論として、Org Mode は Emacs エコシステムを超えてプレーンテキスト文書作成の合理的な代替 として提示されている
1件のコメント
Hacker Newsの意見
今ではあらゆるプロジェクト、タスク、知識管理にorg-modeを使っている。15MBを超えるファイルもある
最初は単に見出しだけ使っていたが、必要になった機能はそのたびに既に用意されていた
使いやすさと強力な拡張性を同時に備えたツールは珍しいと思う
もっと踏み込んで学ぶ価値のある高度な機能があれば勧めてほしい
個人情報管理(PIM)、文書作成、ノート、ショートカットの自動化などに活用できる
単なるMarkdown代替フォーマットとして使うより、Emacsエコシステムの中でこそ真価を発揮する
Karl Voitの記事では、org構文はMarkdownより一貫していて簡潔だと主張している
技術の世界ではより良いフォーマットが常に勝つわけではないが、それでも擁護する価値はある
関連記事でもその点が強調されていた
以前はXMLを使っていたが、面倒すぎたので切り替えた。PandocベースのワークフローでHTMLとPDFを生成している
最近はTypstでPDFをより高速に作っている。
xml2typプロジェクトを作って、Pandoc/LaTeXよりずっと速くPDFを生成している
test.mdの最終PDFの成果物も含まれているとよいと思うorgはブックマーク、PKM、ToDo管理まで統合できる
ただAI時代には、LLM学習用としてMarkdownが基本フォーマットになりつつある
それでもLLMはorgも十分扱えるので、両方が共存する余地はある
関連提案記事を参照
オープンソース化されなかったのが惜しい。単独開発プロジェクトの限界(SPOF)を示している
iOS向けのBeorgのおかげでモバイルでも快適に使える
org-ql、org-super-agendaで生産性を高めてきた
毎日の業務ログをorgファイルに残していて、年末評価のときにとても役立つ
ブックマークやタブをorgファイルと同期してTODOとして管理できる
ファイル間リンクをどう構成しているのか気になる。
denoteも検討中だだから複雑なものは単にHTMLやLaTeXの原文を直接書いている
org-modeというプログラム自体は素晴らしいが、単に文法だけを見るならMarkdownのほうが実用的だ
ブログをorgからMarkdownへ移したら、コードは簡潔になり、速度も50倍になった
shiteプロジェクトでBashベースのサイトビルダーを作り、org内にHTMLブロックを直接挿入している
org-edit-specialでHTMLだけ編集できる機能が非常に便利だった#+BEGIN_SRC html)を使えば、言語ごとのハイライトもできるyasnippetでショートカットを作っておくと便利だ私は2009年からすべてのBeamer文書をorgで書いている
PelicanブログにもPythonプラグインでorgサポートを追加した
orgは素晴らしいアイデアだが、互換性の不足が問題だ。Markdownはどこでもサポートされるので、現実的な選択だ
org-modeがどれほど合理的でも、大衆性のあるMarkdownを基本に使うのが現実的だ
単なるフォーマット比較ではなく、まったく異なる動作方式のツールだ
Markdownには構造しかないが、Orgには状態と実行ロジックが含まれる
だから「基本の選択」をめぐる議論は無意味だ。各自が目的に合わせて使えばよい
org-modeを使っている人にやめろと言う理由はない
orgのアスタリスク見出しは視覚的に複雑だ。それでもイタリック表記は気に入っている
実装ごとに異なり、表や脚注のような機能も拡張として別に存在する
唯一の利点は普遍性だけだ
機能は少ないが単純でパースしやすい。リンクは
=>で始まり、段落区切りも明確だ私のパーサーは70行程度で、Markdownの95%の機能をカバーしている
ただし改行を段落区切りとして扱う点は不便だ。
Pandoc Markdownのように二重改行を段落区切りに使うほうがよい
私はオンライン教材をorg-modeで書き、毎学期HTMLへエクスポートしている
マクロでテキスト展開やelisp評価などを自動化している
たとえば{{{NOUN-C}}}が状況に応じて「Clause」や「Rule」に変わる
ページ上部の日付もelispで自動生成している。
Dropboxと連携するsite44.comホスティングを使っていて、保存するだけですぐWebに反映される
そのため他のツールではほとんどサポートされない。対してCommonMarkは標準化されている
私は今後もCommonMarkを使うつもりだ
RedditのようなサイトがMarkdownを採用したのは、むしろ良い選択だった
Markdownよりローカル同期に強いオープンソースのソリューションが多い
Markdownベースのノートアプリは、むしろクラウド依存になりがちだ