jekyll 4.2.1 → 4.2.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.rubocop.yml +350 -350
- data/LICENSE +21 -21
- data/README.markdown +86 -86
- data/exe/jekyll +57 -57
- data/lib/blank_template/_config.yml +3 -3
- data/lib/blank_template/_layouts/default.html +12 -12
- data/lib/blank_template/_sass/main.scss +9 -9
- data/lib/blank_template/assets/css/main.scss +4 -4
- data/lib/blank_template/index.md +8 -8
- data/lib/jekyll/cache.rb +190 -190
- data/lib/jekyll/cleaner.rb +111 -111
- data/lib/jekyll/collection.rb +309 -309
- data/lib/jekyll/command.rb +105 -105
- data/lib/jekyll/commands/build.rb +93 -93
- data/lib/jekyll/commands/clean.rb +45 -45
- data/lib/jekyll/commands/doctor.rb +177 -177
- data/lib/jekyll/commands/help.rb +34 -34
- data/lib/jekyll/commands/new.rb +172 -169
- data/lib/jekyll/commands/new_theme.rb +40 -40
- data/lib/jekyll/commands/serve/live_reload_reactor.rb +122 -122
- data/lib/jekyll/commands/serve/livereload_assets/livereload.js +1183 -1183
- data/lib/jekyll/commands/serve/servlet.rb +202 -202
- data/lib/jekyll/commands/serve/websockets.rb +81 -81
- data/lib/jekyll/commands/serve.rb +362 -362
- data/lib/jekyll/configuration.rb +313 -313
- data/lib/jekyll/converter.rb +54 -54
- data/lib/jekyll/converters/identity.rb +41 -41
- data/lib/jekyll/converters/markdown/kramdown_parser.rb +199 -199
- data/lib/jekyll/converters/markdown.rb +113 -113
- data/lib/jekyll/converters/smartypants.rb +70 -70
- data/lib/jekyll/convertible.rb +257 -257
- data/lib/jekyll/deprecator.rb +50 -50
- data/lib/jekyll/document.rb +544 -544
- data/lib/jekyll/drops/collection_drop.rb +20 -20
- data/lib/jekyll/drops/document_drop.rb +70 -70
- data/lib/jekyll/drops/drop.rb +293 -293
- data/lib/jekyll/drops/excerpt_drop.rb +19 -19
- data/lib/jekyll/drops/jekyll_drop.rb +32 -32
- data/lib/jekyll/drops/site_drop.rb +66 -66
- data/lib/jekyll/drops/static_file_drop.rb +14 -14
- data/lib/jekyll/drops/unified_payload_drop.rb +26 -26
- data/lib/jekyll/drops/url_drop.rb +140 -140
- data/lib/jekyll/entry_filter.rb +121 -121
- data/lib/jekyll/errors.rb +20 -20
- data/lib/jekyll/excerpt.rb +201 -201
- data/lib/jekyll/external.rb +79 -79
- data/lib/jekyll/filters/date_filters.rb +110 -110
- data/lib/jekyll/filters/grouping_filters.rb +64 -64
- data/lib/jekyll/filters/url_filters.rb +98 -98
- data/lib/jekyll/filters.rb +535 -535
- data/lib/jekyll/frontmatter_defaults.rb +240 -240
- data/lib/jekyll/generator.rb +5 -5
- data/lib/jekyll/hooks.rb +107 -107
- data/lib/jekyll/inclusion.rb +32 -32
- data/lib/jekyll/layout.rb +67 -67
- data/lib/jekyll/liquid_extensions.rb +22 -22
- data/lib/jekyll/liquid_renderer/file.rb +77 -77
- data/lib/jekyll/liquid_renderer/table.rb +55 -55
- data/lib/jekyll/liquid_renderer.rb +80 -80
- data/lib/jekyll/log_adapter.rb +151 -151
- data/lib/jekyll/mime.types +866 -866
- data/lib/jekyll/page.rb +217 -217
- data/lib/jekyll/page_excerpt.rb +25 -25
- data/lib/jekyll/page_without_a_file.rb +14 -14
- data/lib/jekyll/path_manager.rb +74 -74
- data/lib/jekyll/plugin.rb +92 -92
- data/lib/jekyll/plugin_manager.rb +115 -115
- data/lib/jekyll/profiler.rb +58 -58
- data/lib/jekyll/publisher.rb +23 -23
- data/lib/jekyll/reader.rb +192 -192
- data/lib/jekyll/readers/collection_reader.rb +23 -23
- data/lib/jekyll/readers/data_reader.rb +79 -79
- data/lib/jekyll/readers/layout_reader.rb +62 -62
- data/lib/jekyll/readers/page_reader.rb +25 -25
- data/lib/jekyll/readers/post_reader.rb +85 -85
- data/lib/jekyll/readers/static_file_reader.rb +25 -25
- data/lib/jekyll/readers/theme_assets_reader.rb +52 -52
- data/lib/jekyll/regenerator.rb +195 -195
- data/lib/jekyll/related_posts.rb +52 -52
- data/lib/jekyll/renderer.rb +265 -265
- data/lib/jekyll/site.rb +551 -551
- data/lib/jekyll/static_file.rb +208 -208
- data/lib/jekyll/stevenson.rb +60 -60
- data/lib/jekyll/tags/highlight.rb +110 -110
- data/lib/jekyll/tags/include.rb +275 -275
- data/lib/jekyll/tags/link.rb +42 -42
- data/lib/jekyll/tags/post_url.rb +106 -106
- data/lib/jekyll/theme.rb +86 -86
- data/lib/jekyll/theme_builder.rb +121 -121
- data/lib/jekyll/url.rb +167 -167
- data/lib/jekyll/utils/ansi.rb +57 -57
- data/lib/jekyll/utils/exec.rb +26 -26
- data/lib/jekyll/utils/internet.rb +37 -37
- data/lib/jekyll/utils/platforms.rb +67 -67
- data/lib/jekyll/utils/thread_event.rb +31 -31
- data/lib/jekyll/utils/win_tz.rb +75 -75
- data/lib/jekyll/utils.rb +367 -367
- data/lib/jekyll/version.rb +5 -5
- data/lib/jekyll.rb +195 -195
- data/lib/site_template/.gitignore +5 -5
- data/lib/site_template/404.html +25 -25
- data/lib/site_template/_config.yml +55 -55
- data/lib/site_template/_posts/0000-00-00-welcome-to-jekyll.markdown.erb +29 -29
- data/lib/site_template/about.markdown +18 -18
- data/lib/site_template/index.markdown +6 -6
- data/lib/theme_template/CODE_OF_CONDUCT.md.erb +74 -74
- data/lib/theme_template/Gemfile +4 -4
- data/lib/theme_template/LICENSE.txt.erb +21 -21
- data/lib/theme_template/README.md.erb +52 -52
- data/lib/theme_template/_layouts/default.html +1 -1
- data/lib/theme_template/_layouts/page.html +5 -5
- data/lib/theme_template/_layouts/post.html +5 -5
- data/lib/theme_template/example/_config.yml.erb +1 -1
- data/lib/theme_template/example/_post.md +12 -12
- data/lib/theme_template/example/index.html +14 -14
- data/lib/theme_template/example/style.scss +7 -7
- data/lib/theme_template/gitignore.erb +6 -6
- data/lib/theme_template/theme.gemspec.erb +16 -16
- data/rubocop/jekyll/assert_equal_literal_actual.rb +149 -149
- data/rubocop/jekyll/no_p_allowed.rb +23 -23
- data/rubocop/jekyll/no_puts_allowed.rb +23 -23
- data/rubocop/jekyll.rb +5 -5
- metadata +3 -3
|
@@ -1,113 +1,113 @@
|
|
|
1
|
-
# frozen_string_literal: true
|
|
2
|
-
|
|
3
|
-
module Jekyll
|
|
4
|
-
module Converters
|
|
5
|
-
# Markdown converter.
|
|
6
|
-
# For more info on converters see https://jekyllrb.com/docs/plugins/converters/
|
|
7
|
-
class Markdown < Converter
|
|
8
|
-
highlighter_prefix "\n"
|
|
9
|
-
highlighter_suffix "\n"
|
|
10
|
-
safe true
|
|
11
|
-
|
|
12
|
-
def setup
|
|
13
|
-
return if @setup ||= false
|
|
14
|
-
|
|
15
|
-
unless (@parser = get_processor)
|
|
16
|
-
if @config["safe"]
|
|
17
|
-
Jekyll.logger.warn "Build Warning:", "Custom processors are not loaded in safe mode"
|
|
18
|
-
end
|
|
19
|
-
|
|
20
|
-
Jekyll.logger.error "Markdown processor:",
|
|
21
|
-
"#{@config["markdown"].inspect} is not a valid Markdown processor."
|
|
22
|
-
Jekyll.logger.error "", "Available processors are: #{valid_processors.join(", ")}"
|
|
23
|
-
Jekyll.logger.error ""
|
|
24
|
-
raise Errors::FatalException, "Invalid Markdown processor given: #{@config["markdown"]}"
|
|
25
|
-
end
|
|
26
|
-
|
|
27
|
-
@cache = Jekyll::Cache.new("Jekyll::Converters::Markdown")
|
|
28
|
-
@setup = true
|
|
29
|
-
end
|
|
30
|
-
|
|
31
|
-
# RuboCop does not allow reader methods to have names starting with `get_`
|
|
32
|
-
# To ensure compatibility, this check has been disabled on this method
|
|
33
|
-
#
|
|
34
|
-
# rubocop:disable Naming/AccessorMethodName
|
|
35
|
-
def get_processor
|
|
36
|
-
case @config["markdown"].downcase
|
|
37
|
-
when "kramdown" then KramdownParser.new(@config)
|
|
38
|
-
else
|
|
39
|
-
custom_processor
|
|
40
|
-
end
|
|
41
|
-
end
|
|
42
|
-
# rubocop:enable Naming/AccessorMethodName
|
|
43
|
-
|
|
44
|
-
# Public: Provides you with a list of processors comprised of the ones we support internally
|
|
45
|
-
# and the ones that you have provided to us (if they're whitelisted for use in safe mode).
|
|
46
|
-
#
|
|
47
|
-
# Returns an array of symbols.
|
|
48
|
-
def valid_processors
|
|
49
|
-
[:kramdown] + third_party_processors
|
|
50
|
-
end
|
|
51
|
-
|
|
52
|
-
# Public: A list of processors that you provide via plugins.
|
|
53
|
-
#
|
|
54
|
-
# Returns an array of symbols
|
|
55
|
-
def third_party_processors
|
|
56
|
-
self.class.constants - [:KramdownParser, :PRIORITIES]
|
|
57
|
-
end
|
|
58
|
-
|
|
59
|
-
# Does the given extension match this converter's list of acceptable extensions?
|
|
60
|
-
# Takes one argument: the file's extension (including the dot).
|
|
61
|
-
#
|
|
62
|
-
# ext - The String extension to check.
|
|
63
|
-
#
|
|
64
|
-
# Returns true if it matches, false otherwise.
|
|
65
|
-
def matches(ext)
|
|
66
|
-
extname_list.include?(ext.downcase)
|
|
67
|
-
end
|
|
68
|
-
|
|
69
|
-
# Public: The extension to be given to the output file (including the dot).
|
|
70
|
-
#
|
|
71
|
-
# ext - The String extension or original file.
|
|
72
|
-
#
|
|
73
|
-
# Returns The String output file extension.
|
|
74
|
-
def output_ext(_ext)
|
|
75
|
-
".html"
|
|
76
|
-
end
|
|
77
|
-
|
|
78
|
-
# Logic to do the content conversion.
|
|
79
|
-
#
|
|
80
|
-
# content - String content of file (without front matter).
|
|
81
|
-
#
|
|
82
|
-
# Returns a String of the converted content.
|
|
83
|
-
def convert(content)
|
|
84
|
-
setup
|
|
85
|
-
@cache.getset(content) do
|
|
86
|
-
@parser.convert(content)
|
|
87
|
-
end
|
|
88
|
-
end
|
|
89
|
-
|
|
90
|
-
def extname_list
|
|
91
|
-
@extname_list ||= @config["markdown_ext"].split(",").map! { |e| ".#{e.downcase}" }
|
|
92
|
-
end
|
|
93
|
-
|
|
94
|
-
private
|
|
95
|
-
|
|
96
|
-
def custom_processor
|
|
97
|
-
converter_name = @config["markdown"]
|
|
98
|
-
self.class.const_get(converter_name).new(@config) if custom_class_allowed?(converter_name)
|
|
99
|
-
end
|
|
100
|
-
|
|
101
|
-
# Private: Determine whether a class name is an allowed custom
|
|
102
|
-
# markdown class name.
|
|
103
|
-
#
|
|
104
|
-
# parser_name - the name of the parser class
|
|
105
|
-
#
|
|
106
|
-
# Returns true if the parser name contains only alphanumeric characters and is defined
|
|
107
|
-
# within Jekyll::Converters::Markdown
|
|
108
|
-
def custom_class_allowed?(parser_name)
|
|
109
|
-
parser_name !~ %r![^A-Za-z0-9_]! && self.class.constants.include?(parser_name.to_sym)
|
|
110
|
-
end
|
|
111
|
-
end
|
|
112
|
-
end
|
|
113
|
-
end
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Jekyll
|
|
4
|
+
module Converters
|
|
5
|
+
# Markdown converter.
|
|
6
|
+
# For more info on converters see https://jekyllrb.com/docs/plugins/converters/
|
|
7
|
+
class Markdown < Converter
|
|
8
|
+
highlighter_prefix "\n"
|
|
9
|
+
highlighter_suffix "\n"
|
|
10
|
+
safe true
|
|
11
|
+
|
|
12
|
+
def setup
|
|
13
|
+
return if @setup ||= false
|
|
14
|
+
|
|
15
|
+
unless (@parser = get_processor)
|
|
16
|
+
if @config["safe"]
|
|
17
|
+
Jekyll.logger.warn "Build Warning:", "Custom processors are not loaded in safe mode"
|
|
18
|
+
end
|
|
19
|
+
|
|
20
|
+
Jekyll.logger.error "Markdown processor:",
|
|
21
|
+
"#{@config["markdown"].inspect} is not a valid Markdown processor."
|
|
22
|
+
Jekyll.logger.error "", "Available processors are: #{valid_processors.join(", ")}"
|
|
23
|
+
Jekyll.logger.error ""
|
|
24
|
+
raise Errors::FatalException, "Invalid Markdown processor given: #{@config["markdown"]}"
|
|
25
|
+
end
|
|
26
|
+
|
|
27
|
+
@cache = Jekyll::Cache.new("Jekyll::Converters::Markdown")
|
|
28
|
+
@setup = true
|
|
29
|
+
end
|
|
30
|
+
|
|
31
|
+
# RuboCop does not allow reader methods to have names starting with `get_`
|
|
32
|
+
# To ensure compatibility, this check has been disabled on this method
|
|
33
|
+
#
|
|
34
|
+
# rubocop:disable Naming/AccessorMethodName
|
|
35
|
+
def get_processor
|
|
36
|
+
case @config["markdown"].downcase
|
|
37
|
+
when "kramdown" then KramdownParser.new(@config)
|
|
38
|
+
else
|
|
39
|
+
custom_processor
|
|
40
|
+
end
|
|
41
|
+
end
|
|
42
|
+
# rubocop:enable Naming/AccessorMethodName
|
|
43
|
+
|
|
44
|
+
# Public: Provides you with a list of processors comprised of the ones we support internally
|
|
45
|
+
# and the ones that you have provided to us (if they're whitelisted for use in safe mode).
|
|
46
|
+
#
|
|
47
|
+
# Returns an array of symbols.
|
|
48
|
+
def valid_processors
|
|
49
|
+
[:kramdown] + third_party_processors
|
|
50
|
+
end
|
|
51
|
+
|
|
52
|
+
# Public: A list of processors that you provide via plugins.
|
|
53
|
+
#
|
|
54
|
+
# Returns an array of symbols
|
|
55
|
+
def third_party_processors
|
|
56
|
+
self.class.constants - [:KramdownParser, :PRIORITIES]
|
|
57
|
+
end
|
|
58
|
+
|
|
59
|
+
# Does the given extension match this converter's list of acceptable extensions?
|
|
60
|
+
# Takes one argument: the file's extension (including the dot).
|
|
61
|
+
#
|
|
62
|
+
# ext - The String extension to check.
|
|
63
|
+
#
|
|
64
|
+
# Returns true if it matches, false otherwise.
|
|
65
|
+
def matches(ext)
|
|
66
|
+
extname_list.include?(ext.downcase)
|
|
67
|
+
end
|
|
68
|
+
|
|
69
|
+
# Public: The extension to be given to the output file (including the dot).
|
|
70
|
+
#
|
|
71
|
+
# ext - The String extension or original file.
|
|
72
|
+
#
|
|
73
|
+
# Returns The String output file extension.
|
|
74
|
+
def output_ext(_ext)
|
|
75
|
+
".html"
|
|
76
|
+
end
|
|
77
|
+
|
|
78
|
+
# Logic to do the content conversion.
|
|
79
|
+
#
|
|
80
|
+
# content - String content of file (without front matter).
|
|
81
|
+
#
|
|
82
|
+
# Returns a String of the converted content.
|
|
83
|
+
def convert(content)
|
|
84
|
+
setup
|
|
85
|
+
@cache.getset(content) do
|
|
86
|
+
@parser.convert(content)
|
|
87
|
+
end
|
|
88
|
+
end
|
|
89
|
+
|
|
90
|
+
def extname_list
|
|
91
|
+
@extname_list ||= @config["markdown_ext"].split(",").map! { |e| ".#{e.downcase}" }
|
|
92
|
+
end
|
|
93
|
+
|
|
94
|
+
private
|
|
95
|
+
|
|
96
|
+
def custom_processor
|
|
97
|
+
converter_name = @config["markdown"]
|
|
98
|
+
self.class.const_get(converter_name).new(@config) if custom_class_allowed?(converter_name)
|
|
99
|
+
end
|
|
100
|
+
|
|
101
|
+
# Private: Determine whether a class name is an allowed custom
|
|
102
|
+
# markdown class name.
|
|
103
|
+
#
|
|
104
|
+
# parser_name - the name of the parser class
|
|
105
|
+
#
|
|
106
|
+
# Returns true if the parser name contains only alphanumeric characters and is defined
|
|
107
|
+
# within Jekyll::Converters::Markdown
|
|
108
|
+
def custom_class_allowed?(parser_name)
|
|
109
|
+
parser_name !~ %r![^A-Za-z0-9_]! && self.class.constants.include?(parser_name.to_sym)
|
|
110
|
+
end
|
|
111
|
+
end
|
|
112
|
+
end
|
|
113
|
+
end
|
|
@@ -1,70 +1,70 @@
|
|
|
1
|
-
# frozen_string_literal: true
|
|
2
|
-
|
|
3
|
-
module Kramdown
|
|
4
|
-
module Parser
|
|
5
|
-
class SmartyPants < Kramdown::Parser::Kramdown
|
|
6
|
-
def initialize(source, options)
|
|
7
|
-
super
|
|
8
|
-
@block_parsers = [:block_html, :content]
|
|
9
|
-
@span_parsers = [:smart_quotes, :html_entity, :typographic_syms, :span_html]
|
|
10
|
-
end
|
|
11
|
-
|
|
12
|
-
def parse_content
|
|
13
|
-
add_text @src.scan(%r!\A.*\n!)
|
|
14
|
-
end
|
|
15
|
-
define_parser(:content, %r!\A!)
|
|
16
|
-
end
|
|
17
|
-
end
|
|
18
|
-
end
|
|
19
|
-
|
|
20
|
-
module Jekyll
|
|
21
|
-
module Converters
|
|
22
|
-
# SmartyPants converter.
|
|
23
|
-
# For more info on converters see https://jekyllrb.com/docs/plugins/converters/
|
|
24
|
-
class SmartyPants < Converter
|
|
25
|
-
safe true
|
|
26
|
-
priority :low
|
|
27
|
-
|
|
28
|
-
def initialize(config)
|
|
29
|
-
Jekyll::External.require_with_graceful_fail "kramdown" unless defined?(Kramdown)
|
|
30
|
-
@config = config["kramdown"].dup || {}
|
|
31
|
-
@config[:input] = :SmartyPants
|
|
32
|
-
end
|
|
33
|
-
|
|
34
|
-
# Does the given extension match this converter's list of acceptable extensions?
|
|
35
|
-
# Takes one argument: the file's extension (including the dot).
|
|
36
|
-
#
|
|
37
|
-
# ext - The String extension to check.
|
|
38
|
-
#
|
|
39
|
-
# Returns true if it matches, false otherwise.
|
|
40
|
-
def matches(_ext)
|
|
41
|
-
false
|
|
42
|
-
end
|
|
43
|
-
|
|
44
|
-
# Public: The extension to be given to the output file (including the dot).
|
|
45
|
-
#
|
|
46
|
-
# ext - The String extension or original file.
|
|
47
|
-
#
|
|
48
|
-
# Returns The String output file extension.
|
|
49
|
-
def output_ext(_ext)
|
|
50
|
-
nil
|
|
51
|
-
end
|
|
52
|
-
|
|
53
|
-
# Logic to do the content conversion.
|
|
54
|
-
#
|
|
55
|
-
# content - String content of file (without front matter).
|
|
56
|
-
#
|
|
57
|
-
# Returns a String of the converted content.
|
|
58
|
-
def convert(content)
|
|
59
|
-
document = Kramdown::Document.new(content, @config)
|
|
60
|
-
html_output = document.to_html.chomp
|
|
61
|
-
if @config["show_warnings"]
|
|
62
|
-
document.warnings.each do |warning|
|
|
63
|
-
Jekyll.logger.warn "Kramdown warning:", warning.sub(%r!^Warning:\s+!, "")
|
|
64
|
-
end
|
|
65
|
-
end
|
|
66
|
-
html_output
|
|
67
|
-
end
|
|
68
|
-
end
|
|
69
|
-
end
|
|
70
|
-
end
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Kramdown
|
|
4
|
+
module Parser
|
|
5
|
+
class SmartyPants < Kramdown::Parser::Kramdown
|
|
6
|
+
def initialize(source, options)
|
|
7
|
+
super
|
|
8
|
+
@block_parsers = [:block_html, :content]
|
|
9
|
+
@span_parsers = [:smart_quotes, :html_entity, :typographic_syms, :span_html]
|
|
10
|
+
end
|
|
11
|
+
|
|
12
|
+
def parse_content
|
|
13
|
+
add_text @src.scan(%r!\A.*\n!)
|
|
14
|
+
end
|
|
15
|
+
define_parser(:content, %r!\A!)
|
|
16
|
+
end
|
|
17
|
+
end
|
|
18
|
+
end
|
|
19
|
+
|
|
20
|
+
module Jekyll
|
|
21
|
+
module Converters
|
|
22
|
+
# SmartyPants converter.
|
|
23
|
+
# For more info on converters see https://jekyllrb.com/docs/plugins/converters/
|
|
24
|
+
class SmartyPants < Converter
|
|
25
|
+
safe true
|
|
26
|
+
priority :low
|
|
27
|
+
|
|
28
|
+
def initialize(config)
|
|
29
|
+
Jekyll::External.require_with_graceful_fail "kramdown" unless defined?(Kramdown)
|
|
30
|
+
@config = config["kramdown"].dup || {}
|
|
31
|
+
@config[:input] = :SmartyPants
|
|
32
|
+
end
|
|
33
|
+
|
|
34
|
+
# Does the given extension match this converter's list of acceptable extensions?
|
|
35
|
+
# Takes one argument: the file's extension (including the dot).
|
|
36
|
+
#
|
|
37
|
+
# ext - The String extension to check.
|
|
38
|
+
#
|
|
39
|
+
# Returns true if it matches, false otherwise.
|
|
40
|
+
def matches(_ext)
|
|
41
|
+
false
|
|
42
|
+
end
|
|
43
|
+
|
|
44
|
+
# Public: The extension to be given to the output file (including the dot).
|
|
45
|
+
#
|
|
46
|
+
# ext - The String extension or original file.
|
|
47
|
+
#
|
|
48
|
+
# Returns The String output file extension.
|
|
49
|
+
def output_ext(_ext)
|
|
50
|
+
nil
|
|
51
|
+
end
|
|
52
|
+
|
|
53
|
+
# Logic to do the content conversion.
|
|
54
|
+
#
|
|
55
|
+
# content - String content of file (without front matter).
|
|
56
|
+
#
|
|
57
|
+
# Returns a String of the converted content.
|
|
58
|
+
def convert(content)
|
|
59
|
+
document = Kramdown::Document.new(content, @config)
|
|
60
|
+
html_output = document.to_html.chomp
|
|
61
|
+
if @config["show_warnings"]
|
|
62
|
+
document.warnings.each do |warning|
|
|
63
|
+
Jekyll.logger.warn "Kramdown warning:", warning.sub(%r!^Warning:\s+!, "")
|
|
64
|
+
end
|
|
65
|
+
end
|
|
66
|
+
html_output
|
|
67
|
+
end
|
|
68
|
+
end
|
|
69
|
+
end
|
|
70
|
+
end
|