rbcli 0.2.10 → 0.3.1

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 (444) hide show
  1. checksums.yaml +4 -4
  2. data/.rakeTasks +7 -0
  3. data/.rbenv-gemsets +1 -0
  4. data/CHANGELOG.md +46 -0
  5. data/Gemfile.lock +66 -48
  6. data/README.md +4 -4
  7. data/docs/404.html +54 -670
  8. data/docs/advanced/automatic_updates/index.html +998 -651
  9. data/docs/advanced/command_types/index.html +1022 -742
  10. data/docs/advanced/distributed_state_locking/index.html +998 -635
  11. data/docs/advanced/hooks/index.html +1011 -691
  12. data/docs/advanced/index.html +1140 -0
  13. data/docs/advanced/index.xml +113 -0
  14. data/docs/advanced/interactive_commands/index.html +1001 -653
  15. data/docs/advanced/logging/index.html +1006 -655
  16. data/docs/advanced/remote_execution/index.html +1010 -666
  17. data/docs/advanced/state_storage/index.html +1009 -721
  18. data/docs/advanced/user_config_files/index.html +981 -626
  19. data/docs/categories/index.html +1146 -0
  20. data/docs/categories/index.xml +10 -0
  21. data/docs/css/atom-one-dark-reasonable.css +77 -0
  22. data/docs/css/auto-complete.css +47 -0
  23. data/docs/css/featherlight.min.css +8 -0
  24. data/docs/css/fontawesome-all.min.css +1 -0
  25. data/docs/css/hugo-theme.css +254 -0
  26. data/docs/css/hybrid.css +102 -0
  27. data/docs/css/nucleus.css +615 -0
  28. data/docs/css/perfect-scrollbar.min.css +2 -0
  29. data/docs/css/tags.css +49 -0
  30. data/docs/css/theme-blue.css +111 -0
  31. data/docs/css/theme-green.css +111 -0
  32. data/docs/css/theme-red.css +111 -0
  33. data/docs/css/theme.css +1136 -0
  34. data/docs/development/changelog/index.html +1389 -0
  35. data/docs/development/code_of_conduct/index.html +973 -670
  36. data/docs/development/contributing/index.html +989 -583
  37. data/docs/development/index.html +1140 -0
  38. data/docs/development/index.xml +50 -0
  39. data/docs/development/license/index.html +973 -559
  40. data/docs/fonts/Inconsolata.eot +0 -0
  41. data/docs/fonts/Inconsolata.svg +1 -0
  42. data/docs/fonts/Inconsolata.ttf +0 -0
  43. data/docs/fonts/Inconsolata.woff +0 -0
  44. data/docs/fonts/Novecentosanswide-Normal-webfont.eot +0 -0
  45. data/docs/fonts/Novecentosanswide-Normal-webfont.svg +1 -0
  46. data/docs/fonts/Novecentosanswide-Normal-webfont.ttf +0 -0
  47. data/docs/fonts/Novecentosanswide-Normal-webfont.woff +0 -0
  48. data/docs/fonts/Novecentosanswide-Normal-webfont.woff2 +0 -0
  49. data/docs/fonts/Novecentosanswide-UltraLight-webfont.eot +0 -0
  50. data/docs/fonts/Novecentosanswide-UltraLight-webfont.svg +1 -0
  51. data/docs/fonts/Novecentosanswide-UltraLight-webfont.ttf +0 -0
  52. data/docs/fonts/Novecentosanswide-UltraLight-webfont.woff +0 -0
  53. data/docs/fonts/Novecentosanswide-UltraLight-webfont.woff2 +0 -0
  54. data/docs/fonts/Work_Sans_200.eot +0 -0
  55. data/docs/fonts/Work_Sans_200.svg +1 -0
  56. data/docs/fonts/Work_Sans_200.ttf +0 -0
  57. data/docs/fonts/Work_Sans_200.woff +0 -0
  58. data/docs/fonts/Work_Sans_200.woff2 +0 -0
  59. data/docs/fonts/Work_Sans_300.eot +0 -0
  60. data/docs/fonts/Work_Sans_300.svg +1 -0
  61. data/docs/fonts/Work_Sans_300.ttf +0 -0
  62. data/docs/fonts/Work_Sans_300.woff +0 -0
  63. data/docs/fonts/Work_Sans_300.woff2 +0 -0
  64. data/docs/fonts/Work_Sans_500.eot +0 -0
  65. data/docs/fonts/Work_Sans_500.svg +1 -0
  66. data/docs/fonts/Work_Sans_500.ttf +0 -0
  67. data/docs/fonts/Work_Sans_500.woff +0 -0
  68. data/docs/fonts/Work_Sans_500.woff2 +0 -0
  69. data/docs/images/clippy.svg +1 -0
  70. data/docs/images/favicon.png +0 -0
  71. data/docs/images/gopher-404.jpg +0 -0
  72. data/docs/imported/changelog/index.html +1208 -1020
  73. data/docs/imported/index.html +1191 -0
  74. data/docs/imported/index.xml +23 -0
  75. data/docs/index.html +925 -558
  76. data/docs/index.json +183 -0
  77. data/docs/index.xml +208 -0
  78. data/docs/js/auto-complete.js +3 -0
  79. data/docs/js/clipboard.min.js +7 -0
  80. data/docs/js/featherlight.min.js +9 -0
  81. data/docs/js/highlight.pack.js +6 -0
  82. data/docs/js/html5shiv-printshiv.min.js +4 -0
  83. data/docs/js/hugo-learn.js +94 -0
  84. data/docs/js/jquery-3.3.1.min.js +2 -0
  85. data/docs/js/jquery.sticky.js +288 -0
  86. data/docs/js/learn.js +459 -0
  87. data/docs/js/lunr.min.js +6 -0
  88. data/docs/js/modernizr.custom-3.6.0.js +3 -0
  89. data/docs/js/perfect-scrollbar.jquery.min.js +2 -0
  90. data/docs/js/perfect-scrollbar.min.js +2 -0
  91. data/docs/js/search.js +93 -0
  92. data/docs/mermaid/mermaid.css +277 -0
  93. data/docs/mermaid/mermaid.dark.css +278 -0
  94. data/docs/mermaid/mermaid.forest.css +356 -0
  95. data/docs/mermaid/mermaid.js +8 -0
  96. data/docs/quick_reference/index.html +1246 -0
  97. data/docs/quick_reference/index.xml +11 -0
  98. data/docs/sitemap.xml +82 -108
  99. data/docs/tags/index.html +1146 -0
  100. data/docs/tags/index.xml +10 -0
  101. data/docs/tutorial/10-getting_started/index.html +994 -662
  102. data/docs/tutorial/20-project_layout/index.html +1013 -722
  103. data/docs/tutorial/30-your_first_command/index.html +1055 -734
  104. data/docs/tutorial/40-options_parameters_and_arguments/index.html +1139 -881
  105. data/docs/tutorial/50-publishing/index.html +984 -671
  106. data/docs/tutorial/index.html +1140 -0
  107. data/docs/tutorial/index.xml +67 -0
  108. data/docs/webfonts/fa-brands-400.eot +0 -0
  109. data/docs/webfonts/fa-brands-400.svg +1 -0
  110. data/docs/webfonts/fa-brands-400.ttf +0 -0
  111. data/docs/webfonts/fa-brands-400.woff +0 -0
  112. data/docs/webfonts/fa-brands-400.woff2 +0 -0
  113. data/docs/webfonts/fa-regular-400.eot +0 -0
  114. data/docs/webfonts/fa-regular-400.svg +1 -0
  115. data/docs/webfonts/fa-regular-400.ttf +0 -0
  116. data/docs/webfonts/fa-regular-400.woff +0 -0
  117. data/docs/webfonts/fa-regular-400.woff2 +0 -0
  118. data/docs/webfonts/fa-solid-900.eot +0 -0
  119. data/docs/webfonts/fa-solid-900.svg +1 -0
  120. data/docs/webfonts/fa-solid-900.ttf +0 -0
  121. data/docs/webfonts/fa-solid-900.woff +0 -0
  122. data/docs/webfonts/fa-solid-900.woff2 +0 -0
  123. data/docs/whoami/index.html +965 -555
  124. data/docs/whoami/index.xml +11 -0
  125. data/docs-src/archetypes/default.md +6 -0
  126. data/docs-src/config.toml +37 -0
  127. data/docs-src/{docs/index.md → content/_index.md} +4 -4
  128. data/docs-src/content/advanced/_index.md +11 -0
  129. data/docs-src/{docs → content}/advanced/automatic_updates.md +6 -2
  130. data/docs-src/{docs → content}/advanced/command_types.md +8 -4
  131. data/docs-src/{docs → content}/advanced/distributed_state_locking.md +6 -2
  132. data/docs-src/{docs → content}/advanced/hooks.md +6 -2
  133. data/docs-src/{docs → content}/advanced/interactive_commands.md +5 -1
  134. data/docs-src/{docs → content}/advanced/logging.md +6 -2
  135. data/docs-src/{docs → content}/advanced/remote_execution.md +5 -1
  136. data/docs-src/{docs → content}/advanced/state_storage.md +6 -3
  137. data/docs-src/{docs → content}/advanced/user_config_files.md +5 -1
  138. data/docs-src/content/development/_index.md +11 -0
  139. data/docs-src/{docs/imported → content/development}/changelog.md +82 -6
  140. data/docs-src/{docs → content}/development/code_of_conduct.md +8 -1
  141. data/docs-src/{docs → content}/development/contributing.md +16 -1
  142. data/docs-src/{docs → content}/development/license.md +9 -2
  143. data/docs-src/{docs/imported/quick_reference.md → content/quick_reference/_index.md} +10 -3
  144. data/docs-src/{docs → content}/tutorial/10-getting_started.md +7 -1
  145. data/docs-src/{docs → content}/tutorial/20-project_layout.md +10 -2
  146. data/docs-src/{docs → content}/tutorial/30-your_first_command.md +10 -4
  147. data/docs-src/{docs → content}/tutorial/40-options_parameters_and_arguments.md +9 -3
  148. data/docs-src/{docs → content}/tutorial/50-publishing.md +9 -3
  149. data/docs-src/content/tutorial/_index.md +11 -0
  150. data/docs-src/{docs/whoami.md → content/whoami/_index.md} +11 -5
  151. data/docs-src/layouts/partials/logo.html +3 -0
  152. data/docs-src/makesite.sh +33 -7
  153. data/docs-src/mkdocs-archived.tar.gz +0 -0
  154. data/docs-src/runsite.sh +6 -1
  155. data/docs-src/themes/hugo-theme-learn/.editorconfig +16 -0
  156. data/docs-src/themes/hugo-theme-learn/.gitignore +3 -0
  157. data/docs-src/themes/hugo-theme-learn/.grenrc.yml +25 -0
  158. data/docs-src/themes/hugo-theme-learn/CHANGELOG.md +226 -0
  159. data/docs-src/themes/hugo-theme-learn/LICENSE.md +22 -0
  160. data/docs-src/themes/hugo-theme-learn/README.md +97 -0
  161. data/docs-src/themes/hugo-theme-learn/archetypes/chapter.md +13 -0
  162. data/docs-src/themes/hugo-theme-learn/archetypes/default.md +7 -0
  163. data/docs-src/themes/hugo-theme-learn/exampleSite/LICENSE.md +20 -0
  164. data/docs-src/themes/hugo-theme-learn/exampleSite/config.toml +102 -0
  165. data/docs-src/themes/hugo-theme-learn/exampleSite/content/_index.en.md +41 -0
  166. data/docs-src/themes/hugo-theme-learn/exampleSite/content/_index.fr.md +43 -0
  167. data/docs-src/themes/hugo-theme-learn/exampleSite/content/basics/_index.en.md +12 -0
  168. data/docs-src/themes/hugo-theme-learn/exampleSite/content/basics/_index.fr.md +12 -0
  169. data/docs-src/themes/hugo-theme-learn/exampleSite/content/basics/_index.zh.md +12 -0
  170. data/docs-src/themes/hugo-theme-learn/exampleSite/content/basics/configuration/_index.en.md +60 -0
  171. data/docs-src/themes/hugo-theme-learn/exampleSite/content/basics/configuration/_index.fr.md +56 -0
  172. data/docs-src/themes/hugo-theme-learn/exampleSite/content/basics/installation/_index.en.md +102 -0
  173. data/docs-src/themes/hugo-theme-learn/exampleSite/content/basics/installation/_index.fr.md +100 -0
  174. data/docs-src/themes/hugo-theme-learn/exampleSite/content/basics/installation/images/chapter.png +0 -0
  175. data/docs-src/themes/hugo-theme-learn/exampleSite/content/basics/requirements/_index.en.md +11 -0
  176. data/docs-src/themes/hugo-theme-learn/exampleSite/content/basics/requirements/_index.fr.md +11 -0
  177. data/docs-src/themes/hugo-theme-learn/exampleSite/content/basics/requirements/images/magic.gif +0 -0
  178. data/docs-src/themes/hugo-theme-learn/exampleSite/content/basics/style-customization/_index.en.md +194 -0
  179. data/docs-src/themes/hugo-theme-learn/exampleSite/content/basics/style-customization/_index.fr.md +194 -0
  180. data/docs-src/themes/hugo-theme-learn/exampleSite/content/basics/style-customization/images/blue-variant.png +0 -0
  181. data/docs-src/themes/hugo-theme-learn/exampleSite/content/basics/style-customization/images/green-variant.png +0 -0
  182. data/docs-src/themes/hugo-theme-learn/exampleSite/content/basics/style-customization/images/red-variant.png +0 -0
  183. data/docs-src/themes/hugo-theme-learn/exampleSite/content/cont/_index.en.md +12 -0
  184. data/docs-src/themes/hugo-theme-learn/exampleSite/content/cont/_index.fr.md +12 -0
  185. data/docs-src/themes/hugo-theme-learn/exampleSite/content/cont/archetypes.en.md +57 -0
  186. data/docs-src/themes/hugo-theme-learn/exampleSite/content/cont/archetypes.fr.md +57 -0
  187. data/docs-src/themes/hugo-theme-learn/exampleSite/content/cont/i18n/_index.en.md +78 -0
  188. data/docs-src/themes/hugo-theme-learn/exampleSite/content/cont/i18n/_index.fr.md +78 -0
  189. data/docs-src/themes/hugo-theme-learn/exampleSite/content/cont/i18n/images/i18n-menu.gif +0 -0
  190. data/docs-src/themes/hugo-theme-learn/exampleSite/content/cont/icons.en.md +41 -0
  191. data/docs-src/themes/hugo-theme-learn/exampleSite/content/cont/markdown.en.md +692 -0
  192. data/docs-src/themes/hugo-theme-learn/exampleSite/content/cont/markdown.fr.md +666 -0
  193. data/docs-src/themes/hugo-theme-learn/exampleSite/content/cont/menushortcuts.en.md +109 -0
  194. data/docs-src/themes/hugo-theme-learn/exampleSite/content/cont/menushortcuts.fr.md +109 -0
  195. data/docs-src/themes/hugo-theme-learn/exampleSite/content/cont/pages/_index.en.md +166 -0
  196. data/docs-src/themes/hugo-theme-learn/exampleSite/content/cont/pages/_index.fr.md +146 -0
  197. data/docs-src/themes/hugo-theme-learn/exampleSite/content/cont/pages/images/frontmatter-icon.png +0 -0
  198. data/docs-src/themes/hugo-theme-learn/exampleSite/content/cont/pages/images/pages-chapter.png +0 -0
  199. data/docs-src/themes/hugo-theme-learn/exampleSite/content/cont/pages/images/pages-default.png +0 -0
  200. data/docs-src/themes/hugo-theme-learn/exampleSite/content/cont/syntaxhighlight.en.md +89 -0
  201. data/docs-src/themes/hugo-theme-learn/exampleSite/content/cont/tags.en.md +39 -0
  202. data/docs-src/themes/hugo-theme-learn/exampleSite/content/cont/tags.fr.md +40 -0
  203. data/docs-src/themes/hugo-theme-learn/exampleSite/content/credits.en.md +28 -0
  204. data/docs-src/themes/hugo-theme-learn/exampleSite/content/credits.fr.md +28 -0
  205. data/docs-src/themes/hugo-theme-learn/exampleSite/content/shortcodes/_index.en.md +16 -0
  206. data/docs-src/themes/hugo-theme-learn/exampleSite/content/shortcodes/_index.fr.md +16 -0
  207. data/docs-src/themes/hugo-theme-learn/exampleSite/content/shortcodes/attachments.en.files/BachGavotteShort.mp3 +0 -0
  208. data/docs-src/themes/hugo-theme-learn/exampleSite/content/shortcodes/attachments.en.files/Carroll_AliceAuPaysDesMerveilles.pdf +0 -0
  209. data/docs-src/themes/hugo-theme-learn/exampleSite/content/shortcodes/attachments.en.files/adivorciarsetoca00cape.pdf +0 -0
  210. data/docs-src/themes/hugo-theme-learn/exampleSite/content/shortcodes/attachments.en.files/hugo.png +0 -0
  211. data/docs-src/themes/hugo-theme-learn/exampleSite/content/shortcodes/attachments.en.files/movieselectricsheep-flock-244-32500-2.mp4 +0 -0
  212. data/docs-src/themes/hugo-theme-learn/exampleSite/content/shortcodes/attachments.en.md +85 -0
  213. data/docs-src/themes/hugo-theme-learn/exampleSite/content/shortcodes/attachments.fr.files/BachGavotteShort.mp3 +0 -0
  214. data/docs-src/themes/hugo-theme-learn/exampleSite/content/shortcodes/attachments.fr.files/Carroll_AliceAuPaysDesMerveilles.pdf +0 -0
  215. data/docs-src/themes/hugo-theme-learn/exampleSite/content/shortcodes/attachments.fr.files/adivorciarsetoca00cape.pdf +0 -0
  216. data/docs-src/themes/hugo-theme-learn/exampleSite/content/shortcodes/attachments.fr.files/hugo.png +0 -0
  217. data/docs-src/themes/hugo-theme-learn/exampleSite/content/shortcodes/attachments.fr.files/movieselectricsheep-flock-244-32500-2.mp4 +0 -0
  218. data/docs-src/themes/hugo-theme-learn/exampleSite/content/shortcodes/attachments.fr.md +85 -0
  219. data/docs-src/themes/hugo-theme-learn/exampleSite/content/shortcodes/button.en.md +16 -0
  220. data/docs-src/themes/hugo-theme-learn/exampleSite/content/shortcodes/button.fr.md +16 -0
  221. data/docs-src/themes/hugo-theme-learn/exampleSite/content/shortcodes/children/_index.en.md +45 -0
  222. data/docs-src/themes/hugo-theme-learn/exampleSite/content/shortcodes/children/_index.fr.md +45 -0
  223. data/docs-src/themes/hugo-theme-learn/exampleSite/content/shortcodes/children/children-1/_index.en.md +6 -0
  224. data/docs-src/themes/hugo-theme-learn/exampleSite/content/shortcodes/children/children-1/_index.fr.md +6 -0
  225. data/docs-src/themes/hugo-theme-learn/exampleSite/content/shortcodes/children/children-1/children-1-1/_index.en.md +6 -0
  226. data/docs-src/themes/hugo-theme-learn/exampleSite/content/shortcodes/children/children-1/children-1-1/_index.fr.md +6 -0
  227. data/docs-src/themes/hugo-theme-learn/exampleSite/content/shortcodes/children/children-1/children-1-1/children-1-1-1/_index.en.md +6 -0
  228. data/docs-src/themes/hugo-theme-learn/exampleSite/content/shortcodes/children/children-1/children-1-1/children-1-1-1/_index.fr.md +6 -0
  229. data/docs-src/themes/hugo-theme-learn/exampleSite/content/shortcodes/children/children-1/children-1-1/children-1-1-1/children-1-1-1-1/_index.en.md +6 -0
  230. data/docs-src/themes/hugo-theme-learn/exampleSite/content/shortcodes/children/children-1/children-1-1/children-1-1-1/children-1-1-1-1/_index.fr.md +6 -0
  231. data/docs-src/themes/hugo-theme-learn/exampleSite/content/shortcodes/children/children-1/children-1-1/children-1-1-1/children-1-1-1-1/children-1-1-1-1-1/_index.en.md +6 -0
  232. data/docs-src/themes/hugo-theme-learn/exampleSite/content/shortcodes/children/children-1/children-1-1/children-1-1-1/children-1-1-1-1/children-1-1-1-1-1/_index.fr.md +6 -0
  233. data/docs-src/themes/hugo-theme-learn/exampleSite/content/shortcodes/children/children-2/_index.en.md +11 -0
  234. data/docs-src/themes/hugo-theme-learn/exampleSite/content/shortcodes/children/children-2/_index.fr.md +11 -0
  235. data/docs-src/themes/hugo-theme-learn/exampleSite/content/shortcodes/children/children-2/test3.en.md +6 -0
  236. data/docs-src/themes/hugo-theme-learn/exampleSite/content/shortcodes/children/children-2/test3.fr.md +6 -0
  237. data/docs-src/themes/hugo-theme-learn/exampleSite/content/shortcodes/children/children-3/_index.en.md +6 -0
  238. data/docs-src/themes/hugo-theme-learn/exampleSite/content/shortcodes/children/children-3/_index.fr.md +6 -0
  239. data/docs-src/themes/hugo-theme-learn/exampleSite/content/shortcodes/children/children-4/_index.en.md +7 -0
  240. data/docs-src/themes/hugo-theme-learn/exampleSite/content/shortcodes/children/children-4/_index.fr.md +7 -0
  241. data/docs-src/themes/hugo-theme-learn/exampleSite/content/shortcodes/children/test.en.md +6 -0
  242. data/docs-src/themes/hugo-theme-learn/exampleSite/content/shortcodes/children/test.fr.md +6 -0
  243. data/docs-src/themes/hugo-theme-learn/exampleSite/content/shortcodes/expand.en.md +45 -0
  244. data/docs-src/themes/hugo-theme-learn/exampleSite/content/shortcodes/expand.fr.md +45 -0
  245. data/docs-src/themes/hugo-theme-learn/exampleSite/content/shortcodes/mermaid.en.md +283 -0
  246. data/docs-src/themes/hugo-theme-learn/exampleSite/content/shortcodes/mermaid.fr.md +283 -0
  247. data/docs-src/themes/hugo-theme-learn/exampleSite/content/shortcodes/notice.en.md +62 -0
  248. data/docs-src/themes/hugo-theme-learn/exampleSite/content/shortcodes/notice.fr.md +62 -0
  249. data/docs-src/themes/hugo-theme-learn/exampleSite/content/shortcodes/siteparam.en.md +23 -0
  250. data/docs-src/themes/hugo-theme-learn/exampleSite/content/shortcodes/siteparam.fr.md +23 -0
  251. data/docs-src/themes/hugo-theme-learn/exampleSite/content/showcase.en.md +13 -0
  252. data/docs-src/themes/hugo-theme-learn/exampleSite/content/showcase.fr.md +14 -0
  253. data/docs-src/themes/hugo-theme-learn/exampleSite/layouts/partials/custom-footer.html +10 -0
  254. data/docs-src/themes/hugo-theme-learn/exampleSite/layouts/partials/logo.html +39 -0
  255. data/docs-src/themes/hugo-theme-learn/exampleSite/layouts/partials/menu-footer.html +14 -0
  256. data/docs-src/themes/hugo-theme-learn/exampleSite/layouts/shortcodes/ghcontributors.html +31 -0
  257. data/docs-src/themes/hugo-theme-learn/exampleSite/static/css/theme-mine.css +104 -0
  258. data/docs-src/themes/hugo-theme-learn/exampleSite/static/fonts/monogramos-webfont.eot +0 -0
  259. data/docs-src/themes/hugo-theme-learn/exampleSite/static/fonts/monogramos-webfont.svg +1 -0
  260. data/docs-src/themes/hugo-theme-learn/exampleSite/static/fonts/monogramos-webfont.ttf +0 -0
  261. data/docs-src/themes/hugo-theme-learn/exampleSite/static/fonts/monogramos-webfont.woff +0 -0
  262. data/docs-src/themes/hugo-theme-learn/exampleSite/static/fonts/monogramos-webfont.woff2 +0 -0
  263. data/docs-src/themes/hugo-theme-learn/exampleSite/static/images/showcase/inteliver_docs.png +0 -0
  264. data/docs-src/themes/hugo-theme-learn/exampleSite/static/images/showcase/tat.png +0 -0
  265. data/docs-src/themes/hugo-theme-learn/exampleSite/static/images/showcase/tshark_dev.png +0 -0
  266. data/docs-src/themes/hugo-theme-learn/i18n/ar.toml +26 -0
  267. data/docs-src/themes/hugo-theme-learn/i18n/de.toml +26 -0
  268. data/docs-src/themes/hugo-theme-learn/i18n/en.toml +26 -0
  269. data/docs-src/themes/hugo-theme-learn/i18n/es.toml +26 -0
  270. data/docs-src/themes/hugo-theme-learn/i18n/fr.toml +26 -0
  271. data/docs-src/themes/hugo-theme-learn/i18n/hi.toml +26 -0
  272. data/docs-src/themes/hugo-theme-learn/i18n/id.toml +26 -0
  273. data/docs-src/themes/hugo-theme-learn/i18n/ja.toml +26 -0
  274. data/docs-src/themes/hugo-theme-learn/i18n/nl.toml +26 -0
  275. data/docs-src/themes/hugo-theme-learn/i18n/pt.toml +26 -0
  276. data/docs-src/themes/hugo-theme-learn/i18n/ru.toml +26 -0
  277. data/docs-src/themes/hugo-theme-learn/i18n/tr.toml +26 -0
  278. data/docs-src/themes/hugo-theme-learn/i18n/zh-cn.toml +26 -0
  279. data/docs-src/themes/hugo-theme-learn/images/screenshot.png +0 -0
  280. data/docs-src/themes/hugo-theme-learn/images/tn.png +0 -0
  281. data/docs-src/themes/hugo-theme-learn/layouts/404.html +56 -0
  282. data/docs-src/themes/hugo-theme-learn/layouts/_default/list.html +22 -0
  283. data/docs-src/themes/hugo-theme-learn/layouts/_default/single.html +12 -0
  284. data/docs-src/themes/hugo-theme-learn/layouts/index.html +31 -0
  285. data/docs-src/themes/hugo-theme-learn/layouts/index.json +12 -0
  286. data/docs-src/themes/hugo-theme-learn/layouts/partials/custom-comments.html +3 -0
  287. data/docs-src/themes/hugo-theme-learn/layouts/partials/custom-footer.html +5 -0
  288. data/docs-src/themes/hugo-theme-learn/layouts/partials/custom-header.html +5 -0
  289. data/docs-src/themes/hugo-theme-learn/layouts/partials/favicon.html +1 -0
  290. data/docs-src/themes/hugo-theme-learn/layouts/partials/footer.html +77 -0
  291. data/docs-src/themes/hugo-theme-learn/layouts/partials/header.html +111 -0
  292. data/docs-src/themes/hugo-theme-learn/layouts/partials/logo.html +19 -0
  293. data/docs-src/themes/hugo-theme-learn/layouts/partials/menu-footer.html +1 -0
  294. data/docs-src/themes/hugo-theme-learn/layouts/partials/menu.html +151 -0
  295. data/docs-src/themes/hugo-theme-learn/layouts/partials/meta.html +2 -0
  296. data/docs-src/themes/hugo-theme-learn/layouts/partials/search.html +16 -0
  297. data/docs-src/themes/hugo-theme-learn/layouts/partials/tags.html +7 -0
  298. data/docs-src/themes/hugo-theme-learn/layouts/partials/toc.html +5 -0
  299. data/docs-src/themes/hugo-theme-learn/layouts/shortcodes/attachments.html +36 -0
  300. data/docs-src/themes/hugo-theme-learn/layouts/shortcodes/button.html +14 -0
  301. data/docs-src/themes/hugo-theme-learn/layouts/shortcodes/children.html +101 -0
  302. data/docs-src/themes/hugo-theme-learn/layouts/shortcodes/expand.html +17 -0
  303. data/docs-src/themes/hugo-theme-learn/layouts/shortcodes/mermaid.html +2 -0
  304. data/docs-src/themes/hugo-theme-learn/layouts/shortcodes/notice.html +2 -0
  305. data/docs-src/themes/hugo-theme-learn/layouts/shortcodes/ref.html +14 -0
  306. data/docs-src/themes/hugo-theme-learn/layouts/shortcodes/relref.html +14 -0
  307. data/docs-src/themes/hugo-theme-learn/layouts/shortcodes/siteparam.html +7 -0
  308. data/docs-src/themes/hugo-theme-learn/netlify.toml +23 -0
  309. data/docs-src/themes/hugo-theme-learn/static/css/atom-one-dark-reasonable.css +77 -0
  310. data/docs-src/themes/hugo-theme-learn/static/css/auto-complete.css +47 -0
  311. data/docs-src/themes/hugo-theme-learn/static/css/featherlight.min.css +8 -0
  312. data/docs-src/themes/hugo-theme-learn/static/css/fontawesome-all.min.css +1 -0
  313. data/docs-src/themes/hugo-theme-learn/static/css/hugo-theme.css +254 -0
  314. data/docs-src/themes/hugo-theme-learn/static/css/hybrid.css +102 -0
  315. data/docs-src/themes/hugo-theme-learn/static/css/nucleus.css +615 -0
  316. data/docs-src/themes/hugo-theme-learn/static/css/perfect-scrollbar.min.css +2 -0
  317. data/docs-src/themes/hugo-theme-learn/static/css/tags.css +49 -0
  318. data/docs-src/themes/hugo-theme-learn/static/css/theme-blue.css +111 -0
  319. data/docs-src/themes/hugo-theme-learn/static/css/theme-green.css +111 -0
  320. data/docs-src/themes/hugo-theme-learn/static/css/theme-red.css +111 -0
  321. data/docs-src/themes/hugo-theme-learn/static/css/theme.css +1136 -0
  322. data/docs-src/themes/hugo-theme-learn/static/fonts/Inconsolata.eot +0 -0
  323. data/docs-src/themes/hugo-theme-learn/static/fonts/Inconsolata.svg +1 -0
  324. data/docs-src/themes/hugo-theme-learn/static/fonts/Inconsolata.ttf +0 -0
  325. data/docs-src/themes/hugo-theme-learn/static/fonts/Inconsolata.woff +0 -0
  326. data/docs-src/themes/hugo-theme-learn/static/fonts/Novecentosanswide-Normal-webfont.eot +0 -0
  327. data/docs-src/themes/hugo-theme-learn/static/fonts/Novecentosanswide-Normal-webfont.svg +1 -0
  328. data/docs-src/themes/hugo-theme-learn/static/fonts/Novecentosanswide-Normal-webfont.ttf +0 -0
  329. data/docs-src/themes/hugo-theme-learn/static/fonts/Novecentosanswide-Normal-webfont.woff +0 -0
  330. data/docs-src/themes/hugo-theme-learn/static/fonts/Novecentosanswide-Normal-webfont.woff2 +0 -0
  331. data/docs-src/themes/hugo-theme-learn/static/fonts/Novecentosanswide-UltraLight-webfont.eot +0 -0
  332. data/docs-src/themes/hugo-theme-learn/static/fonts/Novecentosanswide-UltraLight-webfont.svg +1 -0
  333. data/docs-src/themes/hugo-theme-learn/static/fonts/Novecentosanswide-UltraLight-webfont.ttf +0 -0
  334. data/docs-src/themes/hugo-theme-learn/static/fonts/Novecentosanswide-UltraLight-webfont.woff +0 -0
  335. data/docs-src/themes/hugo-theme-learn/static/fonts/Novecentosanswide-UltraLight-webfont.woff2 +0 -0
  336. data/docs-src/themes/hugo-theme-learn/static/fonts/Work_Sans_200.eot +0 -0
  337. data/docs-src/themes/hugo-theme-learn/static/fonts/Work_Sans_200.svg +1 -0
  338. data/docs-src/themes/hugo-theme-learn/static/fonts/Work_Sans_200.ttf +0 -0
  339. data/docs-src/themes/hugo-theme-learn/static/fonts/Work_Sans_200.woff +0 -0
  340. data/docs-src/themes/hugo-theme-learn/static/fonts/Work_Sans_200.woff2 +0 -0
  341. data/docs-src/themes/hugo-theme-learn/static/fonts/Work_Sans_300.eot +0 -0
  342. data/docs-src/themes/hugo-theme-learn/static/fonts/Work_Sans_300.svg +1 -0
  343. data/docs-src/themes/hugo-theme-learn/static/fonts/Work_Sans_300.ttf +0 -0
  344. data/docs-src/themes/hugo-theme-learn/static/fonts/Work_Sans_300.woff +0 -0
  345. data/docs-src/themes/hugo-theme-learn/static/fonts/Work_Sans_300.woff2 +0 -0
  346. data/docs-src/themes/hugo-theme-learn/static/fonts/Work_Sans_500.eot +0 -0
  347. data/docs-src/themes/hugo-theme-learn/static/fonts/Work_Sans_500.svg +1 -0
  348. data/docs-src/themes/hugo-theme-learn/static/fonts/Work_Sans_500.ttf +0 -0
  349. data/docs-src/themes/hugo-theme-learn/static/fonts/Work_Sans_500.woff +0 -0
  350. data/docs-src/themes/hugo-theme-learn/static/fonts/Work_Sans_500.woff2 +0 -0
  351. data/docs-src/themes/hugo-theme-learn/static/images/clippy.svg +1 -0
  352. data/docs-src/themes/hugo-theme-learn/static/images/favicon.png +0 -0
  353. data/docs-src/themes/hugo-theme-learn/static/images/gopher-404.jpg +0 -0
  354. data/docs-src/themes/hugo-theme-learn/static/js/auto-complete.js +3 -0
  355. data/docs-src/themes/hugo-theme-learn/static/js/clipboard.min.js +7 -0
  356. data/docs-src/themes/hugo-theme-learn/static/js/featherlight.min.js +9 -0
  357. data/docs-src/themes/hugo-theme-learn/static/js/highlight.pack.js +6 -0
  358. data/docs-src/themes/hugo-theme-learn/static/js/hugo-learn.js +94 -0
  359. data/docs-src/themes/hugo-theme-learn/static/js/jquery-3.3.1.min.js +2 -0
  360. data/docs-src/themes/hugo-theme-learn/static/js/jquery.sticky.js +288 -0
  361. data/docs-src/themes/hugo-theme-learn/static/js/learn.js +459 -0
  362. data/docs-src/themes/hugo-theme-learn/static/js/lunr.min.js +6 -0
  363. data/docs-src/themes/hugo-theme-learn/static/js/modernizr.custom-3.6.0.js +3 -0
  364. data/docs-src/themes/hugo-theme-learn/static/js/perfect-scrollbar.jquery.min.js +2 -0
  365. data/docs-src/themes/hugo-theme-learn/static/js/perfect-scrollbar.min.js +2 -0
  366. data/docs-src/themes/hugo-theme-learn/static/js/search.js +93 -0
  367. data/docs-src/themes/hugo-theme-learn/static/mermaid/mermaid.css +277 -0
  368. data/docs-src/themes/hugo-theme-learn/static/mermaid/mermaid.dark.css +278 -0
  369. data/docs-src/themes/hugo-theme-learn/static/mermaid/mermaid.forest.css +356 -0
  370. data/docs-src/themes/hugo-theme-learn/static/mermaid/mermaid.js +8 -0
  371. data/docs-src/themes/hugo-theme-learn/static/webfonts/fa-brands-400.eot +0 -0
  372. data/docs-src/themes/hugo-theme-learn/static/webfonts/fa-brands-400.svg +1 -0
  373. data/docs-src/themes/hugo-theme-learn/static/webfonts/fa-brands-400.ttf +0 -0
  374. data/docs-src/themes/hugo-theme-learn/static/webfonts/fa-brands-400.woff +0 -0
  375. data/docs-src/themes/hugo-theme-learn/static/webfonts/fa-brands-400.woff2 +0 -0
  376. data/docs-src/themes/hugo-theme-learn/static/webfonts/fa-regular-400.eot +0 -0
  377. data/docs-src/themes/hugo-theme-learn/static/webfonts/fa-regular-400.svg +1 -0
  378. data/docs-src/themes/hugo-theme-learn/static/webfonts/fa-regular-400.ttf +0 -0
  379. data/docs-src/themes/hugo-theme-learn/static/webfonts/fa-regular-400.woff +0 -0
  380. data/docs-src/themes/hugo-theme-learn/static/webfonts/fa-regular-400.woff2 +0 -0
  381. data/docs-src/themes/hugo-theme-learn/static/webfonts/fa-solid-900.eot +0 -0
  382. data/docs-src/themes/hugo-theme-learn/static/webfonts/fa-solid-900.svg +1 -0
  383. data/docs-src/themes/hugo-theme-learn/static/webfonts/fa-solid-900.ttf +0 -0
  384. data/docs-src/themes/hugo-theme-learn/static/webfonts/fa-solid-900.woff +0 -0
  385. data/docs-src/themes/hugo-theme-learn/static/webfonts/fa-solid-900.woff2 +0 -0
  386. data/docs-src/themes/hugo-theme-learn/theme.toml +21 -0
  387. data/docs-src/themes/hugo-theme-learn/wercker.yml +16 -0
  388. data/exe/rbcli +1 -0
  389. data/lib/rbcli/configuration/configurate_blocks/me.rb +5 -5
  390. data/lib/rbcli/engine/command.rb +3 -2
  391. data/lib/rbcli/util/deprecation_warning.rb +21 -4
  392. data/lib/rbcli/util/msg.rb +0 -1
  393. data/lib/rbcli/version.rb +1 -1
  394. data/lib/rbcli-tool/project.rb +6 -2
  395. data/rbcli.gemspec +12 -13
  396. data/skeletons/project/.rakeTasks +7 -0
  397. data/skeletons/project/Gemfile +1 -1
  398. data/skeletons/project/application/commands/scripts/script.sh +6 -1
  399. data/skeletons/project/config/general.rb +1 -1
  400. data/skeletons/project/exe/executable +1 -3
  401. data/skeletons/project/lib/lib.erb +9 -0
  402. data/skeletons/project/spec/spec_helper.rb +7 -7
  403. data/skeletons/project/spec/untitled_spec.rb +6 -6
  404. data/skeletons/project/untitled.gemspec +30 -30
  405. metadata +384 -98
  406. data/docs/assets/fonts/font-awesome.css +0 -4
  407. data/docs/assets/fonts/material-icons.css +0 -13
  408. data/docs/assets/fonts/specimen/FontAwesome.ttf +0 -0
  409. data/docs/assets/fonts/specimen/FontAwesome.woff +0 -0
  410. data/docs/assets/fonts/specimen/FontAwesome.woff2 +0 -0
  411. data/docs/assets/fonts/specimen/MaterialIcons-Regular.ttf +0 -0
  412. data/docs/assets/fonts/specimen/MaterialIcons-Regular.woff +0 -0
  413. data/docs/assets/fonts/specimen/MaterialIcons-Regular.woff2 +0 -0
  414. data/docs/assets/images/favicon.png +0 -0
  415. data/docs/assets/images/icons/bitbucket.1b09e088.svg +0 -20
  416. data/docs/assets/images/icons/github.f0b8504a.svg +0 -18
  417. data/docs/assets/images/icons/gitlab.6dd19c00.svg +0 -38
  418. data/docs/assets/javascripts/application.583bbe55.js +0 -1
  419. data/docs/assets/javascripts/lunr/lunr.da.js +0 -1
  420. data/docs/assets/javascripts/lunr/lunr.de.js +0 -1
  421. data/docs/assets/javascripts/lunr/lunr.du.js +0 -1
  422. data/docs/assets/javascripts/lunr/lunr.es.js +0 -1
  423. data/docs/assets/javascripts/lunr/lunr.fi.js +0 -1
  424. data/docs/assets/javascripts/lunr/lunr.fr.js +0 -1
  425. data/docs/assets/javascripts/lunr/lunr.hu.js +0 -1
  426. data/docs/assets/javascripts/lunr/lunr.it.js +0 -1
  427. data/docs/assets/javascripts/lunr/lunr.jp.js +0 -1
  428. data/docs/assets/javascripts/lunr/lunr.multi.js +0 -1
  429. data/docs/assets/javascripts/lunr/lunr.no.js +0 -1
  430. data/docs/assets/javascripts/lunr/lunr.pt.js +0 -1
  431. data/docs/assets/javascripts/lunr/lunr.ro.js +0 -1
  432. data/docs/assets/javascripts/lunr/lunr.ru.js +0 -1
  433. data/docs/assets/javascripts/lunr/lunr.stemmer.support.js +0 -1
  434. data/docs/assets/javascripts/lunr/lunr.sv.js +0 -1
  435. data/docs/assets/javascripts/lunr/lunr.tr.js +0 -1
  436. data/docs/assets/javascripts/lunr/tinyseg.js +0 -1
  437. data/docs/assets/javascripts/modernizr.1aa3b519.js +0 -1
  438. data/docs/assets/stylesheets/application-palette.22915126.css +0 -1176
  439. data/docs/assets/stylesheets/application.451f80e5.css +0 -2552
  440. data/docs/imported/quick_reference/index.html +0 -1120
  441. data/docs/search/search_index.json +0 -1
  442. data/docs/sitemap.xml.gz +0 -0
  443. data/docs-src/mkdocs.yml +0 -79
  444. data/skeletons/project/lib/.keep +0 -0
