jekyll-org 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 586ba3111f8785149440159d08544faf4b17a2c4
4
+ data.tar.gz: 07a0a7235bd8f9b648be2fd9a2ddd58527b881ea
5
+ SHA512:
6
+ metadata.gz: 7db2524a798f1b1ba4f3a574433a68761841630dda3335f5b15d8d3437faa7063ed1e41f9b6911f80e440a0cd08f74a7b946c95c60dbe7ddfa50141bd1c5d799
7
+ data.tar.gz: 2256f33c5b55fc5801139697cfa21c6db713e53d01a65e1adb4c3c2da5af0189191accdee4560c229337a82d06ea3da95d5e08f5526ada932f439c14242e9ce2
data/Gemfile ADDED
@@ -0,0 +1,17 @@
1
+ source "http://rubygems.org"
2
+ # Add dependencies required to use your gem here.
3
+ # Example:
4
+ # gem "activesupport", ">= 2.3.5"
5
+ gem 'org-ruby' , '>= 0.9.12'
6
+ gem 'jekyll', '>= 3.0.0'
7
+
8
+ # Add dependencies to develop your gem here.
9
+ # Include everything needed to run rake, tests, features, etc.
10
+ group :development do
11
+ gem "shoulda", ">= 0"
12
+ gem "rspec", ">=0"
13
+ gem "rdoc", ">=3.12"
14
+ gem "bundler", ">=1.0"
15
+ gem "jeweler", ">=2.1.1"
16
+ gem "simplecov", ">= 0"
17
+ end
data/LICENSE ADDED
@@ -0,0 +1,21 @@
1
+ The MIT License
2
+
3
+ Copyright (c) 2016 eggcaker. http://yep8.org/jekyll-org/
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in
13
+ all copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
21
+ THE SOFTWARE.
data/README.org ADDED
@@ -0,0 +1,115 @@
1
+ * jekyll-org
2
+
3
+ ** Overview
4
+
5
+ This plugin adds [[http://orgmode.org/][Org mode]] support to [[http://jekyllrb.com][Jekyll]] and lets you write posts and pages in Org.
6
+
7
+ ** Requirements
8
+
9
+ - Jekyll
10
+ - org-ruby
11
+
12
+ ** Installation
13
+ *** Short version
14
+ For experienced Jekyll users, you need to do 2 things to get ~jekyll-org~ to work
15
+ - Install the gem
16
+ - Include the gem in your ~_config.yml~
17
+
18
+ *** Long version
19
+ To use ~jekyll-org~ with Jekyll, you need to have Ruby RubyGems and Jekyll installed. See how to do that [[http://jekyllrb.com/docs/installation/][here]].
20
+
21
+ Create a new Jekyll project ~my-site~ run:
22
+ #+begin_src sh
23
+ jekyll new my-site
24
+ #+end_src
25
+
26
+ Create a Gemfile in the root of the project, and add at least the following lines:
27
+ #+begin_src ruby
28
+ source 'https://rubygems.org'
29
+
30
+ gem 'jekyll' , '>= 3.0.0'
31
+ gem 'jekyll-org', '>= '1.0.0'
32
+ #+end_src
33
+
34
+ Install the gems with bundler:
35
+ #+begin_src sh
36
+ bundle install
37
+ #+end_src
38
+
39
+
40
+ To use the new converter add the following line to your ~_config.yml~:
41
+ #+begin_src ruby
42
+ gems: [jekyll-org]
43
+ #+end_src
44
+ ** Usage
45
+
46
+ Create a new file with =.org= extension in =_posts=, and write the post with Org. That is all! Generate your Jekyll site as you usually do.
47
+
48
+ ** Front matter
49
+
50
+ Instead of YAML the front matter is configured in the usual Org way, with no lines:
51
+
52
+ #+BEGIN_EXAMPLE
53
+ #+TITLE: Jekyll and Org together
54
+ #+LAYOUT: posts
55
+ #+TAGS: jekyll org-mode
56
+
57
+ This is a blog post about Jekyll and Org mode.
58
+ #+END_EXAMPLE
59
+
60
+ ** Liquid templating
61
+
62
+ By default the all content is exported to raw HTML with org-ruby, but you can add =#+liquid: whatevervalue==
63
+ in the header. Then you can use [[http://docs.shopify.com/themes/liquid-documentation/basics][Liquid]] tags.
64
+
65
+ For example, if your Org file contains
66
+
67
+ #+BEGIN_EXAMPLE
68
+ #+liquid: enabled
69
+ #+foo: hello world
70
+
71
+ {{ page.foo }}
72
+
73
+ or
74
+
75
+ {{ site.time | date_to_xmlschema }}
76
+
77
+ #+END_EXAMPLE
78
+
79
+ then you will get output like
80
+
81
+ #+BEGIN_EXAMPLE
82
+ <p>hello world</p>
83
+ <p>or</p>
84
+ <p>2014-07-02T08:20:28+08:00</p>
85
+ #+END_EXAMPLE
86
+
87
+ ** Source code highlighting
88
+
89
+ Add a source code block as you would in Org, for example Ruby:
90
+
91
+ #+BEGIN_EXAMPLE
92
+ #+BEGIN_SRC
93
+ require 'rubygems'
94
+ require 'org-ruby'
95
+ data = IO.read(filename)
96
+ puts Orgmode::Parser.new(data).to_html
97
+ #+END_SRC
98
+ #+END_EXAMPLE
99
+
100
+ Then the output will have code highlighting:
101
+
102
+ #+BEGIN_SRC ruby
103
+ require 'rubygems'
104
+ require 'org-ruby'
105
+ data = IO.read(filename)
106
+ puts Orgmode::Parser.new(data).to_html
107
+ #+END_SRC
108
+
109
+ ** Author
110
+
111
+ eggcaker <eggcaker@gmail.com>
112
+
113
+ ** License
114
+
115
+ MIT
data/Rakefile ADDED
@@ -0,0 +1,55 @@
1
+ # encoding: utf-8
2
+
3
+ require 'rubygems'
4
+ require 'bundler'
5
+ require 'org-ruby'
6
+
7
+ begin
8
+ Bundler.setup(:default, :development)
9
+ rescue Bundler::BundlerError => e
10
+ $stderr.puts e.message
11
+ $stderr.puts "Run `bundle install` to install missing gems"
12
+ exit e.status_code
13
+ end
14
+
15
+ require 'rake'
16
+ require 'jeweler'
17
+
18
+ Jeweler::Tasks.new do |gem|
19
+ # gem is a Gem::Specification... see http://guides.rubygems.org/specification-reference/ for more options
20
+ gem.name = "jekyll-org"
21
+ gem.homepage = "http://eggcaker.github.io/jekyll-org"
22
+ gem.license = "MIT"
23
+ gem.summary = %Q{Jekyll converter for org-mode files}
24
+ gem.description = %Q{So you want org-mode support for Jekyll. Write your _posts in org-mode, then add 'gems: [jekyll-org]' to your _config.yml. Thats it!}
25
+ gem.email = "eggcaker@gmail.com"
26
+ gem.authors = "eggcaker"
27
+ # dependencies defined in Gemfile
28
+ end
29
+
30
+ Jeweler::RubygemsDotOrgTasks.new
31
+
32
+ require 'rake/testtask'
33
+ Rake::TestTask.new(:test) do |test|
34
+ test.libs << 'lib' << 'test'
35
+ test.pattern = 'test/**/test_*.rb'
36
+ test.verbose = true
37
+ end
38
+
39
+ desc "Code coverage detail"
40
+ task :simplecov do
41
+ ENV['COVERAGE'] = "true"
42
+ Rake::Task['test'].execute
43
+ end
44
+
45
+ task :default => :test
46
+
47
+ require 'rdoc/task'
48
+ Rake::RDocTask.new do |rdoc|
49
+ version = File.exist?('VERSION') ? File.read('VERSION') : ""
50
+
51
+ rdoc.rdoc_dir = 'rdoc'
52
+ rdoc.title = "jekyll-org #{version}"
53
+ rdoc.rdoc_files.include('README*')
54
+ rdoc.rdoc_files.include('lib/**/*.rb')
55
+ end
data/VERSION ADDED
@@ -0,0 +1 @@
1
+ 1.0.0
@@ -0,0 +1,74 @@
1
+ # Generated by jeweler
2
+ # DO NOT EDIT THIS FILE DIRECTLY
3
+ # Instead, edit Jeweler::Tasks in Rakefile, and run 'rake gemspec'
4
+ # -*- encoding: utf-8 -*-
5
+ # stub: jekyll-org 1.0.0 ruby lib
6
+
7
+ Gem::Specification.new do |s|
8
+ s.name = "jekyll-org"
9
+ s.version = "1.0.0"
10
+
11
+ s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
12
+ s.require_paths = ["lib"]
13
+ s.authors = ["eggcaker"]
14
+ s.date = "2016-10-11"
15
+ s.description = "So you want org-mode support for Jekyll. Write your _posts in org-mode, then add 'gems: [jekyll-org]' to your _config.yml. Thats it!"
16
+ s.email = "eggcaker@gmail.com"
17
+ s.extra_rdoc_files = [
18
+ "LICENSE",
19
+ "README.org"
20
+ ]
21
+ s.files = [
22
+ "Gemfile",
23
+ "LICENSE",
24
+ "README.org",
25
+ "Rakefile",
26
+ "VERSION",
27
+ "jekyll-org.gemspec",
28
+ "lib/jekyll-org.rb",
29
+ "script/bootstrap",
30
+ "script/cibuild",
31
+ "script/console",
32
+ "script/release",
33
+ "spec/helper.rb",
34
+ "spec/test_jekyll-org.rb"
35
+ ]
36
+ s.homepage = "http://eggcaker.github.io/jekyll-org"
37
+ s.licenses = ["MIT"]
38
+ s.rubygems_version = "2.5.1"
39
+ s.summary = "Jekyll converter for org-mode files"
40
+
41
+ if s.respond_to? :specification_version then
42
+ s.specification_version = 4
43
+
44
+ if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
45
+ s.add_runtime_dependency(%q<org-ruby>, [">= 0.9.12"])
46
+ s.add_runtime_dependency(%q<jekyll>, [">= 3.0.0"])
47
+ s.add_development_dependency(%q<shoulda>, [">= 0"])
48
+ s.add_development_dependency(%q<rspec>, [">= 0"])
49
+ s.add_development_dependency(%q<rdoc>, [">= 3.12"])
50
+ s.add_development_dependency(%q<bundler>, [">= 1.0"])
51
+ s.add_development_dependency(%q<jeweler>, [">= 2.1.1"])
52
+ s.add_development_dependency(%q<simplecov>, [">= 0"])
53
+ else
54
+ s.add_dependency(%q<org-ruby>, [">= 0.9.12"])
55
+ s.add_dependency(%q<jekyll>, [">= 3.0.0"])
56
+ s.add_dependency(%q<shoulda>, [">= 0"])
57
+ s.add_dependency(%q<rspec>, [">= 0"])
58
+ s.add_dependency(%q<rdoc>, [">= 3.12"])
59
+ s.add_dependency(%q<bundler>, [">= 1.0"])
60
+ s.add_dependency(%q<jeweler>, [">= 2.1.1"])
61
+ s.add_dependency(%q<simplecov>, [">= 0"])
62
+ end
63
+ else
64
+ s.add_dependency(%q<org-ruby>, [">= 0.9.12"])
65
+ s.add_dependency(%q<jekyll>, [">= 3.0.0"])
66
+ s.add_dependency(%q<shoulda>, [">= 0"])
67
+ s.add_dependency(%q<rspec>, [">= 0"])
68
+ s.add_dependency(%q<rdoc>, [">= 3.12"])
69
+ s.add_dependency(%q<bundler>, [">= 1.0"])
70
+ s.add_dependency(%q<jeweler>, [">= 2.1.1"])
71
+ s.add_dependency(%q<simplecov>, [">= 0"])
72
+ end
73
+ end
74
+
data/lib/jekyll-org.rb ADDED
@@ -0,0 +1,81 @@
1
+ require 'org-ruby'
2
+
3
+ if Jekyll::VERSION < "3.0"
4
+ raise Jekyll::FatalException, "This version of jekyll-org is only compatible with Jekyll v3 and above."
5
+ end
6
+
7
+ module Jekyll
8
+ class OrgConverter < Converter
9
+ safe true
10
+
11
+ priority :low
12
+
13
+ def matches(ext)
14
+ ext =~ /org/i
15
+ end
16
+
17
+ def output_ext(ext)
18
+ ".html"
19
+ end
20
+
21
+ def convert(content)
22
+ content
23
+ end
24
+ end
25
+
26
+ module Filters
27
+ def restify(input)
28
+ site = @context.registers[:site]
29
+ converter = site.find_converter_instance(Jekyll::OrgConverter)
30
+ converter.convert(input)
31
+ end
32
+ end
33
+
34
+ # This overrides having to use YAML in the posts.
35
+ # Instead use settings from Org mode.
36
+ class Document
37
+ alias :_orig_read :read
38
+ def read(opts = {})
39
+ unless relative_path.end_with?(".org")
40
+ return _orig_read(opts)
41
+ end
42
+
43
+ Jekyll.logger.debug "Reading:", relative_path
44
+
45
+ self.content = File.read(path, Utils.merged_file_read_opts(site, opts))
46
+ self.data ||= {}
47
+ liquid_enabled = false
48
+
49
+ org_text = Orgmode::Parser.new(content, { markup_file: "html.tags.yml" })
50
+ org_text.in_buffer_settings.each_pair do |key, value|
51
+ # Remove #+TITLE from the buffer settings to avoid double exporting
52
+ org_text.in_buffer_settings.delete(key) if key =~ /title/i
53
+ buffer_setting = key.downcase
54
+
55
+ if buffer_setting == 'liquid'
56
+ liquid_enabled = true
57
+ end
58
+
59
+ self.data[buffer_setting] = value
60
+ end
61
+
62
+ # Disable Liquid tags from the output by default or enabled with liquid_enabled tag
63
+
64
+ if liquid_enabled
65
+ self.content = org_text.to_html
66
+ self.content = self.content.gsub("&#8216;","'")
67
+ self.content = self.content.gsub("&#8217;", "'")
68
+ else
69
+ self.content = <<ORG
70
+ {% raw %}
71
+ #{org_text.to_html}
72
+ {% endraw %}
73
+ ORG
74
+ end
75
+
76
+ post_read
77
+ rescue => e
78
+ puts "Error converting file #{relative_path}: #{e.message} #{e.backtrace}"
79
+ end
80
+ end
81
+ end
data/script/bootstrap ADDED
@@ -0,0 +1,4 @@
1
+ #!/bin/sh
2
+
3
+
4
+ bundle install
data/script/cibuild ADDED
@@ -0,0 +1,8 @@
1
+ #!/bin/sh
2
+ set -e
3
+
4
+ bundle exec rspec
5
+ bundle exec rspec spec/test_jekyll-org.rb
6
+ if [ "$JEKYLL_VERSION" = "3.0" ]; then
7
+ bundle exec rubocop -S -D
8
+ fi
data/script/console ADDED
@@ -0,0 +1,34 @@
1
+ #! /usr/bin/env ruby
2
+
3
+ def relative_to_root(path)
4
+ File.expand_path(path, File.dirname(File.dirname(__FILE__)))
5
+ end
6
+
7
+ require 'jekyll'
8
+ require relative_to_root('lib/jekyll-org.rb')
9
+ require 'pry-debugger'
10
+
11
+ SOURCE_DIR = relative_to_root('spec/fixtures')
12
+ DEST_DIR = relative_to_root('spec/dest')
13
+
14
+ def source_dir(*files)
15
+ File.join(SOURCE_DIR, *files)
16
+ end
17
+
18
+ def dest_dir(*files)
19
+ File.join(DEST_DIR, *files)
20
+ end
21
+
22
+ def config(overrides = {})
23
+ Jekyll.configuration({
24
+ "source" => source_dir,
25
+ "destination" => dest_dir,
26
+ "url" => "http://example.org"
27
+ }).merge(overrides)
28
+ end
29
+
30
+ def site(configuration = config)
31
+ Jekyll::Site.new(configuration)
32
+ end
33
+
34
+ binding.pry
data/script/release ADDED
@@ -0,0 +1,7 @@
1
+ #!/bin/sh
2
+
3
+
4
+ set -e
5
+
6
+ script/cibuild
7
+ bundle exec rake release
data/spec/helper.rb ADDED
@@ -0,0 +1,21 @@
1
+ require 'jekyll'
2
+ require File.expand_path('../lib/jekyll-org', File.dirname(__FILE__))
3
+
4
+ Jekyll.logger.log_level = :error
5
+
6
+ RSpec.configure do |config|
7
+ config.run_all_when_everything_filtered = true
8
+ config.filter_run :focus
9
+ config.order = 'random'
10
+
11
+ SOURCE_DIR = File.expand_path("../fixtures", __FILE__)
12
+ DEST_DIR = File.expand_path("../dest", __FILE__)
13
+
14
+ def source_dir(*files)
15
+ File.join(SOURCE_DIR, *files)
16
+ end
17
+
18
+ def dest_dir(*files)
19
+ File.join(DEST_DIR, *files)
20
+ end
21
+ end
@@ -0,0 +1,6 @@
1
+ require 'helper'
2
+
3
+ describe("should working with unit test") do
4
+ it "added some test cases" do
5
+ end
6
+ end
metadata ADDED
@@ -0,0 +1,171 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: jekyll-org
3
+ version: !ruby/object:Gem::Version
4
+ version: 1.0.0
5
+ platform: ruby
6
+ authors:
7
+ - eggcaker
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2016-10-11 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: org-ruby
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - ">="
18
+ - !ruby/object:Gem::Version
19
+ version: 0.9.12
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - ">="
25
+ - !ruby/object:Gem::Version
26
+ version: 0.9.12
27
+ - !ruby/object:Gem::Dependency
28
+ name: jekyll
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - ">="
32
+ - !ruby/object:Gem::Version
33
+ version: 3.0.0
34
+ type: :runtime
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - ">="
39
+ - !ruby/object:Gem::Version
40
+ version: 3.0.0
41
+ - !ruby/object:Gem::Dependency
42
+ name: shoulda
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - ">="
46
+ - !ruby/object:Gem::Version
47
+ version: '0'
48
+ type: :development
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - ">="
53
+ - !ruby/object:Gem::Version
54
+ version: '0'
55
+ - !ruby/object:Gem::Dependency
56
+ name: rspec
57
+ requirement: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - ">="
60
+ - !ruby/object:Gem::Version
61
+ version: '0'
62
+ type: :development
63
+ prerelease: false
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - ">="
67
+ - !ruby/object:Gem::Version
68
+ version: '0'
69
+ - !ruby/object:Gem::Dependency
70
+ name: rdoc
71
+ requirement: !ruby/object:Gem::Requirement
72
+ requirements:
73
+ - - ">="
74
+ - !ruby/object:Gem::Version
75
+ version: '3.12'
76
+ type: :development
77
+ prerelease: false
78
+ version_requirements: !ruby/object:Gem::Requirement
79
+ requirements:
80
+ - - ">="
81
+ - !ruby/object:Gem::Version
82
+ version: '3.12'
83
+ - !ruby/object:Gem::Dependency
84
+ name: bundler
85
+ requirement: !ruby/object:Gem::Requirement
86
+ requirements:
87
+ - - ">="
88
+ - !ruby/object:Gem::Version
89
+ version: '1.0'
90
+ type: :development
91
+ prerelease: false
92
+ version_requirements: !ruby/object:Gem::Requirement
93
+ requirements:
94
+ - - ">="
95
+ - !ruby/object:Gem::Version
96
+ version: '1.0'
97
+ - !ruby/object:Gem::Dependency
98
+ name: jeweler
99
+ requirement: !ruby/object:Gem::Requirement
100
+ requirements:
101
+ - - ">="
102
+ - !ruby/object:Gem::Version
103
+ version: 2.1.1
104
+ type: :development
105
+ prerelease: false
106
+ version_requirements: !ruby/object:Gem::Requirement
107
+ requirements:
108
+ - - ">="
109
+ - !ruby/object:Gem::Version
110
+ version: 2.1.1
111
+ - !ruby/object:Gem::Dependency
112
+ name: simplecov
113
+ requirement: !ruby/object:Gem::Requirement
114
+ requirements:
115
+ - - ">="
116
+ - !ruby/object:Gem::Version
117
+ version: '0'
118
+ type: :development
119
+ prerelease: false
120
+ version_requirements: !ruby/object:Gem::Requirement
121
+ requirements:
122
+ - - ">="
123
+ - !ruby/object:Gem::Version
124
+ version: '0'
125
+ description: 'So you want org-mode support for Jekyll. Write your _posts in org-mode,
126
+ then add ''gems: [jekyll-org]'' to your _config.yml. Thats it!'
127
+ email: eggcaker@gmail.com
128
+ executables: []
129
+ extensions: []
130
+ extra_rdoc_files:
131
+ - LICENSE
132
+ - README.org
133
+ files:
134
+ - Gemfile
135
+ - LICENSE
136
+ - README.org
137
+ - Rakefile
138
+ - VERSION
139
+ - jekyll-org.gemspec
140
+ - lib/jekyll-org.rb
141
+ - script/bootstrap
142
+ - script/cibuild
143
+ - script/console
144
+ - script/release
145
+ - spec/helper.rb
146
+ - spec/test_jekyll-org.rb
147
+ homepage: http://eggcaker.github.io/jekyll-org
148
+ licenses:
149
+ - MIT
150
+ metadata: {}
151
+ post_install_message:
152
+ rdoc_options: []
153
+ require_paths:
154
+ - lib
155
+ required_ruby_version: !ruby/object:Gem::Requirement
156
+ requirements:
157
+ - - ">="
158
+ - !ruby/object:Gem::Version
159
+ version: '0'
160
+ required_rubygems_version: !ruby/object:Gem::Requirement
161
+ requirements:
162
+ - - ">="
163
+ - !ruby/object:Gem::Version
164
+ version: '0'
165
+ requirements: []
166
+ rubyforge_project:
167
+ rubygems_version: 2.5.1
168
+ signing_key:
169
+ specification_version: 4
170
+ summary: Jekyll converter for org-mode files
171
+ test_files: []