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
@@ -3,110 +3,12 @@ module Sass::Script
|
|
3
3
|
#
|
4
4
|
# Use \{#perform} to evaluate a parse tree.
|
5
5
|
class Node
|
6
|
-
# The options hash for this node.
|
7
|
-
#
|
8
|
-
# @return [{Symbol => Object}]
|
9
|
-
attr_reader :options
|
10
|
-
|
11
|
-
# The context in which this node was parsed,
|
12
|
-
# which determines how some operations are performed.
|
13
|
-
#
|
14
|
-
# Can be `:equals`, which means it's part of a `$var = val` or `prop = val` assignment,
|
15
|
-
# or `:default`, which means it's anywhere else
|
16
|
-
# (including `$var: val` and `prop: val` assignments,
|
17
|
-
# `#{}`-interpolations,
|
18
|
-
# and other script contexts such as `@if` conditions).
|
19
|
-
#
|
20
|
-
# @return [Symbol]
|
21
|
-
attr_reader :context
|
22
|
-
|
23
|
-
# The line of the document on which this node appeared.
|
24
|
-
#
|
25
|
-
# @return [Fixnum]
|
26
|
-
attr_accessor :line
|
27
|
-
|
28
|
-
# Sets the options hash for this node,
|
29
|
-
# as well as for all child nodes.
|
30
|
-
# See {file:SASS_REFERENCE.md#sass_options the Sass options documentation}.
|
31
|
-
#
|
32
|
-
# @param options [{Symbol => Object}] The options
|
33
|
-
def options=(options)
|
34
|
-
@options = options
|
35
|
-
children.each {|c| c.options = options}
|
36
|
-
end
|
37
|
-
|
38
|
-
# Sets the context for this node,
|
39
|
-
# as well as for all child nodes.
|
40
|
-
#
|
41
|
-
# @param context [Symbol]
|
42
|
-
# @see #context
|
43
|
-
def context=(context)
|
44
|
-
@context = context
|
45
|
-
children.each {|c| c.context = context}
|
46
|
-
end
|
47
|
-
|
48
|
-
# Creates a new script node.
|
49
|
-
def initialize
|
50
|
-
@context = :default
|
51
|
-
end
|
52
|
-
|
53
6
|
# Evaluates the node.
|
54
7
|
#
|
55
|
-
# \{#perform} shouldn't be overridden directly;
|
56
|
-
# instead, override \{#\_perform}.
|
57
|
-
#
|
58
8
|
# @param environment [Sass::Environment] The environment in which to evaluate the SassScript
|
59
9
|
# @return [Literal] The SassScript object that is the value of the SassScript
|
60
10
|
def perform(environment)
|
61
|
-
|
62
|
-
rescue Sass::SyntaxError => e
|
63
|
-
e.modify_backtrace(:line => line)
|
64
|
-
raise e
|
65
|
-
end
|
66
|
-
|
67
|
-
# Returns all child nodes of this node.
|
68
|
-
#
|
69
|
-
# @return [Array<Node>]
|
70
|
-
def children
|
71
|
-
raise NotImplementedError.new("All subclasses of Sass::Script::Node must override #children.")
|
72
|
-
end
|
73
|
-
|
74
|
-
# Returns the text of this SassScript expression.
|
75
|
-
#
|
76
|
-
# @return [String]
|
77
|
-
def to_sass(opts = {})
|
78
|
-
raise NotImplementedError.new("All subclasses of Sass::Script::Node must override #to_sass.")
|
79
|
-
end
|
80
|
-
|
81
|
-
protected
|
82
|
-
|
83
|
-
# Converts underscores to dashes if the :dasherize option is set.
|
84
|
-
def dasherize(s, opts)
|
85
|
-
if opts[:dasherize]
|
86
|
-
s.gsub(/_/,'-')
|
87
|
-
else
|
88
|
-
s
|
89
|
-
end
|
90
|
-
end
|
91
|
-
|
92
|
-
# Evaluates this node.
|
93
|
-
# Note that all {Literal} objects created within this method
|
94
|
-
# should have their \{#options} attribute set, probably via \{#opts}.
|
95
|
-
#
|
96
|
-
# @param environment [Sass::Environment] The environment in which to evaluate the SassScript
|
97
|
-
# @return [Literal] The SassScript object that is the value of the SassScript
|
98
|
-
# @see #perform
|
99
|
-
def _perform(environment)
|
100
|
-
raise NotImplementedError.new("All subclasses of Sass::Script::Node must override #_perform.")
|
101
|
-
end
|
102
|
-
|
103
|
-
# Sets the \{#options} field on the given literal and returns it
|
104
|
-
#
|
105
|
-
# @param literal [Literal]
|
106
|
-
# @return [Literal]
|
107
|
-
def opts(literal)
|
108
|
-
literal.options = options
|
109
|
-
literal
|
11
|
+
raise NotImplementedError.new("All subclasses of Sass::Script::Node must override #perform.")
|
110
12
|
end
|
111
13
|
end
|
112
14
|
end
|
@@ -25,20 +25,9 @@ module Sass::Script
|
|
25
25
|
# @return [Array<String>]
|
26
26
|
attr_reader :denominator_units
|
27
27
|
|
28
|
-
# The original representation of this number.
|
29
|
-
# For example, although the result of `1px/2px` is `0.5`,
|
30
|
-
# the value of `#original` is `"1px/2px"`.
|
31
|
-
#
|
32
|
-
# This is only non-nil when the original value should be used as the CSS value,
|
33
|
-
# as in `font: 1px/2px`.
|
34
|
-
#
|
35
|
-
# @return [Boolean, nil]
|
36
|
-
attr_accessor :original
|
37
|
-
|
38
28
|
# The precision with which numbers will be printed to CSS files.
|
39
29
|
# For example, if this is `1000.0`,
|
40
30
|
# `3.1415926` will be printed as `3.142`.
|
41
|
-
# @api public
|
42
31
|
PRECISION = 1000.0
|
43
32
|
|
44
33
|
# @param value [Numeric] The value of the number
|
@@ -76,7 +65,7 @@ module Sass::Script
|
|
76
65
|
end
|
77
66
|
end
|
78
67
|
|
79
|
-
# The SassScript binary `-` operation (e.g.
|
68
|
+
# The SassScript binary `-` operation (e.g. `!a - !b`).
|
80
69
|
# Its functionality depends on the type of its argument:
|
81
70
|
#
|
82
71
|
# {Number}
|
@@ -96,14 +85,7 @@ module Sass::Script
|
|
96
85
|
end
|
97
86
|
end
|
98
87
|
|
99
|
-
# The SassScript unary
|
100
|
-
#
|
101
|
-
# @return [Number] The value of this number
|
102
|
-
def unary_plus
|
103
|
-
self
|
104
|
-
end
|
105
|
-
|
106
|
-
# The SassScript unary `-` operation (e.g. `-$a`).
|
88
|
+
# The SassScript unary `-` operation (e.g. `-!a`).
|
107
89
|
#
|
108
90
|
# @return [Number] The negative value of this number
|
109
91
|
def unary_minus
|
@@ -145,11 +127,7 @@ module Sass::Script
|
|
145
127
|
# @return [Literal] The result of the operation
|
146
128
|
def div(other)
|
147
129
|
if other.is_a? Number
|
148
|
-
|
149
|
-
if self.original && other.original && context != :equals
|
150
|
-
res.original = "#{self.original}/#{other.original}"
|
151
|
-
end
|
152
|
-
res
|
130
|
+
operate(other, :/)
|
153
131
|
else
|
154
132
|
super
|
155
133
|
end
|
@@ -236,7 +214,6 @@ module Sass::Script
|
|
236
214
|
# @raise [Sass::SyntaxError] if this number has units that can't be used in CSS
|
237
215
|
# (e.g. `px*in`)
|
238
216
|
def to_s
|
239
|
-
return original if original
|
240
217
|
raise Sass::SyntaxError.new("#{inspect} isn't a valid CSS value.") unless legal_units?
|
241
218
|
inspect
|
242
219
|
end
|
@@ -247,10 +224,17 @@ module Sass::Script
|
|
247
224
|
# as long as there is only one unit.
|
248
225
|
#
|
249
226
|
# @return [String] The representation
|
250
|
-
def inspect
|
251
|
-
|
227
|
+
def inspect
|
228
|
+
value =
|
229
|
+
if self.value.is_a?(Float) && (self.value.infinite? || self.value.nan?)
|
230
|
+
self.value
|
231
|
+
elsif int?
|
232
|
+
self.value.to_i
|
233
|
+
else
|
234
|
+
(self.value * PRECISION).round / PRECISION
|
235
|
+
end
|
236
|
+
"#{value}#{unit_str}"
|
252
237
|
end
|
253
|
-
alias_method :to_sass, :inspect
|
254
238
|
|
255
239
|
# @return [Fixnum] The integer value of the number
|
256
240
|
# @raise [Sass::SyntaxError] if the number isn't an integer
|
@@ -300,43 +284,8 @@ module Sass::Script
|
|
300
284
|
end, num_units, den_units)
|
301
285
|
end
|
302
286
|
|
303
|
-
# @param other [Number] A number to decide if it can be compared with this number.
|
304
|
-
# @return [Boolean] Whether or not this number can be compared with the other.
|
305
|
-
def comparable_to?(other)
|
306
|
-
begin
|
307
|
-
operate(other, :+)
|
308
|
-
true
|
309
|
-
rescue Sass::UnitConversionError
|
310
|
-
false
|
311
|
-
end
|
312
|
-
end
|
313
|
-
|
314
|
-
# Returns a human readable representation of the units in this number.
|
315
|
-
# For complex units this takes the form of:
|
316
|
-
# numerator_unit1 * numerator_unit2 / denominator_unit1 * denominator_unit2
|
317
|
-
# @return [String] a string that represents the units in this number
|
318
|
-
def unit_str
|
319
|
-
rv = numerator_units.sort.join("*")
|
320
|
-
if denominator_units.any?
|
321
|
-
rv << "/"
|
322
|
-
rv << denominator_units.sort.join("*")
|
323
|
-
end
|
324
|
-
rv
|
325
|
-
end
|
326
|
-
|
327
287
|
private
|
328
288
|
|
329
|
-
# @private
|
330
|
-
def self.round(num)
|
331
|
-
if num.is_a?(Float) && (num.infinite? || num.nan?)
|
332
|
-
num
|
333
|
-
elsif num % 1 == 0.0
|
334
|
-
num.to_i
|
335
|
-
else
|
336
|
-
(num * PRECISION).round / PRECISION
|
337
|
-
end
|
338
|
-
end
|
339
|
-
|
340
289
|
def operate(other, operation)
|
341
290
|
this = self
|
342
291
|
if [:+, :-, :<=, :<, :>, :>=].include?(operation)
|
@@ -379,6 +328,15 @@ module Sass::Script
|
|
379
328
|
end
|
380
329
|
end
|
381
330
|
|
331
|
+
def unit_str
|
332
|
+
rv = numerator_units.join("*")
|
333
|
+
if denominator_units.any?
|
334
|
+
rv << "/"
|
335
|
+
rv << denominator_units.join("*")
|
336
|
+
end
|
337
|
+
rv
|
338
|
+
end
|
339
|
+
|
382
340
|
def normalize!
|
383
341
|
return if unitless?
|
384
342
|
@numerator_units, @denominator_units = sans_common_units(numerator_units, denominator_units)
|
@@ -393,7 +351,9 @@ module Sass::Script
|
|
393
351
|
end
|
394
352
|
|
395
353
|
# A hash of unit names to their index in the conversion table
|
354
|
+
# @private
|
396
355
|
CONVERTABLE_UNITS = {"in" => 0, "cm" => 1, "pc" => 2, "mm" => 3, "pt" => 4}
|
356
|
+
# @private
|
397
357
|
CONVERSION_TABLE = [[ 1, 2.54, 6, 25.4, 72 ], # in
|
398
358
|
[ nil, 1, 2.36220473, 10, 28.3464567], # cm
|
399
359
|
[ nil, nil, 1, 4.23333333, 12 ], # pc
|
@@ -4,17 +4,11 @@ require 'sass/script/number'
|
|
4
4
|
require 'sass/script/color'
|
5
5
|
require 'sass/script/functions'
|
6
6
|
require 'sass/script/unary_operation'
|
7
|
-
require 'sass/script/interpolation'
|
8
|
-
require 'sass/script/string_interpolation'
|
9
7
|
|
10
8
|
module Sass::Script
|
11
9
|
# A SassScript parse node representing a binary operation,
|
12
|
-
# such as
|
10
|
+
# such as `!a + !b` or `"foo" + 1`.
|
13
11
|
class Operation < Node
|
14
|
-
attr_reader :operand1
|
15
|
-
attr_reader :operand2
|
16
|
-
attr_reader :operator
|
17
|
-
|
18
12
|
# @param operand1 [Script::Node] The parse-tree node
|
19
13
|
# for the right-hand side of the operator
|
20
14
|
# @param operand2 [Script::Node] The parse-tree node
|
@@ -25,7 +19,6 @@ module Sass::Script
|
|
25
19
|
@operand1 = operand1
|
26
20
|
@operand2 = operand2
|
27
21
|
@operator = operator
|
28
|
-
super()
|
29
22
|
end
|
30
23
|
|
31
24
|
# @return [String] A human-readable s-expression representation of the operation
|
@@ -33,63 +26,20 @@ module Sass::Script
|
|
33
26
|
"(#{@operator.inspect} #{@operand1.inspect} #{@operand2.inspect})"
|
34
27
|
end
|
35
28
|
|
36
|
-
# @see Node#to_sass
|
37
|
-
def to_sass(opts = {})
|
38
|
-
pred = Sass::Script::Parser.precedence_of(@operator)
|
39
|
-
o1 = operand_to_sass @operand1, :left, opts
|
40
|
-
o2 = operand_to_sass @operand2, :right, opts
|
41
|
-
sep =
|
42
|
-
case @operator
|
43
|
-
when :comma; ", "
|
44
|
-
when :concat; " "
|
45
|
-
else; " #{Lexer::OPERATORS_REVERSE[@operator]} "
|
46
|
-
end
|
47
|
-
"#{o1}#{sep}#{o2}"
|
48
|
-
end
|
49
|
-
|
50
|
-
# Returns the operands for this operation.
|
51
|
-
#
|
52
|
-
# @return [Array<Node>]
|
53
|
-
# @see Node#children
|
54
|
-
def children
|
55
|
-
[@operand1, @operand2]
|
56
|
-
end
|
57
|
-
|
58
|
-
protected
|
59
|
-
|
60
29
|
# Evaluates the operation.
|
61
30
|
#
|
62
31
|
# @param environment [Sass::Environment] The environment in which to evaluate the SassScript
|
63
32
|
# @return [Literal] The SassScript object that is the value of the operation
|
64
33
|
# @raise [Sass::SyntaxError] if the operation is undefined for the operands
|
65
|
-
def
|
34
|
+
def perform(environment)
|
66
35
|
literal1 = @operand1.perform(environment)
|
67
36
|
literal2 = @operand2.perform(environment)
|
68
|
-
|
69
|
-
if @operator == :concat && context == :equals
|
70
|
-
literal1 = Sass::Script::String.new(literal1.value) if literal1.is_a?(Sass::Script::String)
|
71
|
-
literal2 = Sass::Script::String.new(literal2.value) if literal2.is_a?(Sass::Script::String)
|
72
|
-
end
|
73
|
-
|
74
37
|
begin
|
75
|
-
|
38
|
+
literal1.send(@operator, literal2)
|
76
39
|
rescue NoMethodError => e
|
77
40
|
raise e unless e.name.to_s == @operator.to_s
|
78
41
|
raise Sass::SyntaxError.new("Undefined operation: \"#{literal1} #{@operator} #{literal2}\".")
|
79
42
|
end
|
80
43
|
end
|
81
|
-
|
82
|
-
private
|
83
|
-
|
84
|
-
def operand_to_sass(op, side, opts)
|
85
|
-
return op.to_sass(opts) unless op.is_a?(Operation)
|
86
|
-
|
87
|
-
pred = Sass::Script::Parser.precedence_of(@operator)
|
88
|
-
sub_pred = Sass::Script::Parser.precedence_of(op.operator)
|
89
|
-
assoc = Sass::Script::Parser.associative?(@operator)
|
90
|
-
return "(#{op.to_sass(opts)})" if sub_pred < pred ||
|
91
|
-
(side == :right && sub_pred == pred && !assoc)
|
92
|
-
op.to_sass(opts)
|
93
|
-
end
|
94
44
|
end
|
95
45
|
end
|
@@ -5,23 +5,16 @@ module Sass
|
|
5
5
|
# The parser for SassScript.
|
6
6
|
# It parses a string of code into a tree of {Script::Node}s.
|
7
7
|
class Parser
|
8
|
-
# The line number of the parser's current position.
|
9
|
-
#
|
10
|
-
# @return [Fixnum]
|
11
|
-
def line
|
12
|
-
@lexer.line
|
13
|
-
end
|
14
|
-
|
15
8
|
# @param str [String, StringScanner] The source text to parse
|
16
9
|
# @param line [Fixnum] The line on which the SassScript appears.
|
17
10
|
# Used for error reporting
|
18
11
|
# @param offset [Fixnum] The number of characters in on which the SassScript appears.
|
19
12
|
# Used for error reporting
|
20
|
-
# @param
|
21
|
-
#
|
22
|
-
def initialize(str, line, offset,
|
23
|
-
@
|
24
|
-
@lexer =
|
13
|
+
# @param filename [String] The name of the file in which the SassScript appears.
|
14
|
+
# Used for error reporting
|
15
|
+
def initialize(str, line, offset, filename = nil)
|
16
|
+
@filename = filename
|
17
|
+
@lexer = Lexer.new(str, line, offset, filename)
|
25
18
|
end
|
26
19
|
|
27
20
|
# Parses a SassScript expression within an interpolated segment (`#{}`).
|
@@ -34,11 +27,7 @@ module Sass
|
|
34
27
|
def parse_interpolated
|
35
28
|
expr = assert_expr :expr
|
36
29
|
assert_tok :end_interpolation
|
37
|
-
expr.options = @options
|
38
30
|
expr
|
39
|
-
rescue Sass::SyntaxError => e
|
40
|
-
e.modify_backtrace :line => @lexer.line, :filename => @options[:filename]
|
41
|
-
raise e
|
42
31
|
end
|
43
32
|
|
44
33
|
# Parses a SassScript expression.
|
@@ -48,28 +37,7 @@ module Sass
|
|
48
37
|
def parse
|
49
38
|
expr = assert_expr :expr
|
50
39
|
assert_done
|
51
|
-
expr.options = @options
|
52
|
-
expr
|
53
|
-
rescue Sass::SyntaxError => e
|
54
|
-
e.modify_backtrace :line => @lexer.line, :filename => @options[:filename]
|
55
|
-
raise e
|
56
|
-
end
|
57
|
-
|
58
|
-
# Parses a SassScript expression,
|
59
|
-
# ending it when it encounters one of the given identifier tokens.
|
60
|
-
#
|
61
|
-
# @param [#include?(String)] A set of strings that delimit the expression.
|
62
|
-
# @return [Script::Node] The root node of the parse tree
|
63
|
-
# @raise [Sass::SyntaxError] if the expression isn't valid SassScript
|
64
|
-
def parse_until(tokens)
|
65
|
-
@stop_at = tokens
|
66
|
-
expr = assert_expr :expr
|
67
|
-
assert_done
|
68
|
-
expr.options = @options
|
69
40
|
expr
|
70
|
-
rescue Sass::SyntaxError => e
|
71
|
-
e.modify_backtrace :line => @lexer.line, :filename => @options[:filename]
|
72
|
-
raise e
|
73
41
|
end
|
74
42
|
|
75
43
|
# Parses the argument list for a mixin include.
|
@@ -85,11 +53,7 @@ module Sass
|
|
85
53
|
end
|
86
54
|
assert_done
|
87
55
|
|
88
|
-
args.each {|a| a.options = @options}
|
89
56
|
args
|
90
|
-
rescue Sass::SyntaxError => e
|
91
|
-
e.modify_backtrace :line => @lexer.line, :filename => @options[:filename]
|
92
|
-
raise e
|
93
57
|
end
|
94
58
|
|
95
59
|
# Parses the argument list for a mixin definition.
|
@@ -97,17 +61,15 @@ module Sass
|
|
97
61
|
# @return [Array<Script::Node>] The root nodes of the arguments.
|
98
62
|
# @raise [Sass::SyntaxError] if the argument list isn't valid SassScript
|
99
63
|
def parse_mixin_definition_arglist
|
100
|
-
args =
|
101
|
-
assert_done
|
64
|
+
args = []
|
102
65
|
|
103
|
-
|
104
|
-
|
105
|
-
|
66
|
+
if try_tok(:lparen)
|
67
|
+
args = defn_arglist(false) || args
|
68
|
+
assert_tok(:rparen)
|
106
69
|
end
|
70
|
+
assert_done
|
71
|
+
|
107
72
|
args
|
108
|
-
rescue Sass::SyntaxError => e
|
109
|
-
e.modify_backtrace :line => @lexer.line, :filename => @options[:filename]
|
110
|
-
raise e
|
111
73
|
end
|
112
74
|
|
113
75
|
# Parses a SassScript expression.
|
@@ -120,36 +82,7 @@ module Sass
|
|
120
82
|
new(*args).parse
|
121
83
|
end
|
122
84
|
|
123
|
-
PRECEDENCE = [
|
124
|
-
:comma, :single_eq, :concat, :or, :and,
|
125
|
-
[:eq, :neq],
|
126
|
-
[:gt, :gte, :lt, :lte],
|
127
|
-
[:plus, :minus],
|
128
|
-
[:times, :div, :mod],
|
129
|
-
]
|
130
|
-
|
131
|
-
ASSOCIATIVE = [:comma, :concat, :plus, :times]
|
132
|
-
|
133
85
|
class << self
|
134
|
-
# Returns an integer representing the precedence
|
135
|
-
# of the given operator.
|
136
|
-
# A lower integer indicates a looser binding.
|
137
|
-
#
|
138
|
-
# @private
|
139
|
-
def precedence_of(op)
|
140
|
-
PRECEDENCE.each_with_index do |e, i|
|
141
|
-
return i if Array(e).include?(op)
|
142
|
-
end
|
143
|
-
raise "[BUG] Unknown operator #{op}"
|
144
|
-
end
|
145
|
-
|
146
|
-
# Returns whether or not the given operation is associative.
|
147
|
-
#
|
148
|
-
# @private
|
149
|
-
def associative?(op)
|
150
|
-
ASSOCIATIVE.include?(op)
|
151
|
-
end
|
152
|
-
|
153
86
|
private
|
154
87
|
|
155
88
|
# Defines a simple left-associative production.
|
@@ -159,13 +92,9 @@ module Sass
|
|
159
92
|
def production(name, sub, *ops)
|
160
93
|
class_eval <<RUBY
|
161
94
|
def #{name}
|
162
|
-
interp = try_ops_after_interp(#{ops.inspect}, #{name.inspect}) and return interp
|
163
95
|
return unless e = #{sub}
|
164
96
|
while tok = try_tok(#{ops.map {|o| o.inspect}.join(', ')})
|
165
|
-
interp = try_op_before_interp(tok, e) and return interp
|
166
|
-
line = @lexer.line
|
167
97
|
e = Operation.new(e, assert_expr(#{sub.inspect}), tok.type)
|
168
|
-
e.line = line
|
169
98
|
end
|
170
99
|
e
|
171
100
|
end
|
@@ -175,12 +104,8 @@ RUBY
|
|
175
104
|
def unary(op, sub)
|
176
105
|
class_eval <<RUBY
|
177
106
|
def unary_#{op}
|
178
|
-
return #{sub} unless
|
179
|
-
|
180
|
-
line = @lexer.line
|
181
|
-
op = UnaryOperation.new(assert_expr(:unary_#{op}), :#{op})
|
182
|
-
op.line = line
|
183
|
-
op
|
107
|
+
return #{sub} unless try_tok(:#{op})
|
108
|
+
UnaryOperation.new(assert_expr(:unary_#{op}), :#{op})
|
184
109
|
end
|
185
110
|
RUBY
|
186
111
|
end
|
@@ -188,52 +113,12 @@ RUBY
|
|
188
113
|
|
189
114
|
private
|
190
115
|
|
191
|
-
|
192
|
-
def lexer_class; Lexer; end
|
193
|
-
|
194
|
-
production :expr, :interpolation, :comma
|
195
|
-
production :equals, :interpolation, :single_eq
|
196
|
-
|
197
|
-
def try_op_before_interp(op, prev = nil)
|
198
|
-
return unless @lexer.peek && @lexer.peek.type == :begin_interpolation
|
199
|
-
wb = @lexer.whitespace?(op)
|
200
|
-
str = Script::String.new(Lexer::OPERATORS_REVERSE[op.type])
|
201
|
-
str.line = @lexer.line
|
202
|
-
interp = Script::Interpolation.new(prev, str, nil, wb, !:wa, :originally_text)
|
203
|
-
interp.line = @lexer.line
|
204
|
-
interpolation(interp)
|
205
|
-
end
|
206
|
-
|
207
|
-
def try_ops_after_interp(ops, name)
|
208
|
-
return unless @lexer.after_interpolation?
|
209
|
-
return unless op = try_tok(*ops)
|
210
|
-
interp = try_op_before_interp(op) and return interp
|
211
|
-
|
212
|
-
wa = @lexer.whitespace?
|
213
|
-
str = Script::String.new(Lexer::OPERATORS_REVERSE[op.type])
|
214
|
-
str.line = @lexer.line
|
215
|
-
interp = Script::Interpolation.new(nil, str, assert_expr(name), !:wb, wa, :originally_text)
|
216
|
-
interp.line = @lexer.line
|
217
|
-
return interp
|
218
|
-
end
|
219
|
-
|
220
|
-
def interpolation(first = concat)
|
221
|
-
e = first
|
222
|
-
while interp = try_tok(:begin_interpolation)
|
223
|
-
wb = @lexer.whitespace?(interp)
|
224
|
-
line = @lexer.line
|
225
|
-
mid = parse_interpolated
|
226
|
-
wa = @lexer.whitespace?
|
227
|
-
e = Script::Interpolation.new(e, mid, concat, wb, wa)
|
228
|
-
e.line = line
|
229
|
-
end
|
230
|
-
e
|
231
|
-
end
|
116
|
+
production :expr, :concat, :comma
|
232
117
|
|
233
118
|
def concat
|
234
119
|
return unless e = or_expr
|
235
120
|
while sub = or_expr
|
236
|
-
e =
|
121
|
+
e = Operation.new(e, sub, :concat)
|
237
122
|
end
|
238
123
|
e
|
239
124
|
end
|
@@ -243,143 +128,84 @@ RUBY
|
|
243
128
|
production :eq_or_neq, :relational, :eq, :neq
|
244
129
|
production :relational, :plus_or_minus, :gt, :gte, :lt, :lte
|
245
130
|
production :plus_or_minus, :times_div_or_mod, :plus, :minus
|
246
|
-
production :times_div_or_mod, :
|
131
|
+
production :times_div_or_mod, :unary_minus, :times, :div, :mod
|
247
132
|
|
248
|
-
unary :plus, :unary_minus
|
249
133
|
unary :minus, :unary_div
|
250
134
|
unary :div, :unary_not # For strings, so /foo/bar works
|
251
|
-
unary :not, :
|
252
|
-
|
253
|
-
def ident
|
254
|
-
return funcall unless @lexer.peek && @lexer.peek.type == :ident
|
255
|
-
return if @stop_at && @stop_at.include?(@lexer.peek.value)
|
256
|
-
|
257
|
-
name = @lexer.next
|
258
|
-
if color = Color::HTML4_COLORS[name.value.downcase]
|
259
|
-
return node(Color.new(color))
|
260
|
-
end
|
261
|
-
node(Script::String.new(name.value, :identifier))
|
262
|
-
end
|
135
|
+
unary :not, :funcall
|
263
136
|
|
264
137
|
def funcall
|
265
|
-
return
|
266
|
-
|
267
|
-
|
268
|
-
|
138
|
+
return paren unless name = try_tok(:ident)
|
139
|
+
# An identifier without arguments is just a string
|
140
|
+
unless try_tok(:lparen)
|
141
|
+
warn(<<END)
|
142
|
+
DEPRECATION WARNING:
|
143
|
+
On line #{name.line}, character #{name.offset}#{" of '#{@filename}'" if @filename}
|
144
|
+
Implicit strings have been deprecated and will be removed in version 3.0.
|
145
|
+
'#{name.value}' was not quoted. Please add double quotes (e.g. "#{name.value}").
|
146
|
+
END
|
147
|
+
Script::String.new(name.value)
|
148
|
+
else
|
149
|
+
args = arglist || []
|
150
|
+
assert_tok(:rparen)
|
151
|
+
Script::Funcall.new(name.value, args)
|
152
|
+
end
|
269
153
|
end
|
270
154
|
|
271
|
-
def defn_arglist
|
272
|
-
return
|
273
|
-
|
274
|
-
|
275
|
-
|
276
|
-
|
277
|
-
|
278
|
-
c = assert_tok(:const)
|
279
|
-
var = Script::Variable.new(c.value)
|
280
|
-
if tok = (try_tok(:colon) || try_tok(:single_eq))
|
281
|
-
val = assert_expr(:concat)
|
282
|
-
|
283
|
-
if tok.type == :single_eq
|
284
|
-
val.context = :equals
|
285
|
-
val.options = @options
|
286
|
-
Script.equals_warning("mixin argument defaults", "$#{c.value}",
|
287
|
-
val.to_sass, false, line, offset, @options[:filename])
|
288
|
-
end
|
289
|
-
must_have_default = true
|
290
|
-
elsif must_have_default
|
291
|
-
raise SyntaxError.new("Required argument #{var.inspect} must come before any optional arguments.")
|
292
|
-
end
|
293
|
-
res << [var, val]
|
294
|
-
break unless try_tok(:comma)
|
155
|
+
def defn_arglist(must_have_default)
|
156
|
+
return unless c = try_tok(:const)
|
157
|
+
var = Script::Variable.new(c.value)
|
158
|
+
if try_tok(:single_eq)
|
159
|
+
val = assert_expr(:concat)
|
160
|
+
elsif must_have_default
|
161
|
+
raise SyntaxError.new("Required argument #{var.inspect} must come before any optional arguments.", @line)
|
295
162
|
end
|
296
|
-
assert_tok(:rparen)
|
297
|
-
res
|
298
|
-
end
|
299
163
|
|
300
|
-
|
301
|
-
|
302
|
-
return [e] unless try_tok(:comma)
|
303
|
-
[e, *assert_expr(:fn_arglist)]
|
164
|
+
return [[var, val]] unless try_tok(:comma)
|
165
|
+
[[var, val], *defn_arglist(val)]
|
304
166
|
end
|
305
167
|
|
306
168
|
def arglist
|
307
|
-
return unless e =
|
169
|
+
return unless e = concat
|
308
170
|
return [e] unless try_tok(:comma)
|
309
|
-
[e, *
|
310
|
-
end
|
311
|
-
|
312
|
-
def raw
|
313
|
-
return special_fun unless tok = try_tok(:raw)
|
314
|
-
node(Script::String.new(tok.value))
|
315
|
-
end
|
316
|
-
|
317
|
-
def special_fun
|
318
|
-
return paren unless tok = try_tok(:special_fun)
|
319
|
-
first = node(Script::String.new(tok.value.first))
|
320
|
-
Haml::Util.enum_slice(tok.value[1..-1], 2).inject(first) do |l, (i, r)|
|
321
|
-
Script::Interpolation.new(
|
322
|
-
l, i, r && node(Script::String.new(r)),
|
323
|
-
false, false)
|
324
|
-
end
|
171
|
+
[e, *arglist]
|
325
172
|
end
|
326
173
|
|
327
174
|
def paren
|
328
175
|
return variable unless try_tok(:lparen)
|
329
|
-
was_in_parens = @in_parens
|
330
|
-
@in_parens = true
|
331
176
|
e = assert_expr(:expr)
|
332
177
|
assert_tok(:rparen)
|
333
178
|
return e
|
334
|
-
ensure
|
335
|
-
@in_parens = was_in_parens
|
336
179
|
end
|
337
180
|
|
338
181
|
def variable
|
339
182
|
return string unless c = try_tok(:const)
|
340
|
-
|
183
|
+
Variable.new(c.value)
|
341
184
|
end
|
342
185
|
|
343
186
|
def string
|
344
|
-
return
|
187
|
+
return literal unless first = try_tok(:string)
|
345
188
|
return first.value unless try_tok(:begin_interpolation)
|
346
|
-
line = @lexer.line
|
347
189
|
mid = parse_interpolated
|
348
190
|
last = assert_expr(:string)
|
349
|
-
|
350
|
-
interp.line = line
|
351
|
-
interp
|
352
|
-
end
|
353
|
-
|
354
|
-
def number
|
355
|
-
return literal unless tok = try_tok(:number)
|
356
|
-
num = tok.value
|
357
|
-
num.original = num.to_s unless @in_parens
|
358
|
-
num
|
191
|
+
Operation.new(first.value, Operation.new(mid, last, :plus), :plus)
|
359
192
|
end
|
360
193
|
|
361
194
|
def literal
|
362
|
-
(t = try_tok(:color, :bool)) && (return t.value)
|
195
|
+
(t = try_tok(:number, :color, :bool)) && (return t.value)
|
363
196
|
end
|
364
197
|
|
365
198
|
# It would be possible to have unified #assert and #try methods,
|
366
199
|
# but detecting the method/token difference turns out to be quite expensive.
|
367
200
|
|
368
|
-
EXPR_NAMES = {
|
369
|
-
:string => "string",
|
370
|
-
:default => "expression (e.g. 1px, bold)",
|
371
|
-
:arglist => "mixin argument",
|
372
|
-
:fn_arglist => "function argument",
|
373
|
-
}
|
374
|
-
|
375
201
|
def assert_expr(name)
|
376
202
|
(e = send(name)) && (return e)
|
377
|
-
@lexer.
|
203
|
+
raise Sass::SyntaxError.new("Expected expression, was #{@lexer.done? ? 'end of text' : "#{@lexer.peek.type} token"}.")
|
378
204
|
end
|
379
205
|
|
380
206
|
def assert_tok(*names)
|
381
207
|
(t = try_tok(*names)) && (return t)
|
382
|
-
|
208
|
+
raise Sass::SyntaxError.new("Expected #{names.join(' or ')} token, was #{@lexer.done? ? 'end of text' : "#{@lexer.peek.type} token"}.")
|
383
209
|
end
|
384
210
|
|
385
211
|
def try_tok(*names)
|
@@ -389,12 +215,7 @@ RUBY
|
|
389
215
|
|
390
216
|
def assert_done
|
391
217
|
return if @lexer.done?
|
392
|
-
@lexer.
|
393
|
-
end
|
394
|
-
|
395
|
-
def node(node)
|
396
|
-
node.line = @lexer.line
|
397
|
-
node
|
218
|
+
raise Sass::SyntaxError.new("Unexpected #{@lexer.peek.type} token.")
|
398
219
|
end
|
399
220
|
end
|
400
221
|
end
|