org-mode-just-as-text.png

org-mode画面で誰かに説明した後、テキストを共有することがある。
しかしorgファイルのまま渡すと、orgファイルを知らない人に嫌がられるかもしれない。
ここではなるべくorg-mode画面の見た目そのままテキストファイルにする方法を考える。

前提

Org mode version 9.6.6

<p>
  以下の設定をしていて、<br /> 見出しのアスタリスクは1つ表示。<br /> org-indent-modeが有効になっているものとする。
</p>

<p>
  <em></em>
</p>

<pre class="example" id="nil">

(custom-set-variables ‘(org-hide-leading-stars t) ‘(org-startup-indented t) )

エクスポート前のorg-modeでの表示は以下のようになっているとする

* サンプルorg top
  * レベル1
    * レベル2-1
      * レベル3-1
        * レベル4
          * レベル5-1
            本文1
          * レベル5-2
            本文2
    * レベル2-2
      * レベル3-2

テキストファイルへのエクスポート方法

C-c C-e t u
org-export-dispatch
text
UTF-8

デフォルトの場合

エクスポート結果。色々ごてごて出力されてしまう。

<p>
  <em></em>
</p>

<pre class="example" id="nil">

username

Table of Contents ─────────────────

  1. サンプルorg top .. 1. レベル1 ….. 1. レベル2-1 ….. 2. レベル2-2

1 サンプルorg top ═════════════════

1.1 レベル1 ───────────

1.1.1 レベル2-1 ╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌

◊ 1.1.1.1 レベル3-1

◊ 1.1.1.1.1 レベル4

◊ 1.1.1.1.1.1 レベル5-1

  本文1


◊ 1.1.1.1.1.2 レベル5-2

  本文2

1.1.2 レベル2-2 ╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌

◊ 1.1.2.1 レベル3-2

目次(Table of Contents)を削除する

ファイルのどこかに以下の記述を追加

<p>
  <em></em>
</p>

<pre class="example" id="nil">

#+OPTIONS: toc:nil

エクスポート結果。

username


1 サンプルorg top
═════════════════

1.1 レベル1
───────────

1.1.1 レベル2-1
╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌

◊ 1.1.1.1 レベル3-1

  ◊ 1.1.1.1.1 レベル4

    ◊ 1.1.1.1.1.1 レベル5-1

      本文1


    ◊ 1.1.1.1.1.2 レベル5-2

      本文2


1.1.2 レベル2-2
╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌

◊ 1.1.2.1 レベル3-2

作成者を削除する

ファイルのどこかに以下の記述を追加

<p>
  <em></em>
</p>

<pre class="example" id="nil">

#+OPTIONS: author:nil

エクスポート結果。

1 サンプルorg top
═════════════════

1.1 レベル1
───────────

1.1.1 レベル2-1
╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌

◊ 1.1.1.1 レベル3-1

  ◊ 1.1.1.1.1 レベル4

    ◊ 1.1.1.1.1.1 レベル5-1

      本文1


    ◊ 1.1.1.1.1.2 レベル5-2

      本文2


1.1.2 レベル2-2
╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌

◊ 1.1.2.1 レベル3-2

セクション番号を削除する

ファイルのどこかに以下の記述を追加

<p>
  <em></em>
</p>

<pre class="example" id="nil">

#+OPTIONS: num:nil

エクスポート結果。だいぶすっきりしてきた。

サンプルorg top
═══════════════

レベル1
───────

レベル2-1
╌╌╌╌╌╌╌╌╌

◊ レベル3-1

  ◊ レベル4

    ◊ レベル5-1

      本文1


    ◊ レベル5-2

      本文2


レベル2-2
╌╌╌╌╌╌╌╌╌

◊ レベル3-2

見出しの階層数を1にする

ファイルのどこかに以下の記述を追加

<p>
  <em></em>
</p>

<pre class="example" id="nil">

#+OPTIONS: H:1