@@ -1,1126 +1,1384 @@
1
+ <!DOCTYPE html>
2
+ <html lang="en" class="js csstransforms3d">
3
+ <head>
4
+ <meta charset="utf-8">
5
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
+ <meta name="generator" content="Hugo 0.88.1" />
7
+ <meta name="description" content="">
1
8
 
2
9
 
10
+ <link rel="icon" href="/rbcli/images/favicon.png" type="image/png">
3
11
 
12
+ <title>Options, Parameters, and Arguments :: RBCli Documentation</title>
4
13
 
5
- <!DOCTYPE html>
6
- <html lang="en" class="no-js">
7
- <head>
8
-
9
- <meta charset="utf-8">
10
- <meta name="viewport" content="width=device-width,initial-scale=1">
11
- <meta http-equiv="x-ua-compatible" content="ie=edge">
12
-
13
- <meta name="description" content="Description">
14
-
15
-
16
-
17
- <meta name="author" content="Andrew Khoury">
18
-
19
-
20
- <meta name="lang:clipboard.copy" content="Copy to clipboard">
21
-
22
- <meta name="lang:clipboard.copied" content="Copied to clipboard">
23
-
24
- <meta name="lang:search.language" content="en">
25
-
26
- <meta name="lang:search.pipeline.stopwords" content="True">
27
-
28
- <meta name="lang:search.pipeline.trimmer" content="True">
29
-
30
- <meta name="lang:search.result.none" content="No matching documents">
31
-
32
- <meta name="lang:search.result.one" content="1 matching document">
33
-
34
- <meta name="lang:search.result.other" content="# matching documents">
35
-
36
- <meta name="lang:search.tokenizer" content="[\s\-]+">
37
-
38
- <link rel="shortcut icon" href="../../assets/images/favicon.png">
39
- <meta name="generator" content="mkdocs-1.0.3, mkdocs-material-3.0.4">
40
-
41
-
42
-
43
- <title>Options, Parameters, and Arguments - RBCli Documentation</title>
44
-
45
14
 
