middlemac 2.0.0 → 3.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (497) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +7 -0
  3. data/Gemfile +11 -1
  4. data/README.md +38 -6
  5. data/Rakefile +7 -2
  6. data/documentation_project/.gitignore +1 -1
  7. data/documentation_project/Contents/Info.plist.erb +1 -1
  8. data/documentation_project/Contents/Resources/{Base.lproj/assets → SharedGlobalAssets}/_data/globals.yml +0 -0
  9. data/documentation_project/Contents/Resources/SharedGlobalAssets/_data/locale-list.json +318 -0
  10. data/documentation_project/Contents/Resources/SharedGlobalAssets/_layouts/layout-apple-modern-aside.haml +19 -0
  11. data/documentation_project/Contents/Resources/SharedGlobalAssets/_layouts/layout-apple-modern.haml +61 -0
  12. data/documentation_project/Contents/Resources/SharedGlobalAssets/_layouts/layout-blank.haml +11 -0
  13. data/documentation_project/Contents/Resources/SharedGlobalAssets/_partials/_yard_middlemac_config.erb +276 -0
  14. data/documentation_project/Contents/Resources/SharedGlobalAssets/_partials/_yard_middlemac_helpers.erb +897 -0
  15. data/documentation_project/Contents/Resources/SharedGlobalAssets/_partials/_yard_middlemac_helpers_extended.erb +369 -0
  16. data/documentation_project/Contents/Resources/{Base.lproj/assets/partials/_yard_pagegroups_resources.erb → SharedGlobalAssets/_partials/_yard_middlemac_resources.erb} +342 -37
  17. data/documentation_project/Contents/Resources/{Base.lproj/assets/partials/_yard_targets_config.erb → SharedGlobalAssets/_partials/_yard_mmtargets_config.erb} +15 -110
  18. data/documentation_project/Contents/Resources/{Base.lproj/assets/partials/_yard_targets_helpers.erb → SharedGlobalAssets/_partials/_yard_mmtargets_helpers.erb} +4 -4
  19. data/documentation_project/Contents/Resources/{Base.lproj/assets/partials/_yard_targets_helpers_extended.erb → SharedGlobalAssets/_partials/_yard_mmtargets_helpers_extended.erb} +6 -2
  20. data/documentation_project/Contents/Resources/{Base.lproj/assets/partials/_yard_targets_instance.erb → SharedGlobalAssets/_partials/_yard_mmtargets_instance.erb} +1 -1
  21. data/documentation_project/Contents/Resources/{Base.lproj/assets/partials/_yard_targets_resources.erb → SharedGlobalAssets/_partials/_yard_mmtargets_resources.erb} +2 -2
  22. data/documentation_project/Contents/Resources/SharedGlobalAssets/convention/icon-webclip-120x120.png +0 -0
  23. data/documentation_project/Contents/Resources/SharedGlobalAssets/convention/icon-webclip-152x152.png +0 -0
  24. data/documentation_project/Contents/Resources/SharedGlobalAssets/convention/icon-webclip-57x57.png +0 -0
  25. data/documentation_project/Contents/Resources/SharedGlobalAssets/convention/icon-webclip-76x76.png +0 -0
  26. data/documentation_project/Contents/Resources/SharedGlobalAssets/convention/icon-webclip-ipad.png +0 -0
  27. data/documentation_project/Contents/Resources/SharedGlobalAssets/convention/icon-webclip-ipad_2x.png +0 -0
  28. data/documentation_project/Contents/Resources/SharedGlobalAssets/convention/icon-webclip-iphone.png +0 -0
  29. data/documentation_project/Contents/Resources/SharedGlobalAssets/convention/icon-webclip-iphone_2x.png +0 -0
  30. data/documentation_project/Contents/Resources/{shared → SharedGlobalAssets/convention}/icon_256x256.png +0 -0
  31. data/documentation_project/Contents/Resources/{shared → SharedGlobalAssets/convention}/icon_256x256@2x.png +0 -0
  32. data/documentation_project/Contents/Resources/{shared → SharedGlobalAssets/convention}/icon_32x32.png +0 -0
  33. data/documentation_project/Contents/Resources/{shared → SharedGlobalAssets/convention}/icon_32x32@2x.png +0 -0
  34. data/documentation_project/Contents/Resources/SharedGlobalAssets/css/apple/apple.css +3831 -0
  35. data/documentation_project/Contents/Resources/SharedGlobalAssets/css/apple/css/img/L0200_LeftArrow_2x.png +0 -0
  36. data/documentation_project/Contents/Resources/SharedGlobalAssets/css/apple/css/img/L0201_RightArrow_2x.png +0 -0
  37. data/documentation_project/Contents/Resources/SharedGlobalAssets/css/apple/css/img/arrow-blue.svg +1 -0
  38. data/documentation_project/Contents/Resources/SharedGlobalAssets/css/apple/css/img/arrow.svg +1 -0
  39. data/documentation_project/Contents/Resources/SharedGlobalAssets/css/apple/css/img/ask-siri.svg +1 -0
  40. data/documentation_project/Contents/Resources/SharedGlobalAssets/css/apple/css/img/button-clear-search.png +0 -0
  41. data/documentation_project/Contents/Resources/SharedGlobalAssets/css/apple/css/img/button-close-2.png +0 -0
  42. data/documentation_project/Contents/Resources/SharedGlobalAssets/css/apple/css/img/button-close-learnmore.png +0 -0
  43. data/documentation_project/Contents/Resources/SharedGlobalAssets/css/apple/css/img/button-close.png +0 -0
  44. data/documentation_project/Contents/Resources/SharedGlobalAssets/css/apple/css/img/button-search-small.png +0 -0
  45. data/documentation_project/Contents/Resources/SharedGlobalAssets/css/apple/css/img/button-search.png +0 -0
  46. data/documentation_project/Contents/Resources/SharedGlobalAssets/css/apple/css/img/button-toc-rtl.png +0 -0
  47. data/documentation_project/Contents/Resources/SharedGlobalAssets/css/apple/css/img/button-toc-small-rtl.png +0 -0
  48. data/documentation_project/Contents/Resources/SharedGlobalAssets/css/apple/css/img/button-toc-small.png +0 -0
  49. data/documentation_project/Contents/Resources/SharedGlobalAssets/css/apple/css/img/button-toc-toggle-rtl.png +0 -0
  50. data/documentation_project/Contents/Resources/SharedGlobalAssets/css/apple/css/img/button-toc-toggle.png +0 -0
  51. data/documentation_project/Contents/Resources/SharedGlobalAssets/css/apple/css/img/button-toc.png +0 -0
  52. data/documentation_project/Contents/Resources/SharedGlobalAssets/css/apple/css/img/changelanguage_icon2x.png +0 -0
  53. data/documentation_project/Contents/Resources/SharedGlobalAssets/css/apple/css/img/force-click.svg +1 -0
  54. data/documentation_project/Contents/Resources/SharedGlobalAssets/css/apple/css/img/icon-arrow-2.svg +1 -0
  55. data/documentation_project/Contents/Resources/SharedGlobalAssets/css/apple/css/img/icon-arrow.png +0 -0
  56. data/documentation_project/Contents/Resources/SharedGlobalAssets/css/apple/css/img/icon-close.svg +1 -0
  57. data/documentation_project/Contents/Resources/SharedGlobalAssets/css/apple/css/img/icon-external-link-lg.png +0 -0
  58. data/documentation_project/Contents/Resources/SharedGlobalAssets/css/apple/css/img/icon-external-link.png +0 -0
  59. data/documentation_project/Contents/Resources/SharedGlobalAssets/css/apple/css/img/icon-pause.svg +1 -0
  60. data/documentation_project/Contents/Resources/SharedGlobalAssets/css/apple/css/img/icon-play.svg +1 -0
  61. data/documentation_project/Contents/Resources/SharedGlobalAssets/css/apple/css/img/icon-replay.svg +1 -0
  62. data/documentation_project/Contents/Resources/SharedGlobalAssets/css/apple/css/img/icon-warning-black.png +0 -0
  63. data/documentation_project/Contents/Resources/SharedGlobalAssets/css/apple/css/img/icon-warning-eu.png +0 -0
  64. data/documentation_project/Contents/Resources/SharedGlobalAssets/css/apple/css/img/icon-warning.png +0 -0
  65. data/documentation_project/Contents/Resources/SharedGlobalAssets/css/apple/css/img/icon-webclip-120x120.png +0 -0
  66. data/documentation_project/Contents/Resources/SharedGlobalAssets/css/apple/css/img/icon-webclip-152x152.png +0 -0
  67. data/documentation_project/Contents/Resources/SharedGlobalAssets/css/apple/css/img/icon-webclip-57x57.png +0 -0
  68. data/documentation_project/Contents/Resources/SharedGlobalAssets/css/apple/css/img/icon-webclip-76x76.png +0 -0
  69. data/documentation_project/Contents/Resources/SharedGlobalAssets/css/apple/css/img/icon-webclip-ipad.png +0 -0
  70. data/documentation_project/Contents/Resources/SharedGlobalAssets/css/apple/css/img/icon-webclip-ipad_2x.png +0 -0
  71. data/documentation_project/Contents/Resources/SharedGlobalAssets/css/apple/css/img/icon-webclip-iphone.png +0 -0
  72. data/documentation_project/Contents/Resources/SharedGlobalAssets/css/apple/css/img/icon-webclip-iphone_2x.png +0 -0
  73. data/documentation_project/Contents/Resources/SharedGlobalAssets/css/apple/css/img/movie-play_2x.png +0 -0
  74. data/documentation_project/Contents/Resources/SharedGlobalAssets/css/apple/css/img/nav-left.svg +1 -0
  75. data/documentation_project/Contents/Resources/SharedGlobalAssets/css/apple/css/img/nav-paddle-left.png +0 -0
  76. data/documentation_project/Contents/Resources/SharedGlobalAssets/css/apple/css/img/nav-paddle-right.png +0 -0
  77. data/documentation_project/Contents/Resources/SharedGlobalAssets/css/apple/css/img/nav-right.svg +1 -0
  78. data/documentation_project/Contents/Resources/SharedGlobalAssets/css/apple/css/img/search_image_large.svg +1 -0
  79. data/documentation_project/Contents/Resources/SharedGlobalAssets/css/apple/css/img/tip.svg +1 -0
  80. data/documentation_project/Contents/Resources/SharedGlobalAssets/css/apple/css/img/toc_blue_large.svg +1 -0
  81. data/documentation_project/Contents/Resources/SharedGlobalAssets/css/apple/css/img/toc_large.svg +1 -0
  82. data/documentation_project/Contents/Resources/{Base.lproj/assets/stylesheets/_github.scss → SharedGlobalAssets/css/middlemac/github.css.scss} +0 -0
  83. data/documentation_project/Contents/Resources/SharedGlobalAssets/css/middlemac/middlemac.css.scss +129 -0
  84. data/documentation_project/Contents/Resources/SharedGlobalAssets/css/middlemac/note.svg +19 -0
  85. data/documentation_project/Contents/Resources/SharedGlobalAssets/css/middlemac/tip.svg +1 -0
  86. data/documentation_project/Contents/Resources/SharedGlobalAssets/css/middlemac/warning.svg +19 -0
  87. data/documentation_project/Contents/Resources/SharedGlobalAssets/fonts/_dummy.txt +1 -0
  88. data/documentation_project/Contents/Resources/{Base.lproj/assets → SharedGlobalAssets}/images/all-sample.png +0 -0
  89. data/documentation_project/Contents/Resources/{Base.lproj/assets → SharedGlobalAssets}/images/all-sample@2x.png +0 -0
  90. data/documentation_project/Contents/Resources/{shared → SharedGlobalAssets/images}/free-icon_256x256.png +0 -0
  91. data/documentation_project/Contents/Resources/{shared → SharedGlobalAssets/images}/free-icon_256x256@2x.png +0 -0
  92. data/documentation_project/Contents/Resources/{shared → SharedGlobalAssets/images}/free-icon_32x32.png +0 -0
  93. data/documentation_project/Contents/Resources/{shared → SharedGlobalAssets/images}/free-icon_32x32@2x.png +0 -0
  94. data/documentation_project/Contents/Resources/{Base.lproj/assets → SharedGlobalAssets}/images/free-middlemac-logo-small.png +0 -0
  95. data/documentation_project/Contents/Resources/{Base.lproj/assets → SharedGlobalAssets}/images/free-middlemac-logo-small@2x.png +0 -0
  96. data/documentation_project/Contents/Resources/{Base.lproj/assets → SharedGlobalAssets}/images/free-middlemac-logo.png +0 -0
  97. data/documentation_project/Contents/Resources/{Base.lproj/assets → SharedGlobalAssets}/images/free-middlemac-logo@2x.png +0 -0
  98. data/documentation_project/Contents/Resources/{Base.lproj/assets → SharedGlobalAssets}/images/middlemac-logo-small.png +0 -0
  99. data/documentation_project/Contents/Resources/{Base.lproj/assets → SharedGlobalAssets}/images/middlemac-logo-small@2x.png +0 -0
  100. data/documentation_project/Contents/Resources/{Base.lproj/assets → SharedGlobalAssets}/images/middlemac-logo.png +0 -0
  101. data/documentation_project/Contents/Resources/{Base.lproj/assets → SharedGlobalAssets}/images/middlemac-logo@2x.png +0 -0
  102. data/documentation_project/Contents/Resources/{Base.lproj/assets → SharedGlobalAssets}/images/mm-targets/free-logo-small.png +0 -0
  103. data/documentation_project/Contents/Resources/{Base.lproj/assets → SharedGlobalAssets}/images/mm-targets/free-logo-small@2x.png +0 -0
  104. data/documentation_project/Contents/Resources/{Base.lproj/assets → SharedGlobalAssets}/images/mm-targets/free-logo.png +0 -0
  105. data/documentation_project/Contents/Resources/{Base.lproj/assets → SharedGlobalAssets}/images/mm-targets/free-logo@2x.png +0 -0
  106. data/documentation_project/Contents/Resources/{Base.lproj/assets → SharedGlobalAssets}/images/mm-targets/pro-logo-small.png +0 -0
  107. data/documentation_project/Contents/Resources/{Base.lproj/assets → SharedGlobalAssets}/images/mm-targets/pro-logo-small@2x.png +0 -0
  108. data/documentation_project/Contents/Resources/{Base.lproj/assets → SharedGlobalAssets}/images/mm-targets/pro-logo.png +0 -0
  109. data/documentation_project/Contents/Resources/{Base.lproj/assets → SharedGlobalAssets}/images/mm-targets/pro-logo@2x.png +0 -0
  110. data/documentation_project/Contents/Resources/{shared → SharedGlobalAssets/images}/pro-icon_256x256.png +0 -0
  111. data/documentation_project/Contents/Resources/{shared → SharedGlobalAssets/images}/pro-icon_256x256@2x.png +0 -0
  112. data/documentation_project/Contents/Resources/{shared → SharedGlobalAssets/images}/pro-icon_32x32.png +0 -0
  113. data/documentation_project/Contents/Resources/{shared → SharedGlobalAssets/images}/pro-icon_32x32@2x.png +0 -0
  114. data/documentation_project/Contents/Resources/{Base.lproj/assets → SharedGlobalAssets}/images/pro-middlemac-logo-small.png +0 -0
  115. data/documentation_project/Contents/Resources/{Base.lproj/assets → SharedGlobalAssets}/images/pro-middlemac-logo-small@2x.png +0 -0
  116. data/documentation_project/Contents/Resources/{Base.lproj/assets → SharedGlobalAssets}/images/pro-middlemac-logo.png +0 -0
  117. data/documentation_project/Contents/Resources/{Base.lproj/assets → SharedGlobalAssets}/images/pro-middlemac-logo@2x.png +0 -0
  118. data/documentation_project/Contents/Resources/SharedGlobalAssets/js/app.5.1.27.js +6295 -0
  119. data/documentation_project/Contents/Resources/SharedGlobalAssets/js/middlemac-debug.js +20 -0
  120. data/documentation_project/Contents/Resources/SharedGlobalAssets/js/vendor.js +226 -0
  121. data/documentation_project/Contents/Resources/en.lproj/010_what_is_middlemac/index.html.md.erb +114 -0
  122. data/documentation_project/Contents/Resources/en.lproj/020_apple_help_features/index.html.md.erb +241 -0
  123. data/documentation_project/Contents/Resources/{Base.lproj/020_setup_tutorial/index.html.md.erb → en.lproj/030_get_started/010_set_up_middlemac.html.md.erb} +33 -37
  124. data/documentation_project/Contents/Resources/en.lproj/030_get_started/020_your_first_help_book.html.md.erb +374 -0
  125. data/documentation_project/Contents/Resources/en.lproj/030_get_started/030_serve_your_help_book.html.md.erb +97 -0
  126. data/documentation_project/Contents/Resources/en.lproj/030_get_started/040_build_your_help_book.html.md.erb +56 -0
  127. data/documentation_project/Contents/Resources/{Base.lproj/030_skills_refresher/10_markdown_skill.html.md.erb → en.lproj/030_get_started/050_about_markdown.html.md.erb} +12 -14
  128. data/documentation_project/Contents/Resources/{Base.lproj/030_skills_refresher/30_middleman_skill.html.md.erb → en.lproj/030_get_started/060_about_middleman.html.md.erb} +10 -14
  129. data/documentation_project/Contents/Resources/en.lproj/030_get_started/070_about_ruby.html.md.erb +194 -0
  130. data/documentation_project/Contents/Resources/en.lproj/030_get_started/aside_frontmatter.html.md.erb +64 -0
  131. data/documentation_project/Contents/Resources/en.lproj/030_get_started/index.html.md.erb +4 -0
  132. data/documentation_project/Contents/Resources/en.lproj/040_compose_project/010_setup.html.md.erb +204 -0
  133. data/documentation_project/Contents/Resources/{Base.lproj/030_skills_refresher/60_filetypes_skill.html.md.erb → en.lproj/040_compose_project/020_filetypes.html.md.erb} +7 -11
  134. data/documentation_project/Contents/Resources/en.lproj/040_compose_project/030_directory_conventions.html.md.erb +206 -0
  135. data/documentation_project/Contents/Resources/en.lproj/040_compose_project/040_groups.html.md.erb +96 -0
  136. data/documentation_project/Contents/Resources/en.lproj/040_compose_project/050_targets_and_features.html.md.erb +220 -0
  137. data/documentation_project/Contents/Resources/en.lproj/040_compose_project/060_frontmatter.html.md.erb +98 -0
  138. data/documentation_project/Contents/Resources/{Base.lproj/060_content/100_using_local_data.html.md.erb → en.lproj/040_compose_project/070_local_data.html.md.erb} +22 -9
  139. data/documentation_project/Contents/Resources/{Base.lproj/060_content/030_helpers.html.md.erb → en.lproj/040_compose_project/080_helpers/010_helpers.html.md.erb} +35 -69
  140. data/documentation_project/Contents/Resources/en.lproj/040_compose_project/080_helpers/020_markdown_links.html.md.erb +51 -0
  141. data/documentation_project/Contents/Resources/en.lproj/040_compose_project/080_helpers/030_markdown_images.html.md.erb +52 -0
  142. data/documentation_project/Contents/Resources/en.lproj/040_compose_project/080_helpers/index.html.md.erb +4 -0
  143. data/documentation_project/Contents/Resources/en.lproj/040_compose_project/090_partials.html.md.erb +64 -0
  144. data/documentation_project/Contents/Resources/en.lproj/040_compose_project/100_resources.html.md.erb +36 -0
  145. data/documentation_project/Contents/Resources/en.lproj/040_compose_project/110_implement_features.html.md.erb +197 -0
  146. data/documentation_project/Contents/Resources/en.lproj/040_compose_project/120_preview_build.html.md.erb +85 -0
  147. data/documentation_project/Contents/Resources/en.lproj/040_compose_project/index.html.md.erb +4 -0
  148. data/documentation_project/Contents/Resources/{Base.lproj/050_structure → en.lproj/040_compose_project}/not_free.html.md.erb +4 -11
  149. data/documentation_project/Contents/Resources/{Base.lproj/050_structure → en.lproj/040_compose_project}/not_pro.html.md.erb +4 -11
  150. data/documentation_project/Contents/Resources/en.lproj/100_reference/010_apple_help_books/010_dissect_help_book.html.md.erb +295 -0
  151. data/documentation_project/Contents/Resources/en.lproj/100_reference/010_apple_help_books/020_dissect_modern_help.html.md.erb +246 -0
  152. data/documentation_project/Contents/Resources/en.lproj/100_reference/010_apple_help_books/index.html.md.erb +4 -0
  153. data/documentation_project/Contents/Resources/en.lproj/100_reference/030_backwards_compatibility.html.md.erb +82 -0
  154. data/documentation_project/Contents/Resources/en.lproj/100_reference/040_directory_reference.html.md.erb +260 -0
  155. data/documentation_project/Contents/Resources/en.lproj/100_reference/050_xcode_integration.html.md.erb +165 -0
  156. data/documentation_project/Contents/Resources/{Base.lproj/100_reference/10_cli_ref.html.md.erb → en.lproj/100_reference/060_cli_ref.html.md.erb} +3 -29
  157. data/documentation_project/Contents/Resources/en.lproj/100_reference/080_frontmatter_reference.html.md.erb +111 -0
  158. data/documentation_project/Contents/Resources/en.lproj/100_reference/120_api_reference/070_config_ref.html.md.erb +31 -0
  159. data/documentation_project/Contents/Resources/en.lproj/100_reference/120_api_reference/090_helpers_ref.html.md.erb +20 -0
  160. data/documentation_project/Contents/Resources/{Base.lproj/100_reference/30_helpers_ext_ref.html.md.erb → en.lproj/100_reference/120_api_reference/091_helpers_ext_ref.html.md.erb} +3 -21
  161. data/documentation_project/Contents/Resources/{Base.lproj/100_reference/50_resource_ext_ref.html.md.erb → en.lproj/100_reference/120_api_reference/100_resource_ext_ref.html.md.erb} +3 -8
  162. data/documentation_project/Contents/Resources/en.lproj/100_reference/120_api_reference/index.html.md.erb +4 -0
  163. data/documentation_project/Contents/Resources/en.lproj/100_reference/index.html.md.erb +4 -0
  164. data/documentation_project/Contents/Resources/{Base.lproj → en.lproj}/110_acknowledgements/index.html.md.erb +5 -7
  165. data/documentation_project/Contents/Resources/en.lproj/ExactMatch.plist.erb +15 -0
  166. data/documentation_project/Contents/Resources/{Base.lproj → en.lproj}/InfoPlist.strings.erb +0 -0
  167. data/documentation_project/Contents/Resources/en.lproj/asides/aside_description.html.md.erb +21 -0
  168. data/documentation_project/Contents/Resources/en.lproj/assets/images/apple_help_books_folder_reference.png +0 -0
  169. data/documentation_project/Contents/Resources/en.lproj/assets/images/apple_help_books_project_membership.png +0 -0
  170. data/documentation_project/Contents/Resources/en.lproj/assets/images/apple_help_features_aside_example.png +0 -0
  171. data/documentation_project/Contents/Resources/en.lproj/assets/images/apple_help_features_chapter_heading.png +0 -0
  172. data/documentation_project/Contents/Resources/en.lproj/assets/images/apple_help_features_copyright_footer.png +0 -0
  173. data/documentation_project/Contents/Resources/en.lproj/assets/images/apple_help_features_landing_links.png +0 -0
  174. data/documentation_project/Contents/Resources/en.lproj/assets/images/apple_help_features_language_chooser.png +0 -0
  175. data/documentation_project/Contents/Resources/en.lproj/assets/images/apple_help_features_navigator.png +0 -0
  176. data/documentation_project/Contents/Resources/en.lproj/assets/images/apple_help_features_see_also.png +0 -0
  177. data/documentation_project/Contents/Resources/en.lproj/assets/images/apple_help_features_title_icons.png +0 -0
  178. data/documentation_project/Contents/Resources/en.lproj/assets/images/apple_help_features_universal.png +0 -0
  179. data/documentation_project/Contents/Resources/en.lproj/assets/images/get_started_init_contents.png +0 -0
  180. data/documentation_project/Contents/Resources/en.lproj/assets/images/get_started_init_english.png +0 -0
  181. data/documentation_project/Contents/Resources/en.lproj/assets/images/xcode_integration_config_sets.png +0 -0
  182. data/documentation_project/Contents/Resources/en.lproj/assets/images/xcode_integration_plist_definitions.png +0 -0
  183. data/documentation_project/Contents/Resources/en.lproj/assets/images/xcode_integration_target_dependencies.png +0 -0
  184. data/documentation_project/Contents/Resources/en.lproj/assets/images/xcode_integration_target_template.png +0 -0
  185. data/documentation_project/Contents/Resources/en.lproj/assets/images/xcode_integration_tool_configuration.png +0 -0
  186. data/documentation_project/Contents/Resources/{Base.lproj → en.lproj}/index.html.md.erb +3 -13
  187. data/documentation_project/Contents/Resources/en.lproj/locale-info.json.erb +16 -0
  188. data/documentation_project/Contents/Resources/en.lproj/navigation.json.erb +57 -0
  189. data/documentation_project/Contents/Resources/en.lproj/searchTree.json.erb +1 -0
  190. data/documentation_project/Contents/Resources/es.lproj/ExactMatch.plist.erb +15 -0
  191. data/{fixtures/middlemac_app/Contents/Resources/Base.lproj → documentation_project/Contents/Resources/es.lproj}/InfoPlist.strings.erb +0 -0
  192. data/documentation_project/Contents/Resources/es.lproj/index.html.md.erb +27 -0
  193. data/documentation_project/Contents/Resources/es.lproj/locale-info.json.erb +16 -0
  194. data/documentation_project/Contents/Resources/es.lproj/navigation.json.erb +57 -0
  195. data/documentation_project/Contents/Resources/es.lproj/searchTree.json.erb +1 -0
  196. data/documentation_project/Contents/Resources/index.html.erb +118 -0
  197. data/documentation_project/Contents/Resources/locale-list.json.erb +14 -0
  198. data/documentation_project/Gemfile +4 -17
  199. data/documentation_project/HelpViewerApp/HelpViewerApp/AppDelegate.h +1 -0
  200. data/documentation_project/HelpViewerApp/HelpViewerApp/AppDelegate.m +6 -0
  201. data/documentation_project/HelpViewerApp/HelpViewerApp/Base.lproj/MainMenu.xib +39 -10
  202. data/documentation_project/HelpViewerApp/HelpViewerApp/Info-free.plist +4 -4
  203. data/documentation_project/HelpViewerApp/HelpViewerApp/Info-pro.plist +4 -4
  204. data/documentation_project/HelpViewerApp/HelpViewerApp/versions.xcconfig +8 -0
  205. data/documentation_project/HelpViewerApp/HelpViewerApp.xcodeproj/project.pbxproj +79 -101
  206. data/documentation_project/HelpViewerApp/HelpViewerApp.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist +8 -0
  207. data/documentation_project/HelpViewerApp/HelpViewerApp.xcodeproj/xcshareddata/xcschemes/Help (free).xcscheme +11 -6
  208. data/documentation_project/HelpViewerApp/HelpViewerApp.xcodeproj/xcshareddata/xcschemes/Help (pro).xcscheme +80 -0
  209. data/documentation_project/HelpViewerApp/HelpViewerApp.xcodeproj/xcshareddata/xcschemes/HelpViewerApp (free).xcscheme +1 -1
  210. data/documentation_project/HelpViewerApp/HelpViewerApp.xcodeproj/xcshareddata/xcschemes/HelpViewerApp (pro).xcscheme +1 -1
  211. data/documentation_project/HelpViewerApp/README.md +6 -26
  212. data/documentation_project/{Middlemac (free).help → Middlemac_(free).help}/.gitignore +0 -0
  213. data/documentation_project/{Middlemac (pro).help → Middlemac_(pro).help}/.gitignore +0 -0
  214. data/documentation_project/config.rb +68 -100
  215. data/documentation_project/makefile +93 -0
  216. data/documentation_project/middlemac.webloc +0 -0
  217. data/features/helpers_features.feature +59 -0
  218. data/features/main_features.feature +21 -17
  219. data/features/support/env.rb +0 -14
  220. data/fixtures/middlemac_app/.gitignore +0 -1
  221. data/fixtures/middlemac_app/Contents/Info.plist.erb +1 -1
  222. data/fixtures/middlemac_app/Contents/Resources/{Base.lproj/assets → SharedGlobalAssets}/_data/globals.yml +0 -0
  223. data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/_data/locale-list.json +318 -0
  224. data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/_layouts/layout-apple-modern-aside.haml +19 -0
  225. data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/_layouts/layout-apple-modern.haml +61 -0
  226. data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/_layouts/layout-blank.haml +11 -0
  227. data/fixtures/middlemac_app/Contents/Resources/{Base.lproj/assets/partials → SharedGlobalAssets/_partials}/_partials_dir_partial.erb +0 -0
  228. data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/convention/icon-webclip-120x120.png +0 -0
  229. data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/convention/icon-webclip-152x152.png +0 -0
  230. data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/convention/icon-webclip-57x57.png +0 -0
  231. data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/convention/icon-webclip-76x76.png +0 -0
  232. data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/convention/icon-webclip-ipad.png +0 -0
  233. data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/convention/icon-webclip-ipad_2x.png +0 -0
  234. data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/convention/icon-webclip-iphone.png +0 -0
  235. data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/convention/icon-webclip-iphone_2x.png +0 -0
  236. data/fixtures/middlemac_app/Contents/Resources/{shared → SharedGlobalAssets/convention}/icon_256x256.png +0 -0
  237. data/fixtures/middlemac_app/Contents/Resources/{shared → SharedGlobalAssets/convention}/icon_256x256@2x.png +0 -0
  238. data/fixtures/middlemac_app/Contents/Resources/{shared → SharedGlobalAssets/convention}/icon_32x32.png +0 -0
  239. data/fixtures/middlemac_app/Contents/Resources/{shared → SharedGlobalAssets/convention}/icon_32x32@2x.png +0 -0
  240. data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/css/apple/apple.css +3831 -0
  241. data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/css/apple/css/img/L0200_LeftArrow_2x.png +0 -0
  242. data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/css/apple/css/img/L0201_RightArrow_2x.png +0 -0
  243. data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/css/apple/css/img/arrow-blue.svg +1 -0
  244. data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/css/apple/css/img/arrow.svg +1 -0
  245. data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/css/apple/css/img/ask-siri.svg +1 -0
  246. data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/css/apple/css/img/button-clear-search.png +0 -0
  247. data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/css/apple/css/img/button-close-2.png +0 -0
  248. data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/css/apple/css/img/button-close-learnmore.png +0 -0
  249. data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/css/apple/css/img/button-close.png +0 -0
  250. data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/css/apple/css/img/button-search-small.png +0 -0
  251. data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/css/apple/css/img/button-search.png +0 -0
  252. data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/css/apple/css/img/button-toc-rtl.png +0 -0
  253. data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/css/apple/css/img/button-toc-small-rtl.png +0 -0
  254. data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/css/apple/css/img/button-toc-small.png +0 -0
  255. data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/css/apple/css/img/button-toc-toggle-rtl.png +0 -0
  256. data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/css/apple/css/img/button-toc-toggle.png +0 -0
  257. data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/css/apple/css/img/button-toc.png +0 -0
  258. data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/css/apple/css/img/changelanguage_icon2x.png +0 -0
  259. data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/css/apple/css/img/force-click.svg +1 -0
  260. data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/css/apple/css/img/icon-arrow-2.svg +1 -0
  261. data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/css/apple/css/img/icon-arrow.png +0 -0
  262. data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/css/apple/css/img/icon-close.svg +1 -0
  263. data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/css/apple/css/img/icon-external-link-lg.png +0 -0
  264. data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/css/apple/css/img/icon-external-link.png +0 -0
  265. data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/css/apple/css/img/icon-pause.svg +1 -0
  266. data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/css/apple/css/img/icon-play.svg +1 -0
  267. data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/css/apple/css/img/icon-replay.svg +1 -0
  268. data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/css/apple/css/img/icon-warning-black.png +0 -0
  269. data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/css/apple/css/img/icon-warning-eu.png +0 -0
  270. data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/css/apple/css/img/icon-warning.png +0 -0
  271. data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/css/apple/css/img/icon-webclip-120x120.png +0 -0
  272. data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/css/apple/css/img/icon-webclip-152x152.png +0 -0
  273. data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/css/apple/css/img/icon-webclip-57x57.png +0 -0
  274. data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/css/apple/css/img/icon-webclip-76x76.png +0 -0
  275. data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/css/apple/css/img/icon-webclip-ipad.png +0 -0
  276. data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/css/apple/css/img/icon-webclip-ipad_2x.png +0 -0
  277. data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/css/apple/css/img/icon-webclip-iphone.png +0 -0
  278. data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/css/apple/css/img/icon-webclip-iphone_2x.png +0 -0
  279. data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/css/apple/css/img/movie-play_2x.png +0 -0
  280. data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/css/apple/css/img/nav-left.svg +1 -0
  281. data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/css/apple/css/img/nav-paddle-left.png +0 -0
  282. data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/css/apple/css/img/nav-paddle-right.png +0 -0
  283. data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/css/apple/css/img/nav-right.svg +1 -0
  284. data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/css/apple/css/img/search_image_large.svg +1 -0
  285. data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/css/apple/css/img/tip.svg +1 -0
  286. data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/css/apple/css/img/toc_blue_large.svg +1 -0
  287. data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/css/apple/css/img/toc_large.svg +1 -0
  288. data/fixtures/middlemac_app/Contents/Resources/{Base.lproj/assets/stylesheets/_github.scss → SharedGlobalAssets/css/middlemac/github.css.scss} +0 -0
  289. data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/css/middlemac/middlemac.css.scss +129 -0
  290. data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/css/middlemac/note.svg +19 -0
  291. data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/css/middlemac/tip.svg +1 -0
  292. data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/css/middlemac/warning.svg +19 -0
  293. data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/fonts/_dummy.txt +1 -0
  294. data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/images/global_thing_32x32.png +0 -0
  295. data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/js/app.5.1.27.js +6295 -0
  296. data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/js/middlemac-debug.js +20 -0
  297. data/fixtures/middlemac_app/Contents/Resources/SharedGlobalAssets/js/vendor.js +226 -0
  298. data/fixtures/middlemac_app/Contents/Resources/en.lproj/10_hello_world_file.html.md.erb +17 -0
  299. data/fixtures/middlemac_app/Contents/Resources/en.lproj/30_sample_group_number_one/index.html.md.erb +8 -0
  300. data/fixtures/middlemac_app/Contents/Resources/en.lproj/30_sample_group_number_one/page_one.html.md.erb +108 -0
  301. data/fixtures/middlemac_app/Contents/Resources/en.lproj/30_sample_group_number_one/page_two.html.md.erb +36 -0
  302. data/fixtures/middlemac_app/Contents/Resources/{Base.lproj → en.lproj}/40_sample_group_number_two/01_nested_group_example/01_page_one.html.md.erb +0 -5
  303. data/fixtures/middlemac_app/Contents/Resources/{Base.lproj → en.lproj}/40_sample_group_number_two/01_nested_group_example/02_pagina_dos.html.md.erb +0 -5
  304. data/fixtures/middlemac_app/Contents/Resources/{Base.lproj → en.lproj}/40_sample_group_number_two/01_nested_group_example/03_page_san.html.md.erb +0 -5
  305. data/fixtures/middlemac_app/Contents/Resources/en.lproj/40_sample_group_number_two/01_nested_group_example/index.html.md.erb +4 -0
  306. data/fixtures/middlemac_app/Contents/Resources/{Base.lproj → en.lproj}/40_sample_group_number_two/02_page_two.html.md.erb +0 -5
  307. data/fixtures/middlemac_app/Contents/Resources/{Base.lproj → en.lproj}/40_sample_group_number_two/03_page_three.html.md.erb +0 -5
  308. data/fixtures/middlemac_app/Contents/Resources/en.lproj/40_sample_group_number_two/index.html.md.erb +4 -0
  309. data/fixtures/middlemac_app/Contents/Resources/en.lproj/50_testing_world_file.html.md.erb +58 -0
  310. data/fixtures/middlemac_app/Contents/Resources/en.lproj/60_goodbye_world_file.html.md.erb +203 -0
  311. data/fixtures/middlemac_app/Contents/Resources/en.lproj/ExactMatch.plist.erb +15 -0
  312. data/fixtures/middlemac_app/Contents/Resources/en.lproj/InfoPlist.strings.erb +10 -0
  313. data/fixtures/middlemac_app/Contents/Resources/{Base.lproj → en.lproj}/_new_style_partial.erb +0 -0
  314. data/fixtures/middlemac_app/Contents/Resources/en.lproj/asides/aside_description.html.md.erb +20 -0
  315. data/fixtures/middlemac_app/Contents/Resources/en.lproj/assets/_partials/_localized_partials_dir_partial.erb +1 -0
  316. data/fixtures/middlemac_app/Contents/Resources/en.lproj/assets/images/all-graphic_32x32.png +0 -0
  317. data/fixtures/middlemac_app/Contents/Resources/en.lproj/assets/images/neat_thing_32x32.png +0 -0
  318. data/fixtures/middlemac_app/Contents/Resources/en.lproj/assets/images/subdirectory/logo_32x32.png +0 -0
  319. data/fixtures/middlemac_app/Contents/Resources/en.lproj/assets/images/subdirectory/pro-image_32x32.png +0 -0
  320. data/fixtures/middlemac_app/Contents/Resources/en.lproj/copyright.html.md.erb +19 -0
  321. data/fixtures/middlemac_app/Contents/Resources/en.lproj/index.html.md.erb +20 -0
  322. data/fixtures/middlemac_app/Contents/Resources/en.lproj/locale-info.json.erb +16 -0
  323. data/fixtures/middlemac_app/Contents/Resources/en.lproj/navigation.json.erb +57 -0
  324. data/fixtures/middlemac_app/Contents/Resources/en.lproj/searchTree.json.erb +1 -0
  325. data/fixtures/middlemac_app/Contents/Resources/es.lproj/10_hola_mundo_file.html.md.erb +15 -0
  326. data/fixtures/middlemac_app/Contents/Resources/es.lproj/60_goodbye_world_file.html.md.erb +193 -0
  327. data/fixtures/middlemac_app/Contents/Resources/es.lproj/ExactMatch.plist.erb +15 -0
  328. data/fixtures/middlemac_app/Contents/Resources/es.lproj/InfoPlist.strings.erb +10 -0
  329. data/fixtures/middlemac_app/Contents/Resources/es.lproj/assets/images/all-graphic_32x32.png +0 -0
  330. data/fixtures/middlemac_app/Contents/Resources/es.lproj/assets/images/neat_thing_32x32.png +0 -0
  331. data/fixtures/middlemac_app/Contents/Resources/es.lproj/assets/images/subdirectory/logo_32x32.png +0 -0
  332. data/fixtures/middlemac_app/Contents/Resources/es.lproj/assets/images/subdirectory/pro-image_32x32.png +0 -0
  333. data/fixtures/middlemac_app/Contents/Resources/es.lproj/copyright.html.md.erb +19 -0
  334. data/fixtures/middlemac_app/Contents/Resources/es.lproj/index.html.md.erb +21 -0
  335. data/fixtures/middlemac_app/Contents/Resources/es.lproj/locale-info.json.erb +16 -0
  336. data/fixtures/middlemac_app/Contents/Resources/es.lproj/navigation.json.erb +57 -0
  337. data/fixtures/middlemac_app/Contents/Resources/es.lproj/searchTree.json.erb +1 -0
  338. data/fixtures/middlemac_app/Contents/Resources/index.html.erb +118 -0
  339. data/fixtures/middlemac_app/Contents/Resources/locale-list.json.erb +14 -0
  340. data/fixtures/middlemac_app/Gemfile +4 -17
  341. data/fixtures/middlemac_app/config.rb +71 -100
  342. data/fixtures/middlemac_app/makefile +93 -0
  343. data/fixtures/middlemac_app/middlemac.webloc +0 -0
  344. data/lib/middlemac/extension.rb +123 -211
  345. data/lib/middlemac/helpers.rb +470 -0
  346. data/lib/middlemac/private.rb +494 -0
  347. data/lib/middlemac/sitemap.rb +516 -0
  348. data/lib/middlemac/trie.rb +37 -0
  349. data/lib/middlemac/version.rb +1 -1
  350. data/lib/middlemac.rb +4 -0
  351. data/middlemac.gemspec +7 -6
  352. data/resources/stopwords/ar.plist +206 -0
  353. data/resources/stopwords/ca.plist +0 -0
  354. data/resources/stopwords/cs.plist +30 -0
  355. data/resources/stopwords/da.plist +6 -0
  356. data/resources/stopwords/de.plist +119 -0
  357. data/resources/stopwords/el.plist +0 -0
  358. data/resources/stopwords/en.plist +0 -0
  359. data/resources/stopwords/es.plist +282 -0
  360. data/resources/stopwords/es_419.plist +282 -0
  361. data/resources/stopwords/fi.plist +206 -0
  362. data/resources/stopwords/fr.plist +132 -0
  363. data/resources/stopwords/he.plist +0 -0
  364. data/resources/stopwords/hr.plist +0 -0
  365. data/resources/stopwords/hu.plist +44 -0
  366. data/resources/stopwords/id.plist +6 -0
  367. data/resources/stopwords/it.plist +153 -0
  368. data/resources/stopwords/ja.plist +6 -0
  369. data/resources/stopwords/ko.plist +106 -0
  370. data/resources/stopwords/ms.plist +6 -0
  371. data/resources/stopwords/nl.plist +198 -0
  372. data/resources/stopwords/no.plist +207 -0
  373. data/resources/stopwords/pl.plist +207 -0
  374. data/resources/stopwords/pt.plist +207 -0
  375. data/resources/stopwords/pt_PT.plist +207 -0
  376. data/resources/stopwords/ro.plist +0 -0
  377. data/resources/stopwords/ru.plist +207 -0
  378. data/resources/stopwords/sk.plist +0 -0
  379. data/resources/stopwords/sv.plist +280 -0
  380. data/resources/stopwords/th.plist +56 -0
  381. data/resources/stopwords/tr.plist +200 -0
  382. data/resources/stopwords/uk.plist +764 -0
  383. data/resources/stopwords/vi.plist +6 -0
  384. data/resources/stopwords/zh_CN.plist +207 -0
  385. data/resources/stopwords/zh_TW.plist +207 -0
  386. data/yard/readme.md +4 -4
  387. metadata +394 -219
  388. data/documentation_project/Contents/Resources/Base.lproj/010_what_is_middlemac/index.html.md.erb +0 -126
  389. data/documentation_project/Contents/Resources/Base.lproj/030_skills_refresher/20_frontmatter_skill.html.md.erb +0 -54
  390. data/documentation_project/Contents/Resources/Base.lproj/030_skills_refresher/40_ruby_skill.html.md.erb +0 -67
  391. data/documentation_project/Contents/Resources/Base.lproj/030_skills_refresher/50_ruby_ecosystem.html.md.erb +0 -136
  392. data/documentation_project/Contents/Resources/Base.lproj/030_skills_refresher/index.html.md.erb +0 -35
  393. data/documentation_project/Contents/Resources/Base.lproj/040_setup/index.html.md.erb +0 -88
  394. data/documentation_project/Contents/Resources/Base.lproj/050_structure/010_directories_and_images.html.md.erb +0 -176
  395. data/documentation_project/Contents/Resources/Base.lproj/050_structure/020_layouts_and_templates.html.md.erb +0 -71
  396. data/documentation_project/Contents/Resources/Base.lproj/050_structure/025_css.html.md.erb +0 -71
  397. data/documentation_project/Contents/Resources/Base.lproj/050_structure/030_groups.html.md.erb +0 -83
  398. data/documentation_project/Contents/Resources/Base.lproj/050_structure/040_breadcrumbs.html.md.erb +0 -43
  399. data/documentation_project/Contents/Resources/Base.lproj/050_structure/050_navigator.html.md.erb +0 -26
  400. data/documentation_project/Contents/Resources/Base.lproj/050_structure/060_targets.html.md.erb +0 -63
  401. data/documentation_project/Contents/Resources/Base.lproj/050_structure/070_features.html.md.erb +0 -122
  402. data/documentation_project/Contents/Resources/Base.lproj/050_structure/index.html.md.erb +0 -21
  403. data/documentation_project/Contents/Resources/Base.lproj/060_content/010_frontmatter.html.md.erb +0 -88
  404. data/documentation_project/Contents/Resources/Base.lproj/060_content/040_partials.html.md.erb +0 -121
  405. data/documentation_project/Contents/Resources/Base.lproj/060_content/050_resources.html.md.erb +0 -60
  406. data/documentation_project/Contents/Resources/Base.lproj/060_content/070_including_excluding.html.md.erb +0 -68
  407. data/documentation_project/Contents/Resources/Base.lproj/060_content/080_markdown_links_images.html.md.erb +0 -93
  408. data/documentation_project/Contents/Resources/Base.lproj/060_content/090_css_image_sizes.html.md.erb +0 -90
  409. data/documentation_project/Contents/Resources/Base.lproj/060_content/index.html.md.erb +0 -21
  410. data/documentation_project/Contents/Resources/Base.lproj/070_preview_build/index.html.md.erb +0 -78
  411. data/documentation_project/Contents/Resources/Base.lproj/090_build_application/10_apple_help_setup.html.md.erb +0 -110
  412. data/documentation_project/Contents/Resources/Base.lproj/090_build_application/20_xcode_integration.html.md.erb +0 -64
  413. data/documentation_project/Contents/Resources/Base.lproj/090_build_application/index.html.md.erb +0 -25
  414. data/documentation_project/Contents/Resources/Base.lproj/100_reference/20_config_ref.html.md.erb +0 -56
  415. data/documentation_project/Contents/Resources/Base.lproj/100_reference/40_helpers_ref.html.md.erb +0 -45
  416. data/documentation_project/Contents/Resources/Base.lproj/100_reference/index.html.md.erb +0 -26
  417. data/documentation_project/Contents/Resources/Base.lproj/120_backwards_compatibility/index.html.md.erb +0 -88
  418. data/documentation_project/Contents/Resources/Base.lproj/130_all_help_content/index.html.md.erb +0 -15
  419. data/documentation_project/Contents/Resources/Base.lproj/assets/_layouts/layout-html4.haml +0 -22
  420. data/documentation_project/Contents/Resources/Base.lproj/assets/_layouts/layout-xhtml.haml +0 -28
  421. data/documentation_project/Contents/Resources/Base.lproj/assets/_layouts/template-logo-large.haml +0 -30
  422. data/documentation_project/Contents/Resources/Base.lproj/assets/_layouts/template-logo-medium.haml +0 -30
  423. data/documentation_project/Contents/Resources/Base.lproj/assets/_layouts/template-logo-small.haml +0 -30
  424. data/documentation_project/Contents/Resources/Base.lproj/assets/fonts/font-awesome/FontAwesome.otf +0 -0
  425. data/documentation_project/Contents/Resources/Base.lproj/assets/fonts/font-awesome/fontawesome-webfont.eot +0 -0
  426. data/documentation_project/Contents/Resources/Base.lproj/assets/fonts/font-awesome/fontawesome-webfont.svg +0 -655
  427. data/documentation_project/Contents/Resources/Base.lproj/assets/fonts/font-awesome/fontawesome-webfont.ttf +0 -0
  428. data/documentation_project/Contents/Resources/Base.lproj/assets/fonts/font-awesome/fontawesome-webfont.woff +0 -0
  429. data/documentation_project/Contents/Resources/Base.lproj/assets/fonts/font-awesome/fontawesome-webfont.woff2 +0 -0
  430. data/documentation_project/Contents/Resources/Base.lproj/assets/images/mm-extras/middlemac-extras-small.png +0 -0
  431. data/documentation_project/Contents/Resources/Base.lproj/assets/images/mm-extras/middlemac-extras-small@2x.png +0 -0
  432. data/documentation_project/Contents/Resources/Base.lproj/assets/images/mm-extras/middlemac-extras.png +0 -0
  433. data/documentation_project/Contents/Resources/Base.lproj/assets/images/mm-extras/middlemac-extras@2x.png +0 -0
  434. data/documentation_project/Contents/Resources/Base.lproj/assets/images/mm-extras/sub_images/middlemac-extras-small.png +0 -0
  435. data/documentation_project/Contents/Resources/Base.lproj/assets/images/mm-extras/sub_images/middlemac-extras-small@2x.png +0 -0
  436. data/documentation_project/Contents/Resources/Base.lproj/assets/images/mm-extras/sub_images/middlemac-extras.png +0 -0
  437. data/documentation_project/Contents/Resources/Base.lproj/assets/images/mm-extras/sub_images/middlemac-extras@2x.png +0 -0
  438. data/documentation_project/Contents/Resources/Base.lproj/assets/images/mm-pagegroups/middleman-pagegroups-small.png +0 -0
  439. data/documentation_project/Contents/Resources/Base.lproj/assets/images/mm-pagegroups/middleman-pagegroups.png +0 -0
  440. data/documentation_project/Contents/Resources/Base.lproj/assets/javascripts/all.js +0 -1
  441. data/documentation_project/Contents/Resources/Base.lproj/assets/partials/_nav_breadcrumbs.haml +0 -11
  442. data/documentation_project/Contents/Resources/Base.lproj/assets/partials/_nav_breadcrumbs_alt.haml +0 -15
  443. data/documentation_project/Contents/Resources/Base.lproj/assets/partials/_nav_brethren.haml +0 -18
  444. data/documentation_project/Contents/Resources/Base.lproj/assets/partials/_nav_brethren_index.haml +0 -14
  445. data/documentation_project/Contents/Resources/Base.lproj/assets/partials/_nav_legitimate_children.haml +0 -16
  446. data/documentation_project/Contents/Resources/Base.lproj/assets/partials/_nav_prev_next.haml +0 -21
  447. data/documentation_project/Contents/Resources/Base.lproj/assets/partials/_nav_toc_index.haml +0 -21
  448. data/documentation_project/Contents/Resources/Base.lproj/assets/partials/_yard_extras_config.erb +0 -200
  449. data/documentation_project/Contents/Resources/Base.lproj/assets/partials/_yard_extras_helpers.erb +0 -146
  450. data/documentation_project/Contents/Resources/Base.lproj/assets/partials/_yard_extras_helpers_extended.erb +0 -135
  451. data/documentation_project/Contents/Resources/Base.lproj/assets/partials/_yard_middlemac_config.erb +0 -207
  452. data/documentation_project/Contents/Resources/Base.lproj/assets/partials/_yard_middlemac_helpers.erb +0 -297
  453. data/documentation_project/Contents/Resources/Base.lproj/assets/partials/_yard_middlemac_helpers_extended.erb +0 -96
  454. data/documentation_project/Contents/Resources/Base.lproj/assets/partials/_yard_pagegroups_config.erb +0 -744
  455. data/documentation_project/Contents/Resources/Base.lproj/assets/partials/_yard_pagegroups_helpers.erb +0 -710
  456. data/documentation_project/Contents/Resources/Base.lproj/assets/partials/_yard_pagegroups_helpers_css.erb +0 -523
  457. data/documentation_project/Contents/Resources/Base.lproj/assets/partials/_yard_pagegroups_helpers_extended.erb +0 -56
  458. data/documentation_project/Contents/Resources/Base.lproj/assets/stylesheets/_apple_helpbook.scss +0 -946
  459. data/documentation_project/Contents/Resources/Base.lproj/assets/stylesheets/_normalize.scss +0 -374
  460. data/documentation_project/Contents/Resources/Base.lproj/assets/stylesheets/breadcrumb-separator-light.png +0 -0
  461. data/documentation_project/Contents/Resources/Base.lproj/assets/stylesheets/image_sizes.css.erb +0 -8
  462. data/documentation_project/Contents/Resources/Base.lproj/assets/stylesheets/style.css.scss +0 -4
  463. data/fixtures/middlemac_app/Contents/Resources/Base.lproj/10_hello_world_file.html.md.erb +0 -22
  464. data/fixtures/middlemac_app/Contents/Resources/Base.lproj/20_goodbye_world_file.html.md.erb +0 -22
  465. data/fixtures/middlemac_app/Contents/Resources/Base.lproj/30_sample_group_number_one/index.html.md.erb +0 -24
  466. data/fixtures/middlemac_app/Contents/Resources/Base.lproj/30_sample_group_number_one/page_one.html.md.erb +0 -20
  467. data/fixtures/middlemac_app/Contents/Resources/Base.lproj/30_sample_group_number_one/page_two.html.md.erb +0 -19
  468. data/fixtures/middlemac_app/Contents/Resources/Base.lproj/40_sample_group_number_two/01_nested_group_example/index.html.md.erb +0 -18
  469. data/fixtures/middlemac_app/Contents/Resources/Base.lproj/40_sample_group_number_two/index.html.md.erb +0 -24
  470. data/fixtures/middlemac_app/Contents/Resources/Base.lproj/45_testing_world_file.html.md.erb +0 -55
  471. data/fixtures/middlemac_app/Contents/Resources/Base.lproj/50_entire_world_file.html.md.erb +0 -15
  472. data/fixtures/middlemac_app/Contents/Resources/Base.lproj/assets/_layouts/layout-html4.haml +0 -22
  473. data/fixtures/middlemac_app/Contents/Resources/Base.lproj/assets/_layouts/layout-xhtml.haml +0 -28
  474. data/fixtures/middlemac_app/Contents/Resources/Base.lproj/assets/_layouts/template-logo-large.haml +0 -30
  475. data/fixtures/middlemac_app/Contents/Resources/Base.lproj/assets/_layouts/template-logo-medium.haml +0 -30
  476. data/fixtures/middlemac_app/Contents/Resources/Base.lproj/assets/_layouts/template-logo-small.haml +0 -30
  477. data/fixtures/middlemac_app/Contents/Resources/Base.lproj/assets/fonts/font-awesome/FontAwesome.otf +0 -0
  478. data/fixtures/middlemac_app/Contents/Resources/Base.lproj/assets/fonts/font-awesome/fontawesome-webfont.eot +0 -0
  479. data/fixtures/middlemac_app/Contents/Resources/Base.lproj/assets/fonts/font-awesome/fontawesome-webfont.svg +0 -655
  480. data/fixtures/middlemac_app/Contents/Resources/Base.lproj/assets/fonts/font-awesome/fontawesome-webfont.ttf +0 -0
  481. data/fixtures/middlemac_app/Contents/Resources/Base.lproj/assets/fonts/font-awesome/fontawesome-webfont.woff +0 -0
  482. data/fixtures/middlemac_app/Contents/Resources/Base.lproj/assets/fonts/font-awesome/fontawesome-webfont.woff2 +0 -0
  483. data/fixtures/middlemac_app/Contents/Resources/Base.lproj/assets/images/_empty_directory.html.md.erb +0 -1
  484. data/fixtures/middlemac_app/Contents/Resources/Base.lproj/assets/javascripts/all.js +0 -1
  485. data/fixtures/middlemac_app/Contents/Resources/Base.lproj/assets/partials/_nav_breadcrumbs.haml +0 -11
  486. data/fixtures/middlemac_app/Contents/Resources/Base.lproj/assets/partials/_nav_breadcrumbs_alt.haml +0 -15
  487. data/fixtures/middlemac_app/Contents/Resources/Base.lproj/assets/partials/_nav_brethren.haml +0 -18
  488. data/fixtures/middlemac_app/Contents/Resources/Base.lproj/assets/partials/_nav_brethren_index.haml +0 -14
  489. data/fixtures/middlemac_app/Contents/Resources/Base.lproj/assets/partials/_nav_legitimate_children.haml +0 -16
  490. data/fixtures/middlemac_app/Contents/Resources/Base.lproj/assets/partials/_nav_prev_next.haml +0 -21
  491. data/fixtures/middlemac_app/Contents/Resources/Base.lproj/assets/partials/_nav_toc_index.haml +0 -21
  492. data/fixtures/middlemac_app/Contents/Resources/Base.lproj/assets/stylesheets/_apple_helpbook.scss +0 -946
  493. data/fixtures/middlemac_app/Contents/Resources/Base.lproj/assets/stylesheets/_normalize.scss +0 -374
  494. data/fixtures/middlemac_app/Contents/Resources/Base.lproj/assets/stylesheets/breadcrumb-separator-light.png +0 -0
  495. data/fixtures/middlemac_app/Contents/Resources/Base.lproj/assets/stylesheets/image_sizes.css.erb +0 -8
  496. data/fixtures/middlemac_app/Contents/Resources/Base.lproj/assets/stylesheets/style.css.scss +0 -4
  497. data/fixtures/middlemac_app/Contents/Resources/Base.lproj/index.html.md.erb +0 -17