エクスポート結果。一番上の見出しだけ見出しとして出力され、それ以降の見出しはリスト表示となる。

サンプルorg top
═══════════════

◊ レベル1

  ◊ レベル2-1

    ◊ レベル3-1

      ◊ レベル4

        ◊ レベル5-1

          本文1


        ◊ レベル5-2

          本文2


  ◊ レベル2-2

    ◊ レベル3-2

見出しの階層数を10にする

ファイルのどこかに以下の記述を追加

<p>
  <em></em>
</p>

<pre class="example" id="nil">

#+OPTIONS: H:10

エクスポート結果。今回のサンプルでは階層数が10に満たないため、全て見出しとして扱われた。

サンプルorg top
═══════════════

レベル1
───────

レベル2-1
╌╌╌╌╌╌╌╌╌

レベル3-1
┄┄┄┄┄┄┄┄┄

レベル4
┈┈┈┈┈┈┈

レベル5-1

  本文1


レベル5-2

  本文2


レベル2-2
╌╌╌╌╌╌╌╌╌

レベル3-2
┄┄┄┄┄┄┄┄┄

見出しの階層数を0にする

ファイルのどこかに以下の記述を追加

<p>
  <em></em>
</p>

<pre class="example" id="nil">

#+OPTIONS: H:0

エクスポート結果。だいぶ近づいてきた。

◊ サンプルorg top

  ◊ レベル1

    ◊ レベル2-1

      ◊ レベル3-1

        ◊ レベル4

          ◊ レベル5-1

            本文1


          ◊ レベル5-2

            本文2


    ◊ レベル2-2

      ◊ レベル3-2

リストの頭の文字、記号を変更

M-x customize-variable
org-ascii-bullets
で、Org Ascii Bulletsのカスタマイズ画面になるので以下のUTF-8 charsetのところの記号♢を編集して半角のアスタリスクにする。
編集したらC-x C-sで保存しよう。.emacsなどのファイルに追記される。

<p>
  エクスポート結果。
</p>

<p>
  <em></em>
</p>

<pre class="example" id="nil">

List: Bullet characters for low level headlines: ASCII charset Repeat: [INS] [DEL] Character: * [INS] [DEL] Character: + [INS] [DEL] Character: - [INS] Bullet characters for low level headlines: Latin-1 charset Repeat: [INS] [DEL] Character: § [INS] [DEL] Character: ¶ [INS] Bullet characters for low level headlines: UTF-8 charset Repeat: [INS] [DEL] Character: ◊ [INS]

エクスポート結果。

* サンプルorg top

  * レベル1

    * レベル2-1

      * レベル3-1

        * レベル4

          * レベル5-1

            本文1


          * レベル5-2

            本文2


    * レベル2-2

      * レベル3-2


空白行数を変更する

M-x customize-variable
org-ascii-headline-spacing
で、Org Ascii Headline Spacingカスタマイズ画面になる
デフォルト値はそれぞれ以下になっている。

<ul class="org-ul">
  <li>
    Number of blank lines before contents: 1
  </li>
  <li>
    Number of blank lines after contents: 2
  </li>
</ul>

Number of blank lines before contentsを0にする

<div class="outline-text-3" id="text-org8bfb030">
  <p>
    エクスポート結果。
  </p>
  
  <p>
    <em></em>
  </p>
  
  <pre class="example" id="nil">
  • サンプルorg top
    • レベル1
      • レベル2-1

        • レベル3-1
          • レベル4
            • レベル5-1 本文1

            • レベル5-2 本文2

      • レベル2-2

        • レベル3-2

Number of blank lines after contentsを0にする

エクスポート結果。

<p>
  <em></em>
</p>

<pre class="example" id="nil">
  • サンプルorg top
    • レベル1
      • レベル2-1
        • レベル3-1
          • レベル4
            • レベル5-1 本文1
            • レベル5-2 本文2
      • レベル2-2
        • レベル3-2