15
+ <link href="/rbcli/css/nucleus.css?1634703589" rel="stylesheet">
16
+ <link href="/rbcli/css/fontawesome-all.min.css?1634703589" rel="stylesheet">
17
+ <link href="/rbcli/css/hybrid.css?1634703589" rel="stylesheet">
18
+ <link href="/rbcli/css/featherlight.min.css?1634703589" rel="stylesheet">
19
+ <link href="/rbcli/css/perfect-scrollbar.min.css?1634703589" rel="stylesheet">
20
+ <link href="/rbcli/css/auto-complete.css?1634703589" rel="stylesheet">
21
+ <link href="/rbcli/css/atom-one-dark-reasonable.css?1634703589" rel="stylesheet">
22
+ <link href="/rbcli/css/theme.css?1634703589" rel="stylesheet">
23
+ <link href="/rbcli/css/hugo-theme.css?1634703589" rel="stylesheet">
46
24
 
47
- <link rel="stylesheet" href="../../assets/stylesheets/application.451f80e5.css">
48
-
49
-
50
-
51
-
52
- <script src="../../assets/javascripts/modernizr.1aa3b519.js"></script>
25
+ <link href="/rbcli/css/theme-blue.css?1634703589" rel="stylesheet">
53
26
 
54
27
 
28
+
29
+ <script src="/rbcli/js/jquery-3.3.1.min.js?1634703589"></script>
30
+
31
+ <style>
32
+ :root #header + #content > #left > #rlblock_left{
33
+ display:none !important;
34
+ }
55
35
 
56
- <link href="https://fonts.gstatic.com" rel="preconnect" crossorigin>
57
- <link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Roboto:300,400,400i,700|Roboto+Mono">
58
- <style>body,input{font-family:"Roboto","Helvetica Neue",Helvetica,Arial,sans-serif}code,kbd,pre{font-family:"Roboto Mono","Courier New",Courier,monospace}</style>
59
-
60
-
61
- <link rel="stylesheet" href="../../assets/fonts/material-icons.css">
62
-
36
+ </style>
63
37
 
64
38
  </head>
