org-ruby 0.4.2 → 0.5.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (36) hide show
  1. data/History.txt +18 -0
  2. data/lib/org-ruby.rb +1 -1
  3. data/lib/org-ruby/headline.rb +49 -9
  4. data/lib/org-ruby/html_output_buffer.rb +37 -7
  5. data/lib/org-ruby/line.rb +34 -3
  6. data/lib/org-ruby/output_buffer.rb +2 -2
  7. data/lib/org-ruby/parser.rb +180 -10
  8. data/spec/data/freeform-example.org +113 -0
  9. data/spec/html_examples/custom-seq-todo.html +15 -0
  10. data/spec/html_examples/custom-seq-todo.org +24 -0
  11. data/spec/html_examples/custom-todo.html +15 -0
  12. data/spec/html_examples/custom-todo.org +24 -0
  13. data/spec/html_examples/custom-typ-todo.html +15 -0
  14. data/spec/html_examples/custom-typ-todo.org +24 -0
  15. data/spec/html_examples/entities.html +1 -0
  16. data/spec/html_examples/entities.org +3 -0
  17. data/spec/html_examples/export-exclude-only.html +13 -0
  18. data/spec/html_examples/export-exclude-only.org +81 -0
  19. data/spec/html_examples/export-keywords.html +4 -0
  20. data/spec/html_examples/export-keywords.org +18 -0
  21. data/spec/html_examples/export-tags.html +8 -0
  22. data/spec/html_examples/export-tags.org +82 -0
  23. data/spec/html_examples/export-title.html +2 -0
  24. data/spec/html_examples/export-title.org +4 -0
  25. data/spec/html_examples/link-features.html +8 -0
  26. data/spec/html_examples/link-features.org +19 -0
  27. data/spec/html_examples/only-table.html +1 -1
  28. data/spec/html_examples/skip-header.html +3 -0
  29. data/spec/html_examples/skip-header.org +28 -0
  30. data/spec/html_examples/skip-table.html +4 -0
  31. data/spec/html_examples/skip-table.org +19 -0
  32. data/spec/html_examples/tables.html +1 -1
  33. data/spec/line_spec.rb +35 -0
  34. data/spec/parser_spec.rb +94 -14
  35. data/spec/spec_helper.rb +1 -0
  36. metadata +23 -2