@@ -1,9 +1,19 @@
1
1
  ################################################################################
2
2
  # config.rb
3
- # Configure Middleman to generate Apple HelpBook containers for multiple
3
+ # Configure Middleman to generate Apple Help Book containers for multiple
4
4
  # targets.
5
5
  ################################################################################
6
6
 
7
+ ##########################################################################
8
+ # Build System Integration
9
+ # If built from Xcode (or another build system you create), then setup
10
+ # some of our variables automatically from the environment variables
11
+ # that the build system sets for us. You’ll have to set up Xcode to
12
+ # set this environment variable, of course.
13
+ ##########################################################################
14
+ version_app = ENV.has_key?('MIDDLEMAC_CFBundleShortVersionString') ? ENV['MIDDLEMAC_CFBundleShortVersionString'] : nil
15
+
16
+
7
17
  ##########################################################################
8
18
  # Targets Configuration
9
19
  # Middlemac is capable of building multiple targets for variants of your
@@ -40,12 +50,13 @@ config[:target] = :pro
40
50
  # If specified a target-specific icon will be used as the help book icon by
41
51
  # Apple’s help viewer. This path must be relative to the location of the
42
52
  # `Resources` directory per Apple’s specification. If `nil` (or not present)
43
- # then the default `shared/icon_32x32@2x.png` will be used.
53
+ # then the default `SharedGlobalAssets/convention/icon_32x32@2x.png` will be
54
+ # used.
44
55
 