65
-
66
- <body dir="ltr">
67
-
68
- <svg class="md-svg">
69
- <defs>
70
-
71
-
72
- <svg xmlns="http://www.w3.org/2000/svg" width="416" height="448"
73
- viewBox="0 0 416 448" id="__github">
74
- <path fill="currentColor" d="M160 304q0 10-3.125 20.5t-10.75 19-18.125
75
- 8.5-18.125-8.5-10.75-19-3.125-20.5 3.125-20.5 10.75-19 18.125-8.5
76
- 18.125 8.5 10.75 19 3.125 20.5zM320 304q0 10-3.125 20.5t-10.75
77
- 19-18.125 8.5-18.125-8.5-10.75-19-3.125-20.5 3.125-20.5 10.75-19
78
- 18.125-8.5 18.125 8.5 10.75 19 3.125 20.5zM360
79
- 304q0-30-17.25-51t-46.75-21q-10.25 0-48.75 5.25-17.75 2.75-39.25
80
- 2.75t-39.25-2.75q-38-5.25-48.75-5.25-29.5 0-46.75 21t-17.25 51q0 22 8
81
- 38.375t20.25 25.75 30.5 15 35 7.375 37.25 1.75h42q20.5 0
82
- 37.25-1.75t35-7.375 30.5-15 20.25-25.75 8-38.375zM416 260q0 51.75-15.25
83
- 82.75-9.5 19.25-26.375 33.25t-35.25 21.5-42.5 11.875-42.875 5.5-41.75
84
- 1.125q-19.5 0-35.5-0.75t-36.875-3.125-38.125-7.5-34.25-12.875-30.25-20.25-21.5-28.75q-15.5-30.75-15.5-82.75
85
- 0-59.25 34-99-6.75-20.5-6.75-42.5 0-29 12.75-54.5 27 0 47.5 9.875t47.25
86
- 30.875q36.75-8.75 77.25-8.75 37 0 70 8 26.25-20.5
87
- 46.75-30.25t47.25-9.75q12.75 25.5 12.75 54.5 0 21.75-6.75 42 34 40 34
88
- 99.5z" />
89
- </svg>
90
-
91
- </defs>
92
- </svg>
93
- <input class="md-toggle" data-md-toggle="drawer" type="checkbox" id="__drawer" autocomplete="off">
94
- <input class="md-toggle" data-md-toggle="search" type="checkbox" id="__search" autocomplete="off">
95
- <label class="md-overlay" data-md-component="overlay" for="__drawer"></label>
39
+ <body class="" data-url="/rbcli/tutorial/40-options_parameters_and_arguments/">
40
+ <nav id="sidebar" class="">
41
+
42
+
43
+
44
+ <div id="header-wrapper">
45
+ <div id="header">
46
+ <a id="logo" href="https://akhoury6.github.io/rbcli/" style="font-size: 40px">
47
+ <span class="fas fa-terminal"></span>&nbsp;𝚁𝙱𝙲𝚕𝚒
48
+ </a>
49
+
50
+ </div>
96
51
 
97
- <a href="../../#options-paramters-and-arguments" tabindex="1" class="md-skip">
98
- Skip to content
99
- </a>
52
+ <div class="searchbox">
53
+ <label for="search-by"><i class="fas fa-search"></i></label>
54
+ <input data-search-input id="search-by" type="search" placeholder="Search...">
55
+ <span data-search-clear=""><i class="fas fa-times"></i></span>
56
+ </div>
57
+
58
+ <script type="text/javascript" src="/rbcli/js/lunr.min.js?1634703589"></script>
59
+ <script type="text/javascript" src="/rbcli/js/auto-complete.js?1634703589"></script>
60
+ <script type="text/javascript">
100
61
 
62
+ var baseurl = "https:\/\/akhoury6.github.io\/rbcli\/";
101
63
 
102
- <header class="md-header" data-md-component="header">
103
- <nav class="md-header-nav md-grid">
104
- <div class="md-flex">
105
- <div class="md-flex__cell md-flex__cell--shrink">
106
- <a href="../.." title="RBCli Documentation" class="md-header-nav__button md-logo">
107
-
108
- <i class="md-icon">devices</i>
109
-
110
- </a>
111
- </div>
112
- <div class="md-flex__cell md-flex__cell--shrink">
113
- <label class="md-icon md-icon--menu md-header-nav__button" for="__drawer"></label>
114
- </div>
115
- <div class="md-flex__cell md-flex__cell--stretch">
116
- <div class="md-flex__ellipsis md-header-nav__title" data-md-component="title">
117
-
118
-
119
- <span class="md-header-nav__topic">
120
- RBCli Documentation
121
- </span>
122
- <span class="md-header-nav__topic">
123
- Options, Parameters, and Arguments
124
- </span>
125
-
126
-
127
- </div>
128
- </div>
129
- <div class="md-flex__cell md-flex__cell--shrink">
64
+ </script>
65
+ <script type="text/javascript" src="/rbcli/js/search.js?1634703589"></script>
66
+
67
+
68
+ </div>
69
+
70
+ <div class="highlightable">
71
+ <ul class="topics">
72
+
130
73
 
131
74
 
132
- <label class="md-icon md-icon--search md-header-nav__button" for="__search"></label>
133
-
134
- <div class="md-search" data-md-component="search" role="dialog">
135
- <label class="md-search__overlay" for="__search"></label>
136
- <div class="md-search__inner" role="search">
137
- <form class="md-search__form" name="search">
138
- <input type="text" class="md-search__input" name="query" placeholder="Search" autocapitalize="off" autocorrect="off" autocomplete="off" spellcheck="false" data-md-component="query" data-md-state="active">
139
- <label class="md-icon md-search__icon" for="__search"></label>
140
- <button type="reset" class="md-icon md-search__icon" data-md-component="reset" tabindex="-1">
141
- &#xE5CD;
142
- </button>
143
- </form>
144
- <div class="md-search__output">
145
- <div class="md-search__scrollwrap" data-md-scrollfix>
146
- <div class="md-search-result" data-md-component="result">
147
- <div class="md-search-result__meta">
148
- Type to start searching
149
- </div>
150
- <ol class="md-search-result__list"></ol>
151
- </div>
152
- </div>
153
- </div>
154
- </div>
155
- </div>
156
75
 
76
+
77
+
78
+
79
+
80
+
81
+
82
+
83
+ <li data-nav-id="/rbcli/quick_reference/" title="Quick Reference" class="dd-item
157
84
 
158
- </div>
85
+
86
+
87
+ ">
88
+ <a href="/rbcli/quick_reference/">
89
+ Quick Reference
90
+
91
+ </a>
159
92
 
160
- <div class="md-flex__cell md-flex__cell--shrink">
161
- <div class="md-header-nav__source">
162
-
93
+
94
+ </li>
95
+
96
+
163
97
 
98
+
99
+
164
100
 
165
-
166
101
 
167
102
 
168
- <a href="https://github.com/akhoury6/rbcli/" title="Go to repository" class="md-source" data-md-source="github">
169
-
170
- <div class="md-source__icon">
171
- <svg viewBox="0 0 24 24" width="24" height="24">
172
- <use xlink:href="#__github" width="24" height="24"></use>
173
- </svg>
174
- </div>
175
-
176
- <div class="md-source__repository">
177
- GitHub
178
- </div>
179
- </a>
180
103
 
181
- </div>
182
- </div>
183
-
184
- </div>
185
- </nav>
186
- </header>
104
+
105
+
187
106
 
188
- <div class="md-container">
189
-
107
+ <li data-nav-id="/rbcli/tutorial/" title="Tutorial" class="dd-item
108
+ parent
109
+
190
110
 
111
+ ">
112
+ <a href="/rbcli/tutorial/">
113
+ Tutorial
114
+
115
+ </a>
191
116
 
192
117
 
118
+ <ul>
119
+
120
+
121
+
122
+
193
123
 
124
+
125
+
126
+
194
127
 
195
-
196
128
 
197
- <nav class="md-tabs md-tabs--active" data-md-component="tabs">
198
- <div class="md-tabs__inner md-grid">
199
- <ul class="md-tabs__list">
200
-
201
-
202
- <li class="md-tabs__item">
203
-
204
- <a href="../.." title="Home" class="md-tabs__link">
205
- Home
206
- </a>
207
-
208
- </li>
209
129
 
210
-
211
-
212
-
213
-
214
-
130
+
131
+
215
132
 
216
- <li class="md-tabs__item">
217
-
218
- <a href="../10-getting_started/" title="Tutorial" class="md-tabs__link md-tabs__link--active">
219
- Tutorial
133
+
134
+ <li data-nav-id="/rbcli/tutorial/10-getting_started/" title="Getting Started" class="dd-item ">
135
+ <a href="/rbcli/tutorial/10-getting_started/">
136
+ <b>1. </b>Getting Started
137
+
220
138
  </a>
221
-
222
139
  </li>
140
+
223
141
 
142
+
224
143
 
225
-
226
-
227
-
144
+
145
+
146
+
147
+
148
+
149
+
150
+
151
+
152
+
228
153
 
229
- <li class="md-tabs__item">
230
-
231
- <a href="../../advanced/command_types/" title="Advanced Features" class="md-tabs__link">
232
- Advanced Features
154
+
155
+ <li data-nav-id="/rbcli/tutorial/20-project_layout/" title="The Project Layout" class="dd-item ">
156
+ <a href="/rbcli/tutorial/20-project_layout/">
157
+ <b>2. </b>The Project Layout
158
+
233
159
  </a>
234
-
235
160
  </li>
161
+
236
162
 
163
+
237
164
 
238
-
239
-
240
-
165
+
166
+
167
+
168
+
169
+
170
+
171
+
172
+
173
+
241
174
 
242
- <li class="md-tabs__item">
243
-
244
- <a href="../../development/contributing/" title="Development" class="md-tabs__link">
245
- Development
175
+
176
+ <li data-nav-id="/rbcli/tutorial/30-your_first_command/" title="Your First Command" class="dd-item ">
177
+ <a href="/rbcli/tutorial/30-your_first_command/">
178
+ <b>3. </b>Your First Command
179
+
246
180
  </a>
247
-
248
181
  </li>
182
+
249
183
 
184
+
250
185
 
251
-
252
-
253
-
254
- </ul>
255
- </div>
256
- </nav>
257
-
258
- <main class="md-main">
259
- <div class="md-main__inner md-grid" data-md-component="container">
186
+
260
187
 
261
188
 
262
- <div class="md-sidebar md-sidebar--primary" data-md-component="navigation">
263
- <div class="md-sidebar__scrollwrap">
264
- <div class="md-sidebar__inner">
265
- <nav class="md-nav md-nav--primary" data-md-level="0">
266
- <label class="md-nav__title md-nav__title--site" for="__drawer">
267
- <a href="../.." title="RBCli Documentation" class="md-nav__button md-logo">
268
-
269
- <i class="md-icon">devices</i>
270
-
271
- </a>
272
- RBCli Documentation
273
- </label>
274
-
275
- <div class="md-nav__source">
276
-
277
-
189
+
278
190
 
279
-
280
191
 
281
192
 
282
- <a href="https://github.com/akhoury6/rbcli/" title="Go to repository" class="md-source" data-md-source="github">
283
-
284
- <div class="md-source__icon">
285
- <svg viewBox="0 0 24 24" width="24" height="24">
286
- <use xlink:href="#__github" width="24" height="24"></use>
287
- </svg>
288
- </div>
289
-
290
- <div class="md-source__repository">
291
- GitHub
292
- </div>
293
- </a>
294
193
 
295
- </div>
194
+
296
195
 
297
- <ul class="md-nav__list" data-md-scrollfix>
298
196
 
299
-
300
-
301
-
302
-
197
+ <li data-nav-id="/rbcli/tutorial/40-options_parameters_and_arguments/" title="Options, Parameters, and Arguments" class="dd-item active">
198
+ <a href="/rbcli/tutorial/40-options_parameters_and_arguments/">
199
+ <b>4. </b>Options, Parameters, and Arguments
200
+
201
+ </a>
202
+ </li>
203
+
204
+
205
+
303
206
 
304
- <li class="md-nav__item">
305
- <a href="../.." title="Home" class="md-nav__link">
306
- Home
307
- </a>
308
- </li>
207
+
208
+
209
+
210
+
309
211
 
310
-
311
-
312
-
313
-
314
212
 
315
213
 
316
- <li class="md-nav__item">
317
- <a href="../../imported/quick_reference/" title="Quick Reference" class="md-nav__link">
318
- Quick Reference
319
- </a>
320
- </li>
321
214
 
215
+
216
+
322
217
 
323
-
324
-
325
-
218
+ <li data-nav-id="/rbcli/tutorial/50-publishing/" title="Publishing Your Application" class="dd-item ">
219
+ <a href="/rbcli/tutorial/50-publishing/">
220
+ <b>5. </b>Publishing Your Application
221
+
222
+ </a>
223
+ </li>
224
+
225
+
226
+
326
227
 
228
+
229
+
230
+
231
+ </ul>
232
+
233
+ </li>
327
234
 
235
+
236
+
237
+
238
+
328
239
 
329
240
 
330
- <li class="md-nav__item md-nav__item--active md-nav__item--nested">
331
-
332
- <input class="md-toggle md-nav__toggle" data-md-toggle="nav-3" type="checkbox" id="nav-3" checked>
241
+
242
+
243
+
244
+
333
245
 
334
- <label class="md-nav__link" for="nav-3">
335
- Tutorial
336
- </label>
337
- <nav class="md-nav" data-md-component="collapsible" data-md-level="1">
338
- <label class="md-nav__title" for="nav-3">
339
- Tutorial
340
- </label>
341
- <ul class="md-nav__list" data-md-scrollfix>
246
+ <li data-nav-id="/rbcli/advanced/" title="Advanced" class="dd-item
342
247
 
343
248
 
249
+
250
+ ">
251
+ <a href="/rbcli/advanced/">
252
+ Advanced
344
253
 
254
+ </a>
255
+
256
+
257
+ <ul>
345
258
 
346
259
 
347
-
348
-
349
- <li class="md-nav__item">
350
- <a href="../10-getting_started/" title="Getting Started" class="md-nav__link">
351
- Getting Started
352
- </a>
353
- </li>
354
-
355
-
356
260
 
357
261
 
262
+
358
263
 
264
+
265
+
266
+
359
267
 
360
268
 
361
- <li class="md-nav__item">
362
- <a href="../20-project_layout/" title="The Project Layout" class="md-nav__link">
363
- The Project Layout
364
- </a>
365
- </li>
366
269
 
270
+
271
+
272
+
273
+ <li data-nav-id="/rbcli/advanced/automatic_updates/" title="Automatic Updates" class="dd-item ">
274
+ <a href="/rbcli/advanced/automatic_updates/">
275
+ Automatic Updates
367
276
 
277
+ </a>
278
+ </li>
279
+
280
+
281
+
282
+
283
+
368
284
 
369
-
370
-
285
+
286
+
287
+
371
288
 
372
289
 
373
- <li class="md-nav__item">
374
- <a href="../30-your_first_command/" title="Your First Command" class="md-nav__link">
375
- Your First Command
376
- </a>
377
- </li>
378
290
 
291
+
292
+
293
+
294
+ <li data-nav-id="/rbcli/advanced/command_types/" title="Command Types" class="dd-item ">
295
+ <a href="/rbcli/advanced/command_types/">
296
+ Command Types
379
297
 
298
+ </a>
299
+ </li>
300
+
301
+
302
+
303
+
304
+
380
305
 
381
-
382
-
306
+
307
+
383
308
 
384
-
385
309
 
386
310
 
387
- <li class="md-nav__item md-nav__item--active">
388
-
389
- <input class="md-toggle md-nav__toggle" data-md-toggle="toc" type="checkbox" id="__toc">
390
-
391
-
392
-
393
-
394
- <label class="md-nav__link md-nav__link--active" for="__toc">
395
- Options, Parameters, and Arguments
396
- </label>
397
-
398
- <a href="./" title="Options, Parameters, and Arguments" class="md-nav__link md-nav__link--active">
399
- Options, Parameters, and Arguments
400
- </a>
401
-
402
-
403
- <nav class="md-nav md-nav--secondary">
404
-
311
+
312
+
405
313
 
406
314
 