@@ -0,0 +1,113 @@
1
+ #+BEGIN_EXAMPLE
2
+ #+TITLE: Freeform
3
+ #+AUTHOR:
4
+ #+EMAIL: bdewey@gmail.com
5
+ #+DATE: 2009-12-20 Sun
6
+ #+DESCRIPTION:
7
+ #+KEYWORDS:
8
+ #+LANGUAGE: en
9
+ #+OPTIONS: H:3 num:t toc:nil \n:nil @:t ::t |:t ^:t -:t f:t *:t <:t
10
+ #+OPTIONS: TeX:t LaTeX:nil skip:nil d:nil todo:t pri:nil tags:not-in-toc
11
+ #+INFOJS_OPT: view:nil toc:nil ltoc:t mouse:underline buttons:0 path:http://orgmode.org/org-info.js
12
+ #+EXPORT_SELECT_TAGS: export
13
+ #+EXPORT_EXCLUDE_TAGS: noexport
14
+ #+LINK_UP:
15
+ #+LINK_HOME:
16
+ #+END_EXAMPLE
17
+ Freeform
18
+
19
+ This is my todo list, research file, and log record from working on
20
+ the Freeform project.
21
+
22
+ * Future ideas :someday:
23
+ - Add *posts*
24
+ - Enforce uniqueness of url_token
25
+ - Add FeedSync support
26
+ - Auto-recognize URLs
27
+ - Edit in place
28
+ - Import/export of content. I want it to be safe to store real content on the site.
29
+ - Page reordering.
30
+ - AtomPub support.
31
+ - Organization:
32
+ - Move pages around
33
+ - Add tags and navigation by tags
34
+ - Add a breadcrumb bar
35
+
36
+ * TODO Add versioning support :current:feature:
37
+
38
+ ** DONE UI rough-in
39
+ CLOSED: [2009-11-26 Thu]
40
+
41
+ ** DONE Author logging
42
+ CLOSED: [2009-11-27 Fri]
43
+
44
+ ** DONE Version table and model updates
45
+ CLOSED: [2009-11-28 Sat 22:40]
46
+ CLOCK: [2009-11-28 Sat 21:35]--[2009-11-28 Sat 22:40] => 1:05
47
+ CLOCK: [2009-11-28 Sat 21:01]--[2009-11-28 Sat 21:25] => 0:24
48
+ CLOCK: [2009-11-28 Sat 19:46]--[2009-11-28 Sat 20:54] => 1:08
49
+ CLOCK: [2009-11-28 Sat 14:38]--[2009-11-28 Sat 15:08] => 0:30
50
+ CLOCK: [2009-11-28 Sat 13:21]--[2009-11-28 Sat 14:37] => 1:16
51
+
52
+ OK, my current thinking is to have each idea have many Changes. A
53
+ change has many change records. A change record is a list of
54
+ specific attributes that change, and includes the old and the new
55
+ values. I'll use callbacks on the Idea model to maintain the
56
+ changes.
57
+
58
+
59
+ *** DONE Create version method
60
+ CLOSED: [2009-11-28 Sat 22:40]
61
+
62
+ *** DONE Make current method
63
+ CLOSED: [2009-11-28 Sat 22:40]
64
+
65
+ ** Update pages controller
66
+
67
+ *** DONE Show versions
68
+ CLOSED: [2009-11-30 Mon 00:34]
69
+ CLOCK: [2009-11-29 Sun 21:27]--[2009-11-29 Sun 21:54] => 0:27
70
+ CLOCK: [2009-11-29 Sun 15:40]--[2009-11-29 Sun 15:44] => 0:04
71
+ CLOCK: [2009-11-28 Sat 22:44]--[2009-11-28 Sat 23:50] => 1:06
72
+
73
+ I'm now at the point where I *list* versions, but I can't show
74
+ them.
75
+
76
+ - [X] I currently suspect that I broke my version recovery code
77
+ when I switched the order of the idea_changes. I need to
78
+ investigate why nothing's failing in the tests; I expected
79
+ failures. Possible addition to test: start looking at those
80
+ version numbers.
81
+
82
+ OK, here's what was going on: In the test, you need to
83
+ reload the idea_changes array from the database to get the
84
+ database sort order. I also make sure I do this inside the
85
+ Idea methods.
86
+
87
+ **** DONE Write a test for Idea::attributes_for_change
88
+ CLOSED: [2009-11-29 Sun 23:59]
89
+ CLOCK: [2009-11-29 Sun 23:47]--[2009-11-29 Sun 23:58] => 0:11
90
+ CLOCK: [2009-11-29 Sun 22:02]--[2009-11-29 Sun 23:42] => 1:40
91
+ CLOCK: [2009-11-29 Sun 21:54]--[2009-11-29 Sun 21:56] => 0:02
92
+
93
+ *** DONE Write integration tests that cover versions.
94
+ CLOSED: [2009-12-11 Fri 23:25]
95
+ CLOCK: [2009-12-11 Fri 20:27]--[2009-12-11 Fri 23:25] => 2:58
96
+
97
+ *** DONE Recover versions
98
+ CLOSED: [2009-12-12 Sat 22:09]
99
+ CLOCK: [2009-12-12 Sat 21:02]--[2009-12-12 Sat 22:09] => 1:07
100
+ CLOCK: [2009-12-12 Sat 20:13]--[2009-12-12 Sat 21:00] => 0:47
101
+
102
+ *** DONE Move to recycle bin
103
+ CLOSED: [2009-12-12 Sat 22:59]
104
+ CLOCK: [2009-12-12 Sat 22:23]--[2009-12-12 Sat 22:59] => 0:36
105
+
106
+ Note I'm avoiding logging delete operations because I'm presuming
107
+ there will be a recycle bin, and therefore the *pages* controller
108
+ will never actually delete files. At some point, when I want to
109
+ support full FeedSync, I'll need to tackle this.
110
+
111
+ The other timebomb: I don't know how well my logging scheme will
112
+ work when pages move. I don't yet know if I will address this in
113
+ the current sprint.
@@ -0,0 +1,15 @@
1
+ <p class="title">custom-todo.org</p>
2
+ <p>I copied this todo sequence from Worg. It shows a lot of power of the built-in todo functionality. Now, let&#8217;s make sure all of these are recognized (and therefore NOT exported.)</p>
3
+ <h1><span class="todo-keyword TODO">TODO </span>Sample</h1>
4
+ <ul>
5
+ <li>State &#8220;CANCELED&#8221; from &#8220;INPROGRESS&#8221; [2009-12-29 Tue 22:26] &#92; I gave up.</li>
6
+ <li>State &#8220;WAITING&#8221; from &#8220;&#8221; [2009-12-29 Tue 22:25] &#92; huh?</li>
7
+ </ul>
8
+ <h1><span class="todo-keyword INPROGRESS">INPROGRESS </span>this one&#8217;s in progress</h1>
9
+ <h1><span class="todo-keyword WAITING">WAITING </span>who am I waiting on?</h1>
10
+ <h1><span class="todo-keyword DONE">DONE </span>Finished this one!</h1>
11
+ <h1><span class="todo-keyword CANCELED">CANCELED </span>I gave up here.</h1>
12
+ <h1>DONT be fooled by just a random word in all caps.</h1>
13
+ <h1>todo &lt;== this word doesn&#8217;t match because the case doesn&#8217;t match.</h1>
14
+ <h1>TODOX</h1>
15
+ <p>don&#8217;t be fooled by the initial substring above!</p>
@@ -0,0 +1,24 @@
1
+ #+TITLE: custom-todo.org
2
+ #+DESCRIPTION: Makes sure I can handle custom todo entries
3
+ #+SEQ_TODO: TODO(t) INPROGRESS(i) WAITING(w@) | DONE(d) CANCELED(c@)
4
+ #+OPTIONS: todo:t
5
+
6
+ I copied this todo sequence from Worg. It shows a lot of power of the
7
+ built-in todo functionality. Now, let's make sure all of these are
8
+ recognized (and therefore NOT exported.)
9
+
10
+ * TODO Sample
11
+
12
+ - State "CANCELED" from "INPROGRESS" [2009-12-29 Tue 22:26] \\
13
+ I gave up.
14
+ - State "WAITING" from "" [2009-12-29 Tue 22:25] \\
15
+ huh?
16
+
17
+ * INPROGRESS this one's in progress
18
+ * WAITING who am I waiting on?
19
+ * DONE Finished this one!
20
+ * CANCELED I gave up here.
21
+ * DONT be fooled by just a random word in all caps.
22
+ * todo <== this word doesn't match because the case doesn't match.
23
+ * TODOX
24
+ don't be fooled by the initial substring above!
@@ -0,0 +1,15 @@
1
+ <p class="title">custom-todo.org</p>
2
+ <p>I copied this todo sequence from Worg. It shows a lot of power of the built-in todo functionality. Now, let&#8217;s make sure all of these are recognized (and therefore NOT exported.)</p>
3
+ <h1><span class="todo-keyword TODO">TODO </span>Sample</h1>
4
+ <ul>
5
+ <li>State &#8220;CANCELED&#8221; from &#8220;INPROGRESS&#8221; [2009-12-29 Tue 22:26] &#92; I gave up.</li>
6
+ <li>State &#8220;WAITING&#8221; from &#8220;&#8221; [2009-12-29 Tue 22:25] &#92; huh?</li>
7
+ </ul>
8
+ <h1><span class="todo-keyword INPROGRESS">INPROGRESS </span>this one&#8217;s in progress</h1>
9
+ <h1><span class="todo-keyword WAITING">WAITING </span>who am I waiting on?</h1>
10
+ <h1><span class="todo-keyword DONE">DONE </span>Finished this one!</h1>
11
+ <h1><span class="todo-keyword CANCELED">CANCELED </span>I gave up here.</h1>
12
+ <h1>DONT be fooled by just a random word in all caps.</h1>
13
+ <h1>todo &lt;== this word doesn&#8217;t match because the case doesn&#8217;t match.</h1>
14
+ <h1>TODOX</h1>
15
+ <p>don&#8217;t be fooled by the initial substring above!</p>
@@ -0,0 +1,24 @@
1
+ #+TITLE: custom-todo.org
2
+ #+DESCRIPTION: Makes sure I can handle custom todo entries
3
+ #+TODO: TODO(t) INPROGRESS(i) WAITING(w@) | DONE(d) CANCELED(c@)
4
+ #+OPTIONS: todo:t
5
+
6
+ I copied this todo sequence from Worg. It shows a lot of power of the
7
+ built-in todo functionality. Now, let's make sure all of these are
8
+ recognized (and therefore NOT exported.)
9
+
10
+ * TODO Sample
11
+
12
+ - State "CANCELED" from "INPROGRESS" [2009-12-29 Tue 22:26] \\
13
+ I gave up.
14
+ - State "WAITING" from "" [2009-12-29 Tue 22:25] \\
15
+ huh?
16
+
17
+ * INPROGRESS this one's in progress
18
+ * WAITING who am I waiting on?
19
+ * DONE Finished this one!
20
+ * CANCELED I gave up here.
21
+ * DONT be fooled by just a random word in all caps.
22
+ * todo <== this word doesn't match because the case doesn't match.
23
+ * TODOX
24
+ don't be fooled by the initial substring above!
@@ -0,0 +1,15 @@
1
+ <p class="title">custom-todo.org</p>
2
+ <p>I copied this todo sequence from Worg. It shows a lot of power of the built-in todo functionality. Now, let&#8217;s make sure all of these are recognized (and therefore NOT exported.)</p>
3
+ <h1><span class="todo-keyword TODO">TODO </span>Sample</h1>
4
+ <ul>
5
+ <li>State &#8220;CANCELED&#8221; from &#8220;INPROGRESS&#8221; [2009-12-29 Tue 22:26] &#92; I gave up.</li>
6
+ <li>State &#8220;WAITING&#8221; from &#8220;&#8221; [2009-12-29 Tue 22:25] &#92; huh?</li>
7
+ </ul>
8
+ <h1><span class="todo-keyword INPROGRESS">INPROGRESS </span>this one&#8217;s in progress</h1>
9
+ <h1><span class="todo-keyword WAITING">WAITING </span>who am I waiting on?</h1>
10
+ <h1><span class="todo-keyword DONE">DONE </span>Finished this one!</h1>
11
+ <h1><span class="todo-keyword CANCELED">CANCELED </span>I gave up here.</h1>
12
+ <h1>DONT be fooled by just a random word in all caps.</h1>
13
+ <h1>todo &lt;== this word doesn&#8217;t match because the case doesn&#8217;t match.</h1>
14
+ <h1>TODOX</h1>
15
+ <p>don&#8217;t be fooled by the initial substring above!</p>
@@ -0,0 +1,24 @@
1
+ #+TITLE: custom-todo.org
2
+ #+DESCRIPTION: Makes sure I can handle custom todo entries
3
+ #+TYP_TODO: TODO(t) INPROGRESS(i) WAITING(w@) | DONE(d) CANCELED(c@)
4
+ #+OPTIONS: todo:t
5
+
6
+ I copied this todo sequence from Worg. It shows a lot of power of the
7
+ built-in todo functionality. Now, let's make sure all of these are
8
+ recognized (and therefore NOT exported.)
9
+
10
+ * TODO Sample
11
+
12
+ - State "CANCELED" from "INPROGRESS" [2009-12-29 Tue 22:26] \\
13
+ I gave up.
14
+ - State "WAITING" from "" [2009-12-29 Tue 22:25] \\
15
+ huh?
16
+
17
+ * INPROGRESS this one's in progress
18
+ * WAITING who am I waiting on?
19
+ * DONE Finished this one!
20
+ * CANCELED I gave up here.
21
+ * DONT be fooled by just a random word in all caps.
22
+ * todo <== this word doesn't match because the case doesn't match.
23
+ * TODOX
24
+ don't be fooled by the initial substring above!
@@ -1,3 +1,4 @@
1
1
  <p class="title">ENTITIES</p>
