radiantcms-couchrest_model 0.1.3 → 0.1.4
Sign up to get free protection for your applications and to get access to all the features.
- data/CHANGELOG +0 -16
- data/CONTRIBUTORS +0 -7
- data/README +84 -2
- data/app/controllers/admin/export_controller.rb +5 -0
- data/app/controllers/admin/pages_controller.rb +7 -11
- data/app/controllers/admin/preferences_controller.rb +1 -1
- data/app/controllers/admin/resource_controller.rb +1 -1
- data/app/helpers/admin/pages_helper.rb +3 -1
- data/app/helpers/admin/preferences_helper.rb +0 -1
- data/app/helpers/admin/references_helper.rb +2 -1
- data/app/helpers/application_helper.rb +2 -4
- data/app/models/env_dump_page.rb +17 -0
- data/app/models/file_not_found_page.rb +0 -4
- data/app/models/page.rb +20 -61
- data/app/models/radiant/config.rb +37 -225
- data/app/models/radiant/exporter.rb +11 -0
- data/app/models/standard_tags.rb +108 -116
- data/app/models/status.rb +1 -9
- data/app/models/text_filter.rb +1 -12
- data/app/views/admin/extensions/index.html.haml +2 -2
- data/app/views/admin/layouts/index.html.haml +9 -9
- data/app/views/admin/pages/_fields.html.haml +4 -11
- data/app/views/admin/pages/_meta_row.html.haml +1 -5
- data/app/views/admin/pages/_node.html.haml +8 -8
- data/app/views/admin/pages/_popups.html.haml +1 -14
- data/app/views/admin/pages/index.html.haml +4 -4
- data/app/views/admin/snippets/_form.html.haml +1 -1
- data/app/views/admin/snippets/index.html.haml +10 -10
- data/app/views/admin/users/_avatar.html.haml +1 -3
- data/app/views/admin/users/_form.html.haml +2 -2
- data/app/views/admin/users/_password_fields.html.haml +2 -2
- data/app/views/admin/users/index.html.haml +10 -10
- data/app/views/layouts/application.html.haml +1 -1
- data/config/environment.rb +3 -5
- data/config/locales/en.yml +11 -48
- data/config/locales/en_available_tags.yml +34 -122
- data/config/routes.rb +6 -3
- data/db/schema.rb +3 -9
- data/db/templates/empty.yml +2 -0
- data/db/templates/roasters.yml +1210 -0
- data/db/templates/simple-blog.yml +197 -0
- data/db/templates/styled-blog.yml +472 -0
- data/features/admin/pages_management.feature +9 -2
- data/features/admin/resource_pagination.feature +1 -1
- data/features/admin/snippets_management.feature +1 -2
- data/features/admin/user_permissions.feature +1 -0
- data/features/admin/user_preferences.feature +1 -1
- data/features/step_definitions/admin/content_negotiation_steps.rb +0 -4
- data/features/step_definitions/admin/pagination_steps.rb +4 -2
- data/features/support/paths.rb +0 -2
- data/files +7283 -0
- data/lib/generators/extension/extension_generator.rb +0 -6
- data/lib/generators/extension/templates/README +1 -4
- data/lib/generators/extension/templates/RSpecRakefile +19 -0
- data/lib/generators/extension/templates/Rakefile +17 -0
- data/lib/generators/extension/templates/extension.rb +3 -3
- data/lib/generators/instance/instance_generator.rb +2 -3
- data/lib/generators/instance/templates/instance_environment.rb +2 -3
- data/lib/radiant.rb +2 -2
- data/lib/radiant/admin_ui.rb +11 -27
- data/lib/radiant/extension.rb +2 -8
- data/lib/radiant/extension_loader.rb +0 -4
- data/lib/radiant/initializer.rb +2 -46
- data/lib/radiant/setup.rb +11 -21
- data/lib/task_support.rb +8 -14
- data/lib/tasks/framework.rake +10 -17
- data/lib/tasks/prototype.rake +3 -3
- data/lib/tasks/release.rake +0 -1
- data/public/javascripts/admin/application.js +1 -1
- data/public/javascripts/admin/popup.js +7 -7
- data/public/javascripts/admin/tabcontrol.js +0 -1
- data/public/javascripts/admin/utility.js +2 -3
- data/public/stylesheets/admin/main.css +1213 -1
- data/public/stylesheets/admin/overrides.css +1 -0
- data/public/stylesheets/sass/admin/main.sass +20 -24
- data/public/stylesheets/sass/admin/modules/_links.sass +3 -6
- data/public/stylesheets/sass/admin/modules/_opacity.sass +2 -2
- data/public/stylesheets/sass/admin/modules/_rounded.sass +3 -3
- data/public/stylesheets/sass/admin/modules/_shadow.sass +2 -5
- data/public/stylesheets/sass/admin/partials/_actions.sass +38 -53
- data/public/stylesheets/sass/admin/partials/_avatars.sass +2 -2
- data/public/stylesheets/sass/admin/partials/_base.sass +58 -6
- data/public/stylesheets/sass/admin/partials/_content.sass +182 -10
- data/public/stylesheets/sass/admin/partials/_dateinput.sass +5 -5
- data/public/stylesheets/sass/admin/partials/_deprecated.sass +1 -1
- data/public/stylesheets/sass/admin/partials/_forms.sass +25 -26
- data/public/stylesheets/sass/admin/partials/_header.sass +9 -9
- data/public/stylesheets/sass/admin/partials/_popup.sass +1 -1
- data/public/stylesheets/sass/admin/partials/_tabcontrol.sass +3 -4
- data/radiantcms-couchrest_model.gemspec +3673 -0
- data/rerun.txt +1 -0
- data/spec/controllers/admin/export_controller_spec.rb +16 -0
- data/spec/controllers/admin/pages_controller_spec.rb +6 -35
- data/spec/controllers/admin/preferences_controller_spec.rb +1 -1
- data/spec/datasets/config_dataset.rb +0 -1
- data/spec/datasets/home_page_dataset.rb +3 -1
- data/spec/datasets/pages_dataset.rb +1 -1
- data/spec/fixtures/radiant_config.yml +2 -2
- data/spec/generators/extension_generator_spec.rb +8 -28
- data/spec/generators/instance_generator_spec.rb +3 -10
- data/spec/helpers/admin/node_helper_spec.rb +0 -1
- data/spec/helpers/admin/references_helper_spec.rb +1 -10
- data/spec/helpers/application_helper_spec.rb +2 -7
- data/spec/lib/radiant/admin_ui_spec.rb +10 -11
- data/spec/lib/radiant/extension_spec.rb +3 -3
- data/spec/lib/task_support_spec.rb +0 -6
- data/spec/models/env_dump_page_spec.rb +18 -0
- data/spec/models/file_not_found_page_spec.rb +11 -15
- data/spec/models/page_spec.rb +166 -209
- data/spec/models/radiant/config_spec.rb +3 -38
- data/spec/models/radiant/exporter_spec.rb +25 -0
- data/spec/models/standard_tags_spec.rb +142 -132
- data/spec/models/status_spec.rb +0 -11
- data/spec/models/text_filter_spec.rb +2 -6
- data/test/fixtures/extensions/basic/basic_extension.rb +6 -1
- data/vendor/extensions/archive/README +29 -0
- data/vendor/extensions/archive/Rakefile +120 -0
- data/vendor/extensions/archive/app/models/archive_day_index_page.rb +28 -0
- data/vendor/extensions/archive/app/models/archive_finder.rb +60 -0
- data/vendor/extensions/archive/app/models/archive_month_index_page.rb +28 -0
- data/vendor/extensions/archive/app/models/archive_page.rb +36 -0
- data/vendor/extensions/archive/app/models/archive_year_index_page.rb +28 -0
- data/vendor/extensions/archive/archive_extension.rb +19 -0
- data/vendor/extensions/archive/lib/archive_index_tags_and_methods.rb +57 -0
- data/vendor/extensions/archive/lib/tasks/archive_extension_tasks.rake +28 -0
- data/vendor/extensions/archive/spec/datasets/archive_dataset.rb +51 -0
- data/vendor/extensions/archive/spec/models/archive_day_index_page_spec.rb +20 -0
- data/vendor/extensions/archive/spec/models/archive_month_index_page_spec.rb +20 -0
- data/vendor/extensions/archive/spec/models/archive_page_spec.rb +33 -0
- data/vendor/extensions/archive/spec/models/archive_year_index_page_spec.rb +20 -0
- data/vendor/extensions/archive/spec/spec.opts +6 -0
- data/vendor/extensions/archive/spec/spec_helper.rb +36 -0
- data/vendor/extensions/archive/test/fixtures/pages.yml +397 -0
- data/vendor/extensions/archive/test/functional/archive_extension_test.rb +16 -0
- data/vendor/extensions/archive/test/helpers/archive_index_test_helper.rb +37 -0
- data/vendor/extensions/archive/test/test_helper.rb +26 -0
- data/vendor/extensions/archive/test/unit/archive_day_index_page_test.rb +22 -0
- data/vendor/extensions/archive/test/unit/archive_month_index_page_test.rb +22 -0
- data/vendor/extensions/archive/test/unit/archive_page_test.rb +40 -0
- data/vendor/extensions/archive/test/unit/archive_year_index_page_test.rb +22 -0
- data/vendor/extensions/dutch_language_pack/README +3 -0
- data/vendor/extensions/dutch_language_pack/Rakefile +123 -0
- data/vendor/extensions/dutch_language_pack/config/locales/nl.yml +187 -0
- data/vendor/extensions/dutch_language_pack/config/locales/nl_available_tags.yml +553 -0
- data/vendor/extensions/dutch_language_pack/dutch_language_pack_extension.rb +9 -0
- data/vendor/extensions/dutch_language_pack/lib/tasks/i18n_nl_extension_tasks.rake +28 -0
- data/vendor/extensions/french_language_pack/README +3 -0
- data/vendor/extensions/french_language_pack/Rakefile +123 -0
- data/vendor/extensions/french_language_pack/config/locales/fr.yml +190 -0
- data/vendor/extensions/french_language_pack/config/locales/fr_available_tags.yml +553 -0
- data/vendor/extensions/french_language_pack/french_language_pack_extension.rb +9 -0
- data/vendor/extensions/french_language_pack/lib/tasks/i18n_fr_extension_tasks.rake +28 -0
- data/vendor/extensions/german_language_pack/README +4 -0
- data/vendor/extensions/german_language_pack/Rakefile +123 -0
- data/vendor/extensions/german_language_pack/config/locales/de.yml +186 -0
- data/vendor/extensions/german_language_pack/config/locales/de_available_tags.yml +624 -0
- data/vendor/extensions/german_language_pack/german_language_pack_extension.rb +9 -0
- data/vendor/extensions/german_language_pack/lib/tasks/i18n_de_extension_tasks.rake +28 -0
- data/vendor/extensions/italian_language_pack/README +3 -0
- data/vendor/extensions/italian_language_pack/Rakefile +123 -0
- data/vendor/extensions/italian_language_pack/config/locales/it.yml +184 -0
- data/vendor/extensions/italian_language_pack/config/locales/it_available_tags.yml +553 -0
- data/vendor/extensions/italian_language_pack/italian_language_pack_extension.rb +8 -0
- data/vendor/extensions/italian_language_pack/lib/tasks/i18n_it_extension_tasks.rake +28 -0
- data/vendor/extensions/japanese_language_pack/README +3 -0
- data/vendor/extensions/japanese_language_pack/Rakefile +123 -0
- data/vendor/extensions/japanese_language_pack/config/locales/ja.yml +184 -0
- data/vendor/extensions/japanese_language_pack/config/locales/ja_available_tags.yml +553 -0
- data/vendor/extensions/japanese_language_pack/japanese_language_pack_extension.rb +9 -0
- data/vendor/extensions/japanese_language_pack/lib/tasks/i18n_ja_extension_tasks.rake +28 -0
- data/vendor/extensions/markdown_filter/README +1 -0
- data/vendor/extensions/markdown_filter/Rakefile +120 -0
- data/vendor/extensions/markdown_filter/lib/markdown_filter.rb +14 -0
- data/vendor/extensions/markdown_filter/lib/markdown_tags.rb +18 -0
- data/vendor/extensions/markdown_filter/lib/tasks/markdown_filter_extension_tasks.rake +28 -0
- data/vendor/extensions/markdown_filter/markdown.html +123 -0
- data/vendor/extensions/markdown_filter/markdown_filter_extension.rb +18 -0
- data/vendor/extensions/markdown_filter/spec/models/markdown_filter_spec.rb +22 -0
- data/vendor/extensions/markdown_filter/spec/spec.opts +6 -0
- data/vendor/extensions/markdown_filter/spec/spec_helper.rb +36 -0
- data/vendor/extensions/markdown_filter/test/test_helper.rb +19 -0
- data/vendor/extensions/markdown_filter/test/unit/markdown_filter_test.rb +18 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/AUTHORS +1 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/CONTRIBUTERS +4 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/COPYING +24 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/ChangeLog +3956 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/GPL +674 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/README +30 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/Rakefile +342 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/VERSION +1 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/benchmark/benchmark.rb +34 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/benchmark/generate_data.rb +112 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/benchmark/historic-jruby-1.4.0.dat +7 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/benchmark/historic-ruby-1.8.6.dat +7 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/benchmark/historic-ruby-1.8.7.dat +7 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/benchmark/historic-ruby-1.9.1p243.dat +7 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/benchmark/historic-ruby-1.9.2dev.dat +7 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/benchmark/mdbasics.text +306 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/benchmark/mdsyntax.text +888 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/benchmark/static-jruby-1.4.0.dat +7 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/benchmark/static-ruby-1.8.6.dat +7 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/benchmark/static-ruby-1.8.7.dat +7 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/benchmark/static-ruby-1.9.1p243.dat +7 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/benchmark/static-ruby-1.9.2dev.dat +7 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/benchmark/testing.sh +9 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/benchmark/timing.sh +10 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/bin/kramdown +78 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/data/kramdown/document.html +9 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/data/kramdown/document.latex +43 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/doc/default.less.css +510 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/doc/default.template +71 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/doc/documentation.page +72 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/doc/index.page +63 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/doc/installation.page +90 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/doc/links.markdown +6 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/doc/news.feed +10 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/doc/news.page +28 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/doc/quickref.page +564 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/doc/syntax.page +1521 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/doc/tests.page +51 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/doc/virtual +2 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/lib/kramdown.rb +23 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/lib/kramdown/compatibility.rb +34 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/lib/kramdown/converter.rb +41 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/lib/kramdown/converter/base.rb +111 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/lib/kramdown/converter/html.rb +397 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/lib/kramdown/converter/latex.rb +555 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/lib/kramdown/document.rb +164 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/lib/kramdown/error.rb +27 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/lib/kramdown/options.rb +282 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/lib/kramdown/parser.rb +39 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/lib/kramdown/parser/base.rb +95 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/lib/kramdown/parser/html.rb +387 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/lib/kramdown/parser/kramdown.rb +301 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/lib/kramdown/parser/kramdown/abbreviation.rb +65 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/lib/kramdown/parser/kramdown/attribute_list.rb +103 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/lib/kramdown/parser/kramdown/autolink.rb +47 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/lib/kramdown/parser/kramdown/blank_line.rb +43 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/lib/kramdown/parser/kramdown/blockquote.rb +42 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/lib/kramdown/parser/kramdown/codeblock.rb +58 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/lib/kramdown/parser/kramdown/codespan.rb +57 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/lib/kramdown/parser/kramdown/emphasis.rb +70 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/lib/kramdown/parser/kramdown/eob.rb +39 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/lib/kramdown/parser/kramdown/escaped_chars.rb +38 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/lib/kramdown/parser/kramdown/extension.rb +101 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/lib/kramdown/parser/kramdown/footnote.rb +73 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/lib/kramdown/parser/kramdown/header.rb +66 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/lib/kramdown/parser/kramdown/horizontal_rule.rb +39 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/lib/kramdown/parser/kramdown/html.rb +173 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/lib/kramdown/parser/kramdown/html_entity.rb +38 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/lib/kramdown/parser/kramdown/line_break.rb +38 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/lib/kramdown/parser/kramdown/link.rb +153 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/lib/kramdown/parser/kramdown/list.rb +228 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/lib/kramdown/parser/kramdown/math.rb +53 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/lib/kramdown/parser/kramdown/paragraph.rb +44 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/lib/kramdown/parser/kramdown/smart_quotes.rb +214 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/lib/kramdown/parser/kramdown/table.rb +126 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/lib/kramdown/parser/kramdown/typographic_symbol.rb +52 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/lib/kramdown/version.rb +28 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/man/man1/kramdown.1 +222 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/setup.rb +1585 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/run_tests.rb +59 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/test_files.rb +100 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/01_blank_line/spaces.html +1 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/01_blank_line/spaces.text +3 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/01_blank_line/tabs.html +1 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/01_blank_line/tabs.text +6 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/02_eob/beginning.html +1 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/02_eob/beginning.text +3 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/02_eob/end.html +1 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/02_eob/end.text +3 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/02_eob/middle.html +2 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/02_eob/middle.text +5 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/03_paragraph/indented.html +18 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/03_paragraph/indented.text +19 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/03_paragraph/no_newline_at_end.html +5 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/03_paragraph/no_newline_at_end.text +5 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/03_paragraph/one_para.html +1 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/03_paragraph/one_para.text +1 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/03_paragraph/two_para.html +4 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/03_paragraph/two_para.text +4 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/04_header/atx_header.html +34 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/04_header/atx_header.text +32 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/04_header/atx_header_no_newline_at_end.html +1 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/04_header/atx_header_no_newline_at_end.text +1 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/04_header/setext_header.html +31 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/04_header/setext_header.text +36 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/04_header/setext_header_no_newline_at_end.html +1 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/04_header/setext_header_no_newline_at_end.text +2 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/04_header/with_auto_id_prefix.html +3 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/04_header/with_auto_id_prefix.options +2 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/04_header/with_auto_id_prefix.text +3 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/04_header/with_auto_ids.html +17 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/04_header/with_auto_ids.options +1 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/04_header/with_auto_ids.text +19 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/05_blockquote/indented.html +25 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/05_blockquote/indented.text +14 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/05_blockquote/nested.html +9 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/05_blockquote/nested.text +5 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/05_blockquote/no_newline_at_end.html +4 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/05_blockquote/no_newline_at_end.text +2 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/05_blockquote/only_first_quoted.html +8 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/05_blockquote/only_first_quoted.text +4 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/05_blockquote/with_code_blocks.html +15 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/05_blockquote/with_code_blocks.text +11 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/06_codeblock/error.html +4 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/06_codeblock/error.text +4 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/06_codeblock/no_newline_at_end.html +2 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/06_codeblock/no_newline_at_end.text +1 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/06_codeblock/normal.html +13 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/06_codeblock/normal.text +10 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/06_codeblock/tilde_syntax.html +7 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/06_codeblock/tilde_syntax.text +9 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/06_codeblock/whitespace.html +3 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/06_codeblock/whitespace.text +3 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/06_codeblock/with_blank_line.html +13 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/06_codeblock/with_blank_line.text +12 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/06_codeblock/with_eob_marker.html +6 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/06_codeblock/with_eob_marker.text +5 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/07_horizontal_rule/error.html +7 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/07_horizontal_rule/error.text +7 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/07_horizontal_rule/normal.html +19 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/07_horizontal_rule/normal.text +19 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/07_horizontal_rule/sepspaces.html +3 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/07_horizontal_rule/sepspaces.text +3 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/07_horizontal_rule/septabs.html +3 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/07_horizontal_rule/septabs.text +3 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/08_list/escaping.html +17 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/08_list/escaping.text +17 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/08_list/item_ial.html +9 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/08_list/item_ial.text +5 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/08_list/list_and_hr.html +9 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/08_list/list_and_hr.text +5 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/08_list/list_and_others.html +38 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/08_list/list_and_others.text +25 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/08_list/mixed.html +117 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/08_list/mixed.text +66 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/08_list/nested.html +17 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/08_list/nested.text +7 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/08_list/other_first_element.html +39 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/08_list/other_first_element.text +18 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/08_list/simple_ol.html +19 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/08_list/simple_ol.text +13 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/08_list/simple_ul.html +61 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/08_list/simple_ul.text +43 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/08_list/single_item.html +3 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/08_list/single_item.text +1 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/08_list/special_cases.html +78 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/08_list/special_cases.text +48 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/09_html/comment.html +18 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/09_html/comment.text +15 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/09_html/content_model/deflists.html +6 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/09_html/content_model/deflists.options +1 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/09_html/content_model/deflists.text +6 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/09_html/content_model/tables.html +14 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/09_html/content_model/tables.options +1 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/09_html/content_model/tables.text +14 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/09_html/filtered_html.html +1 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/09_html/filtered_html.options +1 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/09_html/filtered_html.text +1 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/09_html/html_and_codeblocks.html +15 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/09_html/html_and_codeblocks.options +1 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/09_html/html_and_codeblocks.text +13 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/09_html/html_to_native/code.html +10 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/09_html/html_to_native/code.text +9 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/09_html/html_to_native/comment.html +7 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/09_html/html_to_native/comment.text +8 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/09_html/html_to_native/emphasis.html +1 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/09_html/html_to_native/emphasis.text +1 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/09_html/html_to_native/entity.html +1 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/09_html/html_to_native/entity.text +1 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/09_html/html_to_native/header.html +6 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/09_html/html_to_native/header.options +2 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/09_html/html_to_native/header.text +6 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/09_html/html_to_native/list_dl.html +8 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/09_html/html_to_native/list_dl.text +8 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/09_html/html_to_native/list_ol.html +15 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/09_html/html_to_native/list_ol.text +17 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/09_html/html_to_native/list_ul.html +19 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/09_html/html_to_native/list_ul.text +22 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/09_html/html_to_native/options +1 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/09_html/html_to_native/paragraph.html +3 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/09_html/html_to_native/paragraph.text +4 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/09_html/html_to_native/table_normal.html +13 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/09_html/html_to_native/table_normal.text +12 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/09_html/html_to_native/table_simple.html +10 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/09_html/html_to_native/table_simple.text +14 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/09_html/html_to_native/typography.html +1 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/09_html/html_to_native/typography.text +1 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/09_html/invalid_html_1.html +3 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/09_html/invalid_html_1.text +5 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/09_html/invalid_html_2.html +5 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/09_html/invalid_html_2.text +5 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/09_html/markdown_attr.html +38 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/09_html/markdown_attr.text +38 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/09_html/not_parsed.html +24 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/09_html/not_parsed.text +24 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/09_html/parse_as_raw.html +30 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/09_html/parse_as_raw.options +1 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/09_html/parse_as_raw.text +29 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/09_html/parse_as_span.html +12 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/09_html/parse_as_span.options +1 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/09_html/parse_as_span.text +9 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/09_html/parse_block_html.html +21 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/09_html/parse_block_html.options +1 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/09_html/parse_block_html.text +17 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/09_html/processing_instruction.html +13 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/09_html/processing_instruction.text +12 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/09_html/simple.html +62 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/09_html/simple.options +1 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/09_html/simple.text +57 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/10_ald/simple.html +2 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/10_ald/simple.text +8 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/11_ial/auto_id_and_ial.html +1 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/11_ial/auto_id_and_ial.options +1 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/11_ial/auto_id_and_ial.text +2 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/11_ial/simple.html +25 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/11_ial/simple.text +34 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/12_extension/comment.html +5 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/12_extension/comment.text +11 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/12_extension/ignored.html +4 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/12_extension/ignored.text +8 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/12_extension/nomarkdown.html +6 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/12_extension/nomarkdown.text +11 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/12_extension/options.html +24 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/12_extension/options.text +27 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/12_extension/options2.html +10 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/12_extension/options2.text +5 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/12_extension/options3.html +7 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/12_extension/options3.text +7 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/13_definition_list/definition_at_beginning.html +1 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/13_definition_list/definition_at_beginning.text +1 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/13_definition_list/multiple_terms.html +13 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/13_definition_list/multiple_terms.text +10 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/13_definition_list/no_def_list.html +2 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/13_definition_list/no_def_list.text +2 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/13_definition_list/para_wrapping.html +10 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/13_definition_list/para_wrapping.text +6 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/13_definition_list/separated_by_eob.html +8 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/13_definition_list/separated_by_eob.text +5 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/13_definition_list/simple.html +8 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/13_definition_list/simple.text +7 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/13_definition_list/styled_terms.html +4 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/13_definition_list/styled_terms.text +2 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/13_definition_list/too_much_space.html +3 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/13_definition_list/too_much_space.text +4 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/13_definition_list/with_blocks.html +38 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/13_definition_list/with_blocks.text +24 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/14_table/errors.html +3 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/14_table/errors.text +3 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/14_table/footer.html +65 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/14_table/footer.text +25 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/14_table/header.html +103 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/14_table/header.text +32 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/14_table/no_table.html +3 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/14_table/no_table.text +3 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/14_table/simple.html +61 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/14_table/simple.text +16 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/15_math/normal.html +19 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/block/15_math/normal.text +18 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/encoding.html +46 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/encoding.text +28 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/01_link/empty.html +3 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/01_link/empty.text +3 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/01_link/image_in_a.html +5 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/01_link/image_in_a.text +5 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/01_link/imagelinks.html +12 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/01_link/imagelinks.text +14 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/01_link/inline.html +40 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/01_link/inline.text +42 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/01_link/link_defs.html +8 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/01_link/link_defs.text +22 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/01_link/links_with_angle_brackets.html +3 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/01_link/links_with_angle_brackets.text +3 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/01_link/reference.html +32 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/01_link/reference.text +42 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/02_emphasis/empty.html +3 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/02_emphasis/empty.text +3 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/02_emphasis/errors.html +9 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/02_emphasis/errors.text +9 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/02_emphasis/nesting.html +38 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/02_emphasis/nesting.text +33 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/02_emphasis/normal.html +46 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/02_emphasis/normal.text +46 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/03_codespan/empty.html +5 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/03_codespan/empty.text +5 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/03_codespan/errors.html +1 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/03_codespan/errors.text +1 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/03_codespan/normal.html +16 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/03_codespan/normal.text +16 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/04_footnote/definitions.html +14 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/04_footnote/definitions.latex +18 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/04_footnote/definitions.text +18 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/04_footnote/footnote_nr.html +12 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/04_footnote/footnote_nr.latex +6 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/04_footnote/footnote_nr.options +1 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/04_footnote/footnote_nr.text +4 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/04_footnote/markers.html +46 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/04_footnote/markers.latex +32 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/04_footnote/markers.text +26 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/05_html/across_lines.html +1 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/05_html/across_lines.text +2 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/05_html/invalid.html +1 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/05_html/invalid.text +1 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/05_html/link_with_mailto.html +1 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/05_html/link_with_mailto.text +1 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/05_html/markdown_attr.html +6 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/05_html/markdown_attr.text +6 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/05_html/normal.html +28 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/05_html/normal.text +28 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/abbreviations/abbrev.html +8 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/abbreviations/abbrev.text +15 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/abbreviations/abbrev_defs.html +2 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/abbreviations/abbrev_defs.text +5 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/autolinks/url_links.html +12 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/autolinks/url_links.text +12 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/escaped_chars/normal.html +41 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/escaped_chars/normal.text +41 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/extension/comment.html +6 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/extension/comment.text +6 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/extension/ignored.html +1 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/extension/ignored.text +1 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/extension/nomarkdown.html +1 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/extension/nomarkdown.text +1 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/extension/options.html +1 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/extension/options.text +1 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/ial/simple.html +6 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/ial/simple.text +6 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/line_breaks/normal.html +11 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/line_breaks/normal.text +11 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/math/normal.html +5 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/math/normal.text +5 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/text_substitutions/entities.html +4 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/text_substitutions/entities.text +4 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/text_substitutions/greaterthan.html +1 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/text_substitutions/greaterthan.text +1 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/text_substitutions/lowerthan.html +1 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/text_substitutions/lowerthan.text +1 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/text_substitutions/typography.html +18 -0
- data/vendor/extensions/markdown_filter/vendor/kramdown/test/testcases/span/text_substitutions/typography.text +18 -0
- data/vendor/extensions/russian_language_pack/README +3 -0
- data/vendor/extensions/russian_language_pack/Rakefile +123 -0
- data/vendor/extensions/russian_language_pack/config/locales/ru.yml +180 -0
- data/vendor/extensions/russian_language_pack/config/locales/ru_available_tags.yml +553 -0
- data/vendor/extensions/russian_language_pack/lib/tasks/i18n_ru_extension_tasks.rake +28 -0
- data/vendor/extensions/russian_language_pack/russian_language_pack_extension.rb +9 -0
- data/vendor/extensions/smarty_pants_filter/README +1 -0
- data/vendor/extensions/smarty_pants_filter/Rakefile +136 -0
- data/vendor/extensions/smarty_pants_filter/lib/smarty_pants_filter.rb +7 -0
- data/vendor/extensions/smarty_pants_filter/lib/smarty_pants_tags.rb +18 -0
- data/vendor/extensions/smarty_pants_filter/lib/tasks/smarty_pants_filter_extension_tasks.rake +28 -0
- data/vendor/extensions/smarty_pants_filter/smarty_pants_filter_extension.rb +18 -0
- data/vendor/extensions/smarty_pants_filter/smartypants.html +47 -0
- data/vendor/extensions/smarty_pants_filter/spec/models/smarty_pants_filter_spec.rb +19 -0
- data/vendor/extensions/smarty_pants_filter/spec/spec.opts +6 -0
- data/vendor/extensions/smarty_pants_filter/spec/spec_helper.rb +36 -0
- data/vendor/extensions/smarty_pants_filter/test/test_helper.rb +19 -0
- data/vendor/extensions/smarty_pants_filter/test/unit/smarty_pants_filter_test.rb +14 -0
- data/vendor/extensions/smarty_pants_filter/vendor/rubypants/README +114 -0
- data/vendor/extensions/smarty_pants_filter/vendor/rubypants/Rakefile +84 -0
- data/vendor/extensions/smarty_pants_filter/vendor/rubypants/install.rb +9 -0
- data/vendor/extensions/smarty_pants_filter/vendor/rubypants/rubypants.rb +490 -0
- data/vendor/extensions/smarty_pants_filter/vendor/rubypants/test_rubypants.rb +162 -0
- data/vendor/extensions/textile_filter/README +1 -0
- data/vendor/extensions/textile_filter/Rakefile +120 -0
- data/vendor/extensions/textile_filter/lib/tasks/textile_filter_extension_tasks.rake +0 -0
- data/vendor/extensions/textile_filter/lib/textile_filter.rb +6 -0
- data/vendor/extensions/textile_filter/lib/textile_tags.rb +24 -0
- data/vendor/extensions/textile_filter/spec/models/textile_filter_spec.rb +19 -0
- data/vendor/extensions/textile_filter/spec/spec.opts +6 -0
- data/vendor/extensions/textile_filter/spec/spec_helper.rb +36 -0
- data/vendor/extensions/textile_filter/test/test_helper.rb +19 -0
- data/vendor/extensions/textile_filter/test/unit/textile_filter_test.rb +13 -0
- data/vendor/extensions/textile_filter/textile.html +115 -0
- data/vendor/extensions/textile_filter/textile_filter_extension.rb +10 -0
- data/vendor/plugins/haml/README.md +154 -95
- data/vendor/plugins/haml/Rakefile +91 -104
- data/vendor/plugins/haml/TODO +20 -26
- data/vendor/plugins/haml/VERSION +1 -1
- data/vendor/plugins/haml/VERSION_NAME +1 -1
- data/vendor/plugins/haml/bin/css2sass +1 -7
- data/vendor/plugins/haml/doc-src/FAQ.md +4 -16
- data/vendor/plugins/haml/doc-src/HAML_CHANGELOG.md +1 -536
- data/vendor/plugins/haml/doc-src/HAML_REFERENCE.md +16 -176
- data/vendor/plugins/haml/doc-src/SASS_CHANGELOG.md +0 -1159
- data/vendor/plugins/haml/doc-src/SASS_REFERENCE.md +632 -1162
- data/vendor/plugins/haml/extra/haml-mode.el +34 -36
- data/vendor/plugins/haml/extra/sass-mode.el +9 -10
- data/vendor/plugins/haml/haml.gemspec +33 -8
- data/vendor/plugins/haml/lib/haml.rb +2 -5
- data/vendor/plugins/haml/lib/haml/buffer.rb +4 -22
- data/vendor/plugins/haml/lib/haml/engine.rb +4 -13
- data/vendor/plugins/haml/lib/haml/exec.rb +64 -456
- data/vendor/plugins/haml/lib/haml/filters.rb +1 -19
- data/vendor/plugins/haml/lib/haml/helpers.rb +19 -40
- data/vendor/plugins/haml/lib/haml/helpers/action_view_mods.rb +12 -38
- data/vendor/plugins/haml/lib/haml/helpers/xss_mods.rb +2 -13
- data/vendor/plugins/haml/lib/haml/html.rb +49 -209
- data/vendor/plugins/haml/lib/haml/precompiler.rb +89 -130
- data/vendor/plugins/haml/lib/haml/railtie.rb +13 -16
- data/vendor/plugins/haml/lib/haml/template.rb +12 -13
- data/vendor/plugins/haml/lib/haml/template/plugin.rb +6 -18
- data/vendor/plugins/haml/lib/haml/util.rb +44 -483
- data/vendor/plugins/haml/lib/haml/version.rb +2 -25
- data/vendor/plugins/haml/lib/sass.rb +2 -7
- data/vendor/plugins/haml/lib/sass/css.rb +196 -86
- data/vendor/plugins/haml/lib/sass/engine.rb +99 -304
- data/vendor/plugins/haml/lib/sass/environment.rb +3 -67
- data/vendor/plugins/haml/lib/sass/error.rb +25 -166
- data/vendor/plugins/haml/lib/sass/files.rb +38 -43
- data/vendor/plugins/haml/lib/sass/plugin.rb +150 -198
- data/vendor/plugins/haml/lib/sass/plugin/merb.rb +20 -8
- data/vendor/plugins/haml/lib/sass/plugin/rack.rb +20 -2
- data/vendor/plugins/haml/lib/sass/plugin/rails.rb +9 -16
- data/vendor/plugins/haml/lib/sass/repl.rb +1 -1
- data/vendor/plugins/haml/lib/sass/script.rb +31 -32
- data/vendor/plugins/haml/lib/sass/script/bool.rb +1 -2
- data/vendor/plugins/haml/lib/sass/script/color.rb +26 -295
- data/vendor/plugins/haml/lib/sass/script/funcall.rb +6 -33
- data/vendor/plugins/haml/lib/sass/script/functions.rb +33 -637
- data/vendor/plugins/haml/lib/sass/script/lexer.rb +57 -200
- data/vendor/plugins/haml/lib/sass/script/literal.rb +10 -69
- data/vendor/plugins/haml/lib/sass/script/node.rb +1 -99
- data/vendor/plugins/haml/lib/sass/script/number.rb +24 -64
- data/vendor/plugins/haml/lib/sass/script/operation.rb +3 -53
- data/vendor/plugins/haml/lib/sass/script/parser.rb +50 -229
- data/vendor/plugins/haml/lib/sass/script/string.rb +2 -57
- data/vendor/plugins/haml/lib/sass/script/unary_operation.rb +2 -25
- data/vendor/plugins/haml/lib/sass/script/variable.rb +5 -22
- data/vendor/plugins/haml/lib/sass/tree/comment_node.rb +27 -71
- data/vendor/plugins/haml/lib/sass/tree/debug_node.rb +2 -8
- data/vendor/plugins/haml/lib/sass/tree/directive_node.rb +37 -44
- data/vendor/plugins/haml/lib/sass/tree/for_node.rb +0 -19
- data/vendor/plugins/haml/lib/sass/tree/if_node.rb +0 -26
- data/vendor/plugins/haml/lib/sass/tree/import_node.rb +27 -64
- data/vendor/plugins/haml/lib/sass/tree/mixin_def_node.rb +0 -31
- data/vendor/plugins/haml/lib/sass/tree/mixin_node.rb +7 -82
- data/vendor/plugins/haml/lib/sass/tree/node.rb +77 -291
- data/vendor/plugins/haml/lib/sass/tree/prop_node.rb +58 -157
- data/vendor/plugins/haml/lib/sass/tree/rule_node.rb +137 -178
- data/vendor/plugins/haml/lib/sass/tree/variable_node.rb +5 -10
- data/vendor/plugins/haml/lib/sass/tree/while_node.rb +0 -17
- data/vendor/plugins/haml/test/benchmark.rb +5 -5
- data/vendor/plugins/haml/test/haml/engine_test.rb +19 -530
- data/vendor/plugins/haml/test/haml/helper_test.rb +7 -124
- data/vendor/plugins/haml/test/haml/html2haml_test.rb +66 -250
- data/vendor/plugins/haml/test/haml/results/filters.xhtml +1 -1
- data/vendor/plugins/haml/test/haml/results/helpers.xhtml +23 -0
- data/vendor/plugins/haml/test/haml/results/just_stuff.xhtml +0 -2
- data/vendor/plugins/haml/test/haml/rhtml/_av_partial_1.rhtml +12 -0
- data/vendor/plugins/haml/test/haml/rhtml/_av_partial_2.rhtml +8 -0
- data/vendor/plugins/haml/test/haml/rhtml/action_view.rhtml +62 -0
- data/vendor/plugins/haml/test/haml/rhtml/standard.rhtml +54 -0
- data/vendor/plugins/haml/test/haml/template_test.rb +3 -33
- data/vendor/plugins/haml/test/haml/templates/helpers.haml +66 -0
- data/vendor/plugins/haml/test/haml/templates/just_stuff.haml +0 -2
- data/vendor/plugins/haml/test/haml/util_test.rb +0 -161
- data/vendor/plugins/haml/test/linked_rails.rb +1 -22
- data/vendor/plugins/haml/test/sass/css2sass_test.rb +18 -130
- data/vendor/plugins/haml/test/sass/engine_test.rb +138 -1426
- data/vendor/plugins/haml/test/sass/functions_test.rb +47 -429
- data/vendor/plugins/haml/test/sass/more_results/more_import.css +1 -1
- data/vendor/plugins/haml/test/sass/more_templates/more_import.sass +3 -3
- data/vendor/plugins/haml/test/sass/plugin_test.rb +56 -246
- data/vendor/plugins/haml/test/sass/results/compact.css +1 -1
- data/vendor/plugins/haml/test/sass/results/complex.css +6 -5
- data/vendor/plugins/haml/test/sass/results/compressed.css +1 -1
- data/vendor/plugins/haml/test/sass/results/expanded.css +1 -1
- data/vendor/plugins/haml/test/sass/results/import.css +1 -3
- data/vendor/plugins/haml/test/sass/results/mixins.css +12 -12
- data/vendor/plugins/haml/test/sass/results/nested.css +1 -1
- data/vendor/plugins/haml/test/sass/results/parent_ref.css +4 -4
- data/vendor/plugins/haml/test/sass/results/script.css +4 -4
- data/vendor/plugins/haml/test/sass/script_test.rb +78 -281
- data/vendor/plugins/haml/test/sass/templates/alt.sass +2 -2
- data/vendor/plugins/haml/test/sass/templates/basic.sass +1 -1
- data/vendor/plugins/haml/test/sass/templates/bork.sass +2 -0
- data/vendor/plugins/haml/test/sass/templates/complex.sass +2 -0
- data/vendor/plugins/haml/test/sass/templates/import.sass +4 -5
- data/vendor/plugins/haml/test/sass/templates/importee.sass +3 -3
- data/vendor/plugins/haml/test/sass/templates/line_numbers.sass +1 -1
- data/vendor/plugins/haml/test/sass/templates/mixins.sass +2 -2
- data/vendor/plugins/haml/test/sass/templates/parent_ref.sass +2 -2
- data/vendor/plugins/haml/test/sass/templates/script.sass +69 -69
- data/vendor/plugins/haml/test/sass/templates/units.sass +10 -10
- data/vendor/plugins/haml/test/test_helper.rb +4 -52
- data/vendor/plugins/haml/yard/default/fulldoc/html/css/common.sass +1 -5
- metadata +2926 -2487
- data/vendor/rack-cache/CHANGES +0 -128
- data/vendor/rack-cache/COPYING +0 -18
- data/vendor/rack-cache/README +0 -110
- data/vendor/rack-cache/Rakefile +0 -137
- data/vendor/rack-cache/TODO +0 -31
- data/vendor/rack-cache/doc/configuration.markdown +0 -86
- data/vendor/rack-cache/doc/faq.markdown +0 -141
- data/vendor/rack-cache/doc/index.markdown +0 -118
- data/vendor/rack-cache/doc/layout.html.erb +0 -34
- data/vendor/rack-cache/doc/license.markdown +0 -24
- data/vendor/rack-cache/doc/rack-cache.css +0 -362
- data/vendor/rack-cache/doc/server.ru +0 -34
- data/vendor/rack-cache/doc/storage.markdown +0 -162
- data/vendor/rack-cache/example/sinatra/app.rb +0 -25
- data/vendor/rack-cache/example/sinatra/views/index.erb +0 -44
- data/vendor/rack-cache/lib/rack/cache.rb +0 -45
- data/vendor/rack-cache/lib/rack/cache/cachecontrol.rb +0 -193
- data/vendor/rack-cache/lib/rack/cache/context.rb +0 -233
- data/vendor/rack-cache/lib/rack/cache/entitystore.rb +0 -253
- data/vendor/rack-cache/lib/rack/cache/key.rb +0 -52
- data/vendor/rack-cache/lib/rack/cache/metastore.rb +0 -328
- data/vendor/rack-cache/lib/rack/cache/options.rb +0 -150
- data/vendor/rack-cache/lib/rack/cache/request.rb +0 -33
- data/vendor/rack-cache/lib/rack/cache/response.rb +0 -267
- data/vendor/rack-cache/lib/rack/cache/storage.rb +0 -49
- data/vendor/rack-cache/rack-cache.gemspec +0 -69
- data/vendor/rack-cache/test/cache_test.rb +0 -38
- data/vendor/rack-cache/test/cachecontrol_test.rb +0 -139
- data/vendor/rack-cache/test/context_test.rb +0 -727
- data/vendor/rack-cache/test/entitystore_test.rb +0 -189
- data/vendor/rack-cache/test/key_test.rb +0 -50
- data/vendor/rack-cache/test/metastore_test.rb +0 -263
- data/vendor/rack-cache/test/options_test.rb +0 -78
- data/vendor/rack-cache/test/pony.jpg +0 -0
- data/vendor/rack-cache/test/request_test.rb +0 -19
- data/vendor/rack-cache/test/response_test.rb +0 -178
- data/vendor/rack-cache/test/spec_setup.rb +0 -202
- data/vendor/rack-cache/test/storage_test.rb +0 -94
@@ -1,21 +1,18 @@
|
|
1
|
-
|
2
|
-
|
3
|
-
|
4
|
-
|
5
|
-
ERROR
|
6
|
-
end
|
1
|
+
# This file is here to integrate with Rails 3,
|
2
|
+
# since there's no better way to do so as of 14 March 2010.
|
3
|
+
# Yehuda promises there will be soon,
|
4
|
+
# and once there is we should switch to that.
|
7
5
|
|
8
|
-
# Rails 3.0.0.beta.2+
|
9
6
|
if defined?(ActiveSupport) && Haml::Util.has?(:public_method, ActiveSupport, :on_load)
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
7
|
+
# Rails 3.0.0.beta.2+
|
8
|
+
ActiveSupport.on_load(:action_view) {Haml.init_rails(binding)}
|
9
|
+
elsif defined?(Rails::Railtie)
|
10
|
+
# Rails 3.0.0.beta1
|
11
|
+
module Haml
|
12
|
+
class Railtie < Rails::Railtie
|
13
|
+
initializer :haml do
|
14
|
+
Haml.init_rails(binding)
|
15
|
+
end
|
19
16
|
end
|
20
17
|
end
|
21
18
|
end
|
@@ -1,16 +1,19 @@
|
|
1
|
-
require 'haml/template/options'
|
2
1
|
require 'haml/engine'
|
3
2
|
require 'haml/helpers/action_view_mods'
|
4
3
|
require 'haml/helpers/action_view_extensions'
|
5
4
|
|
6
|
-
if defined?(ActionPack::VERSION::STRING) &&
|
7
|
-
ActionPack::VERSION::STRING == "2.3.6"
|
8
|
-
raise "Haml does not support Rails 2.3.6. Please upgrade to 2.3.7 or later."
|
9
|
-
end
|
10
|
-
|
11
5
|
module Haml
|
12
6
|
# The class that keeps track of the global options for Haml within Rails.
|
13
7
|
module Template
|
8
|
+
extend self
|
9
|
+
|
10
|
+
@options = {}
|
11
|
+
# The options hash for Haml when used within Rails.
|
12
|
+
# See {file:HAML_REFERENCE.md#haml_options the Haml options documentation}.
|
13
|
+
#
|
14
|
+
# @return [{Symbol => Object}]
|
15
|
+
attr_accessor :options
|
16
|
+
|
14
17
|
# Enables integration with the Rails 2.2.5+ XSS protection,
|
15
18
|
# if it's available and enabled.
|
16
19
|
#
|
@@ -42,12 +45,8 @@ module Haml
|
|
42
45
|
end
|
43
46
|
end
|
44
47
|
|
45
|
-
|
46
|
-
Haml::Template.options[:ugly]
|
47
|
-
end
|
48
|
-
|
49
|
-
if Haml::Util.ap_geq_3?
|
50
|
-
Haml::Template.options[:format] ||= :html5
|
48
|
+
if Haml::Util.rails_env == "production"
|
49
|
+
Haml::Template.options[:ugly] = true
|
51
50
|
end
|
52
51
|
|
53
52
|
# Decide how we want to load Haml into Rails.
|
@@ -88,7 +87,7 @@ if Haml::Util.rails_root
|
|
88
87
|
FileUtils.cp(haml_init_file, rails_init_file) unless FileUtils.cmp(rails_init_file, haml_init_file)
|
89
88
|
end
|
90
89
|
rescue SystemCallError
|
91
|
-
|
90
|
+
warn <<END
|
92
91
|
HAML WARNING:
|
93
92
|
#{rails_init_file} is out of date and couldn't be automatically updated.
|
94
93
|
Please run `haml --rails #{File.expand_path(Haml::Util.rails_root)}' to update it.
|
@@ -2,22 +2,15 @@
|
|
2
2
|
# using the > 2.0.1 template handler API.
|
3
3
|
|
4
4
|
module Haml
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
defined?(ActionView::Template::Handlers) &&
|
12
|
-
defined?(ActionView::Template::Handlers::Compilable))) &&
|
13
|
-
# In Rails 3.1+, we don't need to include Compilable.
|
14
|
-
Haml::Util.av_template_class(:Handlers)::ERB.include?(
|
15
|
-
Haml::Util.av_template_class(:Handlers)::Compilable)
|
5
|
+
class Plugin < Haml::Util.av_template_class(:Handler)
|
6
|
+
if (defined?(ActionView::TemplateHandlers) &&
|
7
|
+
defined?(ActionView::TemplateHandlers::Compilable)) ||
|
8
|
+
(defined?(ActionView::Template) &&
|
9
|
+
defined?(ActionView::Template::Handlers) &&
|
10
|
+
defined?(ActionView::Template::Handlers::Compilable))
|
16
11
|
include Haml::Util.av_template_class(:Handlers)::Compilable
|
17
12
|
end
|
18
13
|
|
19
|
-
def handles_encoding?; true; end
|
20
|
-
|
21
14
|
def compile(template)
|
22
15
|
options = Haml::Template.options.dup
|
23
16
|
|
@@ -34,11 +27,6 @@ module Haml
|
|
34
27
|
Haml::Engine.new(source, options).send(:precompiled_with_ambles, [])
|
35
28
|
end
|
36
29
|
|
37
|
-
# In Rails 3.1+, #call takes the place of #compile
|
38
|
-
def self.call(template)
|
39
|
-
new.compile(template)
|
40
|
-
end
|
41
|
-
|
42
30
|
def cache_fragment(block, name = {}, options = nil)
|
43
31
|
@view.fragment_for(block, name, options) do
|
44
32
|
eval("_hamlout.buffer", block.binding)
|
@@ -2,11 +2,6 @@ require 'erb'
|
|
2
2
|
require 'set'
|
3
3
|
require 'enumerator'
|
4
4
|
require 'stringio'
|
5
|
-
require 'strscan'
|
6
|
-
require 'rbconfig'
|
7
|
-
|
8
|
-
require 'haml/root'
|
9
|
-
require 'haml/util/subset_map'
|
10
5
|
|
11
6
|
module Haml
|
12
7
|
# A module containing various useful functions.
|
@@ -14,7 +9,6 @@ module Haml
|
|
14
9
|
extend self
|
15
10
|
|
16
11
|
# An array of ints representing the Ruby version number.
|
17
|
-
# @api public
|
18
12
|
RUBY_VERSION = ::RUBY_VERSION.split(".").map {|s| s.to_i}
|
19
13
|
|
20
14
|
# Returns the path of a file relative to the Haml root directory.
|
@@ -22,7 +16,7 @@ module Haml
|
|
22
16
|
# @param file [String] The filename relative to the Haml root
|
23
17
|
# @return [String] The filename relative to the the working directory
|
24
18
|
def scope(file)
|
25
|
-
File.join(
|
19
|
+
File.join(File.dirname(File.dirname(File.dirname(File.expand_path(__FILE__)))), file)
|
26
20
|
end
|
27
21
|
|
28
22
|
# Converts an array of `[key, value]` pairs to a hash.
|
@@ -109,17 +103,6 @@ module Haml
|
|
109
103
|
end
|
110
104
|
end
|
111
105
|
|
112
|
-
# Restricts a number to falling within a given range.
|
113
|
-
# Returns the number if it falls within the range,
|
114
|
-
# or the closest value in the range if it doesn't.
|
115
|
-
#
|
116
|
-
# @param value [Numeric]
|
117
|
-
# @param range [Range<Numeric>]
|
118
|
-
# @return [Numeric]
|
119
|
-
def restrict(value, range)
|
120
|
-
[[value, range.first].max, range.last].min
|
121
|
-
end
|
122
|
-
|
123
106
|
# Concatenates all strings that are adjacent in an array,
|
124
107
|
# while leaving other elements as they are.
|
125
108
|
# For example:
|
@@ -130,13 +113,9 @@ module Haml
|
|
130
113
|
# @param enum [Enumerable]
|
131
114
|
# @return [Array] The enumerable with strings merged
|
132
115
|
def merge_adjacent_strings(enum)
|
133
|
-
enum.inject([]) do |a, e|
|
134
|
-
if e.is_a?(String)
|
135
|
-
|
136
|
-
a.last << e
|
137
|
-
else
|
138
|
-
a << e.dup
|
139
|
-
end
|
116
|
+
e = enum.inject([]) do |a, e|
|
117
|
+
if e.is_a?(String) && a.last.is_a?(String)
|
118
|
+
a.last << e
|
140
119
|
else
|
141
120
|
a << e
|
142
121
|
end
|
@@ -144,131 +123,6 @@ module Haml
|
|
144
123
|
end
|
145
124
|
end
|
146
125
|
|
147
|
-
# Intersperses a value in an enumerable, as would be done with `Array#join`
|
148
|
-
# but without concatenating the array together afterwards.
|
149
|
-
#
|
150
|
-
# @param enum [Enumerable]
|
151
|
-
# @param val
|
152
|
-
# @return [Array]
|
153
|
-
def intersperse(enum, val)
|
154
|
-
enum.inject([]) {|a, e| a << e << val}[0...-1]
|
155
|
-
end
|
156
|
-
|
157
|
-
# Substitutes a sub-array of one array with another sub-array.
|
158
|
-
#
|
159
|
-
# @param ary [Array] The array in which to make the substitution
|
160
|
-
# @param from [Array] The sequence of elements to replace with `to`
|
161
|
-
# @param to [Array] The sequence of elements to replace `from` with
|
162
|
-
def substitute(ary, from, to)
|
163
|
-
res = ary.dup
|
164
|
-
i = 0
|
165
|
-
while i < res.size
|
166
|
-
if res[i...i+from.size] == from
|
167
|
-
res[i...i+from.size] = to
|
168
|
-
end
|
169
|
-
i += 1
|
170
|
-
end
|
171
|
-
res
|
172
|
-
end
|
173
|
-
|
174
|
-
# Destructively strips whitespace from the beginning and end
|
175
|
-
# of the first and last elements, respectively,
|
176
|
-
# in the array (if those elements are strings).
|
177
|
-
#
|
178
|
-
# @param arr [Array]
|
179
|
-
# @return [Array] `arr`
|
180
|
-
def strip_string_array(arr)
|
181
|
-
arr.first.lstrip! if arr.first.is_a?(String)
|
182
|
-
arr.last.rstrip! if arr.last.is_a?(String)
|
183
|
-
arr
|
184
|
-
end
|
185
|
-
|
186
|
-
# Return an array of all possible paths through the given arrays.
|
187
|
-
#
|
188
|
-
# @param arrs [Array<Array>]
|
189
|
-
# @return [Array<Arrays>]
|
190
|
-
#
|
191
|
-
# @example
|
192
|
-
# paths([[1, 2], [3, 4], [5]]) #=>
|
193
|
-
# # [[1, 3, 5],
|
194
|
-
# # [2, 3, 5],
|
195
|
-
# # [1, 4, 5],
|
196
|
-
# # [2, 4, 5]]
|
197
|
-
def paths(arrs)
|
198
|
-
arrs.inject([[]]) do |paths, arr|
|
199
|
-
flatten(arr.map {|e| paths.map {|path| path + [e]}}, 1)
|
200
|
-
end
|
201
|
-
end
|
202
|
-
|
203
|
-
# Computes a single longest common subsequence for `x` and `y`.
|
204
|
-
# If there are more than one longest common subsequences,
|
205
|
-
# the one returned is that which starts first in `x`.
|
206
|
-
#
|
207
|
-
# @param x [Array]
|
208
|
-
# @param y [Array]
|
209
|
-
# @yield [a, b] An optional block to use in place of a check for equality
|
210
|
-
# between elements of `x` and `y`.
|
211
|
-
# @yieldreturn [Object, nil] If the two values register as equal,
|
212
|
-
# this will return the value to use in the LCS array.
|
213
|
-
# @return [Array] The LCS
|
214
|
-
def lcs(x, y, &block)
|
215
|
-
x = [nil, *x]
|
216
|
-
y = [nil, *y]
|
217
|
-
block ||= proc {|a, b| a == b && a}
|
218
|
-
lcs_backtrace(lcs_table(x, y, &block), x, y, x.size-1, y.size-1, &block)
|
219
|
-
end
|
220
|
-
|
221
|
-
# Returns information about the caller of the previous method.
|
222
|
-
#
|
223
|
-
# @param entry [String] An entry in the `#caller` list, or a similarly formatted string
|
224
|
-
# @return [[String, Fixnum, (String, nil)]] An array containing the filename, line, and method name of the caller.
|
225
|
-
# The method name may be nil
|
226
|
-
def caller_info(entry = caller[1])
|
227
|
-
info = entry.scan(/^(.*?):(-?.*?)(?::.*`(.+)')?$/).first
|
228
|
-
info[1] = info[1].to_i
|
229
|
-
# This is added by Rubinius to designate a block, but we don't care about it.
|
230
|
-
info[2].sub!(/ \{\}\Z/, '') if info[2]
|
231
|
-
info
|
232
|
-
end
|
233
|
-
|
234
|
-
# Returns whether one version string represents a more recent version than another.
|
235
|
-
#
|
236
|
-
# @param v1 [String] A version string.
|
237
|
-
# @param v2 [String] Another version string.
|
238
|
-
# @return [Boolean]
|
239
|
-
def version_gt(v1, v2)
|
240
|
-
# Construct an array to make sure the shorter version is padded with nil
|
241
|
-
Array.new([v1.length, v2.length].max).zip(v1.split("."), v2.split(".")) do |_, p1, p2|
|
242
|
-
p1 ||= "0"
|
243
|
-
p2 ||= "0"
|
244
|
-
release1 = p1 =~ /^[0-9]+$/
|
245
|
-
release2 = p2 =~ /^[0-9]+$/
|
246
|
-
if release1 && release2
|
247
|
-
# Integer comparison if both are full releases
|
248
|
-
p1, p2 = p1.to_i, p2.to_i
|
249
|
-
next if p1 == p2
|
250
|
-
return p1 > p2
|
251
|
-
elsif !release1 && !release2
|
252
|
-
# String comparison if both are prereleases
|
253
|
-
next if p1 == p2
|
254
|
-
return p1 > p2
|
255
|
-
else
|
256
|
-
# If only one is a release, that one is newer
|
257
|
-
return release1
|
258
|
-
end
|
259
|
-
end
|
260
|
-
end
|
261
|
-
|
262
|
-
# Returns whether one version string represents the same or a more
|
263
|
-
# recent version than another.
|
264
|
-
#
|
265
|
-
# @param v1 [String] A version string.
|
266
|
-
# @param v2 [String] Another version string.
|
267
|
-
# @return [Boolean]
|
268
|
-
def version_geq(v1, v2)
|
269
|
-
version_gt(v1, v2) || !version_gt(v2, v1)
|
270
|
-
end
|
271
|
-
|
272
126
|
# Silence all output to STDERR within a block.
|
273
127
|
#
|
274
128
|
# @yield A block in which no output will be printed to STDERR
|
@@ -279,26 +133,6 @@ module Haml
|
|
279
133
|
$stderr = the_real_stderr
|
280
134
|
end
|
281
135
|
|
282
|
-
@@silence_warnings = false
|
283
|
-
# Silences all Haml warnings within a block.
|
284
|
-
#
|
285
|
-
# @yield A block in which no Haml warnings will be printed
|
286
|
-
def silence_haml_warnings
|
287
|
-
old_silence_warnings = @@silence_warnings
|
288
|
-
@@silence_warnings = true
|
289
|
-
yield
|
290
|
-
ensure
|
291
|
-
@@silence_warnings = old_silence_warnings
|
292
|
-
end
|
293
|
-
|
294
|
-
# The same as `Kernel#warn`, but is silenced by \{#silence\_haml\_warnings}.
|
295
|
-
#
|
296
|
-
# @param msg [String]
|
297
|
-
def haml_warn(msg)
|
298
|
-
return if @@silence_warnings
|
299
|
-
warn(msg)
|
300
|
-
end
|
301
|
-
|
302
136
|
## Cross Rails Version Compatibility
|
303
137
|
|
304
138
|
# Returns the root of the Rails application,
|
@@ -307,10 +141,7 @@ module Haml
|
|
307
141
|
#
|
308
142
|
# @return [String, nil]
|
309
143
|
def rails_root
|
310
|
-
if defined?(
|
311
|
-
return ::Rails.root.to_s if ::Rails.root
|
312
|
-
raise "ERROR: Rails.root is nil!"
|
313
|
-
end
|
144
|
+
return Rails.root.to_s if defined?(Rails.root)
|
314
145
|
return RAILS_ROOT.to_s if defined?(RAILS_ROOT)
|
315
146
|
return nil
|
316
147
|
end
|
@@ -321,7 +152,7 @@ module Haml
|
|
321
152
|
#
|
322
153
|
# @return [String, nil]
|
323
154
|
def rails_env
|
324
|
-
return
|
155
|
+
return Rails.env.to_s if defined?(Rails.root)
|
325
156
|
return RAILS_ENV.to_s if defined?(RAILS_ENV)
|
326
157
|
return nil
|
327
158
|
end
|
@@ -331,22 +162,48 @@ module Haml
|
|
331
162
|
#
|
332
163
|
# @return [Boolean]
|
333
164
|
def ap_geq_3?
|
334
|
-
|
165
|
+
# The ActionPack module is always loaded automatically in Rails >= 3
|
166
|
+
return false unless defined?(ActionPack) && defined?(ActionPack::VERSION)
|
167
|
+
|
168
|
+
version =
|
169
|
+
if defined?(ActionPack::VERSION::MAJOR)
|
170
|
+
ActionPack::VERSION::MAJOR
|
171
|
+
else
|
172
|
+
# Rails 1.2
|
173
|
+
ActionPack::VERSION::Major
|
174
|
+
end
|
175
|
+
|
176
|
+
# 3.0.0.beta1 acts more like ActionPack 2
|
177
|
+
# for purposes of this method
|
178
|
+
# (checking whether block helpers require = or -).
|
179
|
+
# This extra check can be removed when beta2 is out.
|
180
|
+
version >= 3 &&
|
181
|
+
!(defined?(ActionPack::VERSION::TINY) &&
|
182
|
+
ActionPack::VERSION::TINY == "0.beta")
|
335
183
|
end
|
336
184
|
|
337
185
|
# Returns whether this environment is using ActionPack
|
338
|
-
#
|
186
|
+
# version 3.0.0.beta.3 or greater.
|
339
187
|
#
|
340
|
-
# @param version [String] The string version number to check against.
|
341
|
-
# Should be greater than or equal to Rails 3,
|
342
|
-
# because otherwise ActionPack::VERSION isn't autoloaded
|
343
188
|
# @return [Boolean]
|
344
|
-
def
|
189
|
+
def ap_geq_3_beta_3?
|
345
190
|
# The ActionPack module is always loaded automatically in Rails >= 3
|
346
|
-
return false unless defined?(ActionPack) && defined?(ActionPack::VERSION)
|
347
|
-
defined?(ActionPack::VERSION::STRING)
|
191
|
+
return false unless defined?(ActionPack) && defined?(ActionPack::VERSION)
|
348
192
|
|
349
|
-
|
193
|
+
version =
|
194
|
+
if defined?(ActionPack::VERSION::MAJOR)
|
195
|
+
ActionPack::VERSION::MAJOR
|
196
|
+
else
|
197
|
+
# Rails 1.2
|
198
|
+
ActionPack::VERSION::Major
|
199
|
+
end
|
200
|
+
version >= 3 &&
|
201
|
+
((defined?(ActionPack::VERSION::TINY) &&
|
202
|
+
ActionPack::VERSION::TINY.is_a?(Fixnum) &&
|
203
|
+
ActionPack::VERSION::TINY >= 1) ||
|
204
|
+
(defined?(ActionPack::VERSION::BUILD) &&
|
205
|
+
ActionPack::VERSION::BUILD =~ /beta(\d+)/ &&
|
206
|
+
$1.to_i >= 3))
|
350
207
|
end
|
351
208
|
|
352
209
|
# Returns an ActionView::Template* class.
|
@@ -399,20 +256,8 @@ module Haml
|
|
399
256
|
#
|
400
257
|
# @return [Class]
|
401
258
|
def rails_safe_buffer_class
|
402
|
-
|
403
|
-
|
404
|
-
# but is a deprecated proxy object.
|
405
|
-
return ActiveSupport::SafeBuffer if defined?(ActiveSupport::SafeBuffer)
|
406
|
-
return ActionView::SafeBuffer
|
407
|
-
end
|
408
|
-
|
409
|
-
## Cross-OS Compatibility
|
410
|
-
|
411
|
-
# Whether or not this is running on Windows.
|
412
|
-
#
|
413
|
-
# @return [Boolean]
|
414
|
-
def windows?
|
415
|
-
RbConfig::CONFIG['host_os'] =~ /mswin|windows|mingw/i
|
259
|
+
return ActionView::SafeBuffer if defined?(ActionView::SafeBuffer)
|
260
|
+
ActiveSupport::SafeBuffer
|
416
261
|
end
|
417
262
|
|
418
263
|
## Cross-Ruby-Version Compatibility
|
@@ -424,154 +269,6 @@ module Haml
|
|
424
269
|
Haml::Util::RUBY_VERSION[0] == 1 && Haml::Util::RUBY_VERSION[1] < 9
|
425
270
|
end
|
426
271
|
|
427
|
-
# Whether or not this is running under Ruby 1.8.6 or lower.
|
428
|
-
# Note that lower versions are not officially supported.
|
429
|
-
#
|
430
|
-
# @return [Boolean]
|
431
|
-
def ruby1_8_6?
|
432
|
-
ruby1_8? && Haml::Util::RUBY_VERSION[2] < 7
|
433
|
-
end
|
434
|
-
|
435
|
-
# Checks that the encoding of a string is valid in Ruby 1.9
|
436
|
-
# and cleans up potential encoding gotchas like the UTF-8 BOM.
|
437
|
-
# If it's not, yields an error string describing the invalid character
|
438
|
-
# and the line on which it occurrs.
|
439
|
-
#
|
440
|
-
# @param str [String] The string of which to check the encoding
|
441
|
-
# @yield [msg] A block in which an encoding error can be raised.
|
442
|
-
# Only yields if there is an encoding error
|
443
|
-
# @yieldparam msg [String] The error message to be raised
|
444
|
-
# @return [String] `str`, potentially with encoding gotchas like BOMs removed
|
445
|
-
def check_encoding(str)
|
446
|
-
if ruby1_8?
|
447
|
-
return str.gsub(/\A\xEF\xBB\xBF/, '') # Get rid of the UTF-8 BOM
|
448
|
-
elsif str.valid_encoding?
|
449
|
-
# Get rid of the Unicode BOM if possible
|
450
|
-
if str.encoding.name =~ /^UTF-(8|16|32)(BE|LE)?$/
|
451
|
-
return str.gsub(Regexp.new("\\A\uFEFF".encode(str.encoding.name)), '')
|
452
|
-
else
|
453
|
-
return str
|
454
|
-
end
|
455
|
-
end
|
456
|
-
|
457
|
-
encoding = str.encoding
|
458
|
-
newlines = Regexp.new("\r\n|\r|\n".encode(encoding).force_encoding("binary"))
|
459
|
-
str.force_encoding("binary").split(newlines).each_with_index do |line, i|
|
460
|
-
begin
|
461
|
-
line.encode(encoding)
|
462
|
-
rescue Encoding::UndefinedConversionError => e
|
463
|
-
yield <<MSG.rstrip, i + 1
|
464
|
-
Invalid #{encoding.name} character #{e.error_char.dump}
|
465
|
-
MSG
|
466
|
-
end
|
467
|
-
end
|
468
|
-
return str
|
469
|
-
end
|
470
|
-
|
471
|
-
# Like {\#check\_encoding}, but also checks for a Ruby-style `-# coding:` comment
|
472
|
-
# at the beginning of the template and uses that encoding if it exists.
|
473
|
-
#
|
474
|
-
# The Sass encoding rules are simple.
|
475
|
-
# If a `-# coding:` comment exists,
|
476
|
-
# we assume that that's the original encoding of the document.
|
477
|
-
# Otherwise, we use whatever encoding Ruby has.
|
478
|
-
#
|
479
|
-
# Haml uses the same rules for parsing coding comments as Ruby.
|
480
|
-
# This means that it can understand Emacs-style comments
|
481
|
-
# (e.g. `-*- encoding: "utf-8" -*-`),
|
482
|
-
# and also that it cannot understand non-ASCII-compatible encodings
|
483
|
-
# such as `UTF-16` and `UTF-32`.
|
484
|
-
#
|
485
|
-
# @param str [String] The Haml template of which to check the encoding
|
486
|
-
# @yield [msg] A block in which an encoding error can be raised.
|
487
|
-
# Only yields if there is an encoding error
|
488
|
-
# @yieldparam msg [String] The error message to be raised
|
489
|
-
# @return [String] The original string encoded properly
|
490
|
-
# @raise [ArgumentError] if the document declares an unknown encoding
|
491
|
-
def check_haml_encoding(str, &block)
|
492
|
-
return check_encoding(str, &block) if ruby1_8?
|
493
|
-
str = str.dup if str.frozen?
|
494
|
-
|
495
|
-
bom, encoding = parse_haml_magic_comment(str)
|
496
|
-
if encoding; str.force_encoding(encoding)
|
497
|
-
elsif bom; str.force_encoding("UTF-8")
|
498
|
-
end
|
499
|
-
|
500
|
-
return check_encoding(str, &block)
|
501
|
-
end
|
502
|
-
|
503
|
-
# Like {\#check\_encoding}, but also checks for a `@charset` declaration
|
504
|
-
# at the beginning of the file and uses that encoding if it exists.
|
505
|
-
#
|
506
|
-
# The Sass encoding rules are simple.
|
507
|
-
# If a `@charset` declaration exists,
|
508
|
-
# we assume that that's the original encoding of the document.
|
509
|
-
# Otherwise, we use whatever encoding Ruby has.
|
510
|
-
# Then we convert that to UTF-8 to process internally.
|
511
|
-
# The UTF-8 end result is what's returned by this method.
|
512
|
-
#
|
513
|
-
# @param str [String] The string of which to check the encoding
|
514
|
-
# @yield [msg] A block in which an encoding error can be raised.
|
515
|
-
# Only yields if there is an encoding error
|
516
|
-
# @yieldparam msg [String] The error message to be raised
|
517
|
-
# @return [(String, Encoding)] The original string encoded as UTF-8,
|
518
|
-
# and the source encoding of the string (or `nil` under Ruby 1.8)
|
519
|
-
# @raise [Encoding::UndefinedConversionError] if the source encoding
|
520
|
-
# cannot be converted to UTF-8
|
521
|
-
# @raise [ArgumentError] if the document uses an unknown encoding with `@charset`
|
522
|
-
def check_sass_encoding(str, &block)
|
523
|
-
return check_encoding(str, &block), nil if ruby1_8?
|
524
|
-
# We allow any printable ASCII characters but double quotes in the charset decl
|
525
|
-
bin = str.dup.force_encoding("BINARY")
|
526
|
-
encoding = Haml::Util::ENCODINGS_TO_CHECK.find do |enc|
|
527
|
-
bin =~ Haml::Util::CHARSET_REGEXPS[enc]
|
528
|
-
end
|
529
|
-
charset, bom = $1, $2
|
530
|
-
if charset
|
531
|
-
charset = charset.force_encoding(encoding).encode("UTF-8")
|
532
|
-
if endianness = encoding[/[BL]E$/]
|
533
|
-
begin
|
534
|
-
Encoding.find(charset + endianness)
|
535
|
-
charset << endianness
|
536
|
-
rescue ArgumentError # Encoding charset + endianness doesn't exist
|
537
|
-
end
|
538
|
-
end
|
539
|
-
str.force_encoding(charset)
|
540
|
-
elsif bom
|
541
|
-
str.force_encoding(encoding)
|
542
|
-
end
|
543
|
-
|
544
|
-
str = check_encoding(str, &block)
|
545
|
-
return str.encode("UTF-8"), str.encoding
|
546
|
-
end
|
547
|
-
|
548
|
-
unless ruby1_8?
|
549
|
-
# @private
|
550
|
-
def _enc(string, encoding)
|
551
|
-
string.encode(encoding).force_encoding("BINARY")
|
552
|
-
end
|
553
|
-
|
554
|
-
# We could automatically add in any non-ASCII-compatible encodings here,
|
555
|
-
# but there's not really a good way to do that
|
556
|
-
# without manually checking that each encoding
|
557
|
-
# encodes all ASCII characters properly,
|
558
|
-
# which takes long enough to affect the startup time of the CLI.
|
559
|
-
ENCODINGS_TO_CHECK = %w[UTF-8 UTF-16BE UTF-16LE UTF-32BE UTF-32LE]
|
560
|
-
|
561
|
-
CHARSET_REGEXPS = Hash.new do |h, e|
|
562
|
-
h[e] =
|
563
|
-
begin
|
564
|
-
# /\A(?:\uFEFF)?@charset "(.*?)"|\A(\uFEFF)/
|
565
|
-
Regexp.new(/\A(?:#{_enc("\uFEFF", e)})?#{
|
566
|
-
_enc('@charset "', e)}(.*?)#{_enc('"', e)}|\A(#{
|
567
|
-
_enc("\uFEFF", e)})/)
|
568
|
-
rescue
|
569
|
-
# /\A@charset "(.*?)"/
|
570
|
-
Regexp.new(/\A#{_enc('@charset "', e)}(.*?)#{_enc('"', e)}/)
|
571
|
-
end
|
572
|
-
end
|
573
|
-
end
|
574
|
-
|
575
272
|
# Checks to see if a class has a given method.
|
576
273
|
# For example:
|
577
274
|
#
|
@@ -598,77 +295,6 @@ MSG
|
|
598
295
|
ruby1_8? ? enum.enum_with_index : enum.each_with_index
|
599
296
|
end
|
600
297
|
|
601
|
-
# A version of `Enumerable#enum_cons` that works in Ruby 1.8 and 1.9.
|
602
|
-
#
|
603
|
-
# @param enum [Enumerable] The enumerable to get the enumerator for
|
604
|
-
# @param n [Fixnum] The size of each cons
|
605
|
-
# @return [Enumerator] The consed enumerator
|
606
|
-
def enum_cons(enum, n)
|
607
|
-
ruby1_8? ? enum.enum_cons(n) : enum.each_cons(n)
|
608
|
-
end
|
609
|
-
|
610
|
-
# A version of `Enumerable#enum_slice` that works in Ruby 1.8 and 1.9.
|
611
|
-
#
|
612
|
-
# @param enum [Enumerable] The enumerable to get the enumerator for
|
613
|
-
# @param n [Fixnum] The size of each slice
|
614
|
-
# @return [Enumerator] The consed enumerator
|
615
|
-
def enum_slice(enum, n)
|
616
|
-
ruby1_8? ? enum.enum_slice(n) : enum.each_slice(n)
|
617
|
-
end
|
618
|
-
|
619
|
-
# Returns the ASCII code of the given character.
|
620
|
-
#
|
621
|
-
# @param c [String] All characters but the first are ignored.
|
622
|
-
# @return [Fixnum] The ASCII code of `c`.
|
623
|
-
def ord(c)
|
624
|
-
ruby1_8? ? c[0] : c.ord
|
625
|
-
end
|
626
|
-
|
627
|
-
# Flattens the first `n` nested arrays in a cross-version manner.
|
628
|
-
#
|
629
|
-
# @param arr [Array] The array to flatten
|
630
|
-
# @param n [Fixnum] The number of levels to flatten
|
631
|
-
# @return [Array] The flattened array
|
632
|
-
def flatten(arr, n)
|
633
|
-
return arr.flatten(n) unless ruby1_8_6?
|
634
|
-
return arr if n == 0
|
635
|
-
arr.inject([]) {|res, e| e.is_a?(Array) ? res.concat(flatten(e, n - 1)) : res << e}
|
636
|
-
end
|
637
|
-
|
638
|
-
# Returns the hash code for a set in a cross-version manner.
|
639
|
-
# Aggravatingly, this is order-dependent in Ruby 1.8.6.
|
640
|
-
#
|
641
|
-
# @param set [Set]
|
642
|
-
# @return [Fixnum] The order-independent hashcode of `set`
|
643
|
-
def set_hash(set)
|
644
|
-
return set.hash unless ruby1_8_6?
|
645
|
-
set.map {|e| e.hash}.uniq.sort.hash
|
646
|
-
end
|
647
|
-
|
648
|
-
# Tests the hash-equality of two sets in a cross-version manner.
|
649
|
-
# Aggravatingly, this is order-dependent in Ruby 1.8.6.
|
650
|
-
#
|
651
|
-
# @param set1 [Set]
|
652
|
-
# @param set2 [Set]
|
653
|
-
# @return [Boolean] Whether or not the sets are hashcode equal
|
654
|
-
def set_eql?(set1, set2)
|
655
|
-
return set1.eql?(set2) unless ruby1_8_6?
|
656
|
-
set1.to_a.uniq.sort_by {|e| e.hash}.eql?(set2.to_a.uniq.sort_by {|e| e.hash})
|
657
|
-
end
|
658
|
-
|
659
|
-
# Like `Object#inspect`, but preserves non-ASCII characters rather than escaping them under Ruby 1.9.2.
|
660
|
-
# This is necessary so that the precompiled Haml template can be `#encode`d into `@options[:encoding]`
|
661
|
-
# before being evaluated.
|
662
|
-
#
|
663
|
-
# @param obj {Object}
|
664
|
-
# @return {String}
|
665
|
-
def inspect_obj(obj)
|
666
|
-
return obj.inspect unless version_geq(::RUBY_VERSION, "1.9.2")
|
667
|
-
return ':' + inspect_obj(obj.to_s) if obj.is_a?(Symbol)
|
668
|
-
return obj.inspect unless obj.is_a?(String)
|
669
|
-
'"' + obj.gsub(/[\x00-\x7F]+/) {|s| s.inspect[1...-1]} + '"'
|
670
|
-
end
|
671
|
-
|
672
298
|
## Static Method Stuff
|
673
299
|
|
674
300
|
# The context in which the ERB for \{#def\_static\_method} will be run.
|
@@ -722,10 +348,9 @@ MSG
|
|
722
348
|
# @param erb [String] The template for the method code
|
723
349
|
def def_static_method(klass, name, args, *vars)
|
724
350
|
erb = vars.pop
|
725
|
-
info = caller_info
|
726
351
|
powerset(vars).each do |set|
|
727
352
|
context = StaticConditionalContext.new(set).instance_eval {binding}
|
728
|
-
klass.class_eval(<<METHOD
|
353
|
+
klass.class_eval(<<METHOD)
|
729
354
|
def #{static_method_name(name, *vars.map {|v| set.include?(v)})}(#{args.join(', ')})
|
730
355
|
#{ERB.new(erb).result(context)}
|
731
356
|
end
|
@@ -741,69 +366,5 @@ METHOD
|
|
741
366
|
def static_method_name(name, *vars)
|
742
367
|
"#{name}_#{vars.map {|v| !!v}.join('_')}"
|
743
368
|
end
|
744
|
-
|
745
|
-
private
|
746
|
-
|
747
|
-
# Calculates the memoization table for the Least Common Subsequence algorithm.
|
748
|
-
# Algorithm from [Wikipedia](http://en.wikipedia.org/wiki/Longest_common_subsequence_problem#Computing_the_length_of_the_LCS)
|
749
|
-
def lcs_table(x, y)
|
750
|
-
c = Array.new(x.size) {[]}
|
751
|
-
x.size.times {|i| c[i][0] = 0}
|
752
|
-
y.size.times {|j| c[0][j] = 0}
|
753
|
-
(1...x.size).each do |i|
|
754
|
-
(1...y.size).each do |j|
|
755
|
-
c[i][j] =
|
756
|
-
if yield x[i], y[j]
|
757
|
-
c[i-1][j-1] + 1
|
758
|
-
else
|
759
|
-
[c[i][j-1], c[i-1][j]].max
|
760
|
-
end
|
761
|
-
end
|
762
|
-
end
|
763
|
-
return c
|
764
|
-
end
|
765
|
-
|
766
|
-
# Computes a single longest common subsequence for arrays x and y.
|
767
|
-
# Algorithm from [Wikipedia](http://en.wikipedia.org/wiki/Longest_common_subsequence_problem#Reading_out_an_LCS)
|
768
|
-
def lcs_backtrace(c, x, y, i, j, &block)
|
769
|
-
return [] if i == 0 || j == 0
|
770
|
-
if v = yield(x[i], y[j])
|
771
|
-
return lcs_backtrace(c, x, y, i-1, j-1, &block) << v
|
772
|
-
end
|
773
|
-
|
774
|
-
return lcs_backtrace(c, x, y, i, j-1, &block) if c[i][j-1] > c[i-1][j]
|
775
|
-
return lcs_backtrace(c, x, y, i-1, j, &block)
|
776
|
-
end
|
777
|
-
|
778
|
-
# Parses a magic comment at the beginning of a Haml file.
|
779
|
-
# The parsing rules are basically the same as Ruby's.
|
780
|
-
#
|
781
|
-
# @return [(Boolean, String or nil)]
|
782
|
-
# Whether the document begins with a UTF-8 BOM,
|
783
|
-
# and the declared encoding of the document (or nil if none is declared)
|
784
|
-
def parse_haml_magic_comment(str)
|
785
|
-
scanner = StringScanner.new(str.dup.force_encoding("BINARY"))
|
786
|
-
bom = scanner.scan(/\xEF\xBB\xBF/n)
|
787
|
-
return bom unless scanner.scan(/-\s*#\s*/n)
|
788
|
-
if coding = try_parse_haml_emacs_magic_comment(scanner)
|
789
|
-
return bom, coding
|
790
|
-
end
|
791
|
-
|
792
|
-
return bom unless scanner.scan(/.*?coding[=:]\s*([\w-]+)/in)
|
793
|
-
return bom, scanner[1]
|
794
|
-
end
|
795
|
-
|
796
|
-
def try_parse_haml_emacs_magic_comment(scanner)
|
797
|
-
pos = scanner.pos
|
798
|
-
return unless scanner.scan(/.*?-\*-\s*/n)
|
799
|
-
# From Ruby's parse.y
|
800
|
-
return unless scanner.scan(/([^\s'":;]+)\s*:\s*("(?:\\.|[^"])*"|[^"\s;]+?)[\s;]*-\*-/n)
|
801
|
-
name, val = scanner[1], scanner[2]
|
802
|
-
return unless name =~ /(en)?coding/in
|
803
|
-
val = $1 if val =~ /^"(.*)"$/n
|
804
|
-
return val
|
805
|
-
ensure
|
806
|
-
scanner.pos = pos
|
807
|
-
end
|
808
369
|
end
|
809
370
|
end
|