45
56
  # :CFBundleName
46
57
  # This value will be used for correct .plists and .strings setup, and will
47
58
  # determine final .help directory name. All targets should use the same
48
- # :CFBundleName. Built targets will be named `CFBundleName (target).help`.
59
+ # :CFBundleName. Built targets will be named `CFBundleName_(target).help`.
49
60
  # This is *not* intended to be a product name, which is defined below.
50
61
 
51
62
  # :ProductName
@@ -61,6 +72,10 @@ config[:target] = :pro
61
72
  # You can specify different product URIs for each build target. The URI
62
73
  # for the current target will be available via the `product_uri` helper.
63
74
 
75
+ # :ProductCopyright
76
+ # You should specify a copyright string to be included in the Apple Help Book.
77
+ # This typically appears when you print a Help Book.
78
+
64
79
  # (other)
65
80
  # You can specify additional .plist and .strings keys here, too. Have a look
66
81
  # at `Info.plist.erb` and `InfoPlist.strings.erb`; simply use the exact key
@@ -76,11 +91,12 @@ config[:targets] = {
76
91
  :free =>
77
92
  {
78
93
  :CFBundleID => 'com.balthisar.middlemac.free.help',
79
- :HPDBookIconPath => 'shared/free-icon_32x32@2x.png',
94
+ :HPDBookIconPath => 'SharedGlobalArt/free-icon_32x32@2x.png',
80
95
  :CFBundleName => 'Middlemac',
81
96
  :ProductName => 'Middlemac',
82
- :ProductVersion => '2.0.0',
97
+ :ProductVersion => version_app || '3.0.0',
83
98
  :ProductURI => 'http://www.balthisar.com/developer',
99
+ :ProductCopyright => '© 2018 Jim Derry. All rights reserved.',
84
100
  :features =>
85
101
  {
86
102
  :feature_advertise_pro => true,
@@ -93,11 +109,12 @@ config[:targets] = {
93
109
  :pro =>
94
110
  {
95
111
  :CFBundleID => 'com.balthisar.middlemac.pro.help',
96
- :HPDBookIconPath => 'shared/pro-icon_32x32@2x.png',
112
+ :HPDBookIconPath => 'SharedGlobalArt/pro-icon_32x32@2x.png',
97
113
  :CFBundleName => 'Middlemac',
98
114
  :ProductName => 'Middlemac Pro',
99
- :ProductVersion => '2.0.0',
115
+ :ProductVersion => version_app || '3.0.0',
100
116
  :ProductURI => 'http://www.balthisar.com/developer',
117
+ :ProductCopyright => '© 2018 Jim Derry. All rights reserved.',
101
118
  :features =>
102
119
  {
103
120
  :feature_advertise_pro => false,
@@ -121,64 +138,6 @@ config[:target_magic_images] = true
121
138
  config[:target_magic_word] = 'all'
122
139
 
123
140
 
124
- ################################################################
125
- # Page Groups Configuration
126
- # Middlemac uses the `middleman-pagegroups` gem in order to
127
- # automate nearly all of the navigation in your help book
128
- # project.
129
- ################################################################
130
- activate :MiddlemanPageGroups do |config|
131
-
132
- # Indicate whether or not numeric file name prefixes used for sorting
133
- # pages should be eliminated during output. This results in cleaner
134
- # URI's. Helpers such as `page_name` and Middleman helpers such as
135
- # `page_class` will reflect the pretty name.
136
- config.strip_file_prefixes = true
137
-
138
- # Indicates whether or not Middleman's built-in `page_class` helper is
139
- # extended to include the page_group and page_name.
140
- config.extend_page_class = true
141
-
142
- # the following options provide defaults for the built-in helpers and
143
- # sample partials. They'll also work in your own partials and helpers.
144
-
145
- config.nav_breadcrumbs_class = 'breadcrumbs'
146
- config.nav_breadcrumbs_alt_class = 'breadcrumbs'
147
- config.nav_breadcrumbs_alt_label = 'Current page'
148
- config.nav_brethren_class = 'table_contents'
149
- config.nav_brethren_index_class = 'related-topics'
150
- config.nav_legitimate_children_class = 'table_contents'
151
- config.nav_prev_next_class = 'navigate_prev_next'
152
- config.nav_prev_next_label_prev = 'Previous'
153
- config.nav_prev_next_label_next = 'Next'
154
- config.nav_toc_index_class = 'help_map'
155
-
156
- end
157
-
158
-
159
- ################################################################
160
- # Extras Configuration
161
- # Middlemac uses the `middlemac-extras` gem in order to
162
- # provide other useful tools. They can be configured here.
163
- ################################################################
164
- activate :MiddlemacExtras do |config|
165
-
166
- # If set to true, then the enhanced image_tag helper will be used
167
- # to include @2x srcset automatically, if the image asset exists.
168
- config.retina_srcset = true
169
-
170
- # If set to true then the `image_tag` helper will work for images even
171
- # if you don't specify an extension, but only if a file exists on disk
172
- # that has one of the extensions in :img_auto_extensions_order.
173
- config.img_auto_extensions = true
174
-
175
- # Set this to an array of extensions in the order of precedence for
176
- # using `image_tag` without file extensions.
177
- config.img_auto_extensions_order = %w(.svg .png .jpg .jpeg .gif .tiff .tif)
178
-
179
- end
180
-
181
-
182
141
  ################################################################
183
142
  # Configuration
184
143
  # Change the option values to suit your needs.
@@ -191,16 +150,35 @@ activate :Middlemac do |options|
191
150
  # named in the form `#{CFBundleName} (target).help`. You might want to target
192
151
  # the `Resources` directory of your XCode project so that your XCode project
193
152
  # is always up to date.
194
- options.Help_Output_Location = nil
153
+ options.help_output_location = nil
195
154
 
196
- # Indicates the name of the breadcrumbs helper to use for breadcrumbs.
197
- # Built-in breadcrumbs are "nav_breadcrumbs" and "nav_breadcrumbs_alt".
198
- # Change to `nil` to disable breadcrumbs completely.
199
- options.Breadcrumbs = 'nav_breadcrumbs'
155
+ # If set to true, then the enhanced image_tag helper will be used
156
+ # to include @2x, @3x, and @4x srcset automatically, if the image assets
157
+ # exist.
158
+ options.retina_srcset = true
159
+
160
+ # If set to an array of possible image extension values, then the `image_tag`
161
+ # helper will work for images even if you don't specify an extension, but only
162
+ # if a file exists in the sitemap that has one of these extensions. Set this to
163
+ # an array of extensions in the order of precedence.
164
+ options.img_auto_extensions = %w(.svg .png .jpg .jpeg .gif .tiff .tif)
165
+
166
+ # If set to true, some of the templates will show additional information
167
+ # when pages are generated, such as contents of md_links and md_images.
168
+ # Also, JavaScript redirects will be omitted from naked pages, and the
169
+ # meta refresh will be set to 100 seconds for such pages.
170
+ options.show_debug = false
171
+
172
+ # If set to true, Apple will provide next page and previous page navigation
173
+ # gadgets automatically at the bottom of each content page. Apple itself
174
+ # does not use this feature currently.
175
+ options.show_previous_next = false
200
176
 
201
- # This was removed in Middleman version 4.0. We are reintroducing it
202
- # as a Middlemac feature.
203
- options.partials_dir = 'Resources/Base.lproj/assets/partials'
177
+ # Indicate whether or not numeric file name prefixes used for sorting
178
+ # pages should be eliminated during output. This results in cleaner
179
+ # URI's. Helpers such as `page_name` and Middleman helpers such as
180
+ # `page_class` will reflect the pretty name.
181
+ config.strip_file_prefixes = true
204
182
 
205
183
  end #activate
206
184
 
@@ -214,42 +192,32 @@ end #activate
214
192
  #===============================================================
215
193
  # Setup directories to mirror Help Book directory layout.
216
194
  #===============================================================
217
- set :source, 'Contents'
218
- set :build_dir, 'Contents (build)'
219
-
220
- set :fonts_dir, 'Resources/Base.lproj/assets/fonts'
221
- set :images_dir, 'Resources/Base.lproj/assets/images'
222
- set :js_dir, 'Resources/Base.lproj/assets/javascripts'
223
- set :css_dir, 'Resources/Base.lproj/assets/stylesheets'
224
-
225
- set :layouts_dir, 'Resources/Base.lproj/assets/_layouts'
226
- set :data_dir, 'Contents/Resources/Base.lproj/assets/_data'
227
-
228
-
229
- #===============================================================
230
- # Ignore items we don't want copied to the destination
231
- #===============================================================
232
- #ignore 'data/*'
195
+ set :source, 'Contents'
196
+ set :data_dir, 'Contents/Resources/SharedGlobalAssets/_data'
197
+ set :assets_dir, 'Resources/SharedGlobalAssets'
198
+ set :partials_dir, '_partials'
199
+ set :layouts_dir, '_layouts'
200
+ set :convention_dir, 'convention'
201
+ set :css_dir, 'css'
202
+ set :fonts_dir, 'fonts'
203
+ set :images_dir, 'images'
204
+ set :js_dir, 'js'
233
205
 
234
206
 
235
207
  #===============================================================
236
- # All of our links and assets must be relative to the file
237
- # location, and never absolute. However we will *use* absolute
238
- # paths with root being the source directory; they will be
239
- # converted to relative paths at build.
208
+ # Other required setup. Note: don't use relative assets or
209
+ # links here, as Apple require very specific hrefs.
240
210
  #===============================================================
241
211
  set :strip_index_file, false
242
- set :relative_links, true
243
- activate :relative_assets do |options|
244
- options.rewrite_ignore = [/image_sizes\.css/]
245
- end
246
212
 
247
213
 
248
214
  #===============================================================
249
- # Default to Apple-recommended HTML 4.01 layout.
215
+ # Default to HTML5 Layout.
250
216
  #===============================================================
251
- set :haml, :format => :html4
252
- page 'Resources/Base.lproj/*.html', :layout => :'layout-html4'
217
+ Haml::TempleEngine.disable_option_validator!
218
+ set :haml, :format => :html5
219
+ page 'Resources/*.lproj/*.html', :layout => :'layout-apple-modern'
220
+ page 'Resources/*.lproj/asides/*.html', :layout => :'layout-apple-modern-aside'
253
221
 
254
222
 
255
223
  #===============================================================
@@ -0,0 +1,93 @@
1
+ ###############################################################################
2
+ # Building from make rather than the previous shell script gives us a lot of
3
+ # flexibility and is a bit simpler to integrate with Xcode.
4
+ #
5
+ # Usage:
6
+ # make build|clean TARGET=target
7
+ # Specifying a target is required.
8
+ #
9
+ # Make will assume that this makefile is in the root of your project, at the
10
+ # same level as your source Contents/ directory. To use this file from Xcode,
11
+ # create an External Build System target, and specify `/usr/bin/make` as the
12
+ # build tool, `$(ACTION) TARGET=your_target_or_variable` as the arguments,
13
+ # and for Directory, a path to this file, e.g., `$(PROJECT_DIR)/path/to/me`.
14
+ ###############################################################################
15
+
16
+
17
+ #====================================================================
18
+ # Prerequisites:
19
+ # - Ensure that a TARGET is specified.
20
+ # - Make sure Middlemac is installed and reachable. Although we
21
+ # could do that in a recipe, we need to discover our BUILD_DIR,
22
+ # which cannot be done in a recipe.
23
+ # - Discover our BUILD_DIR, by asking Middleman for the build
24
+ # directory for the specified target.
25
+ # Output will be provided in a target recipe if these conditions
26
+ # cannot be met.
27
+ #====================================================================
28
+
29
+ ifdef TARGET
30
+ MM_EXISTS := $(shell [[ -s "$(HOME)/.rvm/environments/default" ]] && source "$(HOME)/.rvm/environments/default" ; which middlemac)
31
+ endif
32
+ ifdef MM_EXISTS
33
+ BUILD_DIR := $(shell export LANG=en_US.UTF-8 && [[ -s "$(HOME)/.rvm/environments/default" ]] && source "$(HOME)/.rvm/environments/default" ; bundle exec middleman list_all | grep "$(TARGET)," | cut -d\ -f2- )
34
+ endif
35
+
36
+
37
+ #====================================================================
38
+ # "Source" files to monitor for changes. If any of these change,
39
+ # then they will have a new file modification date than the
40
+ # $(BUILD_DIR), causing the action to execute.
41
+ #====================================================================
42
+ SRC_FILES = $(shell find Contents)
43
+ SRC_FILES += config.rb Gemfile Gemfile.lock
44
+
45
+ #====================================================================
46
+ # The default action, will build the specified TARGET using
47
+ # Middleman, by depending on the $(BUILD_DIR).
48
+ #====================================================================
49
+ .PHONY: build
50
+ build: check_prerequisites $(BUILD_DIR)
51
+
52
+
53
+ #====================================================================
54
+ # The action that will actually perform the building of the help
55
+ # book. If the directory specified by $(BUILD_DIR) is older than
56
+ # any of the given source files, then this action will be executed.
57
+ # NOTE: make does NOT work with spaces in filenames.
58
+ #====================================================================
59
+ $(BUILD_DIR): $(SRC_FILES)
60
+ @echo "Make will have Middleman build target '$(TARGET)'"
61
+ # @echo "RECIPE AS KNOWN TO MAKE: $@"
62
+ # @echo " ACTUAL BUILD_DIR: $(BUILD_DIR)"
63
+ # @echo " EXECUTION REASON: $?"
64
+ @export LANG=en_US.UTF-8 && \
65
+ [[ -s "$(HOME)/.rvm/environments/default" ]] && source "$(HOME)/.rvm/environments/default" ; \
66
+ bundle exec middleman build --target "$(TARGET)"
67
+ @touch "$(BUILD_DIR)"
68
+
69
+
70
+ #====================================================================
71
+ # Clean the given target.
72
+ #====================================================================
73
+ .PHONY: clean
74
+ clean: check_prerequisites
75
+ @echo "Cleaning $(BUILD_DIR)…"
76
+ @rm -rf "$(BUILD_DIR)"
77
+
78
+
79
+ #====================================================================
80
+ # Ensure that we have everything that we need to proceed with doing
81
+ # something with Middlemac and with the target.
82
+ #====================================================================
83
+ .PHONY: check_prerequisites
84
+ check_prerequisites:
85
+ ifndef TARGET
86
+ $(error "ERROR: It's required to specify a target macro, e.g., TARGET=default.")
87
+ endif
88
+ ifndef MM_EXISTS
89
+ $(error "ERROR: Middlemac was not found, and is required to continue.")
90
+ endif
91
+ ifndef BUILD_DIR
92
+ $(error "ERROR: Target ${TARGET} was specified, but Middlemac did not find any valid targets.")
93
+ endif
Binary file
@@ -0,0 +1,59 @@
1
+ Feature: Provide helpers and resource items to make multiple targets easy to manage.
2
+
3
+ As a software developer
4
+ I want to use helpers and resource items
5
+ In order to enable automatic navigation of items.
6
+
7
+ Background:
8
+ Given a built app at "middlemac_app"
9
+
10
+ Scenario:
11
+ The css_image_sizes helper should return CSS for every image in the project
12
+ and @2x images should have proper widths and heights, too.
13
+ When I cd to "New_Project_(pro).help/Contents/Resources/en.lproj/"
14
+ And the file "goodbye_world_file.html" should contain "img[src$='SharedGlobalAssets/convention/icon_256x256.png'] { max-width: 256px; max-height: 256px; }"
15
+ And the file "goodbye_world_file.html" should contain "img[src$='SharedGlobalAssets/convention/icon_256x256@2x.png'] { max-width: 256px; max-height: 256px; }"
16
+ And the file "goodbye_world_file.html" should contain "img[src$='SharedGlobalAssets/convention/icon_32x32.png'] { max-width: 32px; max-height: 32px; }"
17
+ And the file "goodbye_world_file.html" should contain "img[src$='SharedGlobalAssets/convention/icon_32x32@2x.png'] { max-width: 32px; max-height: 32px; }"
18
+
19
+
20
+ Scenario:
21
+ The md_images helper should return Markdown references for every image in
22
+ the project.
23
+ When I cd to "New_Project_(pro).help/Contents/Resources/en.lproj/"
24
+ And the file "goodbye_world_file.html" should contain "[icon_256x256@2x]: /Resources/SharedGlobalAssets/convention/icon_256x256@2x.png"
25
+ And the file "goodbye_world_file.html" should contain "[icon_32x32]: /Resources/SharedGlobalAssets/convention/icon_32x32.png"
26
+ And the file "goodbye_world_file.html" should contain "[icon_32x32@2x]: /Resources/SharedGlobalAssets/convention/icon_32x32@2x.png"
27
+
28
+
29
+ Scenario:
30
+ The md_links helper should return Markdown references for every HTML file
31
+ in the project, and should include a title generated from the front matter.
32
+ When I cd to "New_Project_(pro).help/Contents/Resources/en.lproj/"
33
+ And the file "goodbye_world_file.html" should contain '[goodbye_world_file]: #/topic-en.lproj-goodbye_world_file "Goodbye World"'
34
+ And the file "goodbye_world_file.html" should contain '[hello_world_file]: #/topic-en.lproj-hello_world_file "Hello World"'
35
+ And the file "goodbye_world_file.html" should contain '[testing_world_file]: #/topic-en.lproj-testing_world_file "Testing World"'
36
+
37
+
38
+ Scenario:
39
+ The extended image tag should include srcset automatically if @2x images are
40
+ present, and not include a srcset if not.
41
+ When I cd to "New_Project_(pro).help/Contents/Resources/en.lproj/"
42
+ And the file "goodbye_world_file.html" should contain 'img src="/Resources/SharedGlobalAssets/convention/icon_32x32.png" srcset="/Resources/SharedGlobalAssets/convention/icon_32x32.png 1x, /Resources/SharedGlobalAssets/convention/icon_32x32@2x.png 2x" alt="Icon 32x32"'
43
+ And the file "goodbye_world_file.html" should contain 'img src="/Resources/SharedGlobalAssets/convention/icon_256x256.png" srcset="/Resources/SharedGlobalAssets/convention/icon_256x256.png 1x, /Resources/SharedGlobalAssets/convention/icon_256x256@2x.png 2x" alt="Icon 256x256"'
44
+ And the file "goodbye_world_file.html" should contain 'img src="/Resources/en.lproj/assets/images/subdirectory/logo_32x32.png" alt="Logo 32x32"'
45
+ And the file "goodbye_world_file.html" should contain 'img src="/Resources/en.lproj/assets/images/neat_thing_32x32.png" alt="Neat thing 32x32"'
46
+ And the file "goodbye_world_file.html" should contain 'img src="/Resources/en.lproj/assets/images/subdirectory/pro-image_32x32.png" alt="Pro image 32x32"'
47
+ And the file "goodbye_world_file.html" should contain 'img src="/Resources/en.lproj/assets/images/all-graphic_32x32.png" alt="All graphic 32x32'
48
+ And the file "goodbye_world_file.html" should contain 'img src="/Resources/SharedGlobalAssets/images/myfile-NOT_IN_SITEMAP" alt="Myfile not in sitemap"'
49
+ And the file "goodbye_world_file.html" should contain 'img src="/Resources/SharedGlobalAssets/images/myfile-NOT_IN_SITEMAP.png" alt="Myfile not in sitemap"'
50
+
51
+
52
+ Scenario:
53
+ The link_to helper should return links that are useful to the Apple help
54
+ book engine instead of normal HTML links, unless the link is to a page
55
+ that is not in the project.
56
+ When I cd to "New_Project_(pro).help/Contents/Resources/en.lproj/"
57
+ And the file "goodbye_world_file.html" should contain 'a href="#/topic-en.lproj-hello_world_file"'
58
+ And the file "goodbye_world_file.html" should contain 'a href="#/topic-sample_group_number_two-page_two"'
59
+ And the file "goodbye_world_file.html" should contain 'a href="doesntexist.html"'
@@ -2,20 +2,19 @@ Feature: Middlemac produces plist and strings files, uses correct HTML formats,
2
2
  and provides useful helpers to generate content.
3
3
 
4
4
  As a software developer
5
- I want to build useable Mac OS X help books.
5
+ I want to build useable macOS help books.
6
6
 
7
7
  Background:
8
8
  Given a built app at "middlemac_app"
9
9
 
10
10
  Scenario:
11
- The correct HTML version must be used on the top level index page versus
12
- other pages in the project.
13
- When I cd to "New Project (pro).help/Contents/Resources/Base.lproj/"
14
- And the file "index.html" should contain "DTD XHTML 1.0 Strict"
15
- And the file "testing_world_file.html" should contain "DTD HTML 4.01"
11
+ The correct HTML version must be used on generated files.
12
+ When I cd to "New_Project_(pro).help/Contents/Resources/en.lproj/"
13
+ And the file "index.html" should contain "<html lang='en'>"
14
+ And the file "testing_world_file.html" should contain "<html lang='en'>"
16
15
 
17
16
  Scenario: The Info.plist file must be processed with relevant data.
18
- When I cd to "New Project (pro).help/Contents/"
17
+ When I cd to "New_Project_(pro).help/Contents/"
19
18
  And the file "Info.plist" should contain "<string>com.sample.project.pro.help</string>"
20
19
  And the file "Info.plist" should contain "<string>New Project</string>"
21
20
  And the file "Info.plist" should contain "<string>New Project.helpindex</string>"
@@ -23,22 +22,27 @@ Feature: Middlemac produces plist and strings files, uses correct HTML formats,
23
22
  And the file "Info.plist" should contain "<string>http://www.sample.com</string>"
24
23
 
25
24
  Scenario: The InfoPlist.strings file must be processed with relevant data.
26
- When I cd to "New Project (pro).help/Contents/Resources/Base.lproj/"
25
+ When I cd to "New_Project_(pro).help/Contents/Resources/en.lproj/"
27
26
  And the file "InfoPlist.strings" should contain "<string>New Project</string>"
28
27
  And the file "InfoPlist.strings" should contain "<string>New Project Help</string>"
29
28
 
30
29
  Scenario: The help index file should have been produced.
31
- When I cd to "New Project (pro).help/Contents/Resources/Base.lproj/"
30
+ When I cd to "New_Project_(pro).help/Contents/Resources/en.lproj/"
32
31
  And the file "New Project.helpindex" should exist
32
+
33
+ Scenario: The navigation.json file must have relevant data.
34
+ When I cd to "New_Project_(pro).help/Contents/Resources/en.lproj/"
35
+ And the file "navigation.json" should contain "sample_group_number_two/nested_group_example/page_san.html"
36
+ And the file "navigation.json" should contain '"landing": "topic-Resources-en.lproj",'
37
+
33
38
 
34
39
  Scenario: The helpers will produce correct output.
35
- When I cd to "New Project (pro).help/Contents/Resources/Base.lproj/"
36
- And the file "testing_world_file.html" should contain "breadcrumbs:nav_breadcrumbs"
37
- And the file "testing_world_file.html" should contain "partials_dir:Resources/Base.lproj/assets/partials"
38
- And the file "testing_world_file.html" should contain "cfBundleIdentifier:com.sample.project.pro.help"
39
- And the file "testing_world_file.html" should contain "cfBundleName:New Project"
40
- And the file "testing_world_file.html" should contain "product_name:New Project Pro"
41
- And the file "testing_world_file.html" should contain "product_version:2.0.0.wip"
42
- And the file "testing_world_file.html" should contain "product_uri:http://www.sample.com"
40
+ When I cd to "New_Project_(pro).help/Contents/Resources/en.lproj/"
41
+ And the file "testing_world_file.html" should contain "Resources/SharedGlobalAssets/_partials"
42
+ And the file "testing_world_file.html" should contain "com.sample.project.pro.help"
43
+ And the file "testing_world_file.html" should contain "New Project"
44
+ And the file "testing_world_file.html" should contain "New Project Pro"
45
+ And the file "testing_world_file.html" should contain "3.0.0.wip"
46
+ And the file "testing_world_file.html" should contain "http://www.sample.com"
43
47
  And the file "testing_world_file.html" should contain "_new_style_partial"
44
48
  And the file "testing_world_file.html" should contain "_partials_dir_partial"
@@ -4,17 +4,3 @@ ENV['TEST'] = 'true'
4
4
  require 'middleman'
5
5
  require 'middleman-core/step_definitions'
6
6
  require File.join(PROJECT_ROOT_PATH, 'lib', 'middlemac')
7
-
8
-
9
- require 'cucumber/formatter/pretty'
10
- class QuietFormatter < Cucumber::Formatter::Pretty
11
- def initialize(runtime, io, options)
12
- $stderr = File.new( '/dev/null', 'w' )
13
- super(runtime, io, options)
14
- end
15
-
16
- def after_features(features)
17
- $stderr = STDOUT
18
- super(features)
19
- end
20
- end
@@ -21,5 +21,4 @@ Gemfile.lock
21
21
  .sassc
22
22
  .tmp
23
23
  build*
24
- Makefile
25
24
  tmp
@@ -19,7 +19,7 @@
19
19
  <key>CFBundleVersion</key>
20
20
  <string><%= config[:targets][config[:target]][:CFBundleVersion] || product_version %></string>
21
21
  <key>HPDBookIconPath</key>
22
- <string><%= config[:targets][config[:target]][:HPDBookIconPath] || 'shared/icon_32x32@2x.png' %></string>
22
+ <string><%= config[:targets][config[:target]][:HPDBookIconPath] || 'SharedGlobalAssets/convention/icon_32x32@2x.png' %></string>
23
23
  <key>HPDBookKBProduct</key>
24
24
  <string><%= config[:targets][config[:target]][:HPDBookKBProduct] %></string>
25
25
  <key>HPDBookKBURL</key>