middlemac 2.0.0 → 3.1.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +5 -5
- data/.gitattributes +5 -0
- data/.gitignore +6 -0
- data/CHANGELOG.md +44 -10
- data/Gemfile +11 -1
- data/README.md +38 -6
- data/Rakefile +20 -4
- data/documentation_project/.gitignore +1 -1
- data/documentation_project/Contents/Info.plist.erb +5 -3
- data/documentation_project/Contents/Resources/{Base.lproj/assets → SharedGlobalAssets}/_data/globals.yml +0 -0
- data/documentation_project/Contents/Resources/SharedGlobalAssets/_data/locale-list.json +318 -0
- data/documentation_project/Contents/Resources/SharedGlobalAssets/_layouts/layout-apple-modern-aside.haml +19 -0
- data/documentation_project/Contents/Resources/SharedGlobalAssets/_layouts/layout-apple-modern.haml +61 -0
- data/documentation_project/Contents/Resources/SharedGlobalAssets/_layouts/layout-blank.haml +11 -0
- data/documentation_project/Contents/Resources/SharedGlobalAssets/_layouts/layout-hpd.haml +14 -0
- data/documentation_project/Contents/Resources/SharedGlobalAssets/_partials/_yard_middlemac_config.erb +366 -0
- data/documentation_project/Contents/Resources/SharedGlobalAssets/_partials/_yard_middlemac_helpers.erb +897 -0
- data/documentation_project/Contents/Resources/SharedGlobalAssets/_partials/_yard_middlemac_helpers_extended.erb +369 -0
- data/documentation_project/Contents/Resources/{Base.lproj/assets/partials/_yard_pagegroups_resources.erb → SharedGlobalAssets/_partials/_yard_middlemac_resources.erb} +342 -37
- data/documentation_project/Contents/Resources/{Base.lproj/assets/partials/_yard_targets_config.erb → SharedGlobalAssets/_partials/_yard_mmtargets_config.erb} +15 -110
- data/documentation_project/Contents/Resources/{Base.lproj/assets/partials/_yard_targets_helpers.erb → SharedGlobalAssets/_partials/_yard_mmtargets_helpers.erb} +4 -4
- data/documentation_project/Contents/Resources/{Base.lproj/assets/partials/_yard_targets_helpers_extended.erb → SharedGlobalAssets/_partials/_yard_mmtargets_helpers_extended.erb} +6 -2
- data/documentation_project/Contents/Resources/{Base.lproj/assets/partials/_yard_targets_instance.erb → SharedGlobalAssets/_partials/_yard_mmtargets_instance.erb} +1 -1
- data/documentation_project/Contents/Resources/{Base.lproj/assets/partials/_yard_targets_resources.erb → SharedGlobalAssets/_partials/_yard_mmtargets_resources.erb} +2 -2
- data/documentation_project/Contents/Resources/SharedGlobalAssets/convention/icon-webclip-120x120.png +0 -0
- data/documentation_project/Contents/Resources/SharedGlobalAssets/convention/icon-webclip-152x152.png +0 -0
- data/documentation_project/Contents/Resources/SharedGlobalAssets/convention/icon-webclip-57x57.png +0 -0
- data/documentation_project/Contents/Resources/SharedGlobalAssets/convention/icon-webclip-76x76.png +0 -0
- data/documentation_project/Contents/Resources/SharedGlobalAssets/convention/icon-webclip-ipad.png +0 -0
- data/documentation_project/Contents/Resources/SharedGlobalAssets/convention/icon-webclip-ipad_2x.png +0 -0
- data/documentation_project/Contents/Resources/SharedGlobalAssets/convention/icon-webclip-iphone.png +0 -0
- data/documentation_project/Contents/Resources/SharedGlobalAssets/convention/icon-webclip-iphone_2x.png +0 -0
- data/documentation_project/Contents/Resources/{shared → SharedGlobalAssets/convention}/icon_256x256.png +0 -0
- data/documentation_project/Contents/Resources/{shared → SharedGlobalAssets/convention}/icon_256x256@2x.png +0 -0
- data/documentation_project/Contents/Resources/{shared → SharedGlobalAssets/convention}/icon_32x32.png +0 -0
- data/documentation_project/Contents/Resources/{shared → SharedGlobalAssets/convention}/icon_32x32@2x.png +0 -0
- data/documentation_project/Contents/Resources/SharedGlobalAssets/css/apple/apple.css +3831 -0
- data/documentation_project/Contents/Resources/SharedGlobalAssets/css/apple/css/img/L0200_LeftArrow_2x.png +0 -0
- data/documentation_project/Contents/Resources/SharedGlobalAssets/css/apple/css/img/L0201_RightArrow_2x.png +0 -0
- data/documentation_project/Contents/Resources/SharedGlobalAssets/css/apple/css/img/arrow-blue.svg +1 -0
- data/documentation_project/Contents/Resources/SharedGlobalAssets/css/apple/css/img/arrow.svg +1 -0
- data/documentation_project/Contents/Resources/SharedGlobalAssets/css/apple/css/img/ask-siri.svg +1 -0
- data/documentation_project/Contents/Resources/SharedGlobalAssets/css/apple/css/img/button-clear-search.png +0 -0
- data/documentation_project/Contents/Resources/SharedGlobalAssets/css/apple/css/img/button-close-2.png +0 -0
- data/documentation_project/Contents/Resources/SharedGlobalAssets/css/apple/css/img/button-close-learnmore.png +0 -0
- data/documentation_project/Contents/Resources/SharedGlobalAssets/css/apple/css/img/button-close.png +0 -0
- data/documentation_project/Contents/Resources/SharedGlobalAssets/css/apple/css/img/button-search-small.png +0 -0
- data/documentation_project/Contents/Resources/SharedGlobalAssets/css/apple/css/img/button-search.png +0 -0
- data/documentation_project/Contents/Resources/SharedGlobalAssets/css/apple/css/img/button-toc-rtl.png +0 -0
- data/documentation_project/Contents/Resources/SharedGlobalAssets/css/apple/css/img/button-toc-small-rtl.png +0 -0
- data/documentation_project/Contents/Resources/SharedGlobalAssets/css/apple/css/img/button-toc-small.png +0 -0
- data/documentation_project/Contents/Resources/SharedGlobalAssets/css/apple/css/img/button-toc-toggle-rtl.png +0 -0
- data/documentation_project/Contents/Resources/SharedGlobalAssets/css/apple/css/img/button-toc-toggle.png +0 -0
- data/documentation_project/Contents/Resources/SharedGlobalAssets/css/apple/css/img/button-toc.png +0 -0
- data/documentation_project/Contents/Resources/SharedGlobalAssets/css/apple/css/img/changelanguage_icon2x.png +0 -0
- data/documentation_project/Contents/Resources/SharedGlobalAssets/css/apple/css/img/force-click.svg +1 -0
- data/documentation_project/Contents/Resources/SharedGlobalAssets/css/apple/css/img/icon-arrow-2.svg +1 -0
- data/documentation_project/Contents/Resources/SharedGlobalAssets/css/apple/css/img/icon-arrow.png +0 -0
- data/documentation_project/Contents/Resources/SharedGlobalAssets/css/apple/css/img/icon-close.svg +1 -0
- data/documentation_project/Contents/Resources/SharedGlobalAssets/css/apple/css/img/icon-external-link-lg.png +0 -0
- data/documentation_project/Contents/Resources/SharedGlobalAssets/css/apple/css/img/icon-external-link.png +0 -0
- data/documentation_project/Contents/Resources/SharedGlobalAssets/css/apple/css/img/icon-pause.svg +1 -0
- data/documentation_project/Contents/Resources/SharedGlobalAssets/css/apple/css/img/icon-play.svg +1 -0
- data/documentation_project/Contents/Resources/SharedGlobalAssets/css/apple/css/img/icon-replay.svg +1 -0
- data/documentation_project/Contents/Resources/SharedGlobalAssets/css/apple/css/img/icon-warning-black.png +0 -0
- data/documentation_project/Contents/Resources/SharedGlobalAssets/css/apple/css/img/icon-warning-eu.png +0 -0
- data/documentation_project/Contents/Resources/SharedGlobalAssets/css/apple/css/img/icon-warning.png +0 -0
- data/documentation_project/Contents/Resources/SharedGlobalAssets/css/apple/css/img/icon-webclip-120x120.png +0 -0
- data/documentation_project/Contents/Resources/SharedGlobalAssets/css/apple/css/img/icon-webclip-152x152.png +0 -0
- data/documentation_project/Contents/Resources/SharedGlobalAssets/css/apple/css/img/icon-webclip-57x57.png +0 -0
- data/documentation_project/Contents/Resources/SharedGlobalAssets/css/apple/css/img/icon-webclip-76x76.png +0 -0
- data/documentation_project/Contents/Resources/SharedGlobalAssets/css/apple/css/img/icon-webclip-ipad.png +0 -0
- data/documentation_project/Contents/Resources/SharedGlobalAssets/css/apple/css/img/icon-webclip-ipad_2x.png +0 -0
- data/documentation_project/Contents/Resources/SharedGlobalAssets/css/apple/css/img/icon-webclip-iphone.png +0 -0
- data/documentation_project/Contents/Resources/SharedGlobalAssets/css/apple/css/img/icon-webclip-iphone_2x.png +0 -0
- data/documentation_project/Contents/Resources/SharedGlobalAssets/css/apple/css/img/movie-play_2x.png +0 -0
- data/documentation_project/Contents/Resources/SharedGlobalAssets/css/apple/css/img/nav-left.svg +1 -0
- data/documentation_project/Contents/Resources/SharedGlobalAssets/css/apple/css/img/nav-paddle-left.png +0 -0
- data/documentation_project/Contents/Resources/SharedGlobalAssets/css/apple/css/img/nav-paddle-right.png +0 -0
- data/documentation_project/Contents/Resources/SharedGlobalAssets/css/apple/css/img/nav-right.svg +1 -0
- data/documentation_project/Contents/Resources/SharedGlobalAssets/css/apple/css/img/search_image_large.svg +1 -0
- data/documentation_project/Contents/Resources/SharedGlobalAssets/css/apple/css/img/tip.svg +1 -0
- data/documentation_project/Contents/Resources/SharedGlobalAssets/css/apple/css/img/toc_blue_large.svg +1 -0
- data/documentation_project/Contents/Resources/SharedGlobalAssets/css/apple/css/img/toc_large.svg +1 -0
- data/documentation_project/Contents/Resources/{Base.lproj/assets/stylesheets/_github.scss → SharedGlobalAssets/css/middlemac/github.css.scss} +0 -0
- data/documentation_project/Contents/Resources/SharedGlobalAssets/css/middlemac/middlemac.css.scss +129 -0
- data/documentation_project/Contents/Resources/SharedGlobalAssets/css/middlemac/note.svg +19 -0
- data/documentation_project/Contents/Resources/SharedGlobalAssets/css/middlemac/tip.svg +1 -0
- data/documentation_project/Contents/Resources/SharedGlobalAssets/css/middlemac/warning.svg +19 -0
- data/documentation_project/Contents/Resources/SharedGlobalAssets/fonts/_dummy.txt +1 -0
- data/documentation_project/Contents/Resources/{Base.lproj/assets → SharedGlobalAssets}/images/all-sample.png +0 -0
- data/documentation_project/Contents/Resources/{Base.lproj/assets → SharedGlobalAssets}/images/all-sample@2x.png +0 -0
- data/documentation_project/Contents/Resources/{shared → SharedGlobalAssets/images}/free-icon_256x256.png +0 -0
- data/documentation_project/Contents/Resources/{shared → SharedGlobalAssets/images}/free-icon_256x256@2x.png +0 -0
- data/documentation_project/Contents/Resources/{shared → SharedGlobalAssets/images}/free-icon_32x32.png +0 -0
- data/documentation_project/Contents/Resources/{shared → SharedGlobalAssets/images}/free-icon_32x32@2x.png +0 -0
- data/documentation_project/Contents/Resources/{Base.lproj/assets → SharedGlobalAssets}/images/free-middlemac-logo-small.png +0 -0
- data/documentation_project/Contents/Resources/{Base.lproj/assets → SharedGlobalAssets}/images/free-middlemac-logo-small@2x.png +0 -0
- data/documentation_project/Contents/Resources/{Base.lproj/assets → SharedGlobalAssets}/images/free-middlemac-logo.png +0 -0
- data/documentation_project/Contents/Resources/{Base.lproj/assets → SharedGlobalAssets}/images/free-middlemac-logo@2x.png +0 -0
- data/documentation_project/Contents/Resources/{Base.lproj/assets → SharedGlobalAssets}/images/middlemac-logo-small.png +0 -0
- data/documentation_project/Contents/Resources/{Base.lproj/assets → SharedGlobalAssets}/images/middlemac-logo-small@2x.png +0 -0
- data/documentation_project/Contents/Resources/{Base.lproj/assets → SharedGlobalAssets}/images/middlemac-logo.png +0 -0
- data/documentation_project/Contents/Resources/{Base.lproj/assets → SharedGlobalAssets}/images/middlemac-logo@2x.png +0 -0
- data/documentation_project/Contents/Resources/{Base.lproj/assets → SharedGlobalAssets}/images/mm-targets/free-logo-small.png +0 -0
- data/documentation_project/Contents/Resources/{Base.lproj/assets → SharedGlobalAssets}/images/mm-targets/free-logo-small@2x.png +0 -0
- data/documentation_project/Contents/Resources/{Base.lproj/assets → SharedGlobalAssets}/images/mm-targets/free-logo.png +0 -0
- data/documentation_project/Contents/Resources/{Base.lproj/assets → SharedGlobalAssets}/images/mm-targets/free-logo@2x.png +0 -0
- data/documentation_project/Contents/Resources/{Base.lproj/assets → SharedGlobalAssets}/images/mm-targets/pro-logo-small.png +0 -0
- data/documentation_project/Contents/Resources/{Base.lproj/assets → SharedGlobalAssets}/images/mm-targets/pro-logo-small@2x.png +0 -0
- data/documentation_project/Contents/Resources/{Base.lproj/assets → SharedGlobalAssets}/images/mm-targets/pro-logo.png +0 -0
- data/documentation_project/Contents/Resources/{Base.lproj/assets → SharedGlobalAssets}/images/mm-targets/pro-logo@2x.png +0 -0
- data/documentation_project/Contents/Resources/{shared → SharedGlobalAssets/images}/pro-icon_256x256.png +0 -0
- data/documentation_project/Contents/Resources/{shared → SharedGlobalAssets/images}/pro-icon_256x256@2x.png +0 -0
- data/documentation_project/Contents/Resources/{shared → SharedGlobalAssets/images}/pro-icon_32x32.png +0 -0
- data/documentation_project/Contents/Resources/{shared → SharedGlobalAssets/images}/pro-icon_32x32@2x.png +0 -0
- data/documentation_project/Contents/Resources/{Base.lproj/assets → SharedGlobalAssets}/images/pro-middlemac-logo-small.png +0 -0
- data/documentation_project/Contents/Resources/{Base.lproj/assets → SharedGlobalAssets}/images/pro-middlemac-logo-small@2x.png +0 -0
- data/documentation_project/Contents/Resources/{Base.lproj/assets → SharedGlobalAssets}/images/pro-middlemac-logo.png +0 -0
- data/documentation_project/Contents/Resources/{Base.lproj/assets → SharedGlobalAssets}/images/pro-middlemac-logo@2x.png +0 -0
- data/documentation_project/Contents/Resources/SharedGlobalAssets/js/app.5.1.27.js +6295 -0
- data/documentation_project/Contents/Resources/SharedGlobalAssets/js/middlemac-debug.js +20 -0
- data/documentation_project/Contents/Resources/SharedGlobalAssets/js/vendor.js +226 -0
- data/documentation_project/Contents/Resources/en.lproj/010_what_is_middlemac/index.html.md.erb +114 -0
- data/documentation_project/Contents/Resources/en.lproj/020_apple_help_features/index.html.md.erb +241 -0
- data/documentation_project/Contents/Resources/{Base.lproj/020_setup_tutorial/index.html.md.erb → en.lproj/030_get_started/010_set_up_middlemac.html.md.erb} +33 -37
- data/documentation_project/Contents/Resources/en.lproj/030_get_started/020_your_first_help_book.html.md.erb +374 -0
- data/documentation_project/Contents/Resources/en.lproj/030_get_started/030_serve_your_help_book.html.md.erb +97 -0
- data/documentation_project/Contents/Resources/en.lproj/030_get_started/040_build_your_help_book.html.md.erb +56 -0
- data/documentation_project/Contents/Resources/{Base.lproj/030_skills_refresher/10_markdown_skill.html.md.erb → en.lproj/030_get_started/050_about_markdown.html.md.erb} +12 -14
- data/documentation_project/Contents/Resources/{Base.lproj/030_skills_refresher/30_middleman_skill.html.md.erb → en.lproj/030_get_started/060_about_middleman.html.md.erb} +10 -14
- data/documentation_project/Contents/Resources/en.lproj/030_get_started/070_about_ruby.html.md.erb +194 -0
- data/documentation_project/Contents/Resources/en.lproj/030_get_started/aside_frontmatter.html.md.erb +64 -0
- data/documentation_project/Contents/Resources/en.lproj/030_get_started/index.html.md.erb +4 -0
- data/documentation_project/Contents/Resources/en.lproj/040_compose_project/010_setup.html.md.erb +204 -0
- data/documentation_project/Contents/Resources/{Base.lproj/030_skills_refresher/60_filetypes_skill.html.md.erb → en.lproj/040_compose_project/020_filetypes.html.md.erb} +7 -11
- data/documentation_project/Contents/Resources/en.lproj/040_compose_project/030_directory_conventions.html.md.erb +206 -0
- data/documentation_project/Contents/Resources/en.lproj/040_compose_project/040_groups.html.md.erb +96 -0
- data/documentation_project/Contents/Resources/en.lproj/040_compose_project/050_targets_and_features.html.md.erb +220 -0
- data/documentation_project/Contents/Resources/en.lproj/040_compose_project/060_frontmatter.html.md.erb +98 -0
- data/documentation_project/Contents/Resources/{Base.lproj/060_content/100_using_local_data.html.md.erb → en.lproj/040_compose_project/070_local_data.html.md.erb} +22 -9
- data/documentation_project/Contents/Resources/{Base.lproj/060_content/030_helpers.html.md.erb → en.lproj/040_compose_project/080_helpers/010_helpers.html.md.erb} +35 -69
- data/documentation_project/Contents/Resources/en.lproj/040_compose_project/080_helpers/020_markdown_links.html.md.erb +51 -0
- data/documentation_project/Contents/Resources/en.lproj/040_compose_project/080_helpers/030_markdown_images.html.md.erb +52 -0
- data/documentation_project/Contents/Resources/en.lproj/040_compose_project/080_helpers/index.html.md.erb +4 -0
- data/documentation_project/Contents/Resources/en.lproj/040_compose_project/090_partials.html.md.erb +64 -0
- data/documentation_project/Contents/Resources/en.lproj/040_compose_project/100_resources.html.md.erb +36 -0
- data/documentation_project/Contents/Resources/en.lproj/040_compose_project/110_implement_features.html.md.erb +197 -0
- data/documentation_project/Contents/Resources/en.lproj/040_compose_project/120_preview_build.html.md.erb +86 -0
- data/documentation_project/Contents/Resources/en.lproj/040_compose_project/index.html.md.erb +4 -0
- data/documentation_project/Contents/Resources/{Base.lproj/050_structure → en.lproj/040_compose_project}/not_free.html.md.erb +4 -11
- data/documentation_project/Contents/Resources/{Base.lproj/050_structure → en.lproj/040_compose_project}/not_pro.html.md.erb +4 -11
- data/documentation_project/Contents/Resources/en.lproj/100_reference/010_apple_help_books/010_dissect_help_book.html.md.erb +296 -0
- data/documentation_project/Contents/Resources/en.lproj/100_reference/010_apple_help_books/020_dissect_modern_help.html.md.erb +246 -0
- data/documentation_project/Contents/Resources/en.lproj/100_reference/010_apple_help_books/index.html.md.erb +4 -0
- data/documentation_project/Contents/Resources/en.lproj/100_reference/030_backwards_compatibility.html.md.erb +82 -0
- data/documentation_project/Contents/Resources/en.lproj/100_reference/040_directory_reference.html.md.erb +276 -0
- data/documentation_project/Contents/Resources/en.lproj/100_reference/050_xcode_integration.html.md.erb +165 -0
- data/documentation_project/Contents/Resources/{Base.lproj/100_reference/10_cli_ref.html.md.erb → en.lproj/100_reference/060_cli_ref.html.md.erb} +3 -29
- data/documentation_project/Contents/Resources/en.lproj/100_reference/080_frontmatter_reference.html.md.erb +111 -0
- data/documentation_project/Contents/Resources/en.lproj/100_reference/120_api_reference/070_config_ref.html.md.erb +31 -0
- data/documentation_project/Contents/Resources/en.lproj/100_reference/120_api_reference/090_helpers_ref.html.md.erb +20 -0
- data/documentation_project/Contents/Resources/{Base.lproj/100_reference/30_helpers_ext_ref.html.md.erb → en.lproj/100_reference/120_api_reference/091_helpers_ext_ref.html.md.erb} +3 -21
- data/documentation_project/Contents/Resources/{Base.lproj/100_reference/50_resource_ext_ref.html.md.erb → en.lproj/100_reference/120_api_reference/100_resource_ext_ref.html.md.erb} +3 -8
- data/documentation_project/Contents/Resources/en.lproj/100_reference/120_api_reference/index.html.md.erb +4 -0
- data/documentation_project/Contents/Resources/en.lproj/100_reference/index.html.md.erb +4 -0
- data/documentation_project/Contents/Resources/{Base.lproj → en.lproj}/110_acknowledgements/index.html.md.erb +5 -7
- data/documentation_project/Contents/Resources/en.lproj/ExactMatch.plist.erb +15 -0
- data/documentation_project/Contents/Resources/{Base.lproj → en.lproj}/InfoPlist.strings.erb +0 -0
- data/documentation_project/Contents/Resources/en.lproj/asides/aside_description.html.md.erb +21 -0
- data/documentation_project/Contents/Resources/en.lproj/assets/images/apple_help_books_folder_reference.png +0 -0
- data/documentation_project/Contents/Resources/en.lproj/assets/images/apple_help_books_project_membership.png +0 -0
- data/documentation_project/Contents/Resources/en.lproj/assets/images/apple_help_features_aside_example.png +0 -0
- data/documentation_project/Contents/Resources/en.lproj/assets/images/apple_help_features_chapter_heading.png +0 -0
- data/documentation_project/Contents/Resources/en.lproj/assets/images/apple_help_features_copyright_footer.png +0 -0
- data/documentation_project/Contents/Resources/en.lproj/assets/images/apple_help_features_landing_links.png +0 -0
- data/documentation_project/Contents/Resources/en.lproj/assets/images/apple_help_features_language_chooser.png +0 -0
- data/documentation_project/Contents/Resources/en.lproj/assets/images/apple_help_features_navigator.png +0 -0
- data/documentation_project/Contents/Resources/en.lproj/assets/images/apple_help_features_see_also.png +0 -0
- data/documentation_project/Contents/Resources/en.lproj/assets/images/apple_help_features_title_icons.png +0 -0
- data/documentation_project/Contents/Resources/en.lproj/assets/images/apple_help_features_universal.png +0 -0
- data/documentation_project/Contents/Resources/en.lproj/assets/images/get_started_init_contents.png +0 -0
- data/documentation_project/Contents/Resources/en.lproj/assets/images/get_started_init_english.png +0 -0
- data/documentation_project/Contents/Resources/en.lproj/assets/images/xcode_integration_config_sets.png +0 -0
- data/documentation_project/Contents/Resources/en.lproj/assets/images/xcode_integration_plist_definitions.png +0 -0
- data/documentation_project/Contents/Resources/en.lproj/assets/images/xcode_integration_target_dependencies.png +0 -0
- data/documentation_project/Contents/Resources/en.lproj/assets/images/xcode_integration_target_template.png +0 -0
- data/documentation_project/Contents/Resources/en.lproj/assets/images/xcode_integration_tool_configuration.png +0 -0
- data/documentation_project/Contents/Resources/{Base.lproj → en.lproj}/index.html.md.erb +3 -13
- data/documentation_project/Contents/Resources/en.lproj/index_hpd.html.md.erb +4 -0
- data/documentation_project/Contents/Resources/en.lproj/locale-info.json.erb +16 -0
- data/documentation_project/Contents/Resources/en.lproj/navigation.json.erb +57 -0
- data/documentation_project/Contents/Resources/en.lproj/searchTree.json.erb +1 -0
- data/documentation_project/Contents/Resources/es.lproj/ExactMatch.plist.erb +15 -0
- data/{fixtures/middlemac_app/Contents/Resources/Base.lproj → documentation_project/Contents/Resources/es.lproj}/InfoPlist.strings.erb +0 -0
- data/documentation_project/Contents/Resources/es.lproj/index.html.md.erb +27 -0
- data/documentation_project/Contents/Resources/es.lproj/index_hpd.html.md.erb +4 -0
- data/documentation_project/Contents/Resources/es.lproj/locale-info.json.erb +16 -0
- data/documentation_project/Contents/Resources/es.lproj/navigation.json.erb +57 -0
- data/documentation_project/Contents/Resources/es.lproj/searchTree.json.erb +1 -0
- data/documentation_project/Contents/Resources/index.html.erb +118 -0
- data/documentation_project/Contents/Resources/locale-list.json.erb +14 -0
- data/documentation_project/Gemfile +4 -17
- data/documentation_project/HelpViewerApp/HelpViewerApp.xcodeproj/project.pbxproj +79 -101
- data/documentation_project/HelpViewerApp/HelpViewerApp.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist +8 -0
- data/documentation_project/HelpViewerApp/HelpViewerApp.xcodeproj/xcshareddata/xcschemes/Help (free).xcscheme +11 -6
- data/documentation_project/HelpViewerApp/HelpViewerApp.xcodeproj/xcshareddata/xcschemes/Help (pro).xcscheme +80 -0
- data/documentation_project/HelpViewerApp/HelpViewerApp.xcodeproj/xcshareddata/xcschemes/HelpViewerApp (free).xcscheme +1 -1
- data/documentation_project/HelpViewerApp/HelpViewerApp.xcodeproj/xcshareddata/xcschemes/HelpViewerApp (pro).xcscheme +1 -1
- data/documentation_project/HelpViewerApp/HelpViewerApp/AppDelegate.h +1 -0
- data/documentation_project/HelpViewerApp/HelpViewerApp/AppDelegate.m +6 -0
- data/documentation_project/HelpViewerApp/HelpViewerApp/Base.lproj/MainMenu.xib +39 -10
- data/documentation_project/HelpViewerApp/HelpViewerApp/Info-free.plist +4 -4
- data/documentation_project/HelpViewerApp/HelpViewerApp/Info-pro.plist +4 -4
- data/documentation_project/HelpViewerApp/HelpViewerApp/versions.xcconfig +8 -0
- data/documentation_project/HelpViewerApp/README.md +6 -26
- data/documentation_project/{Middlemac (free).help → Middlemac_(free).help}/.gitignore +0 -0
- data/documentation_project/{Middlemac (pro).help → Middlemac_(pro).help}/.gitignore +0 -0
- data/documentation_project/config.rb +83 -100
- data/documentation_project/makefile +93 -0
- data/documentation_project/middlemac.webloc +0 -0
- data/ext/trie/darray.c +673 -0
- data/ext/trie/darray.h +233 -0
- data/ext/trie/extconf.rb +23 -0
- data/ext/trie/fileutils.c +151 -0
- data/ext/trie/fileutils.h +36 -0
- data/ext/trie/tail.c +340 -0
- data/ext/trie/tail.h +207 -0
- data/ext/trie/trie-private.c +299 -0
- data/ext/trie/trie-private.h +31 -0
- data/ext/trie/trie.c +628 -0
- data/ext/trie/trie.h +40 -0
- data/ext/trie/triedefs.h +73 -0
- data/ext/trie/typedefs.h +117 -0
- data/features/helpers_features.feature +58 -0
- data/features/main_features.feature +23 -19
- data/features/support/env.rb +0 -14
- data/fixtures/middlemac_app/.gitignore +0 -1
- data/fixtures/middlemac_app/Contents/Info.plist.erb +5 -3
- data/fixtures/middlemac_app/Contents/Resources/{Base.lproj/assets → SharedGlobalAssets}/_data/globals.yml +0 -0
- data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/_data/locale-list.json +318 -0
- data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/_layouts/layout-apple-modern-aside.haml +19 -0
- data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/_layouts/layout-apple-modern.haml +61 -0
- data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/_layouts/layout-blank.haml +11 -0
- data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/_layouts/layout-hpd.haml +14 -0
- data/fixtures/middlemac_app/Contents/Resources/{Base.lproj/assets/partials → SharedGlobalAssets/_partials}/_partials_dir_partial.erb +0 -0
- data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/convention/icon-webclip-120x120.png +0 -0
- data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/convention/icon-webclip-152x152.png +0 -0
- data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/convention/icon-webclip-57x57.png +0 -0
- data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/convention/icon-webclip-76x76.png +0 -0
- data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/convention/icon-webclip-ipad.png +0 -0
- data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/convention/icon-webclip-ipad_2x.png +0 -0
- data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/convention/icon-webclip-iphone.png +0 -0
- data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/convention/icon-webclip-iphone_2x.png +0 -0
- data/fixtures/middlemac_app/Contents/Resources/{shared → SharedGlobalAssets/convention}/icon_256x256.png +0 -0
- data/fixtures/middlemac_app/Contents/Resources/{shared → SharedGlobalAssets/convention}/icon_256x256@2x.png +0 -0
- data/fixtures/middlemac_app/Contents/Resources/{shared → SharedGlobalAssets/convention}/icon_32x32.png +0 -0
- data/fixtures/middlemac_app/Contents/Resources/{shared → SharedGlobalAssets/convention}/icon_32x32@2x.png +0 -0
- data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/css/apple/apple.css +3831 -0
- data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/css/apple/css/img/L0200_LeftArrow_2x.png +0 -0
- data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/css/apple/css/img/L0201_RightArrow_2x.png +0 -0
- data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/css/apple/css/img/arrow-blue.svg +1 -0
- data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/css/apple/css/img/arrow.svg +1 -0
- data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/css/apple/css/img/ask-siri.svg +1 -0
- data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/css/apple/css/img/button-clear-search.png +0 -0
- data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/css/apple/css/img/button-close-2.png +0 -0
- data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/css/apple/css/img/button-close-learnmore.png +0 -0
- data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/css/apple/css/img/button-close.png +0 -0
- data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/css/apple/css/img/button-search-small.png +0 -0
- data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/css/apple/css/img/button-search.png +0 -0
- data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/css/apple/css/img/button-toc-rtl.png +0 -0
- data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/css/apple/css/img/button-toc-small-rtl.png +0 -0
- data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/css/apple/css/img/button-toc-small.png +0 -0
- data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/css/apple/css/img/button-toc-toggle-rtl.png +0 -0
- data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/css/apple/css/img/button-toc-toggle.png +0 -0
- data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/css/apple/css/img/button-toc.png +0 -0
- data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/css/apple/css/img/changelanguage_icon2x.png +0 -0
- data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/css/apple/css/img/force-click.svg +1 -0
- data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/css/apple/css/img/icon-arrow-2.svg +1 -0
- data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/css/apple/css/img/icon-arrow.png +0 -0
- data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/css/apple/css/img/icon-close.svg +1 -0
- data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/css/apple/css/img/icon-external-link-lg.png +0 -0
- data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/css/apple/css/img/icon-external-link.png +0 -0
- data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/css/apple/css/img/icon-pause.svg +1 -0
- data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/css/apple/css/img/icon-play.svg +1 -0
- data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/css/apple/css/img/icon-replay.svg +1 -0
- data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/css/apple/css/img/icon-warning-black.png +0 -0
- data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/css/apple/css/img/icon-warning-eu.png +0 -0
- data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/css/apple/css/img/icon-warning.png +0 -0
- data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/css/apple/css/img/icon-webclip-120x120.png +0 -0
- data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/css/apple/css/img/icon-webclip-152x152.png +0 -0
- data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/css/apple/css/img/icon-webclip-57x57.png +0 -0
- data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/css/apple/css/img/icon-webclip-76x76.png +0 -0
- data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/css/apple/css/img/icon-webclip-ipad.png +0 -0
- data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/css/apple/css/img/icon-webclip-ipad_2x.png +0 -0
- data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/css/apple/css/img/icon-webclip-iphone.png +0 -0
- data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/css/apple/css/img/icon-webclip-iphone_2x.png +0 -0
- data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/css/apple/css/img/movie-play_2x.png +0 -0
- data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/css/apple/css/img/nav-left.svg +1 -0
- data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/css/apple/css/img/nav-paddle-left.png +0 -0
- data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/css/apple/css/img/nav-paddle-right.png +0 -0
- data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/css/apple/css/img/nav-right.svg +1 -0
- data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/css/apple/css/img/search_image_large.svg +1 -0
- data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/css/apple/css/img/tip.svg +1 -0
- data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/css/apple/css/img/toc_blue_large.svg +1 -0
- data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/css/apple/css/img/toc_large.svg +1 -0
- data/fixtures/middlemac_app/Contents/Resources/{Base.lproj/assets/stylesheets/_github.scss → SharedGlobalAssets/css/middlemac/github.css.scss} +0 -0
- data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/css/middlemac/middlemac.css.scss +129 -0
- data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/css/middlemac/note.svg +19 -0
- data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/css/middlemac/tip.svg +1 -0
- data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/css/middlemac/warning.svg +19 -0
- data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/fonts/_dummy.txt +1 -0
- data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/images/global_thing_32x32.png +0 -0
- data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/js/app.5.1.27.js +6295 -0
- data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/js/middlemac-debug.js +20 -0
- data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/js/vendor.js +226 -0
- data/fixtures/middlemac_app/Contents/Resources/en.lproj/10_hello_world_file.html.md.erb +17 -0
- data/fixtures/middlemac_app/Contents/Resources/en.lproj/30_sample_group_number_one/index.html.md.erb +8 -0
- data/fixtures/middlemac_app/Contents/Resources/en.lproj/30_sample_group_number_one/page_one.html.md.erb +108 -0
- data/fixtures/middlemac_app/Contents/Resources/en.lproj/30_sample_group_number_one/page_two.html.md.erb +36 -0
- data/fixtures/middlemac_app/Contents/Resources/{Base.lproj → en.lproj}/40_sample_group_number_two/01_nested_group_example/01_page_one.html.md.erb +0 -5
- data/fixtures/middlemac_app/Contents/Resources/{Base.lproj → en.lproj}/40_sample_group_number_two/01_nested_group_example/02_pagina_dos.html.md.erb +0 -5
- data/fixtures/middlemac_app/Contents/Resources/{Base.lproj → en.lproj}/40_sample_group_number_two/01_nested_group_example/03_page_san.html.md.erb +0 -5
- data/fixtures/middlemac_app/Contents/Resources/en.lproj/40_sample_group_number_two/01_nested_group_example/index.html.md.erb +4 -0
- data/fixtures/middlemac_app/Contents/Resources/{Base.lproj → en.lproj}/40_sample_group_number_two/02_page_two.html.md.erb +0 -5
- data/fixtures/middlemac_app/Contents/Resources/{Base.lproj → en.lproj}/40_sample_group_number_two/03_page_three.html.md.erb +0 -5
- data/fixtures/middlemac_app/Contents/Resources/en.lproj/40_sample_group_number_two/index.html.md.erb +4 -0
- data/fixtures/middlemac_app/Contents/Resources/en.lproj/50_testing_world_file.html.md.erb +58 -0
- data/fixtures/middlemac_app/Contents/Resources/en.lproj/60_goodbye_world_file.html.md.erb +203 -0
- data/fixtures/middlemac_app/Contents/Resources/en.lproj/ExactMatch.plist.erb +15 -0
- data/fixtures/middlemac_app/Contents/Resources/en.lproj/InfoPlist.strings.erb +10 -0
- data/fixtures/middlemac_app/Contents/Resources/{Base.lproj → en.lproj}/_new_style_partial.erb +0 -0
- data/fixtures/middlemac_app/Contents/Resources/en.lproj/asides/aside_description.html.md.erb +20 -0
- data/fixtures/middlemac_app/Contents/Resources/en.lproj/assets/_partials/_localized_partials_dir_partial.erb +1 -0
- data/fixtures/middlemac_app/Contents/Resources/en.lproj/assets/images/all-graphic_32x32.png +0 -0
- data/fixtures/middlemac_app/Contents/Resources/en.lproj/assets/images/neat_thing_32x32.png +0 -0
- data/fixtures/middlemac_app/Contents/Resources/en.lproj/assets/images/subdirectory/logo_32x32.png +0 -0
- data/fixtures/middlemac_app/Contents/Resources/en.lproj/assets/images/subdirectory/pro-image_32x32.png +0 -0
- data/fixtures/middlemac_app/Contents/Resources/en.lproj/copyright.html.md.erb +19 -0
- data/fixtures/middlemac_app/Contents/Resources/en.lproj/index.html.md.erb +20 -0
- data/fixtures/middlemac_app/Contents/Resources/en.lproj/index_hpd.html.md.erb +4 -0
- data/fixtures/middlemac_app/Contents/Resources/en.lproj/locale-info.json.erb +16 -0
- data/fixtures/middlemac_app/Contents/Resources/en.lproj/navigation.json.erb +57 -0
- data/fixtures/middlemac_app/Contents/Resources/en.lproj/searchTree.json.erb +1 -0
- data/fixtures/middlemac_app/Contents/Resources/es.lproj/10_hola_mundo_file.html.md.erb +15 -0
- data/fixtures/middlemac_app/Contents/Resources/es.lproj/60_goodbye_world_file.html.md.erb +193 -0
- data/fixtures/middlemac_app/Contents/Resources/es.lproj/ExactMatch.plist.erb +15 -0
- data/fixtures/middlemac_app/Contents/Resources/es.lproj/InfoPlist.strings.erb +10 -0
- data/fixtures/middlemac_app/Contents/Resources/es.lproj/assets/images/all-graphic_32x32.png +0 -0
- data/fixtures/middlemac_app/Contents/Resources/es.lproj/assets/images/neat_thing_32x32.png +0 -0
- data/fixtures/middlemac_app/Contents/Resources/es.lproj/assets/images/subdirectory/logo_32x32.png +0 -0
- data/fixtures/middlemac_app/Contents/Resources/es.lproj/assets/images/subdirectory/pro-image_32x32.png +0 -0
- data/fixtures/middlemac_app/Contents/Resources/es.lproj/copyright.html.md.erb +19 -0
- data/fixtures/middlemac_app/Contents/Resources/es.lproj/index.html.md.erb +21 -0
- data/fixtures/middlemac_app/Contents/Resources/es.lproj/index_hpd.html.md.erb +4 -0
- data/fixtures/middlemac_app/Contents/Resources/es.lproj/locale-info.json.erb +16 -0
- data/fixtures/middlemac_app/Contents/Resources/es.lproj/navigation.json.erb +57 -0
- data/fixtures/middlemac_app/Contents/Resources/es.lproj/searchTree.json.erb +1 -0
- data/fixtures/middlemac_app/Contents/Resources/index.html.erb +118 -0
- data/fixtures/middlemac_app/Contents/Resources/locale-list.json.erb +14 -0
- data/fixtures/middlemac_app/Gemfile +4 -17
- data/fixtures/middlemac_app/config.rb +82 -99
- data/fixtures/middlemac_app/makefile +93 -0
- data/fixtures/middlemac_app/middlemac.webloc +0 -0
- data/lib/middlemac.rb +4 -0
- data/lib/middlemac/extension.rb +152 -211
- data/lib/middlemac/helpers.rb +470 -0
- data/lib/middlemac/private.rb +497 -0
- data/lib/middlemac/sitemap.rb +516 -0
- data/lib/middlemac/trie-extension.rb +37 -0
- data/lib/middlemac/version.rb +1 -1
- data/middlemac.gemspec +25 -6
- data/resources/stopwords/ar.plist +206 -0
- data/resources/stopwords/ca.plist +0 -0
- data/resources/stopwords/cs.plist +30 -0
- data/resources/stopwords/da.plist +6 -0
- data/resources/stopwords/de.plist +119 -0
- data/resources/stopwords/el.plist +0 -0
- data/resources/stopwords/en.plist +0 -0
- data/resources/stopwords/es.plist +282 -0
- data/resources/stopwords/es_419.plist +282 -0
- data/resources/stopwords/fi.plist +206 -0
- data/resources/stopwords/fr.plist +132 -0
- data/resources/stopwords/he.plist +0 -0
- data/resources/stopwords/hr.plist +0 -0
- data/resources/stopwords/hu.plist +44 -0
- data/resources/stopwords/id.plist +6 -0
- data/resources/stopwords/it.plist +153 -0
- data/resources/stopwords/ja.plist +6 -0
- data/resources/stopwords/ko.plist +106 -0
- data/resources/stopwords/ms.plist +6 -0
- data/resources/stopwords/nl.plist +198 -0
- data/resources/stopwords/no.plist +207 -0
- data/resources/stopwords/pl.plist +207 -0
- data/resources/stopwords/pt.plist +207 -0
- data/resources/stopwords/pt_PT.plist +207 -0
- data/resources/stopwords/ro.plist +0 -0
- data/resources/stopwords/ru.plist +207 -0
- data/resources/stopwords/sk.plist +0 -0
- data/resources/stopwords/sv.plist +280 -0
- data/resources/stopwords/th.plist +56 -0
- data/resources/stopwords/tr.plist +200 -0
- data/resources/stopwords/uk.plist +764 -0
- data/resources/stopwords/vi.plist +6 -0
- data/resources/stopwords/zh_CN.plist +207 -0
- data/resources/stopwords/zh_TW.plist +207 -0
- data/yard/readme.md +4 -4
- metadata +423 -225
- data/documentation_project/Contents/Resources/Base.lproj/010_what_is_middlemac/index.html.md.erb +0 -126
- data/documentation_project/Contents/Resources/Base.lproj/030_skills_refresher/20_frontmatter_skill.html.md.erb +0 -54
- data/documentation_project/Contents/Resources/Base.lproj/030_skills_refresher/40_ruby_skill.html.md.erb +0 -67
- data/documentation_project/Contents/Resources/Base.lproj/030_skills_refresher/50_ruby_ecosystem.html.md.erb +0 -136
- data/documentation_project/Contents/Resources/Base.lproj/030_skills_refresher/index.html.md.erb +0 -35
- data/documentation_project/Contents/Resources/Base.lproj/040_setup/index.html.md.erb +0 -88
- data/documentation_project/Contents/Resources/Base.lproj/050_structure/010_directories_and_images.html.md.erb +0 -176
- data/documentation_project/Contents/Resources/Base.lproj/050_structure/020_layouts_and_templates.html.md.erb +0 -71
- data/documentation_project/Contents/Resources/Base.lproj/050_structure/025_css.html.md.erb +0 -71
- data/documentation_project/Contents/Resources/Base.lproj/050_structure/030_groups.html.md.erb +0 -83
- data/documentation_project/Contents/Resources/Base.lproj/050_structure/040_breadcrumbs.html.md.erb +0 -43
- data/documentation_project/Contents/Resources/Base.lproj/050_structure/050_navigator.html.md.erb +0 -26
- data/documentation_project/Contents/Resources/Base.lproj/050_structure/060_targets.html.md.erb +0 -63
- data/documentation_project/Contents/Resources/Base.lproj/050_structure/070_features.html.md.erb +0 -122
- data/documentation_project/Contents/Resources/Base.lproj/050_structure/index.html.md.erb +0 -21
- data/documentation_project/Contents/Resources/Base.lproj/060_content/010_frontmatter.html.md.erb +0 -88
- data/documentation_project/Contents/Resources/Base.lproj/060_content/040_partials.html.md.erb +0 -121
- data/documentation_project/Contents/Resources/Base.lproj/060_content/050_resources.html.md.erb +0 -60
- data/documentation_project/Contents/Resources/Base.lproj/060_content/070_including_excluding.html.md.erb +0 -68
- data/documentation_project/Contents/Resources/Base.lproj/060_content/080_markdown_links_images.html.md.erb +0 -93
- data/documentation_project/Contents/Resources/Base.lproj/060_content/090_css_image_sizes.html.md.erb +0 -90
- data/documentation_project/Contents/Resources/Base.lproj/060_content/index.html.md.erb +0 -21
- data/documentation_project/Contents/Resources/Base.lproj/070_preview_build/index.html.md.erb +0 -78
- data/documentation_project/Contents/Resources/Base.lproj/090_build_application/10_apple_help_setup.html.md.erb +0 -110
- data/documentation_project/Contents/Resources/Base.lproj/090_build_application/20_xcode_integration.html.md.erb +0 -64
- data/documentation_project/Contents/Resources/Base.lproj/090_build_application/index.html.md.erb +0 -25
- data/documentation_project/Contents/Resources/Base.lproj/100_reference/20_config_ref.html.md.erb +0 -56
- data/documentation_project/Contents/Resources/Base.lproj/100_reference/40_helpers_ref.html.md.erb +0 -45
- data/documentation_project/Contents/Resources/Base.lproj/100_reference/index.html.md.erb +0 -26
- data/documentation_project/Contents/Resources/Base.lproj/120_backwards_compatibility/index.html.md.erb +0 -88
- data/documentation_project/Contents/Resources/Base.lproj/130_all_help_content/index.html.md.erb +0 -15
- data/documentation_project/Contents/Resources/Base.lproj/assets/_layouts/layout-html4.haml +0 -22
- data/documentation_project/Contents/Resources/Base.lproj/assets/_layouts/layout-xhtml.haml +0 -28
- data/documentation_project/Contents/Resources/Base.lproj/assets/_layouts/template-logo-large.haml +0 -30
- data/documentation_project/Contents/Resources/Base.lproj/assets/_layouts/template-logo-medium.haml +0 -30
- data/documentation_project/Contents/Resources/Base.lproj/assets/_layouts/template-logo-small.haml +0 -30
- data/documentation_project/Contents/Resources/Base.lproj/assets/fonts/font-awesome/FontAwesome.otf +0 -0
- data/documentation_project/Contents/Resources/Base.lproj/assets/fonts/font-awesome/fontawesome-webfont.eot +0 -0
- data/documentation_project/Contents/Resources/Base.lproj/assets/fonts/font-awesome/fontawesome-webfont.svg +0 -655
- data/documentation_project/Contents/Resources/Base.lproj/assets/fonts/font-awesome/fontawesome-webfont.ttf +0 -0
- data/documentation_project/Contents/Resources/Base.lproj/assets/fonts/font-awesome/fontawesome-webfont.woff +0 -0
- data/documentation_project/Contents/Resources/Base.lproj/assets/fonts/font-awesome/fontawesome-webfont.woff2 +0 -0
- data/documentation_project/Contents/Resources/Base.lproj/assets/images/mm-extras/middlemac-extras-small.png +0 -0
- data/documentation_project/Contents/Resources/Base.lproj/assets/images/mm-extras/middlemac-extras-small@2x.png +0 -0
- data/documentation_project/Contents/Resources/Base.lproj/assets/images/mm-extras/middlemac-extras.png +0 -0
- data/documentation_project/Contents/Resources/Base.lproj/assets/images/mm-extras/middlemac-extras@2x.png +0 -0
- data/documentation_project/Contents/Resources/Base.lproj/assets/images/mm-extras/sub_images/middlemac-extras-small.png +0 -0
- data/documentation_project/Contents/Resources/Base.lproj/assets/images/mm-extras/sub_images/middlemac-extras-small@2x.png +0 -0
- data/documentation_project/Contents/Resources/Base.lproj/assets/images/mm-extras/sub_images/middlemac-extras.png +0 -0
- data/documentation_project/Contents/Resources/Base.lproj/assets/images/mm-extras/sub_images/middlemac-extras@2x.png +0 -0
- data/documentation_project/Contents/Resources/Base.lproj/assets/images/mm-pagegroups/middleman-pagegroups-small.png +0 -0
- data/documentation_project/Contents/Resources/Base.lproj/assets/images/mm-pagegroups/middleman-pagegroups.png +0 -0
- data/documentation_project/Contents/Resources/Base.lproj/assets/javascripts/all.js +0 -1
- data/documentation_project/Contents/Resources/Base.lproj/assets/partials/_nav_breadcrumbs.haml +0 -11
- data/documentation_project/Contents/Resources/Base.lproj/assets/partials/_nav_breadcrumbs_alt.haml +0 -15
- data/documentation_project/Contents/Resources/Base.lproj/assets/partials/_nav_brethren.haml +0 -18
- data/documentation_project/Contents/Resources/Base.lproj/assets/partials/_nav_brethren_index.haml +0 -14
- data/documentation_project/Contents/Resources/Base.lproj/assets/partials/_nav_legitimate_children.haml +0 -16
- data/documentation_project/Contents/Resources/Base.lproj/assets/partials/_nav_prev_next.haml +0 -21
- data/documentation_project/Contents/Resources/Base.lproj/assets/partials/_nav_toc_index.haml +0 -21
- data/documentation_project/Contents/Resources/Base.lproj/assets/partials/_yard_extras_config.erb +0 -200
- data/documentation_project/Contents/Resources/Base.lproj/assets/partials/_yard_extras_helpers.erb +0 -146
- data/documentation_project/Contents/Resources/Base.lproj/assets/partials/_yard_extras_helpers_extended.erb +0 -135
- data/documentation_project/Contents/Resources/Base.lproj/assets/partials/_yard_middlemac_config.erb +0 -207
- data/documentation_project/Contents/Resources/Base.lproj/assets/partials/_yard_middlemac_helpers.erb +0 -297
- data/documentation_project/Contents/Resources/Base.lproj/assets/partials/_yard_middlemac_helpers_extended.erb +0 -96
- data/documentation_project/Contents/Resources/Base.lproj/assets/partials/_yard_pagegroups_config.erb +0 -744
- data/documentation_project/Contents/Resources/Base.lproj/assets/partials/_yard_pagegroups_helpers.erb +0 -710
- data/documentation_project/Contents/Resources/Base.lproj/assets/partials/_yard_pagegroups_helpers_css.erb +0 -523
- data/documentation_project/Contents/Resources/Base.lproj/assets/partials/_yard_pagegroups_helpers_extended.erb +0 -56
- data/documentation_project/Contents/Resources/Base.lproj/assets/stylesheets/_apple_helpbook.scss +0 -946
- data/documentation_project/Contents/Resources/Base.lproj/assets/stylesheets/_normalize.scss +0 -374
- data/documentation_project/Contents/Resources/Base.lproj/assets/stylesheets/breadcrumb-separator-light.png +0 -0
- data/documentation_project/Contents/Resources/Base.lproj/assets/stylesheets/image_sizes.css.erb +0 -8
- data/documentation_project/Contents/Resources/Base.lproj/assets/stylesheets/style.css.scss +0 -4
- data/fixtures/middlemac_app/Contents/Resources/Base.lproj/10_hello_world_file.html.md.erb +0 -22
- data/fixtures/middlemac_app/Contents/Resources/Base.lproj/20_goodbye_world_file.html.md.erb +0 -22
- data/fixtures/middlemac_app/Contents/Resources/Base.lproj/30_sample_group_number_one/index.html.md.erb +0 -24
- data/fixtures/middlemac_app/Contents/Resources/Base.lproj/30_sample_group_number_one/page_one.html.md.erb +0 -20
- data/fixtures/middlemac_app/Contents/Resources/Base.lproj/30_sample_group_number_one/page_two.html.md.erb +0 -19
- data/fixtures/middlemac_app/Contents/Resources/Base.lproj/40_sample_group_number_two/01_nested_group_example/index.html.md.erb +0 -18
- data/fixtures/middlemac_app/Contents/Resources/Base.lproj/40_sample_group_number_two/index.html.md.erb +0 -24
- data/fixtures/middlemac_app/Contents/Resources/Base.lproj/45_testing_world_file.html.md.erb +0 -55
- data/fixtures/middlemac_app/Contents/Resources/Base.lproj/50_entire_world_file.html.md.erb +0 -15
- data/fixtures/middlemac_app/Contents/Resources/Base.lproj/assets/_layouts/layout-html4.haml +0 -22
- data/fixtures/middlemac_app/Contents/Resources/Base.lproj/assets/_layouts/layout-xhtml.haml +0 -28
- data/fixtures/middlemac_app/Contents/Resources/Base.lproj/assets/_layouts/template-logo-large.haml +0 -30
- data/fixtures/middlemac_app/Contents/Resources/Base.lproj/assets/_layouts/template-logo-medium.haml +0 -30
- data/fixtures/middlemac_app/Contents/Resources/Base.lproj/assets/_layouts/template-logo-small.haml +0 -30
- data/fixtures/middlemac_app/Contents/Resources/Base.lproj/assets/fonts/font-awesome/FontAwesome.otf +0 -0
- data/fixtures/middlemac_app/Contents/Resources/Base.lproj/assets/fonts/font-awesome/fontawesome-webfont.eot +0 -0
- data/fixtures/middlemac_app/Contents/Resources/Base.lproj/assets/fonts/font-awesome/fontawesome-webfont.svg +0 -655
- data/fixtures/middlemac_app/Contents/Resources/Base.lproj/assets/fonts/font-awesome/fontawesome-webfont.ttf +0 -0
- data/fixtures/middlemac_app/Contents/Resources/Base.lproj/assets/fonts/font-awesome/fontawesome-webfont.woff +0 -0
- data/fixtures/middlemac_app/Contents/Resources/Base.lproj/assets/fonts/font-awesome/fontawesome-webfont.woff2 +0 -0
- data/fixtures/middlemac_app/Contents/Resources/Base.lproj/assets/images/_empty_directory.html.md.erb +0 -1
- data/fixtures/middlemac_app/Contents/Resources/Base.lproj/assets/javascripts/all.js +0 -1
- data/fixtures/middlemac_app/Contents/Resources/Base.lproj/assets/partials/_nav_breadcrumbs.haml +0 -11
- data/fixtures/middlemac_app/Contents/Resources/Base.lproj/assets/partials/_nav_breadcrumbs_alt.haml +0 -15
- data/fixtures/middlemac_app/Contents/Resources/Base.lproj/assets/partials/_nav_brethren.haml +0 -18
- data/fixtures/middlemac_app/Contents/Resources/Base.lproj/assets/partials/_nav_brethren_index.haml +0 -14
- data/fixtures/middlemac_app/Contents/Resources/Base.lproj/assets/partials/_nav_legitimate_children.haml +0 -16
- data/fixtures/middlemac_app/Contents/Resources/Base.lproj/assets/partials/_nav_prev_next.haml +0 -21
- data/fixtures/middlemac_app/Contents/Resources/Base.lproj/assets/partials/_nav_toc_index.haml +0 -21
- data/fixtures/middlemac_app/Contents/Resources/Base.lproj/assets/stylesheets/_apple_helpbook.scss +0 -946
- data/fixtures/middlemac_app/Contents/Resources/Base.lproj/assets/stylesheets/_normalize.scss +0 -374
- data/fixtures/middlemac_app/Contents/Resources/Base.lproj/assets/stylesheets/breadcrumb-separator-light.png +0 -0
- data/fixtures/middlemac_app/Contents/Resources/Base.lproj/assets/stylesheets/image_sizes.css.erb +0 -8
- data/fixtures/middlemac_app/Contents/Resources/Base.lproj/assets/stylesheets/style.css.scss +0 -4
- data/fixtures/middlemac_app/Contents/Resources/Base.lproj/index.html.md.erb +0 -17
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: Serve Your Help Book
|
|
3
|
+
blurb: Learn how to interact with your Help Book in a live environment using
|
|
4
|
+
<em>Middleman</em>’s development server.
|
|
5
|
+
---
|
|
6
|
+
<%= md_links %>
|
|
7
|
+
<%= md_images %>
|
|
8
|
+
|
|
9
|
+
When developing the majority of your Help Book content, it’s likely that you
|
|
10
|
+
will want to view the results in a web browser from time to time, which is
|
|
11
|
+
much faster than building the Help Book, clearing Apple Help Builder’s cache,
|
|
12
|
+
building your application, then running it.
|
|
13
|
+
|
|
14
|
+
While it’s possible to build your Help Book, and open the individual pages in
|
|
15
|
+
your browser, this isn’t practical for a modern Help Book, which depends on
|
|
16
|
+
AJAX and rewriting paths and other things that a file system doesn’t support,
|
|
17
|
+
despite being static pages.
|
|
18
|
+
|
|
19
|
+
Instead, you can use _Middleman_’s built-in preview server to host your Help
|
|
20
|
+
Books. It’s a zero-configuration that, quite simply, just works.
|
|
21
|
+
|
|
22
|
+
Let’s have a look at **Your First Help Book** that you worked on in the
|
|
23
|
+
previous topic. From within that project directory in **Terminal**, simply:
|
|
24
|
+
|
|
25
|
+
~~~ bash
|
|
26
|
+
bundle exec middleman serve --target pro
|
|
27
|
+
~~~
|
|
28
|
+
|
|
29
|
+
In just a few seconds, you will see a message indicating that the server is
|
|
30
|
+
running, as well as the address for your site, which is generally something
|
|
31
|
+
like:
|
|
32
|
+
|
|
33
|
+
~~~ bash
|
|
34
|
+
== View your site at "http://localhost:4567", "http://127.0.0.1:4567"
|
|
35
|
+
== Inspect your site configuration at "http://localhost:4567/__middleman", "http://127.0.0.1:4567/__middleman"
|
|
36
|
+
~~~
|
|
37
|
+
|
|
38
|
+
If you follow this advice, though, you’re like to see this message in your
|
|
39
|
+
browser:
|
|
40
|
+
|
|
41
|
+
> ###File Not Found
|
|
42
|
+
|
|
43
|
+
Remember, this is a macOS bundle, so the content we want is really located at
|
|
44
|
+
`http://localhost:4567/Resources/`. Go ahead and type that into your browser,
|
|
45
|
+
and browse the working Help Book, paying particular attention to whatever
|
|
46
|
+
changes you made in the previous lesson.
|
|
47
|
+
|
|
48
|
+
When ready, try navigating to this file by copying and inserting into the
|
|
49
|
+
browser address bar.
|
|
50
|
+
|
|
51
|
+
`/Resources/en.lproj/hello_world_file.html`
|
|
52
|
+
|
|
53
|
+
You should notice the the browser automatically redirected you to:
|
|
54
|
+
|
|
55
|
+
`http://localhost:4567/Resources/index.html?localePath=en.lproj#/topic-en.lproj-hello_world_file`
|
|
56
|
+
|
|
57
|
+
|
|
58
|
+
## What’s going on here?
|
|
59
|
+
|
|
60
|
+
Modern Apple Help Books function completely from the `/Resources/index.html`
|
|
61
|
+
file. Every other page in the Help Book is loaded via AJAX by this file, and
|
|
62
|
+
then applied to the current browser window after rewriting paths so that they
|
|
63
|
+
are relative to this `index.html`. Apple’s JavaScript and styles are then
|
|
64
|
+
applied, and then you have a modern Apple Help Book.
|
|
65
|
+
|
|
66
|
+
Because the help indexer tool, `hiutil`, indexes individual pages, a
|
|
67
|
+
search result would lead to that indexed page, and that indexed page has none
|
|
68
|
+
of Apple’s JavaScripts or styling. So, each page of your Help Book, when
|
|
69
|
+
built, also includes a redirect to the main `index.html`, ensuring that search
|
|
70
|
+
works flawlessly.
|
|
71
|
+
|
|
72
|
+
During development, troubleshooting sometimes indicates the necessity
|
|
73
|
+
of viewing the HTML file in the browser without this redirect. If you’d like
|
|
74
|
+
to prevent this redirect from happening so quickly during development, have a
|
|
75
|
+
look at the `options.show_debug` option in your `config.rb`.
|
|
76
|
+
|
|
77
|
+
|
|
78
|
+
## Specifying Targets
|
|
79
|
+
|
|
80
|
+
As you may have guessed from earlier, by starting the server with:
|
|
81
|
+
|
|
82
|
+
~~~ bash
|
|
83
|
+
bundle exec middleman serve --target pro
|
|
84
|
+
~~~
|
|
85
|
+
|
|
86
|
+
…you’ve started the `pro` target. Because **Your First Help Book** was also
|
|
87
|
+
configured with a `free` target, you can start it, instead, with:
|
|
88
|
+
|
|
89
|
+
~~~ bash
|
|
90
|
+
bundle exec middleman serve --target pro
|
|
91
|
+
~~~
|
|
92
|
+
|
|
93
|
+
You can also start the server with a simple `bundle exec middleman`. The
|
|
94
|
+
action `serve` is _Middleman_’s default, and omitting the `--target` option
|
|
95
|
+
will have _Middlemac_ use the `config[:target]` setting (the default target)
|
|
96
|
+
from your `config.rb`.
|
|
97
|
+
{: .tip .callout}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: Build Your Help Book
|
|
3
|
+
blurb: This article shows you how simple it is to build your Help Book, so
|
|
4
|
+
that it may be included with your Xcode project.
|
|
5
|
+
---
|
|
6
|
+
<%= md_links %>
|
|
7
|
+
<%= md_images %>
|
|
8
|
+
|
|
9
|
+
When you’re finally ready to build your Help Book, either for including in
|
|
10
|
+
your application or for hosting on a website, you can do so easily with
|
|
11
|
+
_Middleman_. Let’s build **Your First Help Book** now. In **Terminal** from
|
|
12
|
+
within the project directory:
|
|
13
|
+
|
|
14
|
+
~~~ bash
|
|
15
|
+
bundle exec middleman build_all
|
|
16
|
+
~~~
|
|
17
|
+
|
|
18
|
+
Within just a few seconds (depending on the speed of your computer), you
|
|
19
|
+
should find that _Middleman_/_Middlemac_ will have built two, new help
|
|
20
|
+
bundles: `New_Project_(free).help` and `New_Project_(pro).help`.
|
|
21
|
+
|
|
22
|
+
_Middlemac_ ensures that no spaces are in help bundle filenames, just in case
|
|
23
|
+
you want to use `make` to build them. The default macOS `make` is
|
|
24
|
+
**GNU Make**, and it simply doesn’t work with paths containing spaces.
|
|
25
|
+
{: .note .callout}
|
|
26
|
+
|
|
27
|
+
You can `cd` into these bundles in **Terminal**, or use **Show Package
|
|
28
|
+
Contents** in **Finder** to browse the folders and contents there.
|
|
29
|
+
|
|
30
|
+
What you should find is a complete, modern Apple Help Book consisting of
|
|
31
|
+
HTML files that you built, as well as all of the supporting `.plist`, `.json`,
|
|
32
|
+
and other files needed to operate the Help Book.
|
|
33
|
+
|
|
34
|
+
|
|
35
|
+
## Targets
|
|
36
|
+
|
|
37
|
+
As with the server, you can specify that _Middlemac_ build a single target,
|
|
38
|
+
rather than all of them. This is accomplished by using the `build` action
|
|
39
|
+
and specifying the `--target` option when invoking _Middleman_:
|
|
40
|
+
|
|
41
|
+
~~~ bash
|
|
42
|
+
bundle exec middleman build --target pro
|
|
43
|
+
bundle exec middleman build --target free
|
|
44
|
+
bundle exec middleman build
|
|
45
|
+
~~~
|
|
46
|
+
|
|
47
|
+
That last example builds the default target as defined in your `config.rb`
|
|
48
|
+
file.
|
|
49
|
+
{: .tip .callout}
|
|
50
|
+
|
|
51
|
+
|
|
52
|
+
## Add Your First Help Book to your application
|
|
53
|
+
|
|
54
|
+
If you’re ready to add **Your First Help Book** to your application, then
|
|
55
|
+
skip ahead to [Set Up your Help Project][setup] for information on getting
|
|
56
|
+
your application to recognize your Help Book.
|
|
@@ -1,27 +1,24 @@
|
|
|
1
1
|
---
|
|
2
|
-
title: Markdown
|
|
3
|
-
blurb: Although you can hand-write all of your documents in HTML, why not
|
|
4
|
-
advantage of the clarity and ease of use offered by Markdown?
|
|
5
|
-
layout: template-logo-medium
|
|
2
|
+
title: About Markdown
|
|
3
|
+
blurb: Although you can hand-write all of your documents in HTML, why not
|
|
4
|
+
take advantage of the clarity and ease of use offered by Markdown?
|
|
6
5
|
---
|
|
7
6
|
<%= md_links %>
|
|
8
7
|
<%= md_images %>
|
|
9
8
|
|
|
10
|
-
<%= current_page.data.title %>
|
|
11
|
-
==============================
|
|
12
|
-
|
|
13
9
|
<%= current_page.data.blurb %>
|
|
14
10
|
|
|
15
|
-
_Middlemac_ takes care of a lot of the details for generating Apple Help
|
|
16
|
-
and that may be reason enough to use _Middlemac_. However if you decide
|
|
17
|
-
use Markdown, then you’re throwing away the single, largest
|
|
18
|
-
help file building productivity that there is.
|
|
11
|
+
_Middlemac_ takes care of a lot of the details for generating Apple Help
|
|
12
|
+
Books, and that may be reason enough to use _Middlemac_. However if you decide
|
|
13
|
+
_not_ to use Markdown, then you’re throwing away the single, largest
|
|
14
|
+
contributor to your help file building productivity that there is.
|
|
19
15
|
|
|
20
16
|
|
|
21
17
|
What is Markdown?
|
|
22
18
|
-----------------
|
|
23
19
|
|
|
24
|
-
In the words of the estimable John Gruber (the author of the original
|
|
20
|
+
In the words of the estimable John Gruber (the author of the original
|
|
21
|
+
Markdown):
|
|
25
22
|
|
|
26
23
|
> Markdown is a text-to-HTML conversion tool for web writers. Markdown allows
|
|
27
24
|
> you to write using an easy-to-read, easy-to-write plain text format, then
|
|
@@ -35,7 +32,8 @@ the page was written so:
|
|
|
35
32
|
What is Markdown?
|
|
36
33
|
-----------------
|
|
37
34
|
|
|
38
|
-
In the words of the estimable John Gruber (the author of the original
|
|
35
|
+
In the words of the estimable John Gruber (the author of the original
|
|
36
|
+
Markdown):
|
|
39
37
|
|
|
40
38
|
> Markdown is a text-to-HTML conversion tool for web writers. Markdown allows
|
|
41
39
|
> you to write using an easy-to-read, easy-to-write plain text format, then
|
|
@@ -59,5 +57,5 @@ are all fairly well compatible.
|
|
|
59
57
|
|
|
60
58
|
_Middlemac_ uses [_Kramdown_](http://kramdown.gettalong.org/) as its Markdown
|
|
61
59
|
engine because that’s what _Middleman_ uses by default. You can read about all
|
|
62
|
-
its features
|
|
60
|
+
its features and syntax on its
|
|
63
61
|
[documentation page](http://kramdown.gettalong.org/documentation.html).
|
|
@@ -1,15 +1,11 @@
|
|
|
1
1
|
---
|
|
2
|
-
title: Middleman
|
|
3
|
-
blurb: <em>Middleman</em> is the engine that makes <em>Middlemac</em>
|
|
4
|
-
It’s critical to know a little bit about this tool.
|
|
5
|
-
layout: template-logo-medium
|
|
2
|
+
title: About Middleman
|
|
3
|
+
blurb: <em>Middleman</em> is the engine that makes <em>Middlemac</em>
|
|
4
|
+
possible. It’s critical to know a little bit about this tool.
|
|
6
5
|
---
|
|
7
6
|
<%= md_links %>
|
|
8
7
|
<%= md_images %>
|
|
9
8
|
|
|
10
|
-
<%= current_page.data.title %>
|
|
11
|
-
==============================
|
|
12
|
-
|
|
13
9
|
<%= current_page.data.blurb %>
|
|
14
10
|
|
|
15
11
|
_Middleman_ is a [static site generator using all the shortcuts and tools in
|
|
@@ -26,7 +22,7 @@ development toolchain.
|
|
|
26
22
|
Builder _and_ server
|
|
27
23
|
--------------------
|
|
28
24
|
_Middleman_ doesn’t merely build final output; it includes a non-configuration
|
|
29
|
-
server that makes it much easier to develop your website or
|
|
25
|
+
server that makes it much easier to develop your website or Help Book. Features
|
|
30
26
|
such as live reload mean that when you change your source file, the site in
|
|
31
27
|
your web browser will update automatically.
|
|
32
28
|
|
|
@@ -40,13 +36,13 @@ Basic concepts
|
|
|
40
36
|
_Middleman_’s basic concepts are these:
|
|
41
37
|
|
|
42
38
|
- Organize your site in a source directory that mirrors the desired structure
|
|
43
|
-
on the server (or in our case, in our
|
|
39
|
+
on the server (or in our case, in our Help Book).
|
|
44
40
|
- Add file extensions to the source files to indicate the type of pre-processing
|
|
45
41
|
that you want to perform on each of them.
|
|
46
42
|
- Provide the ability to include partials and use helpers to improve your
|
|
47
43
|
content development productivity, while keeping yourself DRY.
|
|
48
44
|
- Provide the ability to use templates and layouts to bring uniformity to your
|
|
49
|
-
website (in our case, to your
|
|
45
|
+
website (in our case, to your Help Book).
|
|
50
46
|
- Act as a server in developer mode, building content dynamically as you develop
|
|
51
47
|
it.
|
|
52
48
|
- Build final output, ready to use wherever you need it.
|
|
@@ -60,25 +56,25 @@ will actually execute `middleman` to serve or to build your projects.
|
|
|
60
56
|
|
|
61
57
|
To start the built-in server in order to preview your work, simply do:
|
|
62
58
|
|
|
63
|
-
~~~
|
|
59
|
+
~~~
|
|
64
60
|
bundle exec middleman serve --target free
|
|
65
61
|
~~~
|
|
66
62
|
|
|
67
63
|
Instructions for accessing the server (the address and port) will be reported to
|
|
68
64
|
you.
|
|
69
65
|
|
|
70
|
-
Note, too, that `--target` specifies an option; the example
|
|
66
|
+
Note, too, that `--target` specifies an option; the example above would serve
|
|
71
67
|
the `free` target.
|
|
72
68
|
|
|
73
69
|
To build the `pro` target, you would do this:
|
|
74
70
|
|
|
75
|
-
~~~
|
|
71
|
+
~~~
|
|
76
72
|
bundle exec middleman build --target pro
|
|
77
73
|
~~~
|
|
78
74
|
|
|
79
75
|
And if you wanted to build every target at once, simply this:
|
|
80
76
|
|
|
81
|
-
~~~
|
|
77
|
+
~~~
|
|
82
78
|
bundle exec middleman build_all
|
|
83
79
|
~~~
|
|
84
80
|
|
data/documentation_project/Contents/Resources/en.lproj/030_get_started/070_about_ruby.html.md.erb
ADDED
|
@@ -0,0 +1,194 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: About Ruby and its Ecosystem
|
|
3
|
+
blurb: As the language that powers <em>Middlemac</em>, it’s worth taking a
|
|
4
|
+
short look at the Ruby language and its ecosystem.
|
|
5
|
+
---
|
|
6
|
+
<%= md_links %>
|
|
7
|
+
<%= md_images %>
|
|
8
|
+
|
|
9
|
+
<%= current_page.data.blurb %>
|
|
10
|
+
|
|
11
|
+
[Ruby](https://www.ruby-lang.org/en/) is the language that _Middlemac_,
|
|
12
|
+
_Middleman_, and many of the others tools are written with. You do not have to
|
|
13
|
+
learn Ruby to take advantage of _Middlemac_, although some ability to work
|
|
14
|
+
with it will be invaluable to you.
|
|
15
|
+
|
|
16
|
+
Ruby may surprise you
|
|
17
|
+
---------------------
|
|
18
|
+
|
|
19
|
+
If you’re a software developer, then it’s highly likely that you will be able
|
|
20
|
+
to read most Ruby code immediately. Coming from an Objective-C or Swift
|
|
21
|
+
background, these are a few things that may surprise you.
|
|
22
|
+
|
|
23
|
+
### Symbols
|
|
24
|
+
Ruby has a type of identifier called a `symbol`. They are used quite
|
|
25
|
+
extensively and look like `:this_symbol`. As identifiers and not variables,
|
|
26
|
+
you can’t assign values to them. Their value is themselves, though they have
|
|
27
|
+
useful string representations (`:this_symbol.to_s`). You can even get the
|
|
28
|
+
symbol representation of `'this_string'.to_sym`. Because they're unique, they
|
|
29
|
+
make excellent array/hash keys and excellent, guaranteed unique values.
|
|
30
|
+
|
|
31
|
+
### Everything is an object
|
|
32
|
+
Everything is an object, including what are fundamental datatypes in other
|
|
33
|
+
languages. Need to convert the integer `i` to a float? It’s as easy as
|
|
34
|
+
`i.to_f`.
|
|
35
|
+
|
|
36
|
+
### Everything has a return value
|
|
37
|
+
In Ruby you don’t require `return value`, or `result := value`, or
|
|
38
|
+
`function_name = value`. Just `value`, alone, will return its value. Even `if`
|
|
39
|
+
statements return values:
|
|
40
|
+
|
|
41
|
+
~~~ ruby
|
|
42
|
+
result = if answer == 'yes'
|
|
43
|
+
"The answer as affirmative."
|
|
44
|
+
else
|
|
45
|
+
"The answer was something else."
|
|
46
|
+
end
|
|
47
|
+
~~~
|
|
48
|
+
|
|
49
|
+
This example assigns the appropriate string to the variable `result`.
|
|
50
|
+
|
|
51
|
+
|
|
52
|
+
Just enough Ruby
|
|
53
|
+
----------------
|
|
54
|
+
To work effectively with _Middlemac_ you’ll only have to learn enough Ruby to
|
|
55
|
+
do a few simple things:
|
|
56
|
+
|
|
57
|
+
- Set variables in the `config.rb` file.
|
|
58
|
+
- Use a few helper functions from within files, e.g., `partial 'my_file'`.
|
|
59
|
+
- Use conditionals, if you want them. You know: simply `if/else/end`, or even
|
|
60
|
+
`unless/else/end`.
|
|
61
|
+
|
|
62
|
+
|
|
63
|
+
Gems
|
|
64
|
+
----
|
|
65
|
+
|
|
66
|
+
“Gems” are packages of Ruby or compiled code in a standard format that serve
|
|
67
|
+
as extensions or library additions to Ruby. _Middlemac_ is a system consisting
|
|
68
|
+
of the `middlemac` gem, among others.
|
|
69
|
+
|
|
70
|
+
By default Ruby is configured to fetch gems from
|
|
71
|
+
[rubygems.org](https://rubygems.org/), which is convenient as long as you are
|
|
72
|
+
connected to the internet.
|
|
73
|
+
|
|
74
|
+
Gems, as software, have versions and can have dependencies on other gems. This
|
|
75
|
+
can lead to dependency hell when multiple versions of multiple gems are
|
|
76
|
+
installed having a clash due to mixed dependencies. Luckily this has been
|
|
77
|
+
mostly solved via the use of Bundler.
|
|
78
|
+
|
|
79
|
+
Bundler
|
|
80
|
+
-------
|
|
81
|
+
|
|
82
|
+
Bundler is a gem version management system that ensures that the correct gem
|
|
83
|
+
version is used on a per-project basis, as specified in the `Gemfile` and
|
|
84
|
+
locked in `Gemfile.lock` (more on these below).
|
|
85
|
+
|
|
86
|
+
Using bundler will ensure that gem versions of known compatibility will be
|
|
87
|
+
used. For example, _Middlemac_ requires _Middleman_ version 4.2 or higher,
|
|
88
|
+
which itself requires other gems of specific versions. Bundler will ensure
|
|
89
|
+
that when building a _Middlemac_ project, _only_ the correct gems and versions
|
|
90
|
+
are used.
|
|
91
|
+
|
|
92
|
+
When you see a command such as:
|
|
93
|
+
|
|
94
|
+
~~~
|
|
95
|
+
bundle exec middleman build
|
|
96
|
+
~~~
|
|
97
|
+
|
|
98
|
+
…it means that Bundler will execute the `middleman` gem, and will take
|
|
99
|
+
responsibility for ensuring the correct gem versions are used. If we want to
|
|
100
|
+
leave it up to chance, we might try this:
|
|
101
|
+
|
|
102
|
+
~~~
|
|
103
|
+
middleman build
|
|
104
|
+
~~~
|
|
105
|
+
|
|
106
|
+
…and this might work, or it might not. Without using Bundler, the default
|
|
107
|
+
versions of gems installed on your system will be used, and they might not be
|
|
108
|
+
compatible with the default version of `middleman`.
|
|
109
|
+
|
|
110
|
+
Ruby projects, including _Middlemac_ Help Book projects, specify gem versions
|
|
111
|
+
using a file in the project directory called `Gemfile`.
|
|
112
|
+
|
|
113
|
+
|
|
114
|
+
`Gemfile` and `Gemfile.lock`
|
|
115
|
+
----------------------------
|
|
116
|
+
|
|
117
|
+
Your _Middlemac_ project contains this file to specify to Bundler which
|
|
118
|
+
versions of Ruby gems should be used. In general you don’t have to bother with
|
|
119
|
+
this file at all. However if you become more advanced and want to use other
|
|
120
|
+
gems, you’ll have to dive into this file eventually.
|
|
121
|
+
|
|
122
|
+
This file contains gems and the versions that are allowed. For example, this
|
|
123
|
+
documentation project’s `Gemfile` contains something similar to this:
|
|
124
|
+
|
|
125
|
+
~~~ ruby
|
|
126
|
+
gem 'middleman-targets', '~> 1.0.12'
|
|
127
|
+
~~~
|
|
128
|
+
|
|
129
|
+
This declaration tells Bundler that `middleman-targets` is a gem that is
|
|
130
|
+
required for this project, and that any version greater than 1.0.12
|
|
131
|
+
(inclusive) is allowed, but only in the `1.0.x` series. The `~>` is called a
|
|
132
|
+
“pessimistic operator” and is used if we don’t trust the `1.1.x` will break
|
|
133
|
+
nothing.
|
|
134
|
+
|
|
135
|
+
Other operators are available, too, of course, and are a simple web search
|
|
136
|
+
away.
|
|
137
|
+
|
|
138
|
+
The file `Gemfile.lock` is generated automatically by Bundler, and you should
|
|
139
|
+
never modify this file yourself. This file is the file that indicates to
|
|
140
|
+
Bundler the _exact_ versions of Gems that will be used. It ensures that the
|
|
141
|
+
set of gems always stays consistent (even if you update gems) unless you
|
|
142
|
+
deliberately want it to do otherwise.
|
|
143
|
+
|
|
144
|
+
Whether or not you add `Gemfile.lock` to version control is up to you. Doing
|
|
145
|
+
so mean that anyone that checks out your project will use the exact gem
|
|
146
|
+
versions that you have committed; otherwise, consistent with the rules in the
|
|
147
|
+
`Gemfile`, any checkouts will generate a `Gemfile.lock` and run using
|
|
148
|
+
different versions of the gems. In theory, this should be perfectly fine, but
|
|
149
|
+
API-breaking changes sometimes do happen with point updates.
|
|
150
|
+
{: .tip .callout}
|
|
151
|
+
|
|
152
|
+
### `bundle install`
|
|
153
|
+
|
|
154
|
+
When you `cd` into a project directory, you can:
|
|
155
|
+
|
|
156
|
+
~~~
|
|
157
|
+
bundle install
|
|
158
|
+
~~~
|
|
159
|
+
|
|
160
|
+
This tells Bundler to check the `Gemfile` and install any gems that are
|
|
161
|
+
required but are missing, typically from
|
|
162
|
+
[rubygems.org](https://rubygems.org/). After installing the gems Bundler will
|
|
163
|
+
also update the `Gemfile.lock`, thereby freezing the versions to be used in
|
|
164
|
+
your project.
|
|
165
|
+
|
|
166
|
+
What happens if I install a newer version of a Ruby gem? For example, if the
|
|
167
|
+
`Gemfile` is configured to use `middleman-targets` 1.0.12 or above, and I’ve
|
|
168
|
+
been building with it for weeks, and then update my gem to 1.0.14? In this
|
|
169
|
+
case, as long as 1.0.12 is still installed on your system, Bundler will still
|
|
170
|
+
use this version.
|
|
171
|
+
|
|
172
|
+
You’ll either have to update the `Gemfile` with 1.0.14 and then `bundle
|
|
173
|
+
install` again, or…
|
|
174
|
+
|
|
175
|
+
### `bundle update`
|
|
176
|
+
|
|
177
|
+
This tells Bundler to install newer versions of all of your Gems, if
|
|
178
|
+
available, and within the pessimistic version checks in the `Gemfile`, and
|
|
179
|
+
also updates `Gemfile.lock` so that newer versions of the gems will be used.
|
|
180
|
+
|
|
181
|
+
~~~
|
|
182
|
+
bundle update
|
|
183
|
+
~~~
|
|
184
|
+
|
|
185
|
+
|
|
186
|
+
`config.rb`
|
|
187
|
+
-----------
|
|
188
|
+
|
|
189
|
+
Nearly every Ruby project, including your _Middlemac_ Help Book project,
|
|
190
|
+
follows the convention of configuration via a `config.rb` file in the root
|
|
191
|
+
level of your project directory.
|
|
192
|
+
|
|
193
|
+
Information specific to _Middlemac_’s `config.rb` is available in the
|
|
194
|
+
[appropriate section][setup] of this documentation.
|