nanoc 3.7.4 → 3.7.5
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/Gemfile +19 -18
- data/LICENSE +1 -1
- data/NEWS.md +14 -0
- data/Rakefile +1 -1
- data/doc/yardoc_handlers/identifier.rb +1 -5
- data/lib/nanoc.rb +1 -3
- data/lib/nanoc/base.rb +1 -4
- data/lib/nanoc/base/checksummer.rb +10 -12
- data/lib/nanoc/base/compilation/checksum_store.rb +0 -4
- data/lib/nanoc/base/compilation/compiled_content_cache.rb +0 -4
- data/lib/nanoc/base/compilation/compiler.rb +27 -31
- data/lib/nanoc/base/compilation/compiler_dsl.rb +3 -7
- data/lib/nanoc/base/compilation/dependency_tracker.rb +2 -6
- data/lib/nanoc/base/compilation/filter.rb +1 -7
- data/lib/nanoc/base/compilation/item_rep_proxy.rb +0 -4
- data/lib/nanoc/base/compilation/item_rep_recorder_proxy.rb +0 -4
- data/lib/nanoc/base/compilation/outdatedness_checker.rb +0 -4
- data/lib/nanoc/base/compilation/outdatedness_reasons.rb +0 -6
- data/lib/nanoc/base/compilation/rule.rb +1 -5
- data/lib/nanoc/base/compilation/rule_context.rb +7 -11
- data/lib/nanoc/base/compilation/rule_memory_calculator.rb +0 -4
- data/lib/nanoc/base/compilation/rule_memory_store.rb +0 -4
- data/lib/nanoc/base/compilation/rules_collection.rb +5 -9
- data/lib/nanoc/base/context.rb +0 -3
- data/lib/nanoc/base/core_ext.rb +0 -1
- data/lib/nanoc/base/core_ext/array.rb +0 -2
- data/lib/nanoc/base/core_ext/hash.rb +0 -2
- data/lib/nanoc/base/core_ext/pathname.rb +0 -2
- data/lib/nanoc/base/core_ext/string.rb +0 -2
- data/lib/nanoc/base/directed_graph.rb +0 -4
- data/lib/nanoc/base/errors.rb +1 -39
- data/lib/nanoc/base/memoization.rb +0 -4
- data/lib/nanoc/base/notification_center.rb +1 -7
- data/lib/nanoc/base/plugin_registry.rb +4 -10
- data/lib/nanoc/base/result_data/item_rep.rb +8 -16
- data/lib/nanoc/base/source_data/code_snippet.rb +1 -5
- data/lib/nanoc/base/source_data/configuration.rb +0 -4
- data/lib/nanoc/base/source_data/data_source.rb +2 -5
- data/lib/nanoc/base/source_data/item.rb +3 -7
- data/lib/nanoc/base/source_data/item_array.rb +1 -5
- data/lib/nanoc/base/source_data/layout.rb +2 -6
- data/lib/nanoc/base/source_data/site.rb +20 -23
- data/lib/nanoc/base/store.rb +1 -5
- data/lib/nanoc/base/temp_filename_factory.rb +0 -4
- data/lib/nanoc/cli.rb +3 -5
- data/lib/nanoc/cli/ansi_string_colorizer.rb +6 -10
- data/lib/nanoc/cli/cleaning_stream.rb +2 -6
- data/lib/nanoc/cli/command_runner.rb +1 -5
- data/lib/nanoc/cli/commands/autocompile.rb +2 -6
- data/lib/nanoc/cli/commands/check.rb +0 -4
- data/lib/nanoc/cli/commands/compile.rb +12 -27
- data/lib/nanoc/cli/commands/create-item.rb +1 -5
- data/lib/nanoc/cli/commands/create-layout.rb +0 -4
- data/lib/nanoc/cli/commands/create-site.rb +2 -8
- data/lib/nanoc/cli/commands/deploy.rb +3 -7
- data/lib/nanoc/cli/commands/prune.rb +2 -6
- data/lib/nanoc/cli/commands/shell.rb +4 -8
- data/lib/nanoc/cli/commands/show-data.rb +3 -7
- data/lib/nanoc/cli/commands/show-plugins.rb +3 -7
- data/lib/nanoc/cli/commands/show-rules.rb +11 -15
- data/lib/nanoc/cli/commands/sync.rb +0 -4
- data/lib/nanoc/cli/commands/update.rb +1 -7
- data/lib/nanoc/cli/commands/validate-css.rb +0 -4
- data/lib/nanoc/cli/commands/validate-html.rb +0 -4
- data/lib/nanoc/cli/commands/validate-links.rb +0 -4
- data/lib/nanoc/cli/commands/view.rb +3 -7
- data/lib/nanoc/cli/commands/watch.rb +4 -10
- data/lib/nanoc/cli/error_handler.rb +9 -13
- data/lib/nanoc/cli/logger.rb +8 -12
- data/lib/nanoc/cli/stream_cleaners.rb +0 -4
- data/lib/nanoc/cli/stream_cleaners/abstract.rb +1 -5
- data/lib/nanoc/cli/stream_cleaners/ansi_colors.rb +0 -4
- data/lib/nanoc/cli/stream_cleaners/utf8.rb +1 -5
- data/lib/nanoc/data_sources.rb +2 -4
- data/lib/nanoc/data_sources/deprecated/delicious.rb +6 -10
- data/lib/nanoc/data_sources/deprecated/last_fm.rb +7 -11
- data/lib/nanoc/data_sources/deprecated/twitter.rb +2 -6
- data/lib/nanoc/data_sources/filesystem.rb +10 -13
- data/lib/nanoc/data_sources/filesystem_unified.rb +0 -4
- data/lib/nanoc/data_sources/filesystem_verbose.rb +0 -4
- data/lib/nanoc/data_sources/static.rb +4 -8
- data/lib/nanoc/extra.rb +2 -4
- data/lib/nanoc/extra/auto_compiler.rb +2 -6
- data/lib/nanoc/extra/checking.rb +0 -4
- data/lib/nanoc/extra/checking/check.rb +0 -4
- data/lib/nanoc/extra/checking/checks.rb +0 -2
- data/lib/nanoc/extra/checking/checks/css.rb +6 -6
- data/lib/nanoc/extra/checking/checks/external_links.rb +3 -11
- data/lib/nanoc/extra/checking/checks/html.rb +6 -6
- data/lib/nanoc/extra/checking/checks/internal_links.rb +3 -7
- data/lib/nanoc/extra/checking/checks/stale.rb +3 -7
- data/lib/nanoc/extra/checking/dsl.rb +0 -4
- data/lib/nanoc/extra/checking/issue.rb +0 -4
- data/lib/nanoc/extra/checking/runner.rb +4 -7
- data/lib/nanoc/extra/chick.rb +7 -17
- data/lib/nanoc/extra/core_ext.rb +0 -1
- data/lib/nanoc/extra/core_ext/pathname.rb +0 -4
- data/lib/nanoc/extra/core_ext/time.rb +0 -2
- data/lib/nanoc/extra/deployer.rb +0 -4
- data/lib/nanoc/extra/deployers.rb +0 -4
- data/lib/nanoc/extra/deployers/fog.rb +7 -11
- data/lib/nanoc/extra/deployers/rsync.rb +1 -5
- data/lib/nanoc/extra/file_proxy.rb +1 -5
- data/lib/nanoc/extra/filesystem_tools.rb +37 -12
- data/lib/nanoc/extra/jruby_nokogiri_warner.rb +0 -4
- data/lib/nanoc/extra/link_collector.rb +3 -7
- data/lib/nanoc/extra/piper.rb +0 -6
- data/lib/nanoc/extra/pruner.rb +1 -7
- data/lib/nanoc/extra/validators.rb +0 -4
- data/lib/nanoc/extra/validators/links.rb +0 -4
- data/lib/nanoc/extra/validators/w3c.rb +0 -4
- data/lib/nanoc/extra/vcs.rb +3 -7
- data/lib/nanoc/extra/vcses.rb +0 -2
- data/lib/nanoc/extra/vcses/bazaar.rb +0 -4
- data/lib/nanoc/extra/vcses/dummy.rb +0 -4
- data/lib/nanoc/extra/vcses/git.rb +0 -4
- data/lib/nanoc/extra/vcses/mercurial.rb +0 -4
- data/lib/nanoc/extra/vcses/subversion.rb +0 -4
- data/lib/nanoc/filters.rb +0 -2
- data/lib/nanoc/filters/asciidoc.rb +1 -5
- data/lib/nanoc/filters/bluecloth.rb +0 -2
- data/lib/nanoc/filters/coderay.rb +0 -2
- data/lib/nanoc/filters/coffeescript.rb +0 -4
- data/lib/nanoc/filters/colorize_syntax.rb +17 -15
- data/lib/nanoc/filters/erb.rb +1 -3
- data/lib/nanoc/filters/erubis.rb +2 -4
- data/lib/nanoc/filters/haml.rb +2 -4
- data/lib/nanoc/filters/handlebars.rb +0 -4
- data/lib/nanoc/filters/kramdown.rb +7 -4
- data/lib/nanoc/filters/less.rb +1 -3
- data/lib/nanoc/filters/markaby.rb +0 -2
- data/lib/nanoc/filters/maruku.rb +0 -2
- data/lib/nanoc/filters/mustache.rb +1 -5
- data/lib/nanoc/filters/pandoc.rb +0 -2
- data/lib/nanoc/filters/rainpress.rb +0 -2
- data/lib/nanoc/filters/rdiscount.rb +0 -2
- data/lib/nanoc/filters/rdoc.rb +0 -2
- data/lib/nanoc/filters/redcarpet.rb +0 -4
- data/lib/nanoc/filters/redcloth.rb +0 -2
- data/lib/nanoc/filters/relativize_paths.rb +2 -4
- data/lib/nanoc/filters/rubypants.rb +0 -2
- data/lib/nanoc/filters/sass.rb +2 -4
- data/lib/nanoc/filters/sass/sass_filesystem_importer.rb +0 -2
- data/lib/nanoc/filters/slim.rb +2 -6
- data/lib/nanoc/filters/typogruby.rb +0 -4
- data/lib/nanoc/filters/uglify_js.rb +0 -2
- data/lib/nanoc/filters/xsl.rb +1 -5
- data/lib/nanoc/filters/yui_compressor.rb +0 -4
- data/lib/nanoc/helpers.rb +0 -2
- data/lib/nanoc/helpers/blogging.rb +12 -20
- data/lib/nanoc/helpers/breadcrumbs.rb +0 -4
- data/lib/nanoc/helpers/capturing.rb +2 -10
- data/lib/nanoc/helpers/filtering.rb +0 -4
- data/lib/nanoc/helpers/html_escape.rb +3 -7
- data/lib/nanoc/helpers/link_to.rb +0 -4
- data/lib/nanoc/helpers/rendering.rb +8 -12
- data/lib/nanoc/helpers/tagging.rb +0 -4
- data/lib/nanoc/helpers/text.rb +1 -5
- data/lib/nanoc/helpers/xml_sitemap.rb +3 -7
- data/lib/nanoc/tasks/clean.rb +1 -7
- data/lib/nanoc/tasks/deploy/rsync.rake +0 -2
- data/lib/nanoc/tasks/validate.rake +0 -4
- data/lib/nanoc/version.rb +1 -3
- data/nanoc.gemspec +12 -9
- data/tasks/rubocop.rake +1 -1
- data/tasks/test.rake +6 -7
- data/test/base/checksummer_spec.rb +28 -44
- data/test/base/core_ext/array_spec.rb +1 -9
- data/test/base/core_ext/hash_spec.rb +7 -19
- data/test/base/core_ext/pathname_spec.rb +2 -4
- data/test/base/core_ext/string_spec.rb +0 -4
- data/test/base/temp_filename_factory_spec.rb +0 -8
- data/test/base/test_checksum_store.rb +0 -2
- data/test/base/test_code_snippet.rb +0 -2
- data/test/base/test_compiler.rb +15 -17
- data/test/base/test_compiler_dsl.rb +7 -9
- data/test/base/test_context.rb +2 -4
- data/test/base/test_data_source.rb +0 -2
- data/test/base/test_dependency_tracker.rb +0 -2
- data/test/base/test_directed_graph.rb +2 -4
- data/test/base/test_filter.rb +5 -7
- data/test/base/test_item.rb +17 -13
- data/test/base/test_item_array.rb +2 -4
- data/test/base/test_item_rep.rb +79 -73
- data/test/base/test_layout.rb +3 -5
- data/test/base/test_memoization.rb +13 -21
- data/test/base/test_notification_center.rb +0 -2
- data/test/base/test_outdatedness_checker.rb +34 -36
- data/test/base/test_plugin.rb +0 -2
- data/test/base/test_rule.rb +3 -5
- data/test/base/test_rule_context.rb +4 -6
- data/test/base/test_site.rb +9 -17
- data/test/base/test_store.rb +2 -6
- data/test/cli/commands/test_check.rb +1 -3
- data/test/cli/commands/test_compile.rb +24 -15
- data/test/cli/commands/test_create_item.rb +1 -3
- data/test/cli/commands/test_create_layout.rb +0 -2
- data/test/cli/commands/test_create_site.rb +0 -3
- data/test/cli/commands/test_deploy.rb +9 -11
- data/test/cli/commands/test_help.rb +0 -2
- data/test/cli/commands/test_info.rb +0 -2
- data/test/cli/commands/test_prune.rb +6 -8
- data/test/cli/commands/test_sync.rb +0 -2
- data/test/cli/commands/test_update.rb +0 -2
- data/test/cli/commands/test_watch.rb +4 -6
- data/test/cli/test_cleaning_stream.rb +4 -6
- data/test/cli/test_cli.rb +9 -5
- data/test/cli/test_error_handler.rb +9 -7
- data/test/cli/test_logger.rb +0 -2
- data/test/data_sources/test_filesystem.rb +8 -10
- data/test/data_sources/test_filesystem_unified.rb +35 -34
- data/test/data_sources/test_filesystem_verbose.rb +31 -33
- data/test/data_sources/test_static.rb +20 -21
- data/test/extra/checking/checks/test_css.rb +23 -2
- data/test/extra/checking/checks/test_external_links.rb +2 -4
- data/test/extra/checking/checks/test_html.rb +4 -3
- data/test/extra/checking/checks/test_internal_links.rb +1 -3
- data/test/extra/checking/checks/test_stale.rb +4 -6
- data/test/extra/checking/test_check.rb +0 -2
- data/test/extra/checking/test_dsl.rb +1 -3
- data/test/extra/checking/test_runner.rb +0 -2
- data/test/extra/core_ext/test_pathname.rb +0 -3
- data/test/extra/core_ext/test_time.rb +0 -2
- data/test/extra/deployers/test_fog.rb +13 -15
- data/test/extra/deployers/test_rsync.rb +4 -6
- data/test/extra/test_auto_compiler.rb +47 -25
- data/test/extra/test_file_proxy.rb +1 -3
- data/test/extra/test_filesystem_tools.rb +47 -7
- data/test/extra/test_link_collector.rb +0 -2
- data/test/extra/test_piper.rb +3 -5
- data/test/extra/test_vcs.rb +0 -2
- data/test/extra/validators/test_links.rb +0 -1
- data/test/extra/validators/test_w3c.rb +2 -4
- data/test/filters/test_asciidoc.rb +0 -2
- data/test/filters/test_bluecloth.rb +0 -2
- data/test/filters/test_coderay.rb +2 -4
- data/test/filters/test_coffeescript.rb +0 -2
- data/test/filters/test_colorize_syntax.rb +16 -18
- data/test/filters/test_erb.rb +12 -14
- data/test/filters/test_erubis.rb +4 -6
- data/test/filters/test_haml.rb +7 -9
- data/test/filters/test_handlebars.rb +10 -12
- data/test/filters/test_kramdown.rb +13 -1
- data/test/filters/test_less.rb +9 -11
- data/test/filters/test_markaby.rb +0 -2
- data/test/filters/test_maruku.rb +0 -2
- data/test/filters/test_mustache.rb +4 -6
- data/test/filters/test_pandoc.rb +1 -3
- data/test/filters/test_rainpress.rb +1 -3
- data/test/filters/test_rdiscount.rb +1 -3
- data/test/filters/test_rdoc.rb +0 -2
- data/test/filters/test_redcarpet.rb +6 -8
- data/test/filters/test_redcloth.rb +1 -3
- data/test/filters/test_relativize_paths.rb +29 -34
- data/test/filters/test_rubypants.rb +0 -2
- data/test/filters/test_sass.rb +8 -10
- data/test/filters/test_slim.rb +2 -4
- data/test/filters/test_typogruby.rb +0 -3
- data/test/filters/test_uglify_js.rb +2 -4
- data/test/filters/test_xsl.rb +16 -18
- data/test/filters/test_yui_compressor.rb +3 -5
- data/test/fixtures/vcr_cassettes/css_run_parse_error.yml +65 -0
- data/test/gem_loader.rb +1 -1
- data/test/helper.rb +11 -15
- data/test/helpers/test_blogging.rb +61 -63
- data/test/helpers/test_breadcrumbs.rb +0 -2
- data/test/helpers/test_capturing.rb +4 -6
- data/test/helpers/test_filtering.rb +2 -4
- data/test/helpers/test_html_escape.rb +0 -2
- data/test/helpers/test_link_to.rb +5 -6
- data/test/helpers/test_rendering.rb +2 -4
- data/test/helpers/test_tagging.rb +9 -11
- data/test/helpers/test_text.rb +6 -8
- data/test/helpers/test_xml_sitemap.rb +11 -13
- data/test/tasks/test_clean.rb +0 -2
- data/test/test_gem.rb +1 -3
- metadata +15 -14
- data/Gemfile.lock +0 -252
- data/lib/nanoc/base/core_ext/date.rb +0 -29
- data/lib/nanoc/base/ordered_hash.rb +0 -228
- data/lib/nanoc/extra/core_ext/enumerable.rb +0 -33
- data/test/base/core_ext/date_spec.rb +0 -15
- data/test/extra/core_ext/test_enumerable.rb +0 -28
data/lib/nanoc/extra/vcses.rb
CHANGED
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
# encoding: utf-8
|
|
2
2
|
|
|
3
3
|
module Nanoc::Extra::VCSes
|
|
4
|
-
|
|
5
4
|
autoload 'Bazaar', 'nanoc/extra/vcses/bazaar'
|
|
6
5
|
autoload 'Dummy', 'nanoc/extra/vcses/dummy'
|
|
7
6
|
autoload 'Git', 'nanoc/extra/vcses/git'
|
|
@@ -13,5 +12,4 @@ module Nanoc::Extra::VCSes
|
|
|
13
12
|
Nanoc::Extra::VCS.register '::Nanoc::Extra::VCSes::Git', :git
|
|
14
13
|
Nanoc::Extra::VCS.register '::Nanoc::Extra::VCSes::Mercurial', :mercurial, :hg
|
|
15
14
|
Nanoc::Extra::VCS.register '::Nanoc::Extra::VCSes::Subversion', :subversion, :svn
|
|
16
|
-
|
|
17
15
|
end
|
|
@@ -1,10 +1,8 @@
|
|
|
1
1
|
# encoding: utf-8
|
|
2
2
|
|
|
3
3
|
module Nanoc::Extra::VCSes
|
|
4
|
-
|
|
5
4
|
# @see Nanoc::Extra::VCS
|
|
6
5
|
class Bazaar < Nanoc::Extra::VCS
|
|
7
|
-
|
|
8
6
|
# @see Nanoc::Extra::VCS#add
|
|
9
7
|
def add(filename)
|
|
10
8
|
system('bzr', 'add', filename)
|
|
@@ -19,7 +17,5 @@ module Nanoc::Extra::VCSes
|
|
|
19
17
|
def move(src, dst)
|
|
20
18
|
system('bzr', 'mv', src, dst)
|
|
21
19
|
end
|
|
22
|
-
|
|
23
20
|
end
|
|
24
|
-
|
|
25
21
|
end
|
|
@@ -1,10 +1,8 @@
|
|
|
1
1
|
# encoding: utf-8
|
|
2
2
|
|
|
3
3
|
module Nanoc::Extra::VCSes
|
|
4
|
-
|
|
5
4
|
# @see Nanoc::Extra::VCS
|
|
6
5
|
class Dummy < Nanoc::Extra::VCS
|
|
7
|
-
|
|
8
6
|
# @see Nanoc::Extra::VCS#add
|
|
9
7
|
def add(_filename)
|
|
10
8
|
end
|
|
@@ -18,7 +16,5 @@ module Nanoc::Extra::VCSes
|
|
|
18
16
|
def move(src, dst)
|
|
19
17
|
FileUtils.move(src, dst)
|
|
20
18
|
end
|
|
21
|
-
|
|
22
19
|
end
|
|
23
|
-
|
|
24
20
|
end
|
|
@@ -1,10 +1,8 @@
|
|
|
1
1
|
# encoding: utf-8
|
|
2
2
|
|
|
3
3
|
module Nanoc::Extra::VCSes
|
|
4
|
-
|
|
5
4
|
# @see Nanoc::Extra::VCS
|
|
6
5
|
class Git < Nanoc::Extra::VCS
|
|
7
|
-
|
|
8
6
|
# @see Nanoc::Extra::VCS#add
|
|
9
7
|
def add(filename)
|
|
10
8
|
system('git', 'add', filename)
|
|
@@ -19,7 +17,5 @@ module Nanoc::Extra::VCSes
|
|
|
19
17
|
def move(src, dst)
|
|
20
18
|
system('git', 'mv', src, dst)
|
|
21
19
|
end
|
|
22
|
-
|
|
23
20
|
end
|
|
24
|
-
|
|
25
21
|
end
|
|
@@ -1,10 +1,8 @@
|
|
|
1
1
|
# encoding: utf-8
|
|
2
2
|
|
|
3
3
|
module Nanoc::Extra::VCSes
|
|
4
|
-
|
|
5
4
|
# @see Nanoc::Extra::VCS
|
|
6
5
|
class Mercurial < Nanoc::Extra::VCS
|
|
7
|
-
|
|
8
6
|
# @see Nanoc::Extra::VCS#add
|
|
9
7
|
def add(filename)
|
|
10
8
|
system('hg', 'add', filename)
|
|
@@ -19,7 +17,5 @@ module Nanoc::Extra::VCSes
|
|
|
19
17
|
def move(src, dst)
|
|
20
18
|
system('hg', 'mv', src, dst)
|
|
21
19
|
end
|
|
22
|
-
|
|
23
20
|
end
|
|
24
|
-
|
|
25
21
|
end
|
|
@@ -1,10 +1,8 @@
|
|
|
1
1
|
# encoding: utf-8
|
|
2
2
|
|
|
3
3
|
module Nanoc::Extra::VCSes
|
|
4
|
-
|
|
5
4
|
# @see Nanoc::Extra::VCS
|
|
6
5
|
class Subversion < Nanoc::Extra::VCS
|
|
7
|
-
|
|
8
6
|
# @see Nanoc::Extra::VCS#add
|
|
9
7
|
def add(filename)
|
|
10
8
|
system('svn', 'add', filename)
|
|
@@ -19,7 +17,5 @@ module Nanoc::Extra::VCSes
|
|
|
19
17
|
def move(src, dst)
|
|
20
18
|
system('svn', 'mv', src, dst)
|
|
21
19
|
end
|
|
22
|
-
|
|
23
20
|
end
|
|
24
|
-
|
|
25
21
|
end
|
data/lib/nanoc/filters.rb
CHANGED
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
# encoding: utf-8
|
|
2
2
|
|
|
3
3
|
module Nanoc::Filters
|
|
4
|
-
|
|
5
4
|
autoload 'AsciiDoc', 'nanoc/filters/asciidoc'
|
|
6
5
|
autoload 'BlueCloth', 'nanoc/filters/bluecloth'
|
|
7
6
|
autoload 'CodeRay', 'nanoc/filters/coderay'
|
|
@@ -59,5 +58,4 @@ module Nanoc::Filters
|
|
|
59
58
|
Nanoc::Filter.register '::Nanoc::Filters::UglifyJS', :uglify_js
|
|
60
59
|
Nanoc::Filter.register '::Nanoc::Filters::XSL', :xsl
|
|
61
60
|
Nanoc::Filter.register '::Nanoc::Filters::YUICompressor', :yui_compressor
|
|
62
|
-
|
|
63
61
|
end
|
|
@@ -1,10 +1,8 @@
|
|
|
1
1
|
# encoding: utf-8
|
|
2
2
|
|
|
3
3
|
module Nanoc::Filters
|
|
4
|
-
|
|
5
4
|
# @since 3.2.0
|
|
6
5
|
class AsciiDoc < Nanoc::Filter
|
|
7
|
-
|
|
8
6
|
# Runs the content through [AsciiDoc](http://www.methods.co.nz/asciidoc/).
|
|
9
7
|
# This method takes no options.
|
|
10
8
|
#
|
|
@@ -14,11 +12,9 @@ module Nanoc::Filters
|
|
|
14
12
|
def run(content, _params = {})
|
|
15
13
|
stdout = StringIO.new
|
|
16
14
|
stderr = $stderr
|
|
17
|
-
piper = Nanoc::Extra::Piper.new(:
|
|
15
|
+
piper = Nanoc::Extra::Piper.new(stdout: stdout, stderr: stderr)
|
|
18
16
|
piper.run(%w( asciidoc -o - - ), content)
|
|
19
17
|
stdout.string
|
|
20
18
|
end
|
|
21
|
-
|
|
22
19
|
end
|
|
23
|
-
|
|
24
20
|
end
|
|
@@ -2,7 +2,6 @@
|
|
|
2
2
|
|
|
3
3
|
module Nanoc::Filters
|
|
4
4
|
class BlueCloth < Nanoc::Filter
|
|
5
|
-
|
|
6
5
|
requires 'bluecloth'
|
|
7
6
|
|
|
8
7
|
# Runs the content through [BlueCloth](http://deveiate.org/projects/BlueCloth).
|
|
@@ -14,6 +13,5 @@ module Nanoc::Filters
|
|
|
14
13
|
def run(content, _params = {})
|
|
15
14
|
::BlueCloth.new(content).to_html
|
|
16
15
|
end
|
|
17
|
-
|
|
18
16
|
end
|
|
19
17
|
end
|
|
@@ -2,7 +2,6 @@
|
|
|
2
2
|
|
|
3
3
|
module Nanoc::Filters
|
|
4
4
|
class CodeRay < Nanoc::Filter
|
|
5
|
-
|
|
6
5
|
requires 'coderay'
|
|
7
6
|
|
|
8
7
|
# @deprecated Use the `:colorize_syntax` filter instead.
|
|
@@ -16,6 +15,5 @@ module Nanoc::Filters
|
|
|
16
15
|
# Get result
|
|
17
16
|
::CodeRay.scan(content, params[:language]).html
|
|
18
17
|
end
|
|
19
|
-
|
|
20
18
|
end
|
|
21
19
|
end
|
|
@@ -1,10 +1,8 @@
|
|
|
1
1
|
# encoding: utf-8
|
|
2
2
|
|
|
3
3
|
module Nanoc::Filters
|
|
4
|
-
|
|
5
4
|
# @since 3.3.0
|
|
6
5
|
class CoffeeScript < Nanoc::Filter
|
|
7
|
-
|
|
8
6
|
requires 'coffee-script'
|
|
9
7
|
|
|
10
8
|
# Runs the content through [CoffeeScript](http://coffeescript.org/).
|
|
@@ -16,7 +14,5 @@ module Nanoc::Filters
|
|
|
16
14
|
def run(content, _params = {})
|
|
17
15
|
::CoffeeScript.compile(content)
|
|
18
16
|
end
|
|
19
|
-
|
|
20
17
|
end
|
|
21
|
-
|
|
22
18
|
end
|
|
@@ -2,7 +2,6 @@
|
|
|
2
2
|
|
|
3
3
|
module Nanoc::Filters
|
|
4
4
|
class ColorizeSyntax < Nanoc::Filter
|
|
5
|
-
|
|
6
5
|
requires 'nokogiri', 'stringio', 'open3'
|
|
7
6
|
|
|
8
7
|
# The default colorizer to use for a language if the colorizer for that
|
|
@@ -142,7 +141,7 @@ module Nanoc::Filters
|
|
|
142
141
|
end
|
|
143
142
|
|
|
144
143
|
method = "to_#{syntax}".to_sym
|
|
145
|
-
doc.send(method, :
|
|
144
|
+
doc.send(method, encoding: 'UTF-8')
|
|
146
145
|
end
|
|
147
146
|
|
|
148
147
|
# Parses the given content using the given class. This method also handles
|
|
@@ -197,7 +196,7 @@ module Nanoc::Filters
|
|
|
197
196
|
#
|
|
198
197
|
# @return [String] The colorized output, which is identical to the input
|
|
199
198
|
# in this case
|
|
200
|
-
def dummy(code,
|
|
199
|
+
def dummy(code, language, params = {}) # rubocop:disable Lint/UnusedMethodArgument
|
|
201
200
|
code
|
|
202
201
|
end
|
|
203
202
|
|
|
@@ -224,7 +223,7 @@ module Nanoc::Filters
|
|
|
224
223
|
|
|
225
224
|
stdout = StringIO.new
|
|
226
225
|
stderr = $stderr
|
|
227
|
-
piper = Nanoc::Extra::Piper.new(:
|
|
226
|
+
piper = Nanoc::Extra::Piper.new(stdout: stdout, stderr: stderr)
|
|
228
227
|
piper.run(cmd, code)
|
|
229
228
|
|
|
230
229
|
stdout.string
|
|
@@ -253,9 +252,9 @@ module Nanoc::Filters
|
|
|
253
252
|
end
|
|
254
253
|
|
|
255
254
|
SIMON_HIGHLIGHT_OPT_MAP = {
|
|
256
|
-
:
|
|
257
|
-
:
|
|
258
|
-
:
|
|
255
|
+
wrap: '-W',
|
|
256
|
+
include_style: '-I',
|
|
257
|
+
line_numbers: '-l',
|
|
259
258
|
}
|
|
260
259
|
|
|
261
260
|
# Runs the content through [Highlight](http://www.andre-simon.de/doku/highlight/en/highlight.html).
|
|
@@ -279,7 +278,7 @@ module Nanoc::Filters
|
|
|
279
278
|
if SIMON_HIGHLIGHT_OPT_MAP[key]
|
|
280
279
|
cmd << SIMON_HIGHLIGHT_OPT_MAP[key]
|
|
281
280
|
else
|
|
282
|
-
# TODO allow passing other options
|
|
281
|
+
# TODO: allow passing other options
|
|
283
282
|
case key
|
|
284
283
|
when :style
|
|
285
284
|
cmd << '--style' << params[:style]
|
|
@@ -289,7 +288,7 @@ module Nanoc::Filters
|
|
|
289
288
|
|
|
290
289
|
stdout = StringIO.new
|
|
291
290
|
stderr = $stderr
|
|
292
|
-
piper = Nanoc::Extra::Piper.new(:
|
|
291
|
+
piper = Nanoc::Extra::Piper.new(stdout: stdout, stderr: stderr)
|
|
293
292
|
piper.run(cmd, code)
|
|
294
293
|
|
|
295
294
|
stdout.string
|
|
@@ -327,7 +326,7 @@ module Nanoc::Filters
|
|
|
327
326
|
require 'rouge'
|
|
328
327
|
|
|
329
328
|
formatter_options = {
|
|
330
|
-
:
|
|
329
|
+
css_class: params.fetch(:css_class, 'highlight'),
|
|
331
330
|
}
|
|
332
331
|
formatter = Rouge::Formatters::HTML.new(formatter_options)
|
|
333
332
|
lexer = Rouge::Lexer.find_fancy(language, code) || Rouge::Lexers::PlainText
|
|
@@ -338,7 +337,7 @@ module Nanoc::Filters
|
|
|
338
337
|
#
|
|
339
338
|
# Before:
|
|
340
339
|
#
|
|
341
|
-
# <pre><code class="language-ruby"><pre
|
|
340
|
+
# <pre><code class="language-ruby"><pre class="highlight"><code>
|
|
342
341
|
#
|
|
343
342
|
# After:
|
|
344
343
|
#
|
|
@@ -348,11 +347,15 @@ module Nanoc::Filters
|
|
|
348
347
|
|
|
349
348
|
code1 = element.xpath('code').first
|
|
350
349
|
return if code1.nil?
|
|
351
|
-
|
|
350
|
+
|
|
351
|
+
pre = code1.xpath('pre').first
|
|
352
|
+
return if pre.nil?
|
|
353
|
+
|
|
354
|
+
code2 = pre.xpath('code').first
|
|
352
355
|
return if code2.nil?
|
|
353
356
|
|
|
354
357
|
code1.inner_html = code2.inner_html
|
|
355
|
-
code1['class'] = [code1['class'],
|
|
358
|
+
code1['class'] = [code1['class'], pre['class']].compact.join(' ')
|
|
356
359
|
end
|
|
357
360
|
|
|
358
361
|
protected
|
|
@@ -386,9 +389,8 @@ module Nanoc::Filters
|
|
|
386
389
|
end
|
|
387
390
|
|
|
388
391
|
def check_availability(*cmd)
|
|
389
|
-
piper = Nanoc::Extra::Piper.new(:
|
|
392
|
+
piper = Nanoc::Extra::Piper.new(stdout: StringIO.new, stderr: StringIO.new)
|
|
390
393
|
piper.run(cmd, nil)
|
|
391
394
|
end
|
|
392
|
-
|
|
393
395
|
end
|
|
394
396
|
end
|
data/lib/nanoc/filters/erb.rb
CHANGED
|
@@ -2,7 +2,6 @@
|
|
|
2
2
|
|
|
3
3
|
module Nanoc::Filters
|
|
4
4
|
class ERB < Nanoc::Filter
|
|
5
|
-
|
|
6
5
|
requires 'erb'
|
|
7
6
|
|
|
8
7
|
# Runs the content through [ERB](http://ruby-doc.org/stdlib/libdoc/erb/rdoc/classes/ERB.html).
|
|
@@ -23,7 +22,7 @@ module Nanoc::Filters
|
|
|
23
22
|
context = ::Nanoc::Context.new(assigns)
|
|
24
23
|
|
|
25
24
|
# Get binding
|
|
26
|
-
proc = assigns[:content] ?
|
|
25
|
+
proc = assigns[:content] ? -> { assigns[:content] } : nil
|
|
27
26
|
assigns_binding = context.get_binding(&proc)
|
|
28
27
|
|
|
29
28
|
# Get result
|
|
@@ -33,6 +32,5 @@ module Nanoc::Filters
|
|
|
33
32
|
erb.filename = filename
|
|
34
33
|
erb.result(assigns_binding)
|
|
35
34
|
end
|
|
36
|
-
|
|
37
35
|
end
|
|
38
36
|
end
|
data/lib/nanoc/filters/erubis.rb
CHANGED
|
@@ -2,7 +2,6 @@
|
|
|
2
2
|
|
|
3
3
|
module Nanoc::Filters
|
|
4
4
|
class Erubis < Nanoc::Filter
|
|
5
|
-
|
|
6
5
|
requires 'erubis'
|
|
7
6
|
|
|
8
7
|
# The same as `::Erubis::Eruby` but adds `_erbout` as an alias for the
|
|
@@ -23,12 +22,11 @@ module Nanoc::Filters
|
|
|
23
22
|
context = ::Nanoc::Context.new(assigns)
|
|
24
23
|
|
|
25
24
|
# Get binding
|
|
26
|
-
proc = assigns[:content] ?
|
|
25
|
+
proc = assigns[:content] ? -> { assigns[:content] } : nil
|
|
27
26
|
assigns_binding = context.get_binding(&proc)
|
|
28
27
|
|
|
29
28
|
# Get result
|
|
30
|
-
ErubisWithErbout.new(content, :
|
|
29
|
+
ErubisWithErbout.new(content, filename: filename).result(assigns_binding)
|
|
31
30
|
end
|
|
32
|
-
|
|
33
31
|
end
|
|
34
32
|
end
|
data/lib/nanoc/filters/haml.rb
CHANGED
|
@@ -2,7 +2,6 @@
|
|
|
2
2
|
|
|
3
3
|
module Nanoc::Filters
|
|
4
4
|
class Haml < Nanoc::Filter
|
|
5
|
-
|
|
6
5
|
requires 'haml'
|
|
7
6
|
|
|
8
7
|
# Runs the content through [Haml](http://haml-lang.com/).
|
|
@@ -13,15 +12,14 @@ module Nanoc::Filters
|
|
|
13
12
|
# @return [String] The filtered content
|
|
14
13
|
def run(content, params = {})
|
|
15
14
|
# Get options
|
|
16
|
-
options = params.merge(:
|
|
15
|
+
options = params.merge(filename: filename)
|
|
17
16
|
|
|
18
17
|
# Create context
|
|
19
18
|
context = ::Nanoc::Context.new(assigns)
|
|
20
19
|
|
|
21
20
|
# Get result
|
|
22
|
-
proc = assigns[:content] ?
|
|
21
|
+
proc = assigns[:content] ? -> { assigns[:content] } : nil
|
|
23
22
|
::Haml::Engine.new(content, options).render(context, assigns, &proc)
|
|
24
23
|
end
|
|
25
|
-
|
|
26
24
|
end
|
|
27
25
|
end
|
|
@@ -1,10 +1,8 @@
|
|
|
1
1
|
# encoding: utf-8
|
|
2
2
|
|
|
3
3
|
module Nanoc::Filters
|
|
4
|
-
|
|
5
4
|
# @since 3.4.0
|
|
6
5
|
class Handlebars < Nanoc::Filter
|
|
7
|
-
|
|
8
6
|
requires 'handlebars'
|
|
9
7
|
|
|
10
8
|
# Runs the content through
|
|
@@ -28,7 +26,5 @@ module Nanoc::Filters
|
|
|
28
26
|
template = handlebars.compile(content)
|
|
29
27
|
template.call(context)
|
|
30
28
|
end
|
|
31
|
-
|
|
32
29
|
end
|
|
33
|
-
|
|
34
30
|
end
|
|
@@ -2,7 +2,6 @@
|
|
|
2
2
|
|
|
3
3
|
module Nanoc::Filters
|
|
4
4
|
class Kramdown < Nanoc::Filter
|
|
5
|
-
|
|
6
5
|
requires 'kramdown'
|
|
7
6
|
|
|
8
7
|
# Runs the content through [Kramdown](http://kramdown.gettalong.org/).
|
|
@@ -12,9 +11,13 @@ module Nanoc::Filters
|
|
|
12
11
|
#
|
|
13
12
|
# @return [String] The filtered content
|
|
14
13
|
def run(content, params = {})
|
|
15
|
-
|
|
16
|
-
::Kramdown::Document.new(content, params).to_html
|
|
17
|
-
end
|
|
14
|
+
document = ::Kramdown::Document.new(content, params)
|
|
18
15
|
|
|
16
|
+
document.warnings.each do |warning|
|
|
17
|
+
$stderr.puts "kramdown warning: #{warning}"
|
|
18
|
+
end
|
|
19
|
+
|
|
20
|
+
document.to_html
|
|
21
|
+
end
|
|
19
22
|
end
|
|
20
23
|
end
|
data/lib/nanoc/filters/less.rb
CHANGED
|
@@ -2,7 +2,6 @@
|
|
|
2
2
|
|
|
3
3
|
module Nanoc::Filters
|
|
4
4
|
class Less < Nanoc::Filter
|
|
5
|
-
|
|
6
5
|
requires 'less'
|
|
7
6
|
|
|
8
7
|
# Runs the content through [LESS](http://lesscss.org/).
|
|
@@ -45,9 +44,8 @@ module Nanoc::Filters
|
|
|
45
44
|
|
|
46
45
|
# Add filename to load path
|
|
47
46
|
paths = [File.dirname(@item[:content_filename])]
|
|
48
|
-
parser = ::Less::Parser.new(:
|
|
47
|
+
parser = ::Less::Parser.new(paths: paths)
|
|
49
48
|
parser.parse(content).to_css params
|
|
50
49
|
end
|
|
51
|
-
|
|
52
50
|
end
|
|
53
51
|
end
|
|
@@ -2,7 +2,6 @@
|
|
|
2
2
|
|
|
3
3
|
module Nanoc::Filters
|
|
4
4
|
class Markaby < Nanoc::Filter
|
|
5
|
-
|
|
6
5
|
requires 'markaby'
|
|
7
6
|
|
|
8
7
|
# Runs the content through [Markaby](http://markaby.github.io/).
|
|
@@ -15,6 +14,5 @@ module Nanoc::Filters
|
|
|
15
14
|
# Get result
|
|
16
15
|
::Markaby::Builder.new(assigns).instance_eval(content).to_s
|
|
17
16
|
end
|
|
18
|
-
|
|
19
17
|
end
|
|
20
18
|
end
|