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/bin/middlemac
ADDED
@@ -0,0 +1,103 @@
|
|
1
|
+
#!/usr/bin/env ruby
|
2
|
+
|
3
|
+
################################################################################
|
4
|
+
# middlemac
|
5
|
+
# This file constitutes the command line interface for middlemac
|
6
|
+
################################################################################
|
7
|
+
|
8
|
+
require 'thor'
|
9
|
+
require 'fileutils'
|
10
|
+
require_relative '../lib/middlemac/version'
|
11
|
+
|
12
|
+
|
13
|
+
module MiddlemacCli
|
14
|
+
|
15
|
+
class Cli < Thor
|
16
|
+
|
17
|
+
map %w[--version -v] => :__print_version
|
18
|
+
|
19
|
+
############################################################
|
20
|
+
# help
|
21
|
+
# Override to add additional description.
|
22
|
+
############################################################
|
23
|
+
def help(*args)
|
24
|
+
if args.count == 0
|
25
|
+
puts <<-HEREDOC
|
26
|
+
|
27
|
+
middlemac version #{Middleman::Middlemac::VERSION}
|
28
|
+
|
29
|
+
This gem adds functionality to Middleman and is not executable on its own,
|
30
|
+
other than for generating the documentation sample project and/or a blank
|
31
|
+
starter project. Instead, you must add this gem to your Middleman project's
|
32
|
+
`Gemfile` and then activate it in your `config.rb` file.
|
33
|
+
|
34
|
+
HEREDOC
|
35
|
+
end
|
36
|
+
super
|
37
|
+
end
|
38
|
+
|
39
|
+
|
40
|
+
############################################################
|
41
|
+
# documentation
|
42
|
+
############################################################
|
43
|
+
desc 'documentation', 'Install the sample project into your current working directory.'
|
44
|
+
long_desc <<-HEREDOC
|
45
|
+
`documentation` will produce a sample project named `middlemac-docs/`
|
46
|
+
in your current working directory. This sample uses the features of this gem.
|
47
|
+
You can then serve this new project to read the documentation by:
|
48
|
+
|
49
|
+
cd middlemac-docs
|
50
|
+
bundle install
|
51
|
+
bundle exec middleman server
|
52
|
+
|
53
|
+
HEREDOC
|
54
|
+
def documentation
|
55
|
+
source = File.join('..', '..', 'documentation_project', '.')
|
56
|
+
source = File.expand_path(source, __FILE__)
|
57
|
+
dest = File.expand_path(File.join('.', 'middlemac-docs', '.'))
|
58
|
+
FileUtils.cp_r(source, dest)
|
59
|
+
puts "middlemac installed the project in\n#{dest}"
|
60
|
+
end
|
61
|
+
|
62
|
+
|
63
|
+
############################################################
|
64
|
+
# init
|
65
|
+
############################################################
|
66
|
+
desc 'init', 'Install a (mostly) blank project into your current working directory.'
|
67
|
+
long_desc <<-HEREDOC
|
68
|
+
`init` will produce a nearly blank project named `middlemac-init/` in you
|
69
|
+
current working directory. It is a minimal, buildable project that you can
|
70
|
+
serve and test by:
|
71
|
+
|
72
|
+
cd middlemac-init
|
73
|
+
bundle install
|
74
|
+
bundle exec middleman server
|
75
|
+
|
76
|
+
HEREDOC
|
77
|
+
def init
|
78
|
+
source = File.join('..', '..', 'fixtures', 'middlemac_app', '.')
|
79
|
+
source = File.expand_path(source, __FILE__)
|
80
|
+
dest = File.expand_path(File.join('.', 'middlemac-init', '.'))
|
81
|
+
FileUtils.cp_r(source, dest)
|
82
|
+
puts "middlemac installed the project in\n#{dest}"
|
83
|
+
end
|
84
|
+
|
85
|
+
|
86
|
+
############################################################
|
87
|
+
# __print_version
|
88
|
+
############################################################
|
89
|
+
desc '--version, -v', 'print the version'
|
90
|
+
def __print_version
|
91
|
+
puts "middlemac-extras version #{Middleman::Middlemac::VERSION}"
|
92
|
+
end
|
93
|
+
|
94
|
+
end # class Cli
|
95
|
+
|
96
|
+
end # module MiddlemacCli
|
97
|
+
|
98
|
+
|
99
|
+
###########################################################
|
100
|
+
# Main
|
101
|
+
###########################################################
|
102
|
+
|
103
|
+
MiddlemacCli::Cli.start(ARGV)
|
@@ -0,0 +1,37 @@
|
|
1
|
+
# Rubymine noise
|
2
|
+
.idea/
|
3
|
+
|
4
|
+
# BBedit noise
|
5
|
+
*.bbprojectd
|
6
|
+
|
7
|
+
# Mac OS X noise
|
8
|
+
.DS_Store
|
9
|
+
|
10
|
+
# Ignore bundler lock files
|
11
|
+
Gemfile.lock
|
12
|
+
|
13
|
+
# Ignore pkg folder
|
14
|
+
/pkg
|
15
|
+
|
16
|
+
# Ignore build folders
|
17
|
+
.rbenv-*
|
18
|
+
.ruby-gemset
|
19
|
+
.ruby-version
|
20
|
+
.sass-cache
|
21
|
+
.sassc
|
22
|
+
.tmp
|
23
|
+
build*
|
24
|
+
Makefile
|
25
|
+
tmp
|
26
|
+
|
27
|
+
# XCode user-specific files
|
28
|
+
*.pbxuser
|
29
|
+
!default.pbxuser
|
30
|
+
*.mode1v3
|
31
|
+
!default.mode1v3
|
32
|
+
*.mode2v3
|
33
|
+
!default.mode2v3
|
34
|
+
*.perspectivev3
|
35
|
+
!default.perspectivev3
|
36
|
+
xcuserdata/
|
37
|
+
|
@@ -0,0 +1,42 @@
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
2
|
+
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
3
|
+
<plist version="1.0">
|
4
|
+
<dict>
|
5
|
+
<key>CFBundleIdentifier</key>
|
6
|
+
<string><%= cfBundleIdentifier %></string>
|
7
|
+
<key>CFBundleName</key>
|
8
|
+
<string><%= cfBundleName %></string>
|
9
|
+
<key>HPDBookAccessPath</key>
|
10
|
+
<string>index.html</string>
|
11
|
+
<key>HPDBookIndexPath</key>
|
12
|
+
<string><%= cfBundleName %>.helpindex</string>
|
13
|
+
<key>HPDBookTitle</key>
|
14
|
+
<string><%= cfBundleName %> Help</string>
|
15
|
+
<key>CFBundleDevelopmentRegion</key>
|
16
|
+
<string>en-us</string>
|
17
|
+
<key>CFBundleShortVersionString</key>
|
18
|
+
<string><%= config[:targets][config[:target]][:CFBundleShortVersionString] || product_version %></string>
|
19
|
+
<key>CFBundleVersion</key>
|
20
|
+
<string><%= config[:targets][config[:target]][:CFBundleVersion] || product_version %></string>
|
21
|
+
<key>HPDBookIconPath</key>
|
22
|
+
<string><%= config[:targets][config[:target]][:HPDBookIconPath] || 'shared/icon_32x32@2x.png' %></string>
|
23
|
+
<key>HPDBookKBProduct</key>
|
24
|
+
<string><%= config[:targets][config[:target]][:HPDBookKBProduct] %></string>
|
25
|
+
<key>HPDBookKBURL</key>
|
26
|
+
<string><%= config[:targets][config[:target]][:HPDBookKBURL] || product_uri %></string>
|
27
|
+
<key>HPDBookRemoteURL</key>
|
28
|
+
<string><%= config[:targets][config[:target]][:HPDBookRemoteURL] %></string>
|
29
|
+
<key>HPDBookTopicListCSSPath</key>
|
30
|
+
<string><%= config[:targets][config[:target]][:HPDBookTopicListCSSPath] %></string>
|
31
|
+
<key>HPDBookTopicListTemplatePath</key>
|
32
|
+
<string><%= config[:targets][config[:target]][:HPDBookTopicListTemplatePath] %></string>
|
33
|
+
<key>CFBundleInfoDictionaryVersion</key>
|
34
|
+
<string>6.0</string>
|
35
|
+
<key>CFBundlePackageType</key>
|
36
|
+
<string>BNDL</string>
|
37
|
+
<key>CFBundleSignature</key>
|
38
|
+
<string>hbwr</string>
|
39
|
+
<key>HPDBookType</key>
|
40
|
+
<string>3</string>
|
41
|
+
</dict>
|
42
|
+
</plist>
|
data/documentation_project/Contents/Resources/Base.lproj/010_what_is_middlemac/index.html.md.erb
ADDED
@@ -0,0 +1,126 @@
|
|
1
|
+
---
|
2
|
+
title: What is <em>Middlemac</em>?
|
3
|
+
blurb: Discover what <em>Middlemac</em> can do for you, why it exists, and
|
4
|
+
what it’s made out of.
|
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
|
+
## What does _Middlemac_ do?
|
17
|
+
|
18
|
+
_Middlemac_ makes it simple to do this in Terminal…
|
19
|
+
|
20
|
+
`bundle exec middleman build_all`
|
21
|
+
|
22
|
+
…and end up with versions of your help books specific to each version of your
|
23
|
+
Mac OS X application, with all of the Apple-required files in the Apple-required
|
24
|
+
formats in the correct locations of your Xcode source directory. Simply build
|
25
|
+
your help target, run your application, and find that it just works.
|
26
|
+
|
27
|
+
## Yeah, but what does it _do_?
|
28
|
+
|
29
|
+
_Middlemac_, using _Middleman_, takes a directory of source files, processes all
|
30
|
+
of the contents, and produces a finished Apple Help Book. The source files can
|
31
|
+
be standard HTML or Markdown, and _Middlemac_ takes care of nearly all of the
|
32
|
+
nitty gritty details for you.
|
33
|
+
|
34
|
+
- Write your help files with plain text using the
|
35
|
+
[Markdown](http://kramdown.gettalong.org/) format.
|
36
|
+
|
37
|
+
~~~ markdown
|
38
|
+
# Read this headline!
|
39
|
+
Markdown makes it easy to write text that’s legible in its text form and that
|
40
|
+
renders very easily to HTML.
|
41
|
+
~~~
|
42
|
+
|
43
|
+
- It decouples your content from your visual design and from HTML document
|
44
|
+
formats via the use of [templates][templates]. The templates can be used
|
45
|
+
as-is or easily tweaked to suit your needs, and they include a basic,
|
46
|
+
Apple-like CSS stylesheet offering a reasonably attractive out-of-the-box
|
47
|
+
appearance.
|
48
|
+
|
49
|
+
- Single or multiple build [targets][targets], e.g., your `pro` target can
|
50
|
+
include content specific to the professional version of your application.
|
51
|
+
**For example, the current target of this documentation is `<%= target_name
|
52
|
+
%>`**.
|
53
|
+
|
54
|
+
- [Features][features] support for each build target. For example each of your
|
55
|
+
build targets can specify whether or not they support specific features, and
|
56
|
+
this content will be included or excluded as your needs require. This offers
|
57
|
+
highly granular control versus trying to manage complex targets on their own.
|
58
|
+
|
59
|
+
- A low [learning curve][skills_refresher-index], especially if you’re already a
|
60
|
+
developer.
|
61
|
+
|
62
|
+
- A set of conventions and tools that make automatic tables of contents,
|
63
|
+
automatic sections, breadcrumbs, and other automatic navigation behavior
|
64
|
+
simple to implement.
|
65
|
+
|
66
|
+
- [Partials][partials], [helpers][helpers], and [resource methods][resources]
|
67
|
+
that make your static help documents appear more dynamic while
|
68
|
+
[keeping yourself DRY](http://en.wikipedia.org/wiki/Don't_repeat_yourself).
|
69
|
+
|
70
|
+
- Automatic management of `Info.plist` and `InfoPlist.strings` files make it
|
71
|
+
simple to work with Xcode.
|
72
|
+
|
73
|
+
- Automatic use of Apple’s help indexer tool ensures that the Help Viewer
|
74
|
+
is always aware of your content.
|
75
|
+
|
76
|
+
|
77
|
+
## Why _Middlemac_ exists
|
78
|
+
|
79
|
+
_Middlemac_ exists to solve these two problems:
|
80
|
+
|
81
|
+
- **How do I build help files for my Mac OS X applications?** Although
|
82
|
+
ostensibly a simple set of HTML files, a Mac OS X help book requires careful
|
83
|
+
application of data in order for the help book to interface properly with
|
84
|
+
your application. And for historical reasons, some of the pages have to use
|
85
|
+
different HTML versions.
|
86
|
+
|
87
|
+
- **How do I manage help files for multiple versions of my Mac OS X
|
88
|
+
applications, each of which has a different feature set?** Although
|
89
|
+
_Middlemac_ is great for applications that have a single version, it really
|
90
|
+
excels when managing applications that have multiple versions (such as Free
|
91
|
+
or Pro). _Middlemac_ makes it simple to produce help documents specific to
|
92
|
+
these versions, all using the same source.
|
93
|
+
|
94
|
+
|
95
|
+
## What is _Middlemac_ made of?
|
96
|
+
|
97
|
+
_Middlemac_ is a system of Gems that act as an extension to _Middleman_, a
|
98
|
+
static site building tool that offers a lot of dynamism to static web sites.
|
99
|
+
Without _Middleman_, nothing else in _Middlemac_ would work.
|
100
|
+
|
101
|
+
_Middlemac_ consists of the gems:
|
102
|
+
|
103
|
+
`middlemac`
|
104
|
+
|
105
|
+
: This gem requires all of the other gems in the system and adds several
|
106
|
+
helpers to make working with target and feature much more convenient. It’s
|
107
|
+
also responsible for providing the basic help book template and managing the
|
108
|
+
Apple help indexer.
|
109
|
+
|
110
|
+
`middlemac-extras`
|
111
|
+
|
112
|
+
: This gem adds features to _Middleman_ to make working with images and
|
113
|
+
Markdown reference style links easier. It’s released as a separate gem
|
114
|
+
because it can still be useful for standard _Middleman_ projects.
|
115
|
+
|
116
|
+
`middleman-pagegroups`
|
117
|
+
|
118
|
+
: This gem offers all of the automatic navigation features used by
|
119
|
+
_Middlemac_. It’s released as a separate gem because it can still be useful
|
120
|
+
for standard _Middleman_ projects.
|
121
|
+
|
122
|
+
`middleman-targets`
|
123
|
+
|
124
|
+
: This gem gives _Middleman_ the ability to build and serve multiple targets.
|
125
|
+
It’s released as a separate gem because it can still be useful for
|
126
|
+
standard _Middleman_ projects.
|
@@ -0,0 +1,168 @@
|
|
1
|
+
---
|
2
|
+
title: Setting up <em>Middlemac</em>
|
3
|
+
blurb: Read this article to learn how install <em>Middlemac</em> and see
|
4
|
+
that it’s running on your system.
|
5
|
+
layout: template-logo-small
|
6
|
+
---
|
7
|
+
<%= md_links %>
|
8
|
+
<%= md_images %>
|
9
|
+
|
10
|
+
|
11
|
+
<%= current_page.data.title %>
|
12
|
+
==============================
|
13
|
+
|
14
|
+
Getting Started
|
15
|
+
---------------
|
16
|
+
|
17
|
+
_Middlemac_’s documentation is included in the starter project (and more than
|
18
|
+
likely at [http://www.balthisar.com/manuals](http://www.balthisar.com/manuals)).
|
19
|
+
There are multiple ways you could be reading this content now, but for now we
|
20
|
+
will assume that you have not yet installed _Middlemac_ and its dependencies.
|
21
|
+
|
22
|
+
To get started and read the full documentation, make sure that your system has
|
23
|
+
[Ruby](https://www.ruby-lang.org/) installed (it comes pre-installed on Mac OS X
|
24
|
+
and some Linuxes), and follow these steps below.
|
25
|
+
|
26
|
+
We now recommend the use of the Ruby Version Manager [(RVM)](https://rvm.io/).
|
27
|
+
While installation and setup of RVM is entirely outside the scope of this
|
28
|
+
tutorial, it avoids the use of `sudo` and the occasional hassles involved with
|
29
|
+
using the built in version of Ruby.
|
30
|
+
{:.note}
|
31
|
+
|
32
|
+
Note that depending on your system’s setup you might have to prefix some of the
|
33
|
+
commands below with `sudo`. For example if the instruction is given as
|
34
|
+
`gem install bundler` and a permissions error is reported, you may probably
|
35
|
+
have to use `sudo gem install bundler` instead.
|
36
|
+
{:.note}
|
37
|
+
|
38
|
+
If you’re behind a proxy and haven’t already setup an `http-proxy` environment
|
39
|
+
variable, then that previous clause is a good hint and Google is your friend.
|
40
|
+
{:.note}
|
41
|
+
|
42
|
+
|
43
|
+
Quick version, if you don’t want to read details
|
44
|
+
------------------------------------------------
|
45
|
+
|
46
|
+
In your Terminal, do each of the following:
|
47
|
+
|
48
|
+
~~~ bash
|
49
|
+
xcode-select --install
|
50
|
+
gem install middlemac
|
51
|
+
middlemac documentation
|
52
|
+
cd middlemac-docs
|
53
|
+
gem install bundler
|
54
|
+
bundle install
|
55
|
+
bundle exec middleman --target free
|
56
|
+
open middlemac.webloc
|
57
|
+
~~~
|
58
|
+
|
59
|
+
Because the penultimate command started the server which keeps control of the
|
60
|
+
terminal, you’ll have to open the `.webloc` file in another terminal session,
|
61
|
+
or simply double-click it.
|
62
|
+
|
63
|
+
If you’re on Linux and `open middlemac.webloc` command doesn’t work for you,
|
64
|
+
then use your preferred web browser and go to
|
65
|
+
[http://localhost:4567/Resources/Base.lproj/](http://localhost:4567/Resources/Base.lproj/).
|
66
|
+
|
67
|
+
If you’ve setup your own custom domain, you’ll have to specify that instead of
|
68
|
+
`localhost`.
|
69
|
+
|
70
|
+
|
71
|
+
Similar to above, with a bit of handholding
|
72
|
+
----------------------------------------
|
73
|
+
|
74
|
+
### Install Xcode
|
75
|
+
|
76
|
+
If you’re on a Mac you’ll have to install Xcode first, or at least the Xcode
|
77
|
+
command line tools. You can _try_ just installing the tools first:
|
78
|
+
|
79
|
+
~~~ bash
|
80
|
+
xcode-select --install
|
81
|
+
~~~
|
82
|
+
|
83
|
+
If that fails or the rest of the installation fails, then install all of Xcode.
|
84
|
+
It’s available in the App Store. It’s free of charge. And you’re using this
|
85
|
+
project to develop help for Mac OS X applications that you’re developing using
|
86
|
+
Xcode anyway. Install it, already!
|
87
|
+
|
88
|
+
Dependencies on Linux are left up to you. Most modern Linuxes will prompt you to
|
89
|
+
install packages that are missing.
|
90
|
+
|
91
|
+
_Middlemac_ works quite well on Linux, but keep in mind that Linux doesn’t have
|
92
|
+
the help indexing tool that’s required in order to build a proper help book.
|
93
|
+
Other than for generating your final help book, Linux makes a fine development
|
94
|
+
environment.
|
95
|
+
{:.note}
|
96
|
+
|
97
|
+
|
98
|
+
### Install the `middlemac` gem
|
99
|
+
|
100
|
+
~~~ bash
|
101
|
+
gem install middlemac
|
102
|
+
~~~
|
103
|
+
|
104
|
+
This will fetch the gem from `rubygems.org` and install it for you.
|
105
|
+
|
106
|
+
|
107
|
+
### Install the documentation
|
108
|
+
|
109
|
+
~~~ bash
|
110
|
+
middlemac documentation
|
111
|
+
~~~
|
112
|
+
|
113
|
+
This will install Middlemac’s documentation project into a new directory
|
114
|
+
`middlemac-docs`.
|
115
|
+
|
116
|
+
|
117
|
+
### Go into the documentation directory
|
118
|
+
|
119
|
+
~~~ bash
|
120
|
+
cd middlemac-docs
|
121
|
+
~~~
|
122
|
+
|
123
|
+
|
124
|
+
### Install bundler (if not already installed)
|
125
|
+
|
126
|
+
~~~ bash
|
127
|
+
gem install bundler
|
128
|
+
~~~
|
129
|
+
|
130
|
+
Bundler is the most common Ruby package management system, and it will be used
|
131
|
+
to ensure that all of Middlemac’s dependencies are present.
|
132
|
+
|
133
|
+
|
134
|
+
### Make sure all of the project dependencies are met
|
135
|
+
|
136
|
+
~~~ bash
|
137
|
+
bundle install
|
138
|
+
~~~
|
139
|
+
|
140
|
+
This tells bundler to install the remaining gems that _Middlemac_ requires to
|
141
|
+
function.
|
142
|
+
|
143
|
+
|
144
|
+
### Start the _Middleman_ server
|
145
|
+
|
146
|
+
_Middleman_ comes with its own HTTP server and requires no configuration. It
|
147
|
+
simply works, serving your help book as a website.
|
148
|
+
|
149
|
+
~~~ bash
|
150
|
+
bundle exec middleman --target free
|
151
|
+
~~~
|
152
|
+
|
153
|
+
This will start the server using our `:free` target.
|
154
|
+
|
155
|
+
|
156
|
+
### Open the site in your browser
|
157
|
+
|
158
|
+
Simply open the `middlemac.webloc` file from Finder to view the project results
|
159
|
+
in your default browser.
|
160
|
+
|
161
|
+
Or can open the bookmark file from Terminal with `open middleman.webloc`.
|
162
|
+
|
163
|
+
Or you prefer to open the help site manually, or if the .webloc file doesn’t
|
164
|
+
work on your Linux distro, you can go to
|
165
|
+
[http://localhost:4567/Resources/Base.lproj/](http://localhost:4567/Resources/Base.lproj/).
|
166
|
+
|
167
|
+
If you’ve setup your own custom domain, you’ll have to specify that instead of
|
168
|
+
`localhost`.
|