middlemac 2.0.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/.gitignore +24 -0
- data/.yardopts +7 -0
- data/CHANGELOG.md +43 -0
- data/Gemfile +18 -0
- data/LICENSE.md +22 -0
- data/README.md +225 -0
- data/Rakefile +213 -0
- data/bin/middlemac +103 -0
- data/documentation_project/.gitignore +37 -0
- data/documentation_project/Contents/Info.plist.erb +42 -0
- data/documentation_project/Contents/Resources/Base.lproj/010_what_is_middlemac/index.html.md.erb +126 -0
- data/documentation_project/Contents/Resources/Base.lproj/020_setup_tutorial/index.html.md.erb +168 -0
- data/documentation_project/Contents/Resources/Base.lproj/030_skills_refresher/10_markdown_skill.html.md.erb +63 -0
- data/documentation_project/Contents/Resources/Base.lproj/030_skills_refresher/20_frontmatter_skill.html.md.erb +54 -0
- data/documentation_project/Contents/Resources/Base.lproj/030_skills_refresher/30_middleman_skill.html.md.erb +93 -0
- data/documentation_project/Contents/Resources/Base.lproj/030_skills_refresher/40_ruby_skill.html.md.erb +67 -0
- data/documentation_project/Contents/Resources/Base.lproj/030_skills_refresher/50_ruby_ecosystem.html.md.erb +136 -0
- data/documentation_project/Contents/Resources/Base.lproj/030_skills_refresher/60_filetypes_skill.html.md.erb +165 -0
- data/documentation_project/Contents/Resources/Base.lproj/030_skills_refresher/index.html.md.erb +35 -0
- data/documentation_project/Contents/Resources/Base.lproj/040_setup/index.html.md.erb +88 -0
- data/documentation_project/Contents/Resources/Base.lproj/050_structure/010_directories_and_images.html.md.erb +176 -0
- data/documentation_project/Contents/Resources/Base.lproj/050_structure/020_layouts_and_templates.html.md.erb +71 -0
- data/documentation_project/Contents/Resources/Base.lproj/050_structure/025_css.html.md.erb +71 -0
- data/documentation_project/Contents/Resources/Base.lproj/050_structure/030_groups.html.md.erb +83 -0
- data/documentation_project/Contents/Resources/Base.lproj/050_structure/040_breadcrumbs.html.md.erb +43 -0
- data/documentation_project/Contents/Resources/Base.lproj/050_structure/050_navigator.html.md.erb +26 -0
- data/documentation_project/Contents/Resources/Base.lproj/050_structure/060_targets.html.md.erb +63 -0
- data/documentation_project/Contents/Resources/Base.lproj/050_structure/070_features.html.md.erb +122 -0
- data/documentation_project/Contents/Resources/Base.lproj/050_structure/index.html.md.erb +21 -0
- data/documentation_project/Contents/Resources/Base.lproj/050_structure/not_free.html.md.erb +43 -0
- data/documentation_project/Contents/Resources/Base.lproj/050_structure/not_pro.html.md.erb +43 -0
- data/documentation_project/Contents/Resources/Base.lproj/060_content/010_frontmatter.html.md.erb +88 -0
- data/documentation_project/Contents/Resources/Base.lproj/060_content/030_helpers.html.md.erb +247 -0
- data/documentation_project/Contents/Resources/Base.lproj/060_content/040_partials.html.md.erb +121 -0
- data/documentation_project/Contents/Resources/Base.lproj/060_content/050_resources.html.md.erb +60 -0
- data/documentation_project/Contents/Resources/Base.lproj/060_content/070_including_excluding.html.md.erb +68 -0
- data/documentation_project/Contents/Resources/Base.lproj/060_content/080_markdown_links_images.html.md.erb +93 -0
- data/documentation_project/Contents/Resources/Base.lproj/060_content/090_css_image_sizes.html.md.erb +90 -0
- data/documentation_project/Contents/Resources/Base.lproj/060_content/100_using_local_data.html.md.erb +37 -0
- data/documentation_project/Contents/Resources/Base.lproj/060_content/index.html.md.erb +21 -0
- data/documentation_project/Contents/Resources/Base.lproj/070_preview_build/index.html.md.erb +78 -0
- data/documentation_project/Contents/Resources/Base.lproj/090_build_application/10_apple_help_setup.html.md.erb +110 -0
- data/documentation_project/Contents/Resources/Base.lproj/090_build_application/20_xcode_integration.html.md.erb +64 -0
- data/documentation_project/Contents/Resources/Base.lproj/090_build_application/index.html.md.erb +25 -0
- data/documentation_project/Contents/Resources/Base.lproj/100_reference/10_cli_ref.html.md.erb +72 -0
- data/documentation_project/Contents/Resources/Base.lproj/100_reference/20_config_ref.html.md.erb +56 -0
- data/documentation_project/Contents/Resources/Base.lproj/100_reference/30_helpers_ext_ref.html.md.erb +51 -0
- data/documentation_project/Contents/Resources/Base.lproj/100_reference/40_helpers_ref.html.md.erb +45 -0
- data/documentation_project/Contents/Resources/Base.lproj/100_reference/50_resource_ext_ref.html.md.erb +25 -0
- data/documentation_project/Contents/Resources/Base.lproj/100_reference/index.html.md.erb +26 -0
- data/documentation_project/Contents/Resources/Base.lproj/110_acknowledgements/index.html.md.erb +61 -0
- data/documentation_project/Contents/Resources/Base.lproj/120_backwards_compatibility/index.html.md.erb +88 -0
- data/documentation_project/Contents/Resources/Base.lproj/130_all_help_content/index.html.md.erb +15 -0
- data/documentation_project/Contents/Resources/Base.lproj/InfoPlist.strings.erb +10 -0
- data/documentation_project/Contents/Resources/Base.lproj/assets/_data/globals.yml +11 -0
- data/documentation_project/Contents/Resources/Base.lproj/assets/_layouts/layout-html4.haml +22 -0
- data/documentation_project/Contents/Resources/Base.lproj/assets/_layouts/layout-xhtml.haml +28 -0
- data/documentation_project/Contents/Resources/Base.lproj/assets/_layouts/template-logo-large.haml +30 -0
- data/documentation_project/Contents/Resources/Base.lproj/assets/_layouts/template-logo-medium.haml +30 -0
- data/documentation_project/Contents/Resources/Base.lproj/assets/_layouts/template-logo-small.haml +30 -0
- 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 +655 -0
- 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/all-sample.png +0 -0
- data/documentation_project/Contents/Resources/Base.lproj/assets/images/all-sample@2x.png +0 -0
- data/documentation_project/Contents/Resources/Base.lproj/assets/images/free-middlemac-logo-small.png +0 -0
- data/documentation_project/Contents/Resources/Base.lproj/assets/images/free-middlemac-logo-small@2x.png +0 -0
- data/documentation_project/Contents/Resources/Base.lproj/assets/images/free-middlemac-logo.png +0 -0
- data/documentation_project/Contents/Resources/Base.lproj/assets/images/free-middlemac-logo@2x.png +0 -0
- data/documentation_project/Contents/Resources/Base.lproj/assets/images/middlemac-logo-small.png +0 -0
- data/documentation_project/Contents/Resources/Base.lproj/assets/images/middlemac-logo-small@2x.png +0 -0
- data/documentation_project/Contents/Resources/Base.lproj/assets/images/middlemac-logo.png +0 -0
- data/documentation_project/Contents/Resources/Base.lproj/assets/images/middlemac-logo@2x.png +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/images/mm-targets/free-logo-small.png +0 -0
- data/documentation_project/Contents/Resources/Base.lproj/assets/images/mm-targets/free-logo-small@2x.png +0 -0
- data/documentation_project/Contents/Resources/Base.lproj/assets/images/mm-targets/free-logo.png +0 -0
- data/documentation_project/Contents/Resources/Base.lproj/assets/images/mm-targets/free-logo@2x.png +0 -0
- data/documentation_project/Contents/Resources/Base.lproj/assets/images/mm-targets/pro-logo-small.png +0 -0
- data/documentation_project/Contents/Resources/Base.lproj/assets/images/mm-targets/pro-logo-small@2x.png +0 -0
- data/documentation_project/Contents/Resources/Base.lproj/assets/images/mm-targets/pro-logo.png +0 -0
- data/documentation_project/Contents/Resources/Base.lproj/assets/images/mm-targets/pro-logo@2x.png +0 -0
- data/documentation_project/Contents/Resources/Base.lproj/assets/images/pro-middlemac-logo-small.png +0 -0
- data/documentation_project/Contents/Resources/Base.lproj/assets/images/pro-middlemac-logo-small@2x.png +0 -0
- data/documentation_project/Contents/Resources/Base.lproj/assets/images/pro-middlemac-logo.png +0 -0
- data/documentation_project/Contents/Resources/Base.lproj/assets/images/pro-middlemac-logo@2x.png +0 -0
- data/documentation_project/Contents/Resources/Base.lproj/assets/javascripts/all.js +1 -0
- data/documentation_project/Contents/Resources/Base.lproj/assets/partials/_nav_breadcrumbs.haml +11 -0
- data/documentation_project/Contents/Resources/Base.lproj/assets/partials/_nav_breadcrumbs_alt.haml +15 -0
- data/documentation_project/Contents/Resources/Base.lproj/assets/partials/_nav_brethren.haml +18 -0
- data/documentation_project/Contents/Resources/Base.lproj/assets/partials/_nav_brethren_index.haml +14 -0
- data/documentation_project/Contents/Resources/Base.lproj/assets/partials/_nav_legitimate_children.haml +16 -0
- data/documentation_project/Contents/Resources/Base.lproj/assets/partials/_nav_prev_next.haml +21 -0
- data/documentation_project/Contents/Resources/Base.lproj/assets/partials/_nav_toc_index.haml +21 -0
- data/documentation_project/Contents/Resources/Base.lproj/assets/partials/_yard_extras_config.erb +200 -0
- data/documentation_project/Contents/Resources/Base.lproj/assets/partials/_yard_extras_helpers.erb +146 -0
- data/documentation_project/Contents/Resources/Base.lproj/assets/partials/_yard_extras_helpers_extended.erb +135 -0
- data/documentation_project/Contents/Resources/Base.lproj/assets/partials/_yard_middlemac_config.erb +207 -0
- data/documentation_project/Contents/Resources/Base.lproj/assets/partials/_yard_middlemac_helpers.erb +297 -0
- data/documentation_project/Contents/Resources/Base.lproj/assets/partials/_yard_middlemac_helpers_extended.erb +96 -0
- data/documentation_project/Contents/Resources/Base.lproj/assets/partials/_yard_pagegroups_config.erb +744 -0
- data/documentation_project/Contents/Resources/Base.lproj/assets/partials/_yard_pagegroups_helpers.erb +710 -0
- data/documentation_project/Contents/Resources/Base.lproj/assets/partials/_yard_pagegroups_helpers_css.erb +523 -0
- data/documentation_project/Contents/Resources/Base.lproj/assets/partials/_yard_pagegroups_helpers_extended.erb +56 -0
- data/documentation_project/Contents/Resources/Base.lproj/assets/partials/_yard_pagegroups_resources.erb +540 -0
- data/documentation_project/Contents/Resources/Base.lproj/assets/partials/_yard_targets_config.erb +402 -0
- data/documentation_project/Contents/Resources/Base.lproj/assets/partials/_yard_targets_helpers.erb +235 -0
- data/documentation_project/Contents/Resources/Base.lproj/assets/partials/_yard_targets_helpers_extended.erb +138 -0
- data/documentation_project/Contents/Resources/Base.lproj/assets/partials/_yard_targets_instance.erb +81 -0
- data/documentation_project/Contents/Resources/Base.lproj/assets/partials/_yard_targets_resources.erb +109 -0
- data/documentation_project/Contents/Resources/Base.lproj/assets/stylesheets/_apple_helpbook.scss +946 -0
- data/documentation_project/Contents/Resources/Base.lproj/assets/stylesheets/_github.scss +61 -0
- data/documentation_project/Contents/Resources/Base.lproj/assets/stylesheets/_normalize.scss +374 -0
- 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 +8 -0
- data/documentation_project/Contents/Resources/Base.lproj/assets/stylesheets/style.css.scss +4 -0
- data/documentation_project/Contents/Resources/Base.lproj/index.html.md.erb +31 -0
- data/documentation_project/Contents/Resources/shared/free-icon_256x256.png +0 -0
- data/documentation_project/Contents/Resources/shared/free-icon_256x256@2x.png +0 -0
- data/documentation_project/Contents/Resources/shared/free-icon_32x32.png +0 -0
- data/documentation_project/Contents/Resources/shared/free-icon_32x32@2x.png +0 -0
- data/documentation_project/Contents/Resources/shared/icon_256x256.png +0 -0
- data/documentation_project/Contents/Resources/shared/icon_256x256@2x.png +0 -0
- data/documentation_project/Contents/Resources/shared/icon_32x32.png +0 -0
- data/documentation_project/Contents/Resources/shared/icon_32x32@2x.png +0 -0
- data/documentation_project/Contents/Resources/shared/pro-icon_256x256.png +0 -0
- data/documentation_project/Contents/Resources/shared/pro-icon_256x256@2x.png +0 -0
- data/documentation_project/Contents/Resources/shared/pro-icon_32x32.png +0 -0
- data/documentation_project/Contents/Resources/shared/pro-icon_32x32@2x.png +0 -0
- data/documentation_project/Gemfile +51 -0
- data/documentation_project/HelpViewerApp/HelpViewerApp.xcodeproj/project.pbxproj +529 -0
- data/documentation_project/HelpViewerApp/HelpViewerApp.xcodeproj/project.xcworkspace/contents.xcworkspacedata +7 -0
- data/documentation_project/HelpViewerApp/HelpViewerApp.xcodeproj/xcshareddata/xcschemes/Help (free).xcscheme +80 -0
- data/documentation_project/HelpViewerApp/HelpViewerApp.xcodeproj/xcshareddata/xcschemes/HelpViewerApp (free).xcscheme +91 -0
- data/documentation_project/HelpViewerApp/HelpViewerApp.xcodeproj/xcshareddata/xcschemes/HelpViewerApp (pro).xcscheme +91 -0
- data/documentation_project/HelpViewerApp/HelpViewerApp/AppDelegate.h +16 -0
- data/documentation_project/HelpViewerApp/HelpViewerApp/AppDelegate.m +45 -0
- data/documentation_project/HelpViewerApp/HelpViewerApp/Assets.xcassets/AppIcon.appiconset/Contents.json +58 -0
- data/documentation_project/HelpViewerApp/HelpViewerApp/Base.lproj/MainMenu.xib +115 -0
- data/documentation_project/HelpViewerApp/HelpViewerApp/Info-free.plist +38 -0
- data/documentation_project/HelpViewerApp/HelpViewerApp/Info-pro.plist +38 -0
- data/documentation_project/HelpViewerApp/HelpViewerApp/main.m +13 -0
- data/documentation_project/HelpViewerApp/README.md +43 -0
- data/documentation_project/Middlemac (free).help/.gitignore +3 -0
- data/documentation_project/Middlemac (pro).help/.gitignore +3 -0
- data/documentation_project/config.rb +309 -0
- data/documentation_project/middlemac.webloc +0 -0
- data/features/main_features.feature +44 -0
- data/features/support/env.rb +20 -0
- data/fixtures/middlemac_app/.gitignore +25 -0
- data/fixtures/middlemac_app/Contents/Info.plist.erb +42 -0
- data/fixtures/middlemac_app/Contents/Resources/Base.lproj/10_hello_world_file.html.md.erb +22 -0
- data/fixtures/middlemac_app/Contents/Resources/Base.lproj/20_goodbye_world_file.html.md.erb +22 -0
- data/fixtures/middlemac_app/Contents/Resources/Base.lproj/30_sample_group_number_one/index.html.md.erb +24 -0
- data/fixtures/middlemac_app/Contents/Resources/Base.lproj/30_sample_group_number_one/page_one.html.md.erb +20 -0
- data/fixtures/middlemac_app/Contents/Resources/Base.lproj/30_sample_group_number_one/page_two.html.md.erb +19 -0
- data/fixtures/middlemac_app/Contents/Resources/Base.lproj/40_sample_group_number_two/01_nested_group_example/01_page_one.html.md.erb +18 -0
- data/fixtures/middlemac_app/Contents/Resources/Base.lproj/40_sample_group_number_two/01_nested_group_example/02_pagina_dos.html.md.erb +19 -0
- data/fixtures/middlemac_app/Contents/Resources/Base.lproj/40_sample_group_number_two/01_nested_group_example/03_page_san.html.md.erb +18 -0
- data/fixtures/middlemac_app/Contents/Resources/Base.lproj/40_sample_group_number_two/01_nested_group_example/index.html.md.erb +18 -0
- data/fixtures/middlemac_app/Contents/Resources/Base.lproj/40_sample_group_number_two/02_page_two.html.md.erb +19 -0
- data/fixtures/middlemac_app/Contents/Resources/Base.lproj/40_sample_group_number_two/03_page_three.html.md.erb +19 -0
- data/fixtures/middlemac_app/Contents/Resources/Base.lproj/40_sample_group_number_two/index.html.md.erb +24 -0
- data/fixtures/middlemac_app/Contents/Resources/Base.lproj/45_testing_world_file.html.md.erb +55 -0
- data/fixtures/middlemac_app/Contents/Resources/Base.lproj/50_entire_world_file.html.md.erb +15 -0
- data/fixtures/middlemac_app/Contents/Resources/Base.lproj/InfoPlist.strings.erb +10 -0
- data/fixtures/middlemac_app/Contents/Resources/Base.lproj/_new_style_partial.erb +1 -0
- data/fixtures/middlemac_app/Contents/Resources/Base.lproj/assets/_data/globals.yml +11 -0
- data/fixtures/middlemac_app/Contents/Resources/Base.lproj/assets/_layouts/layout-html4.haml +22 -0
- data/fixtures/middlemac_app/Contents/Resources/Base.lproj/assets/_layouts/layout-xhtml.haml +28 -0
- data/fixtures/middlemac_app/Contents/Resources/Base.lproj/assets/_layouts/template-logo-large.haml +30 -0
- data/fixtures/middlemac_app/Contents/Resources/Base.lproj/assets/_layouts/template-logo-medium.haml +30 -0
- data/fixtures/middlemac_app/Contents/Resources/Base.lproj/assets/_layouts/template-logo-small.haml +30 -0
- 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 +655 -0
- 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 +1 -0
- data/fixtures/middlemac_app/Contents/Resources/Base.lproj/assets/javascripts/all.js +1 -0
- data/fixtures/middlemac_app/Contents/Resources/Base.lproj/assets/partials/_nav_breadcrumbs.haml +11 -0
- data/fixtures/middlemac_app/Contents/Resources/Base.lproj/assets/partials/_nav_breadcrumbs_alt.haml +15 -0
- data/fixtures/middlemac_app/Contents/Resources/Base.lproj/assets/partials/_nav_brethren.haml +18 -0
- data/fixtures/middlemac_app/Contents/Resources/Base.lproj/assets/partials/_nav_brethren_index.haml +14 -0
- data/fixtures/middlemac_app/Contents/Resources/Base.lproj/assets/partials/_nav_legitimate_children.haml +16 -0
- data/fixtures/middlemac_app/Contents/Resources/Base.lproj/assets/partials/_nav_prev_next.haml +21 -0
- data/fixtures/middlemac_app/Contents/Resources/Base.lproj/assets/partials/_nav_toc_index.haml +21 -0
- data/fixtures/middlemac_app/Contents/Resources/Base.lproj/assets/partials/_partials_dir_partial.erb +1 -0
- data/fixtures/middlemac_app/Contents/Resources/Base.lproj/assets/stylesheets/_apple_helpbook.scss +946 -0
- data/fixtures/middlemac_app/Contents/Resources/Base.lproj/assets/stylesheets/_github.scss +61 -0
- data/fixtures/middlemac_app/Contents/Resources/Base.lproj/assets/stylesheets/_normalize.scss +374 -0
- 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 +8 -0
- data/fixtures/middlemac_app/Contents/Resources/Base.lproj/assets/stylesheets/style.css.scss +4 -0
- data/fixtures/middlemac_app/Contents/Resources/Base.lproj/index.html.md.erb +17 -0
- data/fixtures/middlemac_app/Contents/Resources/shared/icon_256x256.png +0 -0
- data/fixtures/middlemac_app/Contents/Resources/shared/icon_256x256@2x.png +0 -0
- data/fixtures/middlemac_app/Contents/Resources/shared/icon_32x32.png +0 -0
- data/fixtures/middlemac_app/Contents/Resources/shared/icon_32x32@2x.png +0 -0
- data/fixtures/middlemac_app/Gemfile +51 -0
- data/fixtures/middlemac_app/config.rb +309 -0
- data/fixtures/middlemac_app/middlemac.webloc +0 -0
- data/lib/middlemac.rb +6 -0
- data/lib/middlemac/extension.rb +274 -0
- data/lib/middlemac/version.rb +5 -0
- data/middlemac.gemspec +38 -0
- data/yard/readme.md +9 -0
- data/yard/template-grouped/default/module/html/method_details_list.erb +11 -0
- data/yard/template-partials/default/method_details/setup.rb +4 -0
- data/yard/template-partials/default/module/html/attribute_details.erb +9 -0
- data/yard/template-partials/default/module/html/method_details_list.erb +10 -0
- data/yard/template-partials/default/module/setup.rb +6 -0
- data/yard/template-partials/default/onefile/html/layout.erb +1 -0
- data/yard/template-partials/default/onefile/html/setup.rb +4 -0
- data/yard/yard_extensions.rb +109 -0
- metadata +454 -0
data/documentation_project/Contents/Resources/Base.lproj/030_skills_refresher/index.html.md.erb
ADDED
@@ -0,0 +1,35 @@
|
|
1
|
+
---
|
2
|
+
title: Skills Refresher
|
3
|
+
blurb: If you don’t know a thing about Ruby or <em>Middleman</em>, don’t
|
4
|
+
worry; there’s enough information in this section to get you started.
|
5
|
+
layout: template-logo-large
|
6
|
+
navigate: true
|
7
|
+
---
|
8
|
+
<%= md_links %>
|
9
|
+
<%= md_images %>
|
10
|
+
|
11
|
+
<%= current_page.data.title %>
|
12
|
+
==============================
|
13
|
+
|
14
|
+
<%= current_page.data.blurb %>
|
15
|
+
|
16
|
+
_Middlemac_ uses tools you may already know. Or not.
|
17
|
+
|
18
|
+
- [Markdown](http://kramdown.gettalong.org/) is the text-based, human-readable,
|
19
|
+
easy to use format that will make writing your documentation a real pleasure.
|
20
|
+
This file is written using Markdown.
|
21
|
+
- [_Middleman_](http://middlemanapp.com) is a static HTML site generator, and is
|
22
|
+
the heart of _Middlemac_’s abilities, as well as an inspiration for the name.
|
23
|
+
- [Ruby](https://www.ruby-lang.org/en/) is the language that _Middlemac_,
|
24
|
+
_Middleman_, and many of the others tools are written with. You do not have
|
25
|
+
to learn Ruby to take advantage of _Middlemac_, although some ability to work
|
26
|
+
with it will be invaluable to you.
|
27
|
+
- HTML is the markup language that Apple requires for help books. But
|
28
|
+
_Middlemac_ promises to make things easy for you, and so…
|
29
|
+
|
30
|
+
|
31
|
+
* * *
|
32
|
+
|
33
|
+
<%= nav_legitimate_children %>
|
34
|
+
|
35
|
+
* * *
|
@@ -0,0 +1,88 @@
|
|
1
|
+
---
|
2
|
+
title: "Workflow: Set up your Help Project"
|
3
|
+
blurb: Setting up your help project is the first step in <em>Middlemac</em>’s
|
4
|
+
workflow. Understand how to do this setup in this article.
|
5
|
+
layout: template-logo-medium
|
6
|
+
---
|
7
|
+
<%= md_links %>
|
8
|
+
<%= md_images %>
|
9
|
+
|
10
|
+
<%= current_page.data.title %>
|
11
|
+
==============================
|
12
|
+
|
13
|
+
<%= current_page.data.blurb %>
|
14
|
+
|
15
|
+
The file `config.rb` has settings which both affect how _Middleman_ operates as
|
16
|
+
well as how _Middlemac_ builds your help books. **If you follow the _Middlemac_
|
17
|
+
conventions, there should be no reason to change the _Middleman_ settings.**
|
18
|
+
|
19
|
+
When you open `config.rb` in your text editor, at the top you will readily
|
20
|
+
identify the start of the _Middlemac_ configuration section, which is delimited
|
21
|
+
by this block at the beginning:
|
22
|
+
|
23
|
+
~~~ ruby
|
24
|
+
################################################################################
|
25
|
+
# config.rb
|
26
|
+
# Configure Middleman to generate Apple HelpBook containers for multiple
|
27
|
+
# targets.
|
28
|
+
################################################################################
|
29
|
+
~~~
|
30
|
+
|
31
|
+
And terminated by this block at the end:
|
32
|
+
|
33
|
+
~~~ ruby
|
34
|
+
################################################################
|
35
|
+
# STOP! There's nothing below here that you should have to
|
36
|
+
# change. Just follow the conventions and framework provided.
|
37
|
+
################################################################
|
38
|
+
~~~
|
39
|
+
|
40
|
+
## Sections
|
41
|
+
|
42
|
+
Because _Middlemac_ is made from several components, its key configuration
|
43
|
+
is performed in several different blocks. The file is also very well commented,
|
44
|
+
and the [API Reference][config_ref] contains specific documentation for each
|
45
|
+
setting.
|
46
|
+
|
47
|
+
However the `targets` hash bears explaining.
|
48
|
+
|
49
|
+
## The `targets` hash explained
|
50
|
+
|
51
|
+
At first the `targets` option looks complicated in that it consists of nested
|
52
|
+
hashes, but the format is quite simple to get used to. Each root level item
|
53
|
+
in `targets` consists of the following items, which are unique for each target.
|
54
|
+
|
55
|
+
`:CFBundleID`
|
56
|
+
: Each help target must have a unique `CFBundleID` that matches a unique
|
57
|
+
`CFBundleHelpBookName` in your applications’ `Info.plist` files. This
|
58
|
+
pairing is the mechanism by which Mac OS X knows which help bundle belongs
|
59
|
+
to which application. If they are not unique, Mac OS X _will_ become
|
60
|
+
confused, and your end-users, if they have multiple versions of your product
|
61
|
+
installed, will not be very satisfied.
|
62
|
+
|
63
|
+
`:HPDBookIconPath`
|
64
|
+
: If specified a target-specific icon will be used as the help book icon by
|
65
|
+
Apple’s help viewer. This path must be relative to the location of the
|
66
|
+
`Info.plist` file per Apple’s specification. If `nil` (or not present) then
|
67
|
+
the default `shared/icon_32x32@2x.png` will be used.
|
68
|
+
|
69
|
+
`:CFBundleName`
|
70
|
+
: This value will be used for correct `.plists` and `.strings` setup, and will
|
71
|
+
determine final `.help` directory name. All targets should use the same
|
72
|
+
`:CFBundleName`. Built targets will be named `CFBundleName (target).help`.
|
73
|
+
This is *not* intended to be a product name, which is defined below.
|
74
|
+
|
75
|
+
`:ProductName`, `ProductVersion`, and `ProductURI`
|
76
|
+
: The default templates use these in a prominent way, and they’re also
|
77
|
+
available to you using _Middlemac_’s helpers.
|
78
|
+
|
79
|
+
`:Features`
|
80
|
+
: Aside from **targets** the use of **features** can give you fine-grained
|
81
|
+
control over what content appears in each target. It’s considered a
|
82
|
+
best-practice to include all of the same features in the hash for each
|
83
|
+
target, and specify a boolean (true/false) value for each key, as
|
84
|
+
appropriate for your target. _Middlemac_ documentation has four features
|
85
|
+
defined.
|
86
|
+
|
87
|
+
|
88
|
+
|
@@ -0,0 +1,176 @@
|
|
1
|
+
---
|
2
|
+
title: Directories, filenames, images, and paths
|
3
|
+
blurb: Learn about proper structure for your directory hierarchy, filenames,
|
4
|
+
and image locations, and discover some best practices related to paths.
|
5
|
+
layout: template-logo-medium
|
6
|
+
---
|
7
|
+
<%= md_links %>
|
8
|
+
<%= md_images %>
|
9
|
+
|
10
|
+
|
11
|
+
<%= current_page.data.title %>
|
12
|
+
==============================
|
13
|
+
|
14
|
+
<%= current_page.data.blurb %>
|
15
|
+
|
16
|
+
Directory conventions
|
17
|
+
---------------------
|
18
|
+
|
19
|
+
You will have noticed by now that your content root appears to be two levels
|
20
|
+
below the actual project root. This is a result of the Apple Help directory
|
21
|
+
structure. Remember, _Middleman_ depends on building an output project that
|
22
|
+
mirrors the input project. In order for links, images, and other content to
|
23
|
+
be accessed properly, _Middlemac_ uses Apple’s convention.
|
24
|
+
|
25
|
+
Fortunately once inside the `Base.lproj` directory, we -- as help book
|
26
|
+
developers -- are free to organize files as we see fit, despite the examples
|
27
|
+
you may have seen in Apple’s documentation. _Middlemac_, though, has setup a
|
28
|
+
hierarchy that “just works,” and the explanation follows. Starting at the top,
|
29
|
+
let’s look at a _Middleman_ project layout. Also don’t forget to have a look
|
30
|
+
later at [Apple Help setup][apple_help_setup].
|
31
|
+
|
32
|
+
Note the many of the file names below are written with destination, _built_
|
33
|
+
file extensions, and not the complete extension as it might appear in the source
|
34
|
+
directory. For example, the top level source file for `index.html` could have
|
35
|
+
the name `index.html.md.erb` or `index.html.haml`, as you see fit.
|
36
|
+
{:.note}
|
37
|
+
|
38
|
+
`Contents/`
|
39
|
+
|
40
|
+
: Contains everything in your help project that will be compiled into or
|
41
|
+
contribute to the final `.help` project.
|
42
|
+
|
43
|
+
`Contents/Info.plist`
|
44
|
+
|
45
|
+
: The `Info.plist` file is the file that _Middlemac_ will process into the
|
46
|
+
final `Info.plist` that your Mac OS X application needs in order to work with
|
47
|
+
your help book. For a basic project you shouldn’t have to modify anything in
|
48
|
+
this file, but if you want or need to have other key-value pairs in the final
|
49
|
+
`Info.plist`, then add them here.
|
50
|
+
|
51
|
+
`Contents/Resources/shared`
|
52
|
+
|
53
|
+
: This directory contains assets that are common between all of your different
|
54
|
+
help language projects. Although _Middlemac_ is not a multilingual solution
|
55
|
+
_per se_, this is maintained because you can simply have a different
|
56
|
+
_Middlemac_ project per language, and then merge in the other language
|
57
|
+
`.lproj` directories into your final help book, sharing assets in this
|
58
|
+
directory.
|
59
|
+
|
60
|
+
`Contents/Resources/Base.lproj`
|
61
|
+
|
62
|
+
: This directory serves as your base [group][groups] and contains all of your
|
63
|
+
help book’s content as well as pieces that will contribute to your content
|
64
|
+
(such as templates).
|
65
|
+
|
66
|
+
Any other files that result in `.html` in this directory level, except for
|
67
|
+
`index.html` constitute part of the `Base.lproj` group. At this level you
|
68
|
+
should start adding directories to contain your other groups.
|
69
|
+
|
70
|
+
`Contents/Resources/Base.lproj/index.html`
|
71
|
+
|
72
|
+
: This is the top level file in your entire project, and is also the Apple
|
73
|
+
Help System main landing page.
|
74
|
+
|
75
|
+
`Contents/Resources/Base.lproj/InfoPlist.strings`
|
76
|
+
|
77
|
+
: The `InfoPlist.strings` file is the file that _Middlemac_ will process into
|
78
|
+
the final `InfoPlist.strings`, which contains the localized version of your
|
79
|
+
applications’ human-readable `Info.plist` data (specifically, `CFBundleName`
|
80
|
+
and `HPDBookTitle`).
|
81
|
+
|
82
|
+
_Middlemac_ is a multi-target solution for a single language, and not a
|
83
|
+
multi-language solution _per se_, and so the `CFBundleName` in your
|
84
|
+
`config.rb` will be used, whether it’s English or German or Chinese. This is
|
85
|
+
one of the strengths of `Base.lproj`: it’s agnostic.
|
86
|
+
|
87
|
+
`Contents/Resources/Base.lproj/assets/`
|
88
|
+
|
89
|
+
: This directory contains all of the non-content assets used in your help book
|
90
|
+
such as stylesheets, images, etc., as well as data source files, templates,
|
91
|
+
layouts and partials.
|
92
|
+
|
93
|
+
You will notice that some of these classes of items are in unconventional
|
94
|
+
locations compared to a default _Middleman_ project. This was done on your
|
95
|
+
behalf for the sake of portability and for having a non-distracting directory
|
96
|
+
environment.
|
97
|
+
|
98
|
+
`_data/`
|
99
|
+
: This directory contains data files that you can use to supply data for
|
100
|
+
[using local data][using_local_data]. This directory will not be
|
101
|
+
output in the final build.
|
102
|
+
|
103
|
+
`_layouts/`
|
104
|
+
: All layouts and templates should go here. This directory will not be
|
105
|
+
output in the final build.
|
106
|
+
|
107
|
+
`images/`
|
108
|
+
: All images should go here. _Middleman_ will find them automatically if
|
109
|
+
you use the helpers.
|
110
|
+
|
111
|
+
`javascripts/`
|
112
|
+
: Javascripts, if any, should go here. You should prefix each script with
|
113
|
+
an underscore so that they will _not_ be included. The already-present
|
114
|
+
file `all.js` will bundle them into a single file -- `all.js` -- and
|
115
|
+
_that’s_ the file loaded by the _Middlemac_ layouts.
|
116
|
+
|
117
|
+
`partials/`
|
118
|
+
: Partials can go here, and should be prefaced with an underscore so that
|
119
|
+
they will not generate build output. Partial files can also be included
|
120
|
+
in any other directory, too. This is for organizational convenience of
|
121
|
+
common partials that may be used anywhere.
|
122
|
+
|
123
|
+
`stylesheets/`
|
124
|
+
: Your `.css` and `.scss` files should go here. Read more about _Middlemac_
|
125
|
+
CSS organization [here][css].
|
126
|
+
|
127
|
+
|
128
|
+
Images
|
129
|
+
------
|
130
|
+
|
131
|
+
Most images, of course, should go into the `images` directory of the `assets`
|
132
|
+
directory.
|
133
|
+
|
134
|
+
However _Middlemac_ also depends on some magic images being placed in
|
135
|
+
`Contents/Resources/shared/`:
|
136
|
+
|
137
|
+
`icon_32x32.png` and `icon_32x32@2x.png`
|
138
|
+
|
139
|
+
: These files are your help file icon at 32 × 32 pixels and @2x, and will be
|
140
|
+
used by the included templates automatically. More importantly, however, your
|
141
|
+
main landing page is linked to this icon so that Apple Help Viewer knows what
|
142
|
+
the help icon is.
|
143
|
+
|
144
|
+
`icon_256x256.png` and `icon_256x256@2x.png`
|
145
|
+
|
146
|
+
: The same as above, but at 256 × 256 pixels and @2x.
|
147
|
+
|
148
|
+
You will also notice that there are target-specific versions of these images
|
149
|
+
located here, too. This documentation project takes advantage of them, and you
|
150
|
+
can do the same. Note that the non-target specific versions are still required
|
151
|
+
so that the Help Viewer knows to find them!
|
152
|
+
|
153
|
+
|
154
|
+
Images Organization
|
155
|
+
-------------------
|
156
|
+
|
157
|
+
When your content images are located in the `assets/images/` directory,
|
158
|
+
_Middleman_’s [helpers][middleman_helpers] can find them automatically
|
159
|
+
without any worry about relative or absolute file paths.
|
160
|
+
|
161
|
+
|
162
|
+
“Absolute” Paths
|
163
|
+
----------------
|
164
|
+
|
165
|
+
When using _Middleman_’s [helpers][middleman_helpers], absolute paths will be
|
166
|
+
converted to relative paths during the build. Absolute paths are relative to the
|
167
|
+
`Contents` directory and _not_ the filesystem root.
|
168
|
+
|
169
|
+
In general it’s _not_ recommended to use absolute paths unless you need assets
|
170
|
+
outside of _Middlemac_’s configuration. _Middleman_ will automatically build the
|
171
|
+
correct path using only the asset name when you use its helpers, if the assets
|
172
|
+
are in the correct directories (e.g., images in `images/`).
|
173
|
+
|
174
|
+
However you will use absolute paths to refer to items in the `shared/` directory
|
175
|
+
since this it outside of _Middlemac_’s normal search scope. The view templates
|
176
|
+
use this approach, for example.
|
@@ -0,0 +1,71 @@
|
|
1
|
+
---
|
2
|
+
title: Layouts and Templates
|
3
|
+
blurb: Learn the details about how templates and layouts work with each other
|
4
|
+
as well as some best practices for their use.
|
5
|
+
layout: template-logo-medium
|
6
|
+
---
|
7
|
+
<%= md_links %>
|
8
|
+
<%= md_images %>
|
9
|
+
|
10
|
+
|
11
|
+
<%= current_page.data.title %>
|
12
|
+
==============================
|
13
|
+
|
14
|
+
<%= current_page.data.blurb %>
|
15
|
+
|
16
|
+
_Middlemac_ decouples your help _content_ from the display and final document
|
17
|
+
structure by taking advantage of layouts and templates. In general both layouts
|
18
|
+
and templates do the same thing; they wrap your content into the structure
|
19
|
+
required of an HTML file.
|
20
|
+
|
21
|
+
In practice, though, _Middlemac_ distinguishes between them in the manner: a
|
22
|
+
_layout_ defines the formal HTML structure of the end document, and a template
|
23
|
+
defines the superficial appearance of a particular page. For example a page
|
24
|
+
might be wrapped in the `template-logo-medium` template to define its overall
|
25
|
+
look, and then further wrapped in `layout-html4` to ensure that it has the
|
26
|
+
required structure for an Apple help book.
|
27
|
+
|
28
|
+
|
29
|
+
Templates
|
30
|
+
---------
|
31
|
+
|
32
|
+
_Middlemac_ comes with three templates inspired by recent Mac OS X help files.
|
33
|
+
Although you can certainly use any of the templates you desire (or create your
|
34
|
+
own), the included templates were designed with specific purposes in mind.
|
35
|
+
|
36
|
+
`template-logo-large`
|
37
|
+
: This template features your help icon in a large size with your target’s
|
38
|
+
`ProductName` and `ProductURI` below it, in a left frame-like area. Your
|
39
|
+
content is in the right frame-like area. This template was designed to be
|
40
|
+
suited for the main landing page and for main section landing pages
|
41
|
+
consisting primarily of links and descriptions of other pages.
|
42
|
+
|
43
|
+
`template-logo-medium`
|
44
|
+
: This template places a smaller logo in a frame-like area to the right,
|
45
|
+
followed by automatically placed “related links” to other pages in the same
|
46
|
+
group. Your content will occupy the large, left side of the window. This
|
47
|
+
template is idea for multiple, related pages within a group.
|
48
|
+
|
49
|
+
`template-logo-small`
|
50
|
+
: The template places a very small logo at the top of your page. Related links
|
51
|
+
will appear at the bottom of the page after your content. This template is
|
52
|
+
most suited for topics that stand somewhat alone.
|
53
|
+
|
54
|
+
Each of these templates will wrap a layout around them. By default they will
|
55
|
+
always use `layout-html4`, although you can force _Middlemac_ to use the
|
56
|
+
`layout-xhtml` template with the `:xhtml` frontmatter key. You should never do
|
57
|
+
this, though, as Apple requires your content -- except the top level landing
|
58
|
+
page -- to be HTML4.
|
59
|
+
|
60
|
+
|
61
|
+
Layouts
|
62
|
+
-------
|
63
|
+
|
64
|
+
`layout-html4`
|
65
|
+
: This is just an HTML 4.01 wrapper template and if you follow all of the
|
66
|
+
conventions there's nothing you should have to change here.
|
67
|
+
|
68
|
+
`layout-xhtml`
|
69
|
+
: Apple's help landing page (the main page) is supposed to be an XHTML 1.0
|
70
|
+
Strict document. If you follow all of the conventions there's nothing you
|
71
|
+
should have to change here.
|
@@ -0,0 +1,71 @@
|
|
1
|
+
---
|
2
|
+
title: CSS and Fonts
|
3
|
+
blurb: Have a brief look at the included CSS so that you can decide how to best
|
4
|
+
use it or easily change it to suit your own needs.
|
5
|
+
layout: template-logo-medium
|
6
|
+
---
|
7
|
+
<%= md_links %>
|
8
|
+
<%= md_images %>
|
9
|
+
|
10
|
+
|
11
|
+
<%= current_page.data.title %>
|
12
|
+
==============================
|
13
|
+
|
14
|
+
<%= current_page.data.blurb %>
|
15
|
+
|
16
|
+
|
17
|
+
The included CSS and fonts are critical for ensuring that the templates work,
|
18
|
+
but they also serve to provide a recent Apple-like look and feel to your help
|
19
|
+
books.
|
20
|
+
|
21
|
+
## The `assets/fonts/` directory
|
22
|
+
|
23
|
+
`font-awesome/*` (directory)
|
24
|
+
: The files here provide you the ability to use the icons in the font provided
|
25
|
+
by the [font-awesome](http://fortawesome.github.io/Font-Awesome/) project.
|
26
|
+
You can review their documentation if you’d like to include these easy to
|
27
|
+
use images in your project. This documentation uses icons in the navigator
|
28
|
+
buttons.
|
29
|
+
|
30
|
+
## The `assets/stylesheets/` directory
|
31
|
+
|
32
|
+
`_apple_helpbook.scss`
|
33
|
+
: This file contains all of the real styling for _Middlemac_ help books. This
|
34
|
+
should be the first place you check for making desired changes.
|
35
|
+
|
36
|
+
Note that this `.scss` file will be processed but not output to the build
|
37
|
+
directory because it starts with an underscore.
|
38
|
+
|
39
|
+
`_github.scss`
|
40
|
+
: This file contains the styling used for Markdown `<code>` blocks for syntax
|
41
|
+
highlighting, and provides highlighting similar to Github’s style.
|
42
|
+
|
43
|
+
Note that this `.scss` file will not output to the build directory because it
|
44
|
+
starts with an underscore.
|
45
|
+
|
46
|
+
`_normalize.scss`
|
47
|
+
: Although _Middlemac_ is intended to build Apple Help Books, its content can
|
48
|
+
be viewed in web browsers, too. Therefore for convenience, this standard
|
49
|
+
normalize file will help ensure that your content looks nearly the same in
|
50
|
+
any modern, popular browser.
|
51
|
+
|
52
|
+
Note that this `.scss` file will be processed but not output to the build
|
53
|
+
directory because it starts with an underscore.
|
54
|
+
|
55
|
+
`breadcrumb-separator-light.png`
|
56
|
+
: This image is used by CSS to provide a separator between breadcrumb items.
|
57
|
+
It’s not out of place being in a stylesheets directory.
|
58
|
+
|
59
|
+
`images_sizes.css.erb`
|
60
|
+
: This `.erb` file is processed into a stylesheet (via the `css_image_sizes`
|
61
|
+
helper) containing the maximum width and height of every image asset in your
|
62
|
+
project. This will ensure that strange scaling doesn’t occur, and can save
|
63
|
+
time by not having to specify fixed image widths and heights for images you
|
64
|
+
may want to use.
|
65
|
+
|
66
|
+
This file will be copied to the build project and must be included in your
|
67
|
+
layouts if you wish to use it.
|
68
|
+
|
69
|
+
`style.css.scss`
|
70
|
+
: _This_ file, when compiled to CSS, `@include`’s the pertinent files above
|
71
|
+
and bundles them into a single file that is included in the default layouts.
|
@@ -0,0 +1,83 @@
|
|
1
|
+
---
|
2
|
+
title: Groups
|
3
|
+
blurb: Groups are the fundamental organizational technique that enable
|
4
|
+
automatic page management, navigation, and tables of contents simple to
|
5
|
+
implement, and they help you stay organized.
|
6
|
+
layout: template-logo-medium
|
7
|
+
---
|
8
|
+
<%= md_links %>
|
9
|
+
<%= md_images %>
|
10
|
+
|
11
|
+
|
12
|
+
<%= current_page.data.title %>
|
13
|
+
==============================
|
14
|
+
|
15
|
+
<%= current_page.data.blurb %>
|
16
|
+
|
17
|
+
What are groups?
|
18
|
+
----------------
|
19
|
+
|
20
|
+
A Group is one of more files in a single level of directory, and also any
|
21
|
+
`index.html` file of immediate subdirectories of the group.
|
22
|
+
|
23
|
+
Group directories require one file that will compile into `index.html` file in
|
24
|
+
that directory, e.g., `index.html.md.erb`. This file _is not part of the group_;
|
25
|
+
it serves as the _parent_ to the group. The files in the group are all
|
26
|
+
_children_ of the `index.html` file. Each file in the group is a _sibling_ of
|
27
|
+
the other files in the group.
|
28
|
+
|
29
|
+
Groups are named based on their containing directory. The highest level group is
|
30
|
+
`Base.lproj` and cannot be changed. Group names are generally not user-facing,
|
31
|
+
and the Apple Help system requires this directory name, so don’t worry about it.
|
32
|
+
|
33
|
+
Example:
|
34
|
+
|
35
|
+
~~~
|
36
|
+
Base.lproj/
|
37
|
+
index.html
|
38
|
+
introduction.html
|
39
|
+
basics/
|
40
|
+
index.html
|
41
|
+
counters.html
|
42
|
+
~~~
|
43
|
+
|
44
|
+
The `Base.lproj` consists of two pages: `introduction.html`, and
|
45
|
+
`basics/index.html`. The highest-level `index.html` is the parent of this
|
46
|
+
group.
|
47
|
+
|
48
|
+
Groups can be nested to arbitrary levals.
|
49
|
+
|
50
|
+
|
51
|
+
Page order in groups
|
52
|
+
--------------------
|
53
|
+
|
54
|
+
Using the included [helpers][helpers], you can designate tables of contents,
|
55
|
+
related pages, indices, etc., for groups with a single line of code. In addition
|
56
|
+
_Middlemac_ includes built-in navigation widgets for groups, should you like to
|
57
|
+
use them.
|
58
|
+
|
59
|
+
A group member’s sort/navigation order is determined two ways.
|
60
|
+
|
61
|
+
- Files in the group can have an `:order` key in the frontmatter, or
|
62
|
+
- File names can be prefixed with an integer sort order followed by an
|
63
|
+
underscore, .e.g, `40_hello.html.md.erb` or `12345_big_numbers.html.md.erb`.
|
64
|
+
|
65
|
+
Some important aspects about order numbers in groups are:
|
66
|
+
|
67
|
+
- If both a prefix and `:order` key are present, then the `:order` key takes
|
68
|
+
precedence.
|
69
|
+
- If any pages in the same group end up with the same sort order, then the
|
70
|
+
actual behavior is undefined.
|
71
|
+
- Parent `index.html` files cannot be prefixed, and so must include an `:order`
|
72
|
+
key in their frontmatter, or prefix the containing directory name instead.
|
73
|
+
- Pages without a sort order are _not_ present in any of the automatic
|
74
|
+
navigation or contents partials or helpers. This is by design. You can still
|
75
|
+
link to them, though.
|
76
|
+
- Prefixing file names can be convenient so that source files are sorted in your
|
77
|
+
file system the same way they will be displayed in your help system. Keep in
|
78
|
+
mind, though, that if you’re using the automatic markdown links from the
|
79
|
+
`md_links` helper and name collisions occur, then it’s possible that some of your
|
80
|
+
links will become invalid.
|
81
|
+
- Finally, page orders do not have to be sequential. It may be helpful to space
|
82
|
+
them apart so that later insertions can be simplified.
|
83
|
+
|