2
2
  <p><code>Org-ruby</code> supports &#8220;smart double quotes,&#8221; &#8216;smart single quotes,&#8217; apostrophes for contractions like won&#8217;t and can&#8217;t, and other things&#8230; like elipses. Oh &#8211; and dashes.</p>
3
3
  <p>Question: What does org-mode do for ampersands, like R&amp;R? or &amp;lt;? Answer: Those get escaped, too.</p>
4
+ <h1>&lt;Even in headlines! funner &amp; funner!&gt;</h1>
@@ -6,3 +6,6 @@ things... like elipses. Oh -- and dashes.
6
6
 
7
7
  Question: What does org-mode do for ampersands, like R&R? or &lt;?
8
8
  Answer: Those get escaped, too.
9
+
10
+ * <Even in headlines! funner & funner!>
11
+
@@ -0,0 +1,13 @@
1
+ <p class="title">export-headline-levels.org</p>
2
+ <p>What happens when you exceed the number of headline levels to export?</p>
3
+ <h1><span class="heading-number heading-number-1">1 </span>Headline 1</h1>
4
+ <h2><span class="heading-number heading-number-2">1.1 </span>Headline 2</h2>
5
+ <p>This bit of body <b>should</b> get exported.</p>
6
+ <h3><span class="heading-number heading-number-3">1.1.1 </span>Headline 3</h3>
7
+ <p>This bit of body gets exported.</p>
8
+ <h4><span class="heading-number heading-number-4">1.1.1.1 </span>Headline 4 (include)</h4>
9
+ <p>Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet.</p>
10
+ <h3><span class="heading-number heading-number-3">1.1.2 </span>Another headline 3</h3>
11
+ <p>This one <b>should not</b> get exported!!</p>
12
+ <h4><span class="heading-number heading-number-4">1.1.2.1 </span>Another headline 4</h4>
13
+ <p>This also <b>cannot</b> get exported!!</p>
@@ -0,0 +1,81 @@
1
+ #+TITLE: export-headline-levels.org
2
+ #+AUTHOR:
3
+ #+EMAIL: bdewey@gmail.com
4
+ #+DATE: 2009-12-29 Tue
5
+ #+DESCRIPTION:
6
+ #+KEYWORDS:
7
+ #+LANGUAGE: en
8
+ #+OPTIONS: H:3 num:t toc:nil \n:nil @:t ::t |:t ^:t -:t f:t *:t <:t
9
+ #+OPTIONS: TeX:t LaTeX:nil skip:nil d:nil todo:t pri:nil tags:not-in-toc
10
+ #+INFOJS_OPT: view:nil toc:nil ltoc:t mouse:underline buttons:0 path:http://orgmode.org/org-info.js
11
+ #+EXPORT_EXCLUDE_TAGS: exclude noexport
12
+ #+TAGS: export noexport
13
+ #+LINK_UP:
14
+ #+LINK_HOME:
15
+
16
+ What happens when you exceed the number of headline levels to export?
17
+
18
+ * Shouldn't export :noexport:
19
+
20
+ This text shouldn't be exported, right?
21
+
22
+ ** Nor this subheading?
23
+
24
+ Or its text?
25
+
26
+ * Exlude me, too! :exclude:
27
+
28
+ * Headline 1 :READING:DVD:
29
+
30
+ ** Headline 2
31
+
32
+ This bit of body *should* get exported.
33
+
34
+ *** Headline 3 :export:
35
+
36
+ This bit of body gets exported.
37
+
38
+ **** Headline 4 (include)
39
+
40
+ Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam
41
+ nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam
42
+ erat, sed diam voluptua. At vero eos et accusam et justo duo
43
+ dolores et ea rebum. Stet clita kasd gubergren, no sea takimata
44
+ sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit
45
+ amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor
46
+ invidunt ut labore et dolore magna aliquyam erat, sed diam
47
+ voluptua. At vero eos et accusam et justo duo dolores et ea
48
+ rebum. Stet clita kasd gubergren, no sea takimata sanctus est
49
+ Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet,
50
+ consetetur sadipscing elitr, sed diam nonumy eirmod tempor
51
+ invidunt ut labore et dolore magna aliquyam erat, sed diam
52
+ voluptua. At vero eos et accusam et justo duo dolores et ea
53
+ rebum. Stet clita kasd gubergren, no sea takimata sanctus est
54
+ Lorem ipsum dolor sit amet.
55
+
56
+ **** Headline 4 (exclude) :noexport:
57
+
58
+ Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam
59
+ nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam
60
+ erat, sed diam voluptua. At vero eos et accusam et justo duo
61
+ dolores et ea rebum. Stet clita kasd gubergren, no sea takimata
62
+ sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit
63
+ amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor
64
+ invidunt ut labore et dolore magna aliquyam erat, sed diam
65
+ voluptua. At vero eos et accusam et justo duo dolores et ea
66
+ rebum. Stet clita kasd gubergren, no sea takimata sanctus est
67
+ Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet,
68
+ consetetur sadipscing elitr, sed diam nonumy eirmod tempor
69
+ invidunt ut labore et dolore magna aliquyam erat, sed diam
70
+ voluptua. At vero eos et accusam et justo duo dolores et ea
71
+ rebum. Stet clita kasd gubergren, no sea takimata sanctus est
72
+ Lorem ipsum dolor sit amet.
73
+
74
+
75
+ *** Another headline 3
76
+
77
+ This one *should not* get exported!!
78
+
79
+ **** Another headline 4
80
+
81
+ This also *cannot* get exported!!
@@ -0,0 +1,4 @@
1
+ <p class="title">export-keywords.org</p>
2
+ <p>Testing that I can export keywords.</p>
3
+ <h1><span class="heading-number heading-number-1">1 </span><span class="todo-keyword TODO">TODO </span>This is a todo item.</h1>
4
+ <h1><span class="heading-number heading-number-1">2 </span><span class="todo-keyword DONE">DONE </span>this item is done!</h1>
@@ -0,0 +1,18 @@
1
+ #+TITLE: export-keywords.org
2
+ #+AUTHOR:
3
+ #+EMAIL: brian@BRIAN-DESK
4
+ #+DATE: 2009-12-29 Tue
5
+ #+DESCRIPTION:
6
+ #+KEYWORDS:
7
+ #+LANGUAGE: en
8
+ #+OPTIONS: H:3 num:t toc:nil \n:nil @:t ::t |:t ^:t -:t f:t *:t <:t
9
+ #+OPTIONS: TeX:t LaTeX:nil skip:nil d:nil todo:t pri:nil tags:not-in-toc
10
+ #+INFOJS_OPT: view:nil toc:nil ltoc:t mouse:underline buttons:0 path:http://orgmode.org/org-info.js
11
+ #+EXPORT_SELECT_TAGS: export
12
+ #+EXPORT_EXCLUDE_TAGS: noexport
13
+ #+LINK_UP:
14
+ #+LINK_HOME:
15
+ Testing that I can export keywords.
16
+
17
+ * TODO This is a todo item.
18
+ * DONE this item is done!
@@ -0,0 +1,8 @@
1
+ <p class="title">export-headline-levels.org</p>
2
+ <p>What happens when you exceed the number of headline levels to export?</p>
3
+ <h1><span class="heading-number heading-number-1">1 </span>Headline 1</h1>
4
+ <h2><span class="heading-number heading-number-2">1.1 </span>Headline 2</h2>
5
+ <h3><span class="heading-number heading-number-3">1.1.1 </span>Headline 3</h3>
6
+ <p>This bit of body gets exported.</p>
7
+ <h4><span class="heading-number heading-number-4">1.1.1.1 </span>Headline 4 (include)</h4>
8
+ <p>Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet.</p>
@@ -0,0 +1,82 @@
1
+ #+TITLE: export-headline-levels.org
2
+ #+AUTHOR:
3
+ #+EMAIL: bdewey@gmail.com
4
+ #+DATE: 2009-12-29 Tue
5
+ #+DESCRIPTION:
6
+ #+KEYWORDS:
7
+ #+LANGUAGE: en
8
+ #+OPTIONS: H:3 num:t toc:nil \n:nil @:t ::t |:t ^:t -:t f:t *:t <:t
9
+ #+OPTIONS: TeX:t LaTeX:nil skip:nil d:nil todo:t pri:nil tags:not-in-toc
10
+ #+INFOJS_OPT: view:nil toc:nil ltoc:t mouse:underline buttons:0 path:http://orgmode.org/org-info.js
11
+ #+EXPORT_SELECT_TAGS: export
12
+ #+EXPORT_EXCLUDE_TAGS: exclude noexport
13
+ #+TAGS: export noexport
14
+ #+LINK_UP:
15
+ #+LINK_HOME:
16
+
17
+ What happens when you exceed the number of headline levels to export?
18
+
19
+ * Shouldn't export :noexport:
20
+
21
+ This text shouldn't be exported, right?
22
+
23
+ ** Nor this subheading?
24
+
25
+ Or its text?
26
+
27
+ * Exlude me, too! :exclude:
28
+
29
+ * Headline 1 :READING:DVD:
30
+
31
+ ** Headline 2
32
+
33
+ This bit of body should not get exported.
34
+
35
+ *** Headline 3 :export:
36
+
37
+ This bit of body gets exported.
38
+
39
+ **** Headline 4 (include)
40
+
41
+ Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam
42
+ nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam
43
+ erat, sed diam voluptua. At vero eos et accusam et justo duo
44
+ dolores et ea rebum. Stet clita kasd gubergren, no sea takimata
45
+ sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit
46
+ amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor
47
+ invidunt ut labore et dolore magna aliquyam erat, sed diam
48
+ voluptua. At vero eos et accusam et justo duo dolores et ea
49
+ rebum. Stet clita kasd gubergren, no sea takimata sanctus est
50
+ Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet,
51
+ consetetur sadipscing elitr, sed diam nonumy eirmod tempor
52
+ invidunt ut labore et dolore magna aliquyam erat, sed diam
53
+ voluptua. At vero eos et accusam et justo duo dolores et ea
54
+ rebum. Stet clita kasd gubergren, no sea takimata sanctus est
55
+ Lorem ipsum dolor sit amet.
56
+
57
+ **** Headline 4 (exclude) :noexport:
58
+
59
+ Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam
60
+ nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam
61
+ erat, sed diam voluptua. At vero eos et accusam et justo duo
62
+ dolores et ea rebum. Stet clita kasd gubergren, no sea takimata
63
+ sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit
64
+ amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor
65
+ invidunt ut labore et dolore magna aliquyam erat, sed diam
66
+ voluptua. At vero eos et accusam et justo duo dolores et ea
67
+ rebum. Stet clita kasd gubergren, no sea takimata sanctus est
68
+ Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet,
69
+ consetetur sadipscing elitr, sed diam nonumy eirmod tempor
70
+ invidunt ut labore et dolore magna aliquyam erat, sed diam
71
+ voluptua. At vero eos et accusam et justo duo dolores et ea
72
+ rebum. Stet clita kasd gubergren, no sea takimata sanctus est
73
+ Lorem ipsum dolor sit amet.
74
+
75
+
76
+ *** Another headline 3
77
+
78
+ This one *should not* get exported!!
79
+
80
+ **** Another headline 4
81
+
82
+ This also *cannot* get exported!!