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
@@ -0,0 +1,93 @@
|
|
1
|
+
---
|
2
|
+
title: <code>md_links</code> and <code>md_images</code> helpers
|
3
|
+
blurb: Learn to take advantage of helpers that give you a hand using reference
|
4
|
+
style links to content and images.
|
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
|
+
You’ll notice (as you look at the source files for this help content) that the
|
17
|
+
first ERB instructions immediately after the frontmatter are:
|
18
|
+
|
19
|
+
~~~ erb
|
20
|
+
<%%= md_links %>
|
21
|
+
<%%= md_images %>
|
22
|
+
~~~
|
23
|
+
|
24
|
+
These convenience helpers make it relatively simple to include Markdown links
|
25
|
+
and images using the reference format.
|
26
|
+
|
27
|
+
Links
|
28
|
+
-----
|
29
|
+
|
30
|
+
~~~ markdown
|
31
|
+
[all help content][all_help_content-index]
|
32
|
+
~~~
|
33
|
+
|
34
|
+
…will generate the following link:
|
35
|
+
|
36
|
+
[all help content][all_help_content-index]
|
37
|
+
|
38
|
+
This is especially useful if your page source filenames stay constant.
|
39
|
+
|
40
|
+
The reference name will always be the base output name of the file. For index
|
41
|
+
files, the format will be `groupname-index`, where the groupname is the name of
|
42
|
+
the containing directory, as you should already know. The top-level index file
|
43
|
+
will conveniently, simply be `index`.
|
44
|
+
|
45
|
+
You should strive to use unique filenames if you use this feature, as this will
|
46
|
+
ensure that your references remain unique. In the event of reference name
|
47
|
+
collisions, the reference name will be prepended with its nesting groups as many
|
48
|
+
levels as necessary to become unique. For convenience items that are higher in
|
49
|
+
your directory hierarchy are prioritized against prepending.
|
50
|
+
|
51
|
+
Here’s the complete result of this helper for this help book:
|
52
|
+
|
53
|
+
~~~ markdown
|
54
|
+
<%= md_links %>
|
55
|
+
~~~
|
56
|
+
|
57
|
+
Pretty neat how it includes the titles, right? Try hovering your mouse over the
|
58
|
+
example [all help content][all_help_content-incex] link. Including titles isn’t
|
59
|
+
possible in Markdown without using reference links.
|
60
|
+
{:.note}
|
61
|
+
|
62
|
+
|
63
|
+
Images
|
64
|
+
------
|
65
|
+
|
66
|
+
Markdown also supports a reference format for images. It looks like this:
|
67
|
+
|
68
|
+
~~~ markdown
|
69
|
+
![this is alt tag content][middlemac-logo-small]
|
70
|
+
~~~
|
71
|
+
|
72
|
+
And will generate this:
|
73
|
+
|
74
|
+
![this is alt tag content][middlemac-logo-small]
|
75
|
+
|
76
|
+
|
77
|
+
Here’s the complete result of this helper for this help book:
|
78
|
+
|
79
|
+
~~~ markdown
|
80
|
+
<%= md_images %>
|
81
|
+
~~~
|
82
|
+
|
83
|
+
Note that using reference style Markdown images is performed by the Markdown
|
84
|
+
processor directly. Using magic prefixes for automatic target-based images
|
85
|
+
won’t work. However they will work with standard Markdown, non-reference
|
86
|
+
images. Note how this next example includes the target-specific logo:
|
87
|
+
{:.note}
|
88
|
+
|
89
|
+
~~~ markdown
|
90
|
+
![target specific logo](all-middlemac-logo-small)
|
91
|
+
~~~
|
92
|
+
|
93
|
+
![target specific logo](all-middlemac-logo-small)
|
data/documentation_project/Contents/Resources/Base.lproj/060_content/090_css_image_sizes.html.md.erb
ADDED
@@ -0,0 +1,90 @@
|
|
1
|
+
---
|
2
|
+
title: Automatic CSS Image Maximum Sizes
|
3
|
+
blurb: Ensure that your image sizes aren’t unexpectedly distorted by using this
|
4
|
+
special helper.
|
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
|
+
This helper provides CSS code for each of your images, specifying a `max-width`
|
17
|
+
and `max-height` for each image used in your Middleman project (except for SVG
|
18
|
+
files, which don’t have dimensions).
|
19
|
+
|
20
|
+
## Example
|
21
|
+
|
22
|
+
When called like this:
|
23
|
+
|
24
|
+
~~~ erb
|
25
|
+
<%%= css_image_sizes %>
|
26
|
+
~~~
|
27
|
+
|
28
|
+
…the result is this:
|
29
|
+
|
30
|
+
~~~ scss
|
31
|
+
<%= css_image_sizes %>
|
32
|
+
~~~
|
33
|
+
|
34
|
+
## Use
|
35
|
+
|
36
|
+
You could use this in an HTML `<style>` element on each of your pages, or better
|
37
|
+
yet in your layouts. This has the unfortunate effect of including it in every
|
38
|
+
one of your pages, however, and so this sample project uses it like this:
|
39
|
+
|
40
|
+
Contents of `stylesheets/css_image_sizes.css.erb`:
|
41
|
+
|
42
|
+
~~~ erb
|
43
|
+
<%%= css_image_sizes %>
|
44
|
+
~~~
|
45
|
+
|
46
|
+
This will create `stylesheets/css_image_sizes.css` in your build output, and
|
47
|
+
this file is included in the project layout file:
|
48
|
+
|
49
|
+
~~~ haml
|
50
|
+
= stylesheet_link_tag 'css_image_sizes'
|
51
|
+
~~~
|
52
|
+
|
53
|
+
You will be tempted to add this helper to your `style.css.scss` file, maybe
|
54
|
+
even renaming it to `style.css.scss.erb`, but this will not work due to the
|
55
|
+
order that Middleman and SASS build output.
|
56
|
+
{:.note}
|
57
|
+
|
58
|
+
|
59
|
+
## Technical details
|
60
|
+
|
61
|
+
This CSS will control your image sizes by specifying a maximum width and height
|
62
|
+
for each image in the project using the `src` attribute selector and matching
|
63
|
+
against the end of that value. For example:
|
64
|
+
|
65
|
+
~~~ scss
|
66
|
+
img[src$='icon.png'] { max-width: 256px; max-height: 256px; }
|
67
|
+
~~~
|
68
|
+
|
69
|
+
CSS matches using literal text, and so will not respect relative paths. The
|
70
|
+
simple rule above has a high possibility of naming collisions with other files
|
71
|
+
named `icon.png`.
|
72
|
+
|
73
|
+
If you follow Middleman’s best practices and keep most or all of your images in
|
74
|
+
the defined `:images_dir` then the possibility of naming collisions will go
|
75
|
+
away, as this helper will deliver the `src` attribute selectors starting with
|
76
|
+
the final component of your `:images_dir`, for example:
|
77
|
+
|
78
|
+
~~~ scss
|
79
|
+
img[src$='images/logo-small.png'] { max-width: 128px; max-height: 128px; }
|
80
|
+
img[src$='images/blog/logo-small.png'] { max-width: 160px; max-height: 160px; }
|
81
|
+
img[src$='icon_32x32.png'] { max-width: 32px; max-height: 32px; }
|
82
|
+
~~~
|
83
|
+
|
84
|
+
In this example, the last image – `icon_32x32.png` – is not within `:images_dir`
|
85
|
+
and so has no directory and is subject to naming collisions.
|
86
|
+
|
87
|
+
The scheme above will work whether or not Middleman is configured with
|
88
|
+
`relative_assets` because both relative and absolute links will always contain
|
89
|
+
that last part of the path component. The only way this might break is by
|
90
|
+
serving HTML pages from within your `:images_dir`.
|
@@ -0,0 +1,37 @@
|
|
1
|
+
---
|
2
|
+
title: Using local data
|
3
|
+
blurb: You can use a local file as a datasource to generate data-based pages
|
4
|
+
automatically. Learn how in this reference section.
|
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
|
+
You can use data from external sources with _Middleman_ and _Middlemac_, too.
|
17
|
+
In `assets/data/` a sample `globals.yml` contains some sample data in YAML
|
18
|
+
format. Let’s see what it contains:
|
19
|
+
|
20
|
+
<% data.globals.famous_writers.each do |writer| %>
|
21
|
+
- A sample work of <%= writer.author %> is _<%= writer.sample_work %>_.
|
22
|
+
<% end %>
|
23
|
+
|
24
|
+
These previous sentences were generated with this ERB code:
|
25
|
+
|
26
|
+
~~~ erb
|
27
|
+
<%% data.globals.famous_writers.each do |writer| %>
|
28
|
+
- A sample work of <%%= writer.author %> is _<%%= writer.sample_work %>_.
|
29
|
+
<%% end %>
|
30
|
+
~~~
|
31
|
+
|
32
|
+
|
33
|
+
Accessing data
|
34
|
+
--------------
|
35
|
+
|
36
|
+
This data is available to you via `data.file_name.top_level_key`.
|
37
|
+
|
@@ -0,0 +1,21 @@
|
|
1
|
+
---
|
2
|
+
title: "Workflow: Develop your Help Content"
|
3
|
+
blurb: Once you’ve learned of the possibilities when it comes to structuring
|
4
|
+
your help, discover all of the conveniences made possible by
|
5
|
+
<em>Middlemac</em>’s rich set of content features.
|
6
|
+
layout: template-logo-large
|
7
|
+
navigate: true
|
8
|
+
---
|
9
|
+
<%= md_links %>
|
10
|
+
<%= md_images %>
|
11
|
+
|
12
|
+
<%= current_page.data.title %>
|
13
|
+
==============================
|
14
|
+
|
15
|
+
<%= current_page.data.blurb %>
|
16
|
+
|
17
|
+
* * *
|
18
|
+
|
19
|
+
<%= nav_legitimate_children %>
|
20
|
+
|
21
|
+
* * *
|
@@ -0,0 +1,78 @@
|
|
1
|
+
---
|
2
|
+
title: "Workflow: Preview and Build your Help Books"
|
3
|
+
blurb: "Your development be quicker by previewing your work with
|
4
|
+
<em>Middleman</em>’s preview server before the next step: building your
|
5
|
+
help book."
|
6
|
+
layout: template-logo-medium
|
7
|
+
navigate: true
|
8
|
+
---
|
9
|
+
<%= md_links %>
|
10
|
+
<%= md_images %>
|
11
|
+
|
12
|
+
<%= current_page.data.title %>
|
13
|
+
==============================
|
14
|
+
|
15
|
+
<%= current_page.data.blurb %>
|
16
|
+
|
17
|
+
Preview in a Web Browser
|
18
|
+
------------------------
|
19
|
+
|
20
|
+
_Middleman_ has its own web server so that you can preview your work during
|
21
|
+
development. From within your project directory, simply do:
|
22
|
+
|
23
|
+
~~~ bash
|
24
|
+
bundle exec middleman
|
25
|
+
~~~
|
26
|
+
|
27
|
+
This will start the server with your default target. To specify a specific
|
28
|
+
target to serve, simply use the `--target` command line option:
|
29
|
+
|
30
|
+
~~~ bash
|
31
|
+
bundle exec middleman --target your_target_here
|
32
|
+
~~~
|
33
|
+
|
34
|
+
In general the server address to connect to in your browser is `localhost:4567`,
|
35
|
+
but your environment could be different. The server will always provide one or
|
36
|
+
more addresses to try.
|
37
|
+
|
38
|
+
Note also that if you try to connect to your Help Book project at the server
|
39
|
+
root, you will receive a file not found error. Do remember that due to Mac OS X
|
40
|
+
help book requirements, the content actually begins at `/Resources/Base.lproj/`.
|
41
|
+
|
42
|
+
|
43
|
+
Build your Help Book(s)
|
44
|
+
-----------------------
|
45
|
+
|
46
|
+
Build your projects is similarly easy:
|
47
|
+
|
48
|
+
~~~ bash
|
49
|
+
bundle exec middleman build
|
50
|
+
~~~
|
51
|
+
|
52
|
+
…to build the default target.
|
53
|
+
|
54
|
+
~~~ bash
|
55
|
+
bundle exec middleman build --target your_target_here
|
56
|
+
~~~
|
57
|
+
|
58
|
+
…to build the target named `your_target_here`.
|
59
|
+
|
60
|
+
|
61
|
+
~~~ bash
|
62
|
+
bundle exec middleman build_all
|
63
|
+
~~~
|
64
|
+
|
65
|
+
…to build all of your targets at once.
|
66
|
+
|
67
|
+
|
68
|
+
Opening your Help Books
|
69
|
+
-----------------------
|
70
|
+
|
71
|
+
Mac OS X won't open help books that haven’t been indexed by the operating
|
72
|
+
system, so you’ll have to preview them in a real application. Because you’re
|
73
|
+
making help books, it’s presumed that you have an application that can fill this
|
74
|
+
role. If not, you can modify the included **HelpViewerApp** Xcode project that’s
|
75
|
+
in this documentation project’s directory.
|
76
|
+
|
77
|
+
To view the contents of the `.help` package in **Finder**, simply context-click
|
78
|
+
it and choose **Show Package Contents**.
|
@@ -0,0 +1,110 @@
|
|
1
|
+
---
|
2
|
+
title: Apple .help bundle setup
|
3
|
+
blurb: A reference to what <em>Middlemac</em> does to ensure that you build a
|
4
|
+
proper, working Apple Help Book.
|
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
|
+
CFBundleName and Targets
|
17
|
+
------------------------
|
18
|
+
|
19
|
+
The first thing we need to do is come up with a `CFBundleName` for our help
|
20
|
+
projects, and decide what the targets are going to be. This will help us setup
|
21
|
+
Xcode shortly.
|
22
|
+
|
23
|
+
Xcode doesn’t know or care what the help bundle’s `CFBundleName` is, but
|
24
|
+
_Middlemac_ uses it and the target to name the final, built help bundle, and
|
25
|
+
Xcode _does_ have to know the name of those.
|
26
|
+
|
27
|
+
All of your targets will share the same `CFBundleName`, so it should be
|
28
|
+
descriptive of all of your targets and related to your product name. If the
|
29
|
+
examples on this page, we’ll use `Middlemac`. This project also has the targets
|
30
|
+
`pro` and `free`. What this means is _Middlemac_ will build help bundles named
|
31
|
+
`Middlemac (pro).help` and `Middlemac (free).help`.
|
32
|
+
|
33
|
+
Let’s use this information and start to setup Xcode.
|
34
|
+
|
35
|
+
|
36
|
+
Xcode Configuration
|
37
|
+
-------------------
|
38
|
+
|
39
|
+
### Add Files
|
40
|
+
|
41
|
+
Let’s first tell your Xcode targets that the help bundle files are available. In
|
42
|
+
your Xcode project, create folders named `Middlemac (pro).help` and `Middlemac
|
43
|
+
(free).help`. They typically go into your project’s `Resources` folder. Mac OS
|
44
|
+
will automatically display them as bundles. For now, these are just proxies for
|
45
|
+
the bundles we’ll build later.
|
46
|
+
|
47
|
+
Next you can add these files to Xcode the usual way (“Add files…”). **Make sure
|
48
|
+
you add these by creating folder references. This is critical.** If you are
|
49
|
+
able to browse the folder contents in Xcode, then they were not properly added
|
50
|
+
and will not properly copy into the final application bundle.
|
51
|
+
|
52
|
+
Just in case the bold sentence wasn’t reminder enough: make sure you select the
|
53
|
+
option to create folder references when adding files.
|
54
|
+
{:.note}
|
55
|
+
|
56
|
+
Assuming you have a Pro and Free target in Xcode, you can use the file inspector
|
57
|
+
to make sure the Pro `.help` and the Free `.help` have the appropriate, obvious
|
58
|
+
target memberships.
|
59
|
+
|
60
|
+
### Configure your applications’ `Info.plist` files
|
61
|
+
|
62
|
+
If you have multiple Xcode targets, you may be using a different `Info.plist`
|
63
|
+
file for each target. If not, then you’ll have to start because they contain
|
64
|
+
information unique to each help book.
|
65
|
+
|
66
|
+
Alternatively you can setup an `Info.plist` pre-processor (this is my preferred
|
67
|
+
approach) that generates an `Info.plist` for each target when you build.
|
68
|
+
_That’s_ beyond the scope of this document, though. You can begin by looking at
|
69
|
+
your Xcode targets’ **Build Settings -> Packaging**.
|
70
|
+
{:.note}
|
71
|
+
|
72
|
+
In each of your `Info.plist` files, find or create the following keys:
|
73
|
+
|
74
|
+
`Help Book directory name` (Xcode name)
|
75
|
+
`CFBundleHelpBookFolder` (raw key name)
|
76
|
+
|
77
|
+
: Ensure you use the appropriate `Middlemac (pro).help` or
|
78
|
+
`Middlemac (free).help`, depending on which target’s `.plist` this is.
|
79
|
+
|
80
|
+
`Help Book identifier` (Xcode name)
|
81
|
+
`CFBundleHelpBookName` (raw key name)
|
82
|
+
|
83
|
+
: This must match the unique `CFBundleID` that you set for each of your
|
84
|
+
help targets in the help project’s `config.rb` file. If you’ve not setup
|
85
|
+
the `config.rb` yet, now is a good time to decide on the keys that you will
|
86
|
+
use.
|
87
|
+
|
88
|
+
This sample project uses `com.balthisar.middlemac.free.help` and
|
89
|
+
`com.balthisar.middlemac.pro.help`.
|
90
|
+
|
91
|
+
|
92
|
+
Setup `config.rb` and especially `options.Help_Output_Location`
|
93
|
+
-------------------------------------------------------------------
|
94
|
+
|
95
|
+
Next make sure you setup `config.rb` with matching values from above.
|
96
|
+
|
97
|
+
We setup empty proxy `.help` bundles for Xcode above. Make sure that you set
|
98
|
+
your `config.rb`’s `options.Help_Output_Location` to the directory that you
|
99
|
+
created the proxy files. Then, any time you build your help projects with
|
100
|
+
_Middlemac_, they will be ready to go in Xcode automatically, the next time you
|
101
|
+
build your Xcode project.
|
102
|
+
|
103
|
+
|
104
|
+
_Middlemac_ takes care of everything else
|
105
|
+
-----------------------------------------
|
106
|
+
|
107
|
+
Once your `config.rb` is setup, _Middlemac_ takes care of setting all of the
|
108
|
+
required keys and data in all of the help bundle `.plist`, `.strings`, and
|
109
|
+
main `index.html` file, managing them for each target.
|
110
|
+
|
@@ -0,0 +1,64 @@
|
|
1
|
+
---
|
2
|
+
title: Optional Xcode Integration
|
3
|
+
blurb: Learn some tips and techniques for getting Xcode to cooperate with
|
4
|
+
<em>Middlemac</em> projects.
|
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
|
+
In the [previous section][apple_help_setup] you learned how simple it is to make
|
17
|
+
Xcode include your built help projects in your application, but with a little
|
18
|
+
bit of extra work you can even have Xcode build your help projects for you.
|
19
|
+
|
20
|
+
**HelpViewerApp**
|
21
|
+
-----------------
|
22
|
+
|
23
|
+
Included the the source directory for this documentation project is a directory
|
24
|
+
named `HelpViewerApp` that includes a simple Xcode project. Aside from the
|
25
|
+
ability to display this project’s built help files in Help Viewer (instead of
|
26
|
+
a web browser), it demonstrates one technique for having Xcode build your help
|
27
|
+
books for you.
|
28
|
+
|
29
|
+
It consists of the following four targets:
|
30
|
+
|
31
|
+
`Help (free)`
|
32
|
+
|
33
|
+
: This is an external build system target that uses **Middlemac** to generate
|
34
|
+
the help files for the `HelpViewerApp (free)` target.
|
35
|
+
|
36
|
+
`Help (pro)`
|
37
|
+
|
38
|
+
: This is an external build system target that uses **Middlemac** to generate
|
39
|
+
the help files for the `HelpViewerApp (pro)` target.
|
40
|
+
|
41
|
+
`HelpViewerApp (free)`
|
42
|
+
|
43
|
+
: The “free” version of this application will display the `:free` target in
|
44
|
+
the Help Viewer. It uses the target `Help (free)` as a build dependency.
|
45
|
+
|
46
|
+
`HelpViewerApp (pro)`
|
47
|
+
|
48
|
+
: The “pro” version of this application will display the `:pro` target in the
|
49
|
+
Help Viewer. It uses the target `Help (pro)` as a build dependency.
|
50
|
+
|
51
|
+
|
52
|
+
## The Help file “build system”
|
53
|
+
|
54
|
+
The build system is a bash script that executes the default version of
|
55
|
+
**Middleman** on your system. In order to prevent re-building the help file
|
56
|
+
every time you run the HelpViewerApp it tries to remember that it was already
|
57
|
+
built using a marker file in the Xcode build directory.
|
58
|
+
|
59
|
+
It's a simple script and doesn’t try at all to know whether or not you’ve made
|
60
|
+
changes to the source. If you want to rebuild the help files using the build
|
61
|
+
command in Xcode, then perform **Clean**, which will remove this marker file.
|
62
|
+
|
63
|
+
Xcode’s **Clean** will _not_ remove the built help book using this script; you
|
64
|
+
are free to make the script do so if you want, however.
|