315
+ <li data-nav-id="/rbcli/advanced/distributed_state_locking/" title="Distributed State and Locking" class="dd-item ">
316
+ <a href="/rbcli/advanced/distributed_state_locking/">
317
+ Distributed State and Locking
318
+
319
+ </a>
320
+ </li>
321
+
407
322
 
323
+
324
+
325
+
326
+
327
+
328
+
329
+
330
+
331
+
332
+
333
+
408
334
 
409
- <label class="md-nav__title" for="__toc">Table of contents</label>
410
- <ul class="md-nav__list" data-md-scrollfix>
411
-
412
- <li class="md-nav__item">
413
- <a href="#command-line-structure" title="Command Line Structure" class="md-nav__link">
414
- Command Line Structure
415
- </a>
416
-
417
- </li>
418
-
419
- <li class="md-nav__item">
420
- <a href="#options" title="Options" class="md-nav__link">
421
- Options
422
- </a>
423
-
424
- </li>
425
-
426
- <li class="md-nav__item">
427
- <a href="#parameters" title="Parameters" class="md-nav__link">
428
- Parameters
429
- </a>
430
-
431
- <nav class="md-nav">
432
- <ul class="md-nav__list">
433
-
434
- <li class="md-nav__item">
435
- <a href="#user-prompting" title="User Prompting" class="md-nav__link">
436
- User Prompting
437
- </a>
438
-
439
- </li>
335
+
336
+ <li data-nav-id="/rbcli/advanced/hooks/" title="Execution Hooks" class="dd-item ">
337
+ <a href="/rbcli/advanced/hooks/">
338
+ Execution Hooks
440
339
 
441
- </ul>
442
- </nav>
443
-
444
- </li>
445
-
446
- <li class="md-nav__item">
447
- <a href="#arguments" title="Arguments" class="md-nav__link">
448
- Arguments
449
- </a>
450
-
451
- </li>
452
-
453
- <li class="md-nav__item">
454
- <a href="#simplified-reference-tldr" title="Simplified Reference (TLDR)" class="md-nav__link">
455
- Simplified Reference (TLDR)
456
- </a>
457
-
458
- </li>
459
-
460
- <li class="md-nav__item">
461
- <a href="#next-steps" title="Next Steps" class="md-nav__link">
462
- Next Steps
463
- </a>
464
-
465
- </li>
466
-
467
-
468
-
469
-
470
-
471
- </ul>
340
+ </a>
341
+ </li>
342
+
472
343
 
473
- </nav>
474
-
475
- </li>
344
+
476
345
 
477
-
478
-
479
-
346
+
480
347
 
348
+
349
+
481
350
 
482
351
 
483
- <li class="md-nav__item">
484
- <a href="../50-publishing/" title="Publishing and Distribution" class="md-nav__link">
485
- Publishing and Distribution
486
- </a>
487
- </li>
488
352
 
489
-
490
- </ul>
491
- </nav>
492
- </li>
493
353
 
354
+
355
+
494
356
 
495
-
496
-
497
-
357
+ <li data-nav-id="/rbcli/advanced/interactive_commands/" title="Interactive Commands" class="dd-item ">
358
+ <a href="/rbcli/advanced/interactive_commands/">
359
+ Interactive Commands
360
+
361
+ </a>
362
+ </li>
363
+
364
+
365
+
366
+
367
+
368
+
369
+
370
+
498
371
 
499
372
 
500
- <li class="md-nav__item md-nav__item--nested">
501
-
502
- <input class="md-toggle md-nav__toggle" data-md-toggle="nav-4" type="checkbox" id="nav-4">
373
+
374
+
375
+
376
+
503
377
 
504
- <label class="md-nav__link" for="nav-4">
505
- Advanced Features
506
- </label>
507
- <nav class="md-nav" data-md-component="collapsible" data-md-level="1">
508
- <label class="md-nav__title" for="nav-4">
509
- Advanced Features
510
- </label>
511
- <ul class="md-nav__list" data-md-scrollfix>
512
-
378
+ <li data-nav-id="/rbcli/advanced/logging/" title="Logging" class="dd-item ">
379
+ <a href="/rbcli/advanced/logging/">
380
+ Logging
513
381
 
382
+ </a>
383
+ </li>
384
+
385
+
386
+
387
+
388
+
514
389
 
515
-
516
-
390
+
391
+
392
+
517
393
 
518
394
 
519
- <li class="md-nav__item">
520
- <a href="../../advanced/command_types/" title="Command Types" class="md-nav__link">
521
- Command Types
522
- </a>
523
- </li>
524
395
 
396
+
397
+
398
+
399
+ <li data-nav-id="/rbcli/advanced/remote_execution/" title="Remote Execution" class="dd-item ">
400
+ <a href="/rbcli/advanced/remote_execution/">
401
+ Remote Execution
525
402
 
403
+ </a>
404
+ </li>
405
+
406
+
407
+
408
+
409
+
526
410
 
527
-
528
-
411
+
412
+
413
+
529
414
 
530
415
 
531
- <li class="md-nav__item">
532
- <a href="../../advanced/user_config_files/" title="User Config Files" class="md-nav__link">
533
- User Config Files
534
- </a>
535
- </li>
536
416
 
417
+
418
+
419
+
420
+ <li data-nav-id="/rbcli/advanced/state_storage/" title="State Storage" class="dd-item ">
421
+ <a href="/rbcli/advanced/state_storage/">
422
+ State Storage
537
423
 
424
+ </a>
425
+ </li>
426
+
427
+
428
+
429
+
430
+
538
431
 
539
-
540
-
432
+
433
+
434
+
541
435
 
542
436
 
543
- <li class="md-nav__item">
544
- <a href="../../advanced/hooks/" title="Hooks" class="md-nav__link">
545
- Hooks
546
- </a>
547
- </li>
548
437
 
438
+
439
+
440
+
441
+ <li data-nav-id="/rbcli/advanced/user_config_files/" title="User Configuration Files" class="dd-item ">
442
+ <a href="/rbcli/advanced/user_config_files/">
443
+ User Configuration Files
549
444
 
445
+ </a>
446
+ </li>
447
+
448
+
449
+
450
+
451
+
550
452
 
453
+
454
+ </ul>
455
+
456
+ </li>
457
+
458
+
459
+
551
460
 
552
461
 
553
462
 
554
463
 
555
- <li class="md-nav__item">
556
- <a href="../../advanced/logging/" title="Logging" class="md-nav__link">
557
- Logging
558
- </a>
559
- </li>
560
464
 
465
+
466
+
467
+
468
+
469
+ <li data-nav-id="/rbcli/development/" title="Development" class="dd-item
470
+
561
471
 
472
+
473
+ ">
474
+ <a href="/rbcli/development/">
475
+ Development
476
+
477
+ </a>
478
+
479
+
480
+ <ul>
562
481
 
563
482
 
564
483
 
484
+
485
+
486
+
487
+
488
+
489
+
565
490
 
566
491
 
567
- <li class="md-nav__item">
568
- <a href="../../advanced/automatic_updates/" title="Automatic Updates" class="md-nav__link">
569
- Automatic Updates
570
- </a>
571
- </li>
572
492
 
493
+
494
+
495
+
496
+ <li data-nav-id="/rbcli/development/contributing/" title="Contribution Guide" class="dd-item ">
497
+ <a href="/rbcli/development/contributing/">
498
+ Contribution Guide
573
499
 
500
+ </a>
501
+ </li>
502
+
503
+
504
+
505
+
506
+
574
507
 
575
-
576
-
508
+
509
+
510
+
577
511
 
578
512
 
579
- <li class="md-nav__item">
580
- <a href="../../advanced/state_storage/" title="State Storage" class="md-nav__link">
581
- State Storage
582
- </a>
583
- </li>
584
513
 
514
+
515
+
516
+
517
+ <li data-nav-id="/rbcli/development/license/" title="License Info" class="dd-item ">
518
+ <a href="/rbcli/development/license/">
519
+ License Info
585
520
 
521
+ </a>
522
+ </li>
523
+
524
+
525
+
526
+
527
+
586
528
 
587
-
588
-
529
+
530
+
531
+
589
532
 
590
533
 
591
- <li class="md-nav__item">
592
- <a href="../../advanced/distributed_state_locking/" title="Distributed State Locking" class="md-nav__link">
593
- Distributed State Locking
594
- </a>
595
- </li>
596
534
 
535
+
536
+
537
+
538
+ <li data-nav-id="/rbcli/development/code_of_conduct/" title="Code of Conduct" class="dd-item ">
539
+ <a href="/rbcli/development/code_of_conduct/">
540
+ Code of Conduct
597
541
 
542
+ </a>
543
+ </li>
544
+
545
+
546
+
547
+
548
+
598
549
 
599
-
600
-
550
+
551
+
552
+
601
553
 
602
554
 
603
- <li class="md-nav__item">
604
- <a href="../../advanced/remote_execution/" title="Remote Execution" class="md-nav__link">
605
- Remote Execution
606
- </a>
607
- </li>
608
555
 
556
+
557
+
558
+
559
+ <li data-nav-id="/rbcli/development/changelog/" title="Changelog" class="dd-item ">
560
+ <a href="/rbcli/development/changelog/">
561
+ Changelog
609
562
 
563
+ </a>
564
+ </li>
565
+
566
+
567
+
568
+
569
+
610
570
 
571
+
572
+ </ul>
573
+
574
+ </li>
575
+
576
+
577
+
611
578
 
612
579
 
613
580
 
614
581
 
615
- <li class="md-nav__item">
616
- <a href="../../advanced/interactive_commands/" title="Interactive Commands" class="md-nav__link">
617
- Interactive Commands
618
- </a>
619
- </li>
620
582
 
621
-
622
- </ul>
623
- </nav>
624
- </li>
625
583
 
584
+
585
+
626
586
 
587
+ <li data-nav-id="/rbcli/whoami/" title="My Letter To You" class="dd-item
588
+
589
+
590
+
591
+ ">
592
+ <a href="/rbcli/whoami/">
593
+ My Letter To You
594
+
595
+ </a>
627
596
 
628
-
629
-
597
+
598
+ </li>
599
+
600
+
630
601
 
602
+
603
+
604
+ </ul>
631
605
 
632
- <li class="md-nav__item md-nav__item--nested">
633
606
 
634
- <input class="md-toggle md-nav__toggle" data-md-toggle="nav-5" type="checkbox" id="nav-5">
635
607
 
636
- <label class="md-nav__link" for="nav-5">
637
- Development
638
- </label>
639
- <nav class="md-nav" data-md-component="collapsible" data-md-level="1">
640
- <label class="md-nav__title" for="nav-5">
641
- Development
642
- </label>
643
- <ul class="md-nav__list" data-md-scrollfix>
644
-
645
-
608
+ <section id="shortcuts">
609
+ <h3>More</h3>
610
+ <ul>
646
611
 
612
+ <li>
613
+ <a class="padding" href="https://github.com/akhoury6/rbcli"><i class='fab fa-github'></i> Github repo</a>
614
+ </li>
647
615
 
616
+ <li>
617
+ <a class="padding" href="https://rubygems.org/gems/rbcli"><i class='far fa-gem'></i> Rubygems</a>
618
+ </li>
648
619
 
620
+ </ul>
621
+ </section>
622
+
649
623
 
624
+
625
+ <section id="footer">
626
+ <p>Built with <a href="https://github.com/matcornic/hugo-theme-learn"><i class="fas fa-heart"></i></a> from <a href="https://getgrav.org">Grav</a> and <a href="https://gohugo.io/">Hugo</a></p>
650
627
 
651
- <li class="md-nav__item">
652
- <a href="../../development/contributing/" title="Contribution Guide" class="md-nav__link">
653
- Contribution Guide
654
- </a>
655
- </li>
628
+ </section>
629
+ </div>
630
+ </nav>
656
631
 
657
-
658
-
659
-
660
-
661
632
 
662
633
 
663
- <li class="md-nav__item">
664
- <a href="../../development/license/" title="License Info" class="md-nav__link">
665
- License Info
666
- </a>
667
- </li>
668
634
 
669
-
635
+ <section id="body">
636
+ <div id="overlay"></div>
637
+ <div class="padding highlightable">
638
+
639
+ <div>
640
+ <div id="top-bar">
641
+
642
+
643
+ <div id="breadcrumbs" itemscope="" itemtype="http://data-vocabulary.org/Breadcrumb">
644
+ <span id="sidebar-toggle-span">
645
+ <a href="#" id="sidebar-toggle" data-sidebar-toggle="">
646
+ <i class="fas fa-bars"></i>
647
+ </a>
648
+ </span>
649
+
650
+ <span id="toc-menu"><i class="fas fa-list-alt"></i></span>
651
+
652
+ <span class="links">
653
+
654
+
655
+
670
656
 
671
657
 
658
+
659
+
672
660
 
673
-
674
-
675
- <li class="md-nav__item">
676
- <a href="../../development/code_of_conduct/" title="Code of Conduct" class="md-nav__link">
677
- Code of Conduct
678
- </a>
679
- </li>
680
-
681
-
682
661
 
662
+
663
+
683
664
 
684
665
 
685
-
686
-
687
- <li class="md-nav__item">
688
- <a href="../../imported/changelog/" title="Changelog" class="md-nav__link">
689
- Changelog
690
- </a>
691
- </li>
692
-
666
+ <a href='/rbcli/'></a> > <a href='/rbcli/tutorial/'>Tutorial</a> > Options, Parameters, and Arguments
667
+
668
+
669
+
693
670
 
671
+
672
+
673
+
674
+ </span>
675
+ </div>
676
+
677
+ <div class="progress">
678
+ <div class="wrapper">
679
+ <nav id="TableOfContents">
680
+ <ul>
681
+ <li><a href="#command-line-structure">Command Line Structure</a></li>
682
+ <li><a href="#options">Options</a></li>
683
+ <li><a href="#parameters">Parameters</a>
684
+ <ul>
685
+ <li><a href="#user-prompting">User Prompting</a></li>
694
686
  </ul>
695
- </nav>
696
- </li>
697
-
698
-
699
-
700
-
701
-
702
-
703
-
704
- <li class="md-nav__item">
705
- <a href="../../whoami/" title="whoami" class="md-nav__link">
706
- whoami
707
- </a>
708
- </li>
709
-
710
-
687
+ </li>
688
+ <li><a href="#arguments">Arguments</a></li>
689
+ <li><a href="#simplified-reference-tldr">Simplified Reference (TLDR)</a></li>
690
+ <li><a href="#next-steps">Next Steps</a></li>
711
691
  </ul>
712
692
  </nav>
713
- </div>
714
- </div>
693
+ </div>
694
+ </div>
695
+
696
+
715
697
  </div>
698
+ </div>
716
699
 
717
-
718
- <div class="md-sidebar md-sidebar--secondary" data-md-component="toc">
719
- <div class="md-sidebar__scrollwrap">
720
- <div class="md-sidebar__inner">
721
-
722
- <nav class="md-nav md-nav--secondary">
723
-
724
-
725
-
726
-
727
-
728
- <label class="md-nav__title" for="__toc">Table of contents</label>
729
- <ul class="md-nav__list" data-md-scrollfix>
730
-
731
- <li class="md-nav__item">
732
- <a href="#command-line-structure" title="Command Line Structure" class="md-nav__link">
733
- Command Line Structure
734
- </a>
735
-
736
- </li>
737
-
738
- <li class="md-nav__item">
739
- <a href="#options" title="Options" class="md-nav__link">
740
- Options
741
- </a>
742
-
743
- </li>
744
-
745
- <li class="md-nav__item">
746
- <a href="#parameters" title="Parameters" class="md-nav__link">
747
- Parameters
748
- </a>
749
-
750
- <nav class="md-nav">
751
- <ul class="md-nav__list">
700
+ <div id="head-tags">
752
701
 
753
- <li class="md-nav__item">
754
- <a href="#user-prompting" title="User Prompting" class="md-nav__link">
755
- User Prompting
756
- </a>
757
-
758
- </li>
702
+ </div>
759
703
 
760
- </ul>
761
- </nav>
762
-
763
- </li>
764
-
765
- <li class="md-nav__item">
766
- <a href="#arguments" title="Arguments" class="md-nav__link">
767
- Arguments
768
- </a>
769
-
770
- </li>
771
-
772
- <li class="md-nav__item">
773
- <a href="#simplified-reference-tldr" title="Simplified Reference (TLDR)" class="md-nav__link">
774
- Simplified Reference (TLDR)
775
- </a>
776
-
777
- </li>
778
-
779
- <li class="md-nav__item">
780
- <a href="#next-steps" title="Next Steps" class="md-nav__link">
781
- Next Steps
782
- </a>
783
-
784
- </li>
785
-
786
-
787
-
788
-
789
-
790
- </ul>
791
-
792
- </nav>
793
- </div>
794
- </div>
795
- </div>
796
-
704
+ <div id="body-inner">
797
705
 
798
- <div class="md-content">
799
- <article class="md-content__inner md-typeset">
706
+ <h1>
800
707
 
801
-
802
-
803
- <h1 id="options-paramters-and-arguments">Options, Paramters, and Arguments</h1>
804
- <p>If you're already an experienced coder, you can jump to the last section of this document, the <a href="#simplified-reference-tldr">Simplified Reference (TLDR)</a></p>
708
+ Options, Parameters, and Arguments
709
+ </h1>
710
+
711
+
712
+
713
+
714
+
715
+ <p>If you&rsquo;re already an experienced coder, you can jump to the last section of this document, the <a href="#simplified-reference-tldr">Simplified Reference (TLDR)</a></p>
805
716
  <h2 id="command-line-structure">Command Line Structure</h2>
806
717
  <p>In the previous section, you saw two parts of the RBCli command line structure - the executable followed by the command. However, RBCli is capable of more complex interaction. The structure is as follows:</p>
807
- <pre><code>toolname [options] command [parameters] argument1 argument2...
808
- </code></pre>
809
-
718
+ <pre tabindex="0"><code>toolname [options] command [parameters] argument1 argument2...
719
+ </code></pre><ul>
720
+ <li><strong>Options</strong> are command line parameters such as <code>-f</code>, or <code>--force</code>. These are available globally to every command. You can create your own, though several are already built-in and reserved for RBCli:
810
721
  <ul>
811
- <li><strong>Options</strong> are command line parameters such as <code>-f</code>, or <code>--force</code>. These are available globally to every command. You can create your own, though several are already built-in and reserved for RBCli:<ul>
812
722
  <li><code>--config-file=&lt;filename&gt;</code> allows specifying a config file location manually.</li>
813
- <li><code>--generate-config</code> generates a config file for the user by writing out the defaults to a YAML file. This option will only appear if a config file has been set. The location is configurable, with more on that in the documentation on <a href="../../advanced/user_config_files/">User Config Files</a>).</li>
723
+ <li><code>--generate-config</code> generates a config file for the user by writing out the defaults to a YAML file. This option will only appear if a config file has been set. The location is configurable, with more on that in the documentation on <a href="/rbcli/advanced/user_config_files/">User Config Files</a>).</li>
814
724
  <li><code>-v / --version</code> shows the version.</li>
815
725
  <li><code>-h / --help</code> shows the help.</li>
816
726
  </ul>
817
727
  </li>
818
728
  <li><strong>Command</strong> represents the subcommands that you will create, such as <code>list</code>, <code>test</code>, or <code>apply</code>.</li>
819
729
  <li><strong>Parameters</strong> are the same as options, but only apply to the specific subcommand being executed. In this case only the <code>-h / --help</code> parameter is provided automatically.</li>
820
- <li><strong>Arguments</strong> are strings that don't begin with a '-', and are passed to the command's code as an array. These can be used as subcommands or additional parameters for your command. </li>
730
+ <li><strong>Arguments</strong> are strings that don&rsquo;t begin with a &lsquo;-&rsquo;, and are passed to the command&rsquo;s code as an array. These can be used as subcommands or additional parameters for your command.</li>
821
731
  </ul>
822
732
  <p>So a valid command could look something like these:</p>
823
- <pre><code class="shell">mytool -n load --filename=foo.txt
733
+ <div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4"><code class="language-shell" data-lang="shell">mytool -n load --filename<span style="color:#f92672">=</span>foo.txt
824
734
  mytool parse foo.txt
825
735
  mytool show -l
826
- </code></pre>
827
-
828
- <p>Note that all options and parameters will have both a short and long version of the parameter available for use.</p>
829
- <p>So let's take a look at how we define them.</p>
736
+ </code></pre></div><p>Note that all options and parameters will have both a short and long version of the parameter available for use.</p>
737
+ <p>So let&rsquo;s take a look at how we define them.</p>
830
738
  <h2 id="options">Options</h2>
831
- <p>You can find the options declarations under <code>application/options.rb</code>. You'll see the example in the code:</p>
832
- <pre><code class="ruby">option :name, 'Give me your name', short: 'n', type: :string, default: 'Jack', required: false, permitted: ['Jack', 'Jill']
833
- </code></pre>
834
-
835
- <p>This won't do for our tool, so let's change it. Remember that these options will be applicable to all of our commands, so lets make it something appropriate:</p>
836
- <pre><code class="ruby">option :color, 'Enable color output', short: 'c', type: :boolean, default: false
837
- </code></pre>
838
-
839
- <p>So now, let's take advantage of this flag in our <code>list</code> command. Let's change our block to:</p>
840
- <pre><code class="ruby"> action do |params, args, global_opts, config|
841
- Dir.glob &quot;./*&quot; do |filename|
842
- outname = filename.split('/')[1]
843
- outname += '/' if File.directory? filename
844
-
845
- # We change the color based on the kind of file shown
846
- if global_opts[:color]
847
- if File.directory? filename
848
- outname = outname.light_blue
849
- elsif File.executable? filename
850
- outname = outname.light_green
851
- end
852
- end
853
-
854
- puts outname
855
- end
856
- end
857
- </code></pre>
858
-
859
- <p>Notice how we referenced the value by using <code>global_opts[:color]</code>. It's that simple. To see it in action, run:</p>
860
- <pre><code class="bash">mytool -c list
861
- </code></pre>
862
-
863
- <h2 id="parameters">Parameters</h2>
864
- <p>Parameters work the same way as options, but they are localized to only the selected command. They are declared - as you probably guessed by now - in the command's class. So let's add the following lines to our list command within the class declaration:</p>
865
- <pre><code class="ruby">parameter :sort, 'Sort output alphabetically', type: :boolean, default: false
866
- parameter :all, 'Show hidden files', type: :boolean, default: false
867
- parameter :directoriesfirst, 'Show directories on top', type: :boolean, default: false
868
- </code></pre>
869
-
870
- <p>And let's modify our action block to utilize them:</p>
871
- <pre><code class="ruby"> action do |params, args, global_opts, config|
872
- filelist = []
873
-
874
- # We include dotfiles if specified
875
- include_dotfiles = (params[:all]) ? File::FNM_DOTMATCH : 0
876
-
877
- # We store a list of the files in an array, including dotfiles if specified
878
- Dir.glob &quot;./*&quot;, include_dotfiles do |filename|
879
- outname = filename.split('/')[1]
880
- outname += '/' if File.directory? filename
881
- filelist.append outname
882
- end
883
-
884
- # Sort alphabetically if specified
885
- filelist.sort! if params[:sort]
886
-
887
- # Put directories first if specified
888
- if params[:directoriesfirst]
889
- files = []; dirs = []
890
- filelist.each do |filename|
891
- if File.directory? filename
892
- dirs.append(filename)
893
- else
894
- files.append(filename)
895
- end
896
- end
897
- filelist = dirs + files
898
- end
899
-
900
- # Apply color. We do this at the end now because color codes can alter the sorting.
901
- filelist.map! do |filename|
902
- if File.directory? filename
903
- filename.light_blue
904
- elsif File.executable? filename
905
- filename.light_green
906
- else
907
- filename
908
- end
909
- end if global_opts[:color]
910
-
911
- puts filelist
912
- end
913
- </code></pre>
914
-
915
- <p>You should be able to run it now:</p>
916
- <pre><code class="bash">mytool -c list -asd
917
- </code></pre>
918
-
919
- <p>Note how the parameters come after the <code>list</code> command in the syntax above. As you create more commands, each will have its own unique set of parameters, while the options remain <em>before</em> the command and are available to all of them.</p>
739
+ <p>You can find the options declarations under <code>application/options.rb</code>. You&rsquo;ll see the example in the code:</p>
740
+ <div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4"><code class="language-ruby" data-lang="ruby">option <span style="color:#e6db74">:name</span>, <span style="color:#e6db74">&#39;Give me your name&#39;</span>, <span style="color:#e6db74">short</span>: <span style="color:#e6db74">&#39;n&#39;</span>, <span style="color:#e6db74">type</span>: <span style="color:#e6db74">:string</span>, <span style="color:#e6db74">default</span>: <span style="color:#e6db74">&#39;Jack&#39;</span>, <span style="color:#e6db74">required</span>: <span style="color:#66d9ef">false</span>, <span style="color:#e6db74">permitted</span>: <span style="color:#f92672">[</span><span style="color:#e6db74">&#39;Jack&#39;</span>, <span style="color:#e6db74">&#39;Jill&#39;</span><span style="color:#f92672">]</span>
741
+ </code></pre></div><p>This won&rsquo;t do for our tool, so let&rsquo;s change it. Remember that these options will be applicable to all of our commands, so lets make it something appropriate:</p>
742
+ <div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4"><code class="language-ruby" data-lang="ruby">option <span style="color:#e6db74">:color</span>, <span style="color:#e6db74">&#39;Enable color output&#39;</span>, <span style="color:#e6db74">short</span>: <span style="color:#e6db74">&#39;c&#39;</span>, <span style="color:#e6db74">type</span>: <span style="color:#e6db74">:boolean</span>, <span style="color:#e6db74">default</span>: <span style="color:#66d9ef">false</span>
743
+ </code></pre></div><p>So now, let&rsquo;s take advantage of this flag in our <code>list</code> command. Let&rsquo;s change our block to:</p>
744
+ <div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4"><code class="language-ruby" data-lang="ruby"> action <span style="color:#66d9ef">do</span> <span style="color:#f92672">|</span>params, args, global_opts, config<span style="color:#f92672">|</span>
745
+ <span style="color:#66d9ef">Dir</span><span style="color:#f92672">.</span>glob <span style="color:#e6db74">&#34;./*&#34;</span> <span style="color:#66d9ef">do</span> <span style="color:#f92672">|</span>filename<span style="color:#f92672">|</span>
746
+ outname <span style="color:#f92672">=</span> filename<span style="color:#f92672">.</span>split(<span style="color:#e6db74">&#39;/&#39;</span>)<span style="color:#f92672">[</span><span style="color:#ae81ff">1</span><span style="color:#f92672">]</span>
747
+ outname <span style="color:#f92672">+=</span> <span style="color:#e6db74">&#39;/&#39;</span> <span style="color:#66d9ef">if</span> <span style="color:#66d9ef">File</span><span style="color:#f92672">.</span>directory? filename
748
+
749
+ <span style="color:#75715e"># We change the color based on the kind of file shown</span>
750
+ <span style="color:#66d9ef">if</span> global_opts<span style="color:#f92672">[</span><span style="color:#e6db74">:color</span><span style="color:#f92672">]</span>
751
+ <span style="color:#66d9ef">if</span> <span style="color:#66d9ef">File</span><span style="color:#f92672">.</span>directory? filename
752
+ outname <span style="color:#f92672">=</span> outname<span style="color:#f92672">.</span>light_blue
753
+ <span style="color:#66d9ef">elsif</span> <span style="color:#66d9ef">File</span><span style="color:#f92672">.</span>executable? filename
754
+ outname <span style="color:#f92672">=</span> outname<span style="color:#f92672">.</span>light_green
755
+ <span style="color:#66d9ef">end</span>
756
+ <span style="color:#66d9ef">end</span>
757
+
758
+ puts outname
759
+ <span style="color:#66d9ef">end</span>
760
+ <span style="color:#66d9ef">end</span>
761
+ </code></pre></div><p>Notice how we referenced the value by using <code>global_opts[:color]</code>. It&rsquo;s that simple. To see it in action, run:</p>
762
+ <div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4"><code class="language-bash" data-lang="bash">mytool -c list
763
+ </code></pre></div><h2 id="parameters">Parameters</h2>
764
+ <p>Parameters work the same way as options, but they are localized to only the selected command. They are declared - as you probably guessed by now - in the command&rsquo;s class. So let&rsquo;s add the following lines to our list command within the class declaration:</p>
765
+ <div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4"><code class="language-ruby" data-lang="ruby">parameter <span style="color:#e6db74">:sort</span>, <span style="color:#e6db74">&#39;Sort output alphabetically&#39;</span>, <span style="color:#e6db74">type</span>: <span style="color:#e6db74">:boolean</span>, <span style="color:#e6db74">default</span>: <span style="color:#66d9ef">false</span>
766
+ parameter <span style="color:#e6db74">:all</span>, <span style="color:#e6db74">&#39;Show hidden files&#39;</span>, <span style="color:#e6db74">type</span>: <span style="color:#e6db74">:boolean</span>, <span style="color:#e6db74">default</span>: <span style="color:#66d9ef">false</span>
767
+ parameter <span style="color:#e6db74">:directoriesfirst</span>, <span style="color:#e6db74">&#39;Show directories on top&#39;</span>, <span style="color:#e6db74">type</span>: <span style="color:#e6db74">:boolean</span>, <span style="color:#e6db74">default</span>: <span style="color:#66d9ef">false</span>
768
+ </code></pre></div><p>And let&rsquo;s modify our action block to utilize them:</p>
769
+ <div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4"><code class="language-ruby" data-lang="ruby"> action <span style="color:#66d9ef">do</span> <span style="color:#f92672">|</span>params, args, global_opts, config<span style="color:#f92672">|</span>
770
+ filelist <span style="color:#f92672">=</span> <span style="color:#f92672">[]</span>
771
+
772
+ <span style="color:#75715e"># We include dotfiles if specified</span>
773
+ include_dotfiles <span style="color:#f92672">=</span> (params<span style="color:#f92672">[</span><span style="color:#e6db74">:all</span><span style="color:#f92672">]</span>) ? <span style="color:#66d9ef">File</span><span style="color:#f92672">::</span><span style="color:#66d9ef">FNM_DOTMATCH</span> : <span style="color:#ae81ff">0</span>
774
+
775
+ <span style="color:#75715e"># We store a list of the files in an array, including dotfiles if specified</span>
776
+ <span style="color:#66d9ef">Dir</span><span style="color:#f92672">.</span>glob <span style="color:#e6db74">&#34;./*&#34;</span>, include_dotfiles <span style="color:#66d9ef">do</span> <span style="color:#f92672">|</span>filename<span style="color:#f92672">|</span>
777
+ outname <span style="color:#f92672">=</span> filename<span style="color:#f92672">.</span>split(<span style="color:#e6db74">&#39;/&#39;</span>)<span style="color:#f92672">[</span><span style="color:#ae81ff">1</span><span style="color:#f92672">]</span>
778
+ outname <span style="color:#f92672">+=</span> <span style="color:#e6db74">&#39;/&#39;</span> <span style="color:#66d9ef">if</span> <span style="color:#66d9ef">File</span><span style="color:#f92672">.</span>directory? filename
779
+ filelist<span style="color:#f92672">.</span>append outname
780
+ <span style="color:#66d9ef">end</span>
781
+
782
+ <span style="color:#75715e"># Sort alphabetically if specified</span>
783
+ filelist<span style="color:#f92672">.</span>sort! <span style="color:#66d9ef">if</span> params<span style="color:#f92672">[</span><span style="color:#e6db74">:sort</span><span style="color:#f92672">]</span>
784
+
785
+ <span style="color:#75715e"># Put directories first if specified</span>
786
+ <span style="color:#66d9ef">if</span> params<span style="color:#f92672">[</span><span style="color:#e6db74">:directoriesfirst</span><span style="color:#f92672">]</span>
787
+ files <span style="color:#f92672">=</span> <span style="color:#f92672">[]</span>; dirs <span style="color:#f92672">=</span> <span style="color:#f92672">[]</span>
788
+ filelist<span style="color:#f92672">.</span>each <span style="color:#66d9ef">do</span> <span style="color:#f92672">|</span>filename<span style="color:#f92672">|</span>
789
+ <span style="color:#66d9ef">if</span> <span style="color:#66d9ef">File</span><span style="color:#f92672">.</span>directory? filename
790
+ dirs<span style="color:#f92672">.</span>append(filename)
791
+ <span style="color:#66d9ef">else</span>
792
+ files<span style="color:#f92672">.</span>append(filename)
793
+ <span style="color:#66d9ef">end</span>
794
+ <span style="color:#66d9ef">end</span>
795
+ filelist <span style="color:#f92672">=</span> dirs <span style="color:#f92672">+</span> files
796
+ <span style="color:#66d9ef">end</span>
797
+
798
+ <span style="color:#75715e"># Apply color. We do this at the end now because color codes can alter the sorting.</span>
799
+ filelist<span style="color:#f92672">.</span>map! <span style="color:#66d9ef">do</span> <span style="color:#f92672">|</span>filename<span style="color:#f92672">|</span>
800
+ <span style="color:#66d9ef">if</span> <span style="color:#66d9ef">File</span><span style="color:#f92672">.</span>directory? filename
801
+ filename<span style="color:#f92672">.</span>light_blue
802
+ <span style="color:#66d9ef">elsif</span> <span style="color:#66d9ef">File</span><span style="color:#f92672">.</span>executable? filename
803
+ filename<span style="color:#f92672">.</span>light_green
804
+ <span style="color:#66d9ef">else</span>
805
+ filename
806
+ <span style="color:#66d9ef">end</span>
807
+ <span style="color:#66d9ef">end</span> <span style="color:#66d9ef">if</span> global_opts<span style="color:#f92672">[</span><span style="color:#e6db74">:color</span><span style="color:#f92672">]</span>
808
+
809
+ puts filelist
810
+ <span style="color:#66d9ef">end</span>
811
+ </code></pre></div><p>You should be able to run it now:</p>
812
+ <div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4"><code class="language-bash" data-lang="bash">mytool -c list -asd
813
+ </code></pre></div><p>Note how the parameters come after the <code>list</code> command in the syntax above. As you create more commands, each will have its own unique set of parameters, while the options remain <em>before</em> the command and are available to all of them.</p>
920
814
  <h3 id="user-prompting">User Prompting</h3>
921
- <p>There is an additional option when declaring parameters to prompt the user for a value if not entered on the command line. This can be done with the <code>prompt:</code> keyword. Let's change one of our parameters to utilize it:</p>
922
- <pre><code class="ruby">parameter :sort, 'Sort output alphabetically', type: :boolean, default: false, prompt: &quot;Sort output alphabetically?&quot;
923
- </code></pre>
924
-
925
- <p>Now, let's run the tool while omitting the <code>--sort</code> parameter, as such:</p>
926
- <pre><code class="bash">mytool -c list -ad
927
- </code></pre>
928
-
929
- <p>This should give you the prompt:</p>
930
- <pre><code>Sort output alphabetically? (y/N):
931
- </code></pre>
932
-
933
- <p>Because we set the parameter to default to <code>false</code> the default here is <code>N</code>, which is used if the user hits enter without entering a letter. If the default was set to <code>true</code>, then the <code>Y</code> would be capitalized and be the default.</p>
934
- <p>For more information, see the documentation on <a href="../../advanced/interactive_commands/">Interactive Commands</a>.</p>
815
+ <p>There is an additional option when declaring parameters to prompt the user for a value if not entered on the command line. This can be done with the <code>prompt:</code> keyword. Let&rsquo;s change one of our parameters to utilize it:</p>
816
+ <div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4"><code class="language-ruby" data-lang="ruby">parameter <span style="color:#e6db74">:sort</span>, <span style="color:#e6db74">&#39;Sort output alphabetically&#39;</span>, <span style="color:#e6db74">type</span>: <span style="color:#e6db74">:boolean</span>, <span style="color:#e6db74">default</span>: <span style="color:#66d9ef">false</span>, <span style="color:#e6db74">prompt</span>: <span style="color:#e6db74">&#34;Sort output alphabetically?&#34;</span>
817
+ </code></pre></div><p>Now, let&rsquo;s run the tool while omitting the <code>--sort</code> parameter, as such:</p>
818
+ <div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4"><code class="language-bash" data-lang="bash">mytool -c list -ad
819
+ </code></pre></div><p>This should give you the prompt:</p>
820
+ <pre tabindex="0"><code>Sort output alphabetically? (y/N):
821
+ </code></pre><p>Because we set the parameter to default to <code>false</code> the default here is <code>N</code>, which is used if the user hits enter without entering a letter. If the default was set to <code>true</code>, then the <code>Y</code> would be capitalized and be the default.</p>
822
+ <p>For more information, see the documentation on <a href="/rbcli/advanced/interactive_commands/">Interactive Commands</a>.</p>
935
823
  <h2 id="arguments">Arguments</h2>
936
- <p>Lastly on the command line, there are arguments. Arguments are simply strings without the <code>-</code> character in front, and automatically get passed into an array in your applicaiton. Let's take a look at how we can use them.</p>
937
- <p>Unlike options and parameters, arguments require no setup. So let's assume that we want any arguments passed to the <code>list</code> command to be filenames that you want to display, and that you can pass multiple ones. Since arguments aren't listed automatically by the help function, this is a good example of what to put in your usage text. Let's take a look at what our class looks like now:</p>
938
- <pre><code class="ruby">class List &lt; Rbcli::Command
939
- description %q{List files in current directory}
940
- usage &lt;&lt;-EOF
941
- To list only specific files, you can enter filenames as arguments
942
-
943
- mytool list filename1 filename2...
944
- EOF
945
- parameter :sort, 'Sort output alphabetically', type: :boolean, default: false
946
- parameter :all, 'Show hidden files', type: :boolean, default: false
947
- parameter :directoriesfirst, 'Show directories on top', type: :boolean, default: false
948
-
949
- action do |params, args, global_opts, config|
950
- filelist = []
951
-
952
- # We include dotfiles if specified
953
- include_dotfiles = (params[:all]) ? File::FNM_DOTMATCH : 0
954
-
955
- # We store a list of the files in an array, including dotfiles if specified
956
- Dir.glob &quot;./*&quot;, include_dotfiles do |filename|
957
- outname = filename.split('/')[1]
958
- next unless args.include? outname if args.length &gt; 0
959
- outname += '/' if File.directory? filename
960
- filelist.append outname
961
- end
962
-
963
- # Sort alphabetically if specified
964
- filelist.sort! if params[:sort]
965
-
966
- # Put directories first if specified
967
- if params[:directoriesfirst]
968
- files = []; dirs = []
969
- filelist.each do |filename|
970
- if File.directory? filename
971
- dirs.append(filename)
972
- else
973
- files.append(filename)
974
- end
975
- end
976
- filelist = dirs + files
977
- end
978
-
979
- # Apply color. We do this at the end because color codes can alter the sorting
980
- filelist.map! do |filename|
981
- if File.directory? filename
982
- filename.light_blue
983
- elsif File.executable? filename
984
- filename.light_green
985
- else
986
- filename
987
- end
988
- end if global_opts[:color]
989
-
990
- puts filelist
991
- end
992
- end
993
- </code></pre>
994
-
995
- <h2 id="simplified-reference-tldr">Simplified Reference (TLDR)</h2>
824
+ <p>Lastly on the command line, there are arguments. Arguments are simply strings without the <code>-</code> character in front, and automatically get passed into an array in your applicaiton. Let&rsquo;s take a look at how we can use them.</p>
825
+ <p>Unlike options and parameters, arguments require no setup. So let&rsquo;s assume that we want any arguments passed to the <code>list</code> command to be filenames that you want to display, and that you can pass multiple ones. Since arguments aren&rsquo;t listed automatically by the help function, this is a good example of what to put in your usage text. Let&rsquo;s take a look at what our class looks like now:</p>
826
+ <div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4"><code class="language-ruby" data-lang="ruby"><span style="color:#66d9ef">class</span> <span style="color:#a6e22e">List</span> <span style="color:#f92672">&lt;</span> <span style="color:#66d9ef">Rbcli</span><span style="color:#f92672">::</span><span style="color:#66d9ef">Command</span>
827
+ description <span style="color:#e6db74">%q{List files in current directory}</span>
828
+ usage <span style="color:#e6db74">&lt;&lt;-EOF
829
+ </span><span style="color:#e6db74"></span><span style="color:#66d9ef">To</span> list only specific files, you can enter filenames as arguments
830
+
831
+ mytool list filename1 filename2<span style="color:#f92672">...</span>
832
+ <span style="color:#66d9ef">EOF</span>
833
+ parameter <span style="color:#e6db74">:sort</span>, <span style="color:#e6db74">&#39;Sort output alphabetically&#39;</span>, <span style="color:#e6db74">type</span>: <span style="color:#e6db74">:boolean</span>, <span style="color:#e6db74">default</span>: <span style="color:#66d9ef">false</span>
834
+ parameter <span style="color:#e6db74">:all</span>, <span style="color:#e6db74">&#39;Show hidden files&#39;</span>, <span style="color:#e6db74">type</span>: <span style="color:#e6db74">:boolean</span>, <span style="color:#e6db74">default</span>: <span style="color:#66d9ef">false</span>
835
+ parameter <span style="color:#e6db74">:directoriesfirst</span>, <span style="color:#e6db74">&#39;Show directories on top&#39;</span>, <span style="color:#e6db74">type</span>: <span style="color:#e6db74">:boolean</span>, <span style="color:#e6db74">default</span>: <span style="color:#66d9ef">false</span>
836
+
837
+ action <span style="color:#66d9ef">do</span> <span style="color:#f92672">|</span>params, args, global_opts, config<span style="color:#f92672">|</span>
838
+ filelist <span style="color:#f92672">=</span> <span style="color:#f92672">[]</span>
839
+
840
+ <span style="color:#75715e"># We include dotfiles if specified</span>
841
+ include_dotfiles <span style="color:#f92672">=</span> (params<span style="color:#f92672">[</span><span style="color:#e6db74">:all</span><span style="color:#f92672">]</span>) ? <span style="color:#66d9ef">File</span><span style="color:#f92672">::</span><span style="color:#66d9ef">FNM_DOTMATCH</span> : <span style="color:#ae81ff">0</span>
842
+
843
+ <span style="color:#75715e"># We store a list of the files in an array, including dotfiles if specified</span>
844
+ <span style="color:#66d9ef">Dir</span><span style="color:#f92672">.</span>glob <span style="color:#e6db74">&#34;./*&#34;</span>, include_dotfiles <span style="color:#66d9ef">do</span> <span style="color:#f92672">|</span>filename<span style="color:#f92672">|</span>
845
+ outname <span style="color:#f92672">=</span> filename<span style="color:#f92672">.</span>split(<span style="color:#e6db74">&#39;/&#39;</span>)<span style="color:#f92672">[</span><span style="color:#ae81ff">1</span><span style="color:#f92672">]</span>
846
+ <span style="color:#66d9ef">next</span> <span style="color:#66d9ef">unless</span> args<span style="color:#f92672">.</span>include? outname <span style="color:#66d9ef">if</span> args<span style="color:#f92672">.</span>length <span style="color:#f92672">&gt;</span> <span style="color:#ae81ff">0</span>
847
+ outname <span style="color:#f92672">+=</span> <span style="color:#e6db74">&#39;/&#39;</span> <span style="color:#66d9ef">if</span> <span style="color:#66d9ef">File</span><span style="color:#f92672">.</span>directory? filename
848
+ filelist<span style="color:#f92672">.</span>append outname
849
+ <span style="color:#66d9ef">end</span>
850
+
851
+ <span style="color:#75715e"># Sort alphabetically if specified</span>
852
+ filelist<span style="color:#f92672">.</span>sort! <span style="color:#66d9ef">if</span> params<span style="color:#f92672">[</span><span style="color:#e6db74">:sort</span><span style="color:#f92672">]</span>
853
+
854
+ <span style="color:#75715e"># Put directories first if specified</span>
855
+ <span style="color:#66d9ef">if</span> params<span style="color:#f92672">[</span><span style="color:#e6db74">:directoriesfirst</span><span style="color:#f92672">]</span>
856
+ files <span style="color:#f92672">=</span> <span style="color:#f92672">[]</span>; dirs <span style="color:#f92672">=</span> <span style="color:#f92672">[]</span>
857
+ filelist<span style="color:#f92672">.</span>each <span style="color:#66d9ef">do</span> <span style="color:#f92672">|</span>filename<span style="color:#f92672">|</span>
858
+ <span style="color:#66d9ef">if</span> <span style="color:#66d9ef">File</span><span style="color:#f92672">.</span>directory? filename
859
+ dirs<span style="color:#f92672">.</span>append(filename)
860
+ <span style="color:#66d9ef">else</span>
861
+ files<span style="color:#f92672">.</span>append(filename)
862
+ <span style="color:#66d9ef">end</span>
863
+ <span style="color:#66d9ef">end</span>
864
+ filelist <span style="color:#f92672">=</span> dirs <span style="color:#f92672">+</span> files
865
+ <span style="color:#66d9ef">end</span>
866
+
867
+ <span style="color:#75715e"># Apply color. We do this at the end because color codes can alter the sorting</span>
868
+ filelist<span style="color:#f92672">.</span>map! <span style="color:#66d9ef">do</span> <span style="color:#f92672">|</span>filename<span style="color:#f92672">|</span>
869
+ <span style="color:#66d9ef">if</span> <span style="color:#66d9ef">File</span><span style="color:#f92672">.</span>directory? filename
870
+ filename<span style="color:#f92672">.</span>light_blue
871
+ <span style="color:#66d9ef">elsif</span> <span style="color:#66d9ef">File</span><span style="color:#f92672">.</span>executable? filename
872
+ filename<span style="color:#f92672">.</span>light_green
873
+ <span style="color:#66d9ef">else</span>
874
+ filename
875
+ <span style="color:#66d9ef">end</span>
876
+ <span style="color:#66d9ef">end</span> <span style="color:#66d9ef">if</span> global_opts<span style="color:#f92672">[</span><span style="color:#e6db74">:color</span><span style="color:#f92672">]</span>
877
+
878
+ puts filelist
879
+ <span style="color:#66d9ef">end</span>
880
+ <span style="color:#66d9ef">end</span>
881
+ </code></pre></div><h2 id="simplified-reference-tldr">Simplified Reference (TLDR)</h2>
996
882
  <p>RBCli enforces a CLI structure of:</p>
997
- <pre><code>toolname [options] command [parameters] argument1 argument2...
998
- </code></pre>
999
-
1000
- <p><strong>Options</strong> are declared in <code>application/options.rb</code> file.</p>
1001
- <p><strong>Parameters</strong> are declared in the respective command's class declaration.</p>
1002
- <p><strong>Arguments</strong> don't need to be declared, and are passed in as an array to your commands. It is helpful to describe the argument purpose in the <code>usage</code> text declaration so that the user can see what to do in the help.</p>
883
+ <pre tabindex="0"><code>toolname [options] command [parameters] argument1 argument2...
884
+ </code></pre><p><strong>Options</strong> are declared in <code>application/options.rb</code> file.</p>
885
+ <p><strong>Parameters</strong> are declared in the respective command&rsquo;s class declaration.</p>
886
+ <p><strong>Arguments</strong> don&rsquo;t need to be declared, and are passed in as an array to your commands. It is helpful to describe the argument purpose in the <code>usage</code> text declaration so that the user can see what to do in the help.</p>
1003
887
  <p><strong>Options</strong> and <strong>parameters</strong> both use the same format:</p>
1004
- <pre><code class="ruby">option :&lt;name&gt;, &quot;&lt;description_string&gt;&quot;, short: '&lt;character&gt;', type: &lt;variable_type&gt;, default: &lt;default_value&gt;, permitted: [&lt;array_of_permitted_values]
1005
-
1006
- parameter :&lt;name&gt;, &quot;&lt;description_string&gt;&quot;, short: '&lt;character&gt;', type: &lt;variable_type&gt;, default: &lt;default_value&gt;, permitted: [&lt;array_of_permitted_values]
1007
- </code></pre>
888
+ <div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4"><code class="language-ruby" data-lang="ruby">option <span style="color:#e6db74">:&lt;</span>name<span style="color:#f92672">&gt;</span>, <span style="color:#e6db74">&#34;&lt;description_string&gt;&#34;</span>, <span style="color:#e6db74">short</span>: <span style="color:#e6db74">&#39;&lt;character&gt;&#39;</span>, <span style="color:#e6db74">type</span>: <span style="color:#f92672">&lt;</span>variable_type<span style="color:#f92672">&gt;</span>, <span style="color:#e6db74">default</span>: <span style="color:#f92672">&lt;</span>default_value<span style="color:#f92672">&gt;</span>, <span style="color:#e6db74">permitted</span>: <span style="color:#f92672">[&lt;</span>array_of_permitted_values<span style="color:#f92672">]</span>
1008
889
 
890
+ parameter <span style="color:#e6db74">:&lt;</span>name<span style="color:#f92672">&gt;</span>, <span style="color:#e6db74">&#34;&lt;description_string&gt;&#34;</span>, <span style="color:#e6db74">short</span>: <span style="color:#e6db74">&#39;&lt;character&gt;&#39;</span>, <span style="color:#e6db74">type</span>: <span style="color:#f92672">&lt;</span>variable_type<span style="color:#f92672">&gt;</span>, <span style="color:#e6db74">default</span>: <span style="color:#f92672">&lt;</span>default_value<span style="color:#f92672">&gt;</span>, <span style="color:#e6db74">permitted</span>: <span style="color:#f92672">[&lt;</span>array_of_permitted_values<span style="color:#f92672">]</span>
891
+ </code></pre></div><ul>
892
+ <li><code>name</code>
1009
893
  <ul>
1010
- <li><code>name</code><ul>
1011
894
  <li>(Required) The long name of the option, as a symbol. This will be represented as <code>--name</code> on the command line</li>
1012
895
  </ul>
1013
896
  </li>
1014
- <li><code>description_string</code><ul>
897
+ <li><code>description_string</code>
898
+ <ul>
1015
899
  <li>(Required) A short description of the command that will appear in the help text for the user</li>
1016
900
  </ul>
1017
901
  </li>
1018
- <li><code>type</code><ul>
902
+ <li><code>type</code>
903
+ <ul>
1019
904
  <li>(Required) The following types are supported: <code>:string</code>, <code>:boolean</code> or <code>:flag</code>, <code>:integer</code>, and <code>:float</code></li>
1020
905
  </ul>
1021
906
  </li>
1022
- <li><code>default</code><ul>
1023
- <li>(Optional) A default value for the option if one isn't entered (default: nil)</li>
907
+ <li><code>default</code>
908
+ <ul>
909
+ <li>(Optional) A default value for the option if one isn&rsquo;t entered (default: nil)</li>
1024
910
  </ul>
1025
911
  </li>
1026
- <li><code>short</code><ul>
912
+ <li><code>short</code>
913
+ <ul>
1027
914
  <li>(Optional) A letter that acts as a shortcut for the option. This will allow users to apply the command as <code>-n</code></li>
1028
915
  <li>To not have a short value, set this to :none (default: the first letter of the long name)</li>
1029
916
  </ul>
1030
917
  </li>
1031
- <li><code>required</code><ul>
918
+ <li><code>required</code>
919
+ <ul>
1032
920
  <li>(Optional) Specify whether the option is required from the user (default: false)</li>
1033
921
  </ul>
1034
922
  </li>
1035
- <li><code>permitted</code><ul>
923
+ <li><code>permitted</code>
924
+ <ul>
1036
925
  <li>(Optional) An array of whitelisted values for the option (default: nil)</li>
1037
926
  </ul>
1038
927
  </li>
1039
928
  </ul>
1040
929
  <h2 id="next-steps">Next Steps</h2>
1041
- <p>Next, we're going to take a quick look at how to publish and distribute your application, both publicly and within your organization.</p>
930
+ <p>Next, we&rsquo;re going to take a quick look at how to publish and distribute your application, both publicly and within your organization.</p>
931
+
932
+
933
+ <footer class="footline">
934
+
935
+ </footer>
936
+
937
+
938
+ </div>
939
+
940
+
941
+ </div>
942
+
943
+ <div id="navigation">
944
+
945
+
946
+
947
+
948
+
949
+
1042
950
 
1043
-
951
+
952
+
1044
953
 
1045
-
1046
-
1047
954
 
1048
955
 
956
+
957
+
958
+
959
+
960
+
961
+
962
+
963
+
964
+
965
+
966
+
967
+
968
+
969
+
970
+
971
+
972
+
1049
973
 
1050
-
1051
- </article>
1052
- </div>
1053
- </div>
1054
- </main>
1055
-
974
+
975
+
976
+
977
+
978
+
979
+
1056
980
 
1057
- <footer class="md-footer">
1058
-
1059
- <div class="md-footer-nav">
1060
- <nav class="md-footer-nav__inner md-grid">
981
+
982
+
983
+
984
+
985
+
986
+
987
+
988
+
989
+
990
+
991
+
992
+
993
+
994
+
995
+
996
+
997
+
998
+
999
+
1000
+
1001
+
1002
+
1003
+
1004
+
1005
+
1006
+
1007
+
1008
+
1009
+
1010
+
1011
+
1012
+
1061
1013
 
1062
- <a href="../30-your_first_command/" title="Your First Command" class="md-flex md-footer-nav__link md-footer-nav__link--prev" rel="prev">
1063
- <div class="md-flex__cell md-flex__cell--shrink">
1064
- <i class="md-icon md-icon--arrow-back md-footer-nav__button"></i>
1065
- </div>
1066
- <div class="md-flex__cell md-flex__cell--stretch md-footer-nav__title">
1067
- <span class="md-flex__ellipsis">
1068
- <span class="md-footer-nav__direction">
1069
- Previous
1070
- </span>
1071
- Your First Command
1072
- </span>
1073
- </div>
1074
- </a>
1014
+
1015
+
1016
+
1017
+
1018
+
1019
+
1020
+
1021
+
1022
+
1023
+
1024
+
1025
+
1026
+
1027
+
1028
+
1075
1029
 
1030
+
1031
+
1032
+
1033
+
1034
+
1035
+
1036
+
1037
+
1038
+
1039
+
1040
+
1041
+
1042
+
1043
+
1044
+
1076
1045
 
1077
- <a href="../50-publishing/" title="Publishing and Distribution" class="md-flex md-footer-nav__link md-footer-nav__link--next" rel="next">
1078
- <div class="md-flex__cell md-flex__cell--stretch md-footer-nav__title">
1079
- <span class="md-flex__ellipsis">
1080
- <span class="md-footer-nav__direction">
1081
- Next
1082
- </span>
1083
- Publishing and Distribution
1084
- </span>
1085
- </div>
1086
- <div class="md-flex__cell md-flex__cell--shrink">
1087
- <i class="md-icon md-icon--arrow-forward md-footer-nav__button"></i>
1088
- </div>
1089
- </a>
1046
+
1047
+
1048
+
1049
+
1050
+
1051
+
1052
+
1053
+
1054
+
1055
+
1056
+
1057
+
1058
+
1059
+
1060
+
1061
+
1090
1062
 
1091
- </nav>
1092
- </div>
1093
-
1094
- <div class="md-footer-meta md-typeset">
1095
- <div class="md-footer-meta__inner md-grid">
1096
- <div class="md-footer-copyright">
1097
-
1098
- <div class="md-footer-copyright__highlight">
1099
- Copyright © 2018 Andrew Khoury
1100
- </div>
1101
-
1102
- powered by
1103
- <a href="https://www.mkdocs.org">MkDocs</a>
1104
- and
1105
- <a href="https://squidfunk.github.io/mkdocs-material/">
1106
- Material for MkDocs</a>
1107
- </div>
1108
-
1063
+
1064
+
1065
+
1066
+
1067
+
1068
+
1069
+
1070
+
1071
+
1072
+
1073
+
1074
+
1075
+
1076
+
1077
+
1078
+
1079
+
1080
+
1109
1081
 
1110
-
1111
- </div>
1112
- </div>
1113
- </footer>
1114
-
1082
+
1083
+
1084
+
1085
+
1086
+
1087
+
1088
+
1089
+
1090
+
1091
+
1092
+
1093
+
1094
+
1095
+
1096
+
1097
+
1098
+
1099
+
1100
+
1101
+
1102
+
1103
+
1104
+
1105
+
1106
+
1107
+
1108
+
1109
+
1110
+
1111
+
1112
+
1113
+
1114
+
1115
+
1116
+
1117
+
1118
+
1119
+
1120
+
1121
+
1122
+
1123
+
1124
+
1125
+
1126
+
1127
+
1128
+
1129
+
1130
+
1131
+
1132
+
1133
+
1134
+
1135
+
1136
+
1137
+
1138
+
1139
+
1140
+
1141
+
1142
+
1143
+
1144
+
1145
+
1146
+
1147
+
1148
+
1149
+
1150
+
1151
+
1152
+
1153
+
1154
+
1155
+
1156
+
1157
+
1158
+
1159
+
1160
+
1161
+
1162
+
1163
+
1164
+
1165
+
1166
+
1167
+
1168
+
1169
+
1170
+
1171
+
1172
+
1173
+
1174
+
1175
+
1176
+
1177
+
1178
+
1179
+
1180
+
1181
+
1182
+
1183
+
1184
+
1185
+
1186
+
1187
+
1188
+
1189
+
1190
+
1191
+
1192
+
1193
+
1194
+
1195
+
1196
+
1197
+
1198
+
1199
+
1200
+
1201
+
1202
+
1203
+
1204
+
1205
+
1206
+
1207
+
1208
+
1209
+
1210
+
1211
+
1212
+
1213
+
1214
+
1215
+
1216
+
1217
+
1218
+
1219
+
1220
+
1221
+
1222
+
1223
+
1224
+
1225
+
1226
+
1227
+
1228
+
1229
+
1230
+
1231
+
1232
+
1233
+
1234
+
1235
+
1236
+
1237
+
1238
+
1239
+
1240
+
1241
+
1242
+
1243
+
1244
+
1245
+
1246
+
1247
+
1248
+
1249
+
1250
+
1251
+
1252
+
1253
+
1254
+
1255
+
1256
+
1257
+
1258
+
1259
+
1260
+
1261
+
1262
+
1263
+
1264
+
1265
+
1266
+
1267
+
1268
+
1269
+
1270
+
1271
+
1272
+
1273
+
1274
+
1275
+
1276
+
1277
+
1278
+
1279
+
1280
+
1281
+
1282
+
1283
+
1284
+
1285
+
1286
+
1287
+
1288
+
1289
+
1290
+
1291
+
1292
+
1293
+
1294
+
1295
+
1296
+
1297
+
1298
+
1299
+
1300
+
1301
+
1302
+
1303
+
1304
+
1305
+
1306
+
1307
+
1308
+
1309
+
1310
+
1311
+
1312
+
1313
+
1314
+
1315
+
1316
+
1317
+
1318
+
1319
+
1320
+
1321
+
1322
+
1323
+
1324
+
1325
+
1326
+
1327
+
1328
+
1329
+
1330
+
1331
+
1332
+
1333
+
1334
+
1335
+
1336
+
1337
+
1338
+
1339
+
1340
+
1341
+
1342
+
1343
+
1344
+
1345
+
1346
+
1347
+
1348
+
1349
+
1350
+
1351
+ <a class="nav nav-prev" href="/rbcli/tutorial/30-your_first_command/" title="Your First Command"> <i class="fa fa-chevron-left"></i></a>
1352
+
1353
+
1354
+ <a class="nav nav-next" href="/rbcli/tutorial/50-publishing/" title="Publishing Your Application" style="margin-right: 0px;"><i class="fa fa-chevron-right"></i></a>
1355
+
1356
+
1115
1357
  </div>
1358
+
1359
+ </section>
1116
1360
 
1117
- <script src="../../assets/javascripts/application.583bbe55.js"></script>
1118
-
1119
- <script>app.initialize({version:"1.0.3",url:{base:"../.."}})</script>
1120
-
1121
-
1122
-
1123
-
1361
+ <div style="left: -1000px; overflow: scroll; position: absolute; top: -1000px; border: none; box-sizing: content-box; height: 200px; margin: 0px; padding: 0px; width: 200px;">
1362
+ <div style="border: none; box-sizing: content-box; height: 200px; margin: 0px; padding: 0px; width: 200px;"></div>
1363
+ </div>
1364
+ <script src="/rbcli/js/clipboard.min.js?1634703589"></script>
1365
+ <script src="/rbcli/js/perfect-scrollbar.min.js?1634703589"></script>
1366
+ <script src="/rbcli/js/perfect-scrollbar.jquery.min.js?1634703589"></script>
1367
+ <script src="/rbcli/js/jquery.sticky.js?1634703589"></script>
1368
+ <script src="/rbcli/js/featherlight.min.js?1634703589"></script>
1369
+ <script src="/rbcli/js/highlight.pack.js?1634703589"></script>
1370
+ <script>hljs.initHighlightingOnLoad();</script>
1371
+ <script src="/rbcli/js/modernizr.custom-3.6.0.js?1634703589"></script>
1372
+ <script src="/rbcli/js/learn.js?1634703589"></script>
1373
+ <script src="/rbcli/js/hugo-learn.js?1634703589"></script>
1374
+
1375
+ <link href="/rbcli/mermaid/mermaid.css?1634703589" rel="stylesheet" />
1376
+ <script src="/rbcli/mermaid/mermaid.js?1634703589"></script>
1377
+ <script>
1378
+ mermaid.initialize({ startOnLoad: true });
1379
+ </script>
1124
1380
 
1381
+
1125
1382
  </body>
1126
- </html>
1383
+ </html>
1384
+