my_help 0.4.5 → 0.5.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (455) hide show
  1. checksums.yaml +4 -4
  2. data/.dockerignore +2 -0
  3. data/.gitignore +29 -2
  4. data/.ipynb_checkpoints/README-checkpoint.ipynb +511 -0
  5. data/.ipynb_checkpoints/Untitled-checkpoint.ipynb +6 -0
  6. data/.ruby-version +1 -0
  7. data/Dockerfile.template +13 -0
  8. data/README.md +341 -256
  9. data/README.org +480 -0
  10. data/Rakefile +9 -31
  11. data/docs/.ipynb_checkpoints/README-checkpoint.ipynb +112 -0
  12. data/docs/.ipynb_checkpoints/Untitled-checkpoint.ipynb +219 -0
  13. data/docs/README.ipynb +112 -0
  14. data/docs/bob/README_en.ipynb +219 -0
  15. data/docs/bob/diff_against_org_mode.ipynb +119 -0
  16. data/docs/bob/emacs_help.ipynb +133 -0
  17. data/docs/bob/template_help.ipynb +136 -0
  18. data/{my_help_nasu → docs/nasu}/.gitignore +0 -0
  19. data/{my_help_nasu → docs/nasu}/Rakefile +91 -20
  20. data/docs/nasu/abstract.hiki +17 -0
  21. data/{my_help_nasu → docs/nasu}/code.hiki +25 -21
  22. data/docs/nasu/discussion.hiki +38 -0
  23. data/docs/nasu/features/add.feature +12 -0
  24. data/docs/nasu/features/all_help.feature +10 -0
  25. data/docs/nasu/features/backup_list.feature +10 -0
  26. data/docs/nasu/features/edit_help.feature +9 -0
  27. data/docs/nasu/features/my_todo.feature +16 -0
  28. data/docs/nasu/features/remove.feature +10 -0
  29. data/docs/nasu/features/sample_e.feature +6 -0
  30. data/docs/nasu/features/step_definitions/add_spec.rb +18 -0
  31. data/docs/nasu/features/step_definitions/all_help_spec.rb +18 -0
  32. data/docs/nasu/features/step_definitions/backup_list_spec.rb +18 -0
  33. data/docs/nasu/features/step_definitions/edit_help_spec.rb +19 -0
  34. data/docs/nasu/features/step_definitions/my_todo_spec.rb +25 -0
  35. data/docs/nasu/features/step_definitions/remove_spec.rb +18 -0
  36. data/docs/nasu/features/step_definitions/store_spec.rb +18 -0
  37. data/docs/nasu/features/step_definitions/to_hiki_spec.rb +18 -0
  38. data/docs/nasu/features/store.feature +10 -0
  39. data/docs/nasu/features/support/env.rb +2 -0
  40. data/docs/nasu/features/test.feature +10 -0
  41. data/docs/nasu/features/to_hiki.feature +10 -0
  42. data/{my_help_nasu → docs/nasu}/features.hiki +80 -70
  43. data/docs/nasu/figs/cucumber01.001.jpg +0 -0
  44. data/docs/nasu/figs/cucumber02.001.jpg +0 -0
  45. data/docs/nasu/figs/cucumber03.001.jpg +0 -0
  46. data/docs/nasu/figs/cucumber04.001.jpg +0 -0
  47. data/docs/nasu/figs/cucumber05.001.jpg +0 -0
  48. data/docs/nasu/figs/cucumber1.jpg +0 -0
  49. data/docs/nasu/figs/cucumber2.jpg +0 -0
  50. data/docs/nasu/figs/cucumber3.jpg +0 -0
  51. data/docs/nasu/figs/cucumber4.jpg +0 -0
  52. data/docs/nasu/figs/my_help_nasu.001.jpeg +0 -0
  53. data/docs/nasu/figs/my_help_nasu.002.jpeg +0 -0
  54. data/docs/nasu/figs/my_help_nasu.003.jpeg +0 -0
  55. data/docs/nasu/figs/my_help_nasu.004.jpeg +0 -0
  56. data/docs/nasu/figs/my_help_nasu.005.jpeg +0 -0
  57. data/docs/nasu/figs/my_help_nasu.006.jpeg +0 -0
  58. data/docs/nasu/figs/my_help_nasu.007.jpeg +0 -0
  59. data/docs/nasu/figs/my_help_nasu.008.jpeg +0 -0
  60. data/docs/nasu/figs/my_help_nasu.pdf +0 -0
  61. data/docs/nasu/figs/my_help_nasu.png +0 -0
  62. data/docs/nasu/figs/my_help_nasu1.001.jpg +0 -0
  63. data/docs/nasu/figs/rspec01.001.jpg +0 -0
  64. data/docs/nasu/figs/rspec1.jpg +0 -0
  65. data/docs/nasu/figs/rspec2.jpg +0 -0
  66. data/{my_help_nasu → docs/nasu}/head2.tex +0 -0
  67. data/{my_help_nasu → docs/nasu}/hiki_help.yml +0 -0
  68. data/{my_help_nasu → docs/nasu}/introduction.hiki +15 -16
  69. data/{my_help_nasu → docs/nasu}/key_bind_mi +0 -0
  70. data/docs/nasu/keynote/cucumber01.key/Data/110809_FamilyChineseOahu_EN_00317_2040x1360-small-12.jpg +0 -0
  71. data/docs/nasu/keynote/cucumber01.key/Data/110809_FamilyChineseOahu_EN_02016_981x654-small-14.jpg +0 -0
  72. data/docs/nasu/keynote/cucumber01.key/Data/110809_FamilyChineseOahu_EN_02390_2880x1921-small-10.jpg +0 -0
  73. data/docs/nasu/keynote/cucumber01.key/Data/mt10@2x-87.jpg +0 -0
  74. data/docs/nasu/keynote/cucumber01.key/Data/mt1@2x-78.jpg +0 -0
  75. data/docs/nasu/keynote/cucumber01.key/Data/mt2@2x-79.jpg +0 -0
  76. data/docs/nasu/keynote/cucumber01.key/Data/mt3@2x-80.jpg +0 -0
  77. data/docs/nasu/keynote/cucumber01.key/Data/mt4@2x-81.jpg +0 -0
  78. data/docs/nasu/keynote/cucumber01.key/Data/mt5@2x-82.jpg +0 -0
  79. data/docs/nasu/keynote/cucumber01.key/Data/mt6@2x-83.jpg +0 -0
  80. data/docs/nasu/keynote/cucumber01.key/Data/mt7@2x-84.jpg +0 -0
  81. data/docs/nasu/keynote/cucumber01.key/Data/mt8@2x-85.jpg +0 -0
  82. data/docs/nasu/keynote/cucumber01.key/Data/mt9@2x-86.jpg +0 -0
  83. data/docs/nasu/keynote/cucumber01.key/Data/pasted-image-89.png +0 -0
  84. data/docs/nasu/keynote/cucumber01.key/Data/pasted-image-small-90.png +0 -0
  85. data/docs/nasu/keynote/cucumber01.key/Data/st0-104.jpg +0 -0
  86. data/docs/nasu/keynote/cucumber01.key/Index.zip +0 -0
  87. data/docs/nasu/keynote/cucumber01.key/Metadata/BuildVersionHistory.plist +8 -0
  88. data/docs/nasu/keynote/cucumber01.key/Metadata/DocumentIdentifier +1 -0
  89. data/docs/nasu/keynote/cucumber01.key/Metadata/Properties.plist +0 -0
  90. data/docs/nasu/keynote/cucumber01.key/preview-micro.jpg +0 -0
  91. data/docs/nasu/keynote/cucumber01.key/preview-web.jpg +0 -0
  92. data/docs/nasu/keynote/cucumber01.key/preview.jpg +0 -0
  93. data/docs/nasu/keynote/cucumber02.key/Data/110809_FamilyChineseOahu_EN_00317_2040x1360-small-12.jpg +0 -0
  94. data/docs/nasu/keynote/cucumber02.key/Data/110809_FamilyChineseOahu_EN_02016_981x654-small-14.jpg +0 -0
  95. data/docs/nasu/keynote/cucumber02.key/Data/110809_FamilyChineseOahu_EN_02390_2880x1921-small-10.jpg +0 -0
  96. data/docs/nasu/keynote/cucumber02.key/Data/mt10@2x-87.jpg +0 -0
  97. data/docs/nasu/keynote/cucumber02.key/Data/mt1@2x-78.jpg +0 -0
  98. data/docs/nasu/keynote/cucumber02.key/Data/mt2@2x-79.jpg +0 -0
  99. data/docs/nasu/keynote/cucumber02.key/Data/mt3@2x-80.jpg +0 -0
  100. data/docs/nasu/keynote/cucumber02.key/Data/mt4@2x-81.jpg +0 -0
  101. data/docs/nasu/keynote/cucumber02.key/Data/mt5@2x-82.jpg +0 -0
  102. data/docs/nasu/keynote/cucumber02.key/Data/mt6@2x-83.jpg +0 -0
  103. data/docs/nasu/keynote/cucumber02.key/Data/mt7@2x-84.jpg +0 -0
  104. data/docs/nasu/keynote/cucumber02.key/Data/mt8@2x-85.jpg +0 -0
  105. data/docs/nasu/keynote/cucumber02.key/Data/mt9@2x-86.jpg +0 -0
  106. data/docs/nasu/keynote/cucumber02.key/Data/pasted-image-89.png +0 -0
  107. data/docs/nasu/keynote/cucumber02.key/Data/pasted-image-small-90.png +0 -0
  108. data/docs/nasu/keynote/cucumber02.key/Data/st0-96.jpg +0 -0
  109. data/docs/nasu/keynote/cucumber02.key/Index.zip +0 -0
  110. data/docs/nasu/keynote/cucumber02.key/Metadata/BuildVersionHistory.plist +8 -0
  111. data/docs/nasu/keynote/cucumber02.key/Metadata/DocumentIdentifier +1 -0
  112. data/docs/nasu/keynote/cucumber02.key/Metadata/Properties.plist +0 -0
  113. data/docs/nasu/keynote/cucumber02.key/preview-micro.jpg +0 -0
  114. data/docs/nasu/keynote/cucumber02.key/preview-web.jpg +0 -0
  115. data/docs/nasu/keynote/cucumber02.key/preview.jpg +0 -0
  116. data/docs/nasu/keynote/cucumber03.key/Data/110809_FamilyChineseOahu_EN_00317_2040x1360-small-12.jpg +0 -0
  117. data/docs/nasu/keynote/cucumber03.key/Data/110809_FamilyChineseOahu_EN_02016_981x654-small-14.jpg +0 -0
  118. data/docs/nasu/keynote/cucumber03.key/Data/110809_FamilyChineseOahu_EN_02390_2880x1921-small-10.jpg +0 -0
  119. data/docs/nasu/keynote/cucumber03.key/Data/mt10@2x-87.jpg +0 -0
  120. data/docs/nasu/keynote/cucumber03.key/Data/mt1@2x-78.jpg +0 -0
  121. data/docs/nasu/keynote/cucumber03.key/Data/mt2@2x-79.jpg +0 -0
  122. data/docs/nasu/keynote/cucumber03.key/Data/mt3@2x-80.jpg +0 -0
  123. data/docs/nasu/keynote/cucumber03.key/Data/mt4@2x-81.jpg +0 -0
  124. data/docs/nasu/keynote/cucumber03.key/Data/mt5@2x-82.jpg +0 -0
  125. data/docs/nasu/keynote/cucumber03.key/Data/mt6@2x-83.jpg +0 -0
  126. data/docs/nasu/keynote/cucumber03.key/Data/mt7@2x-84.jpg +0 -0
  127. data/docs/nasu/keynote/cucumber03.key/Data/mt8@2x-85.jpg +0 -0
  128. data/docs/nasu/keynote/cucumber03.key/Data/mt9@2x-86.jpg +0 -0
  129. data/docs/nasu/keynote/cucumber03.key/Data/pasted-image-89.png +0 -0
  130. data/docs/nasu/keynote/cucumber03.key/Data/pasted-image-small-90.png +0 -0
  131. data/docs/nasu/keynote/cucumber03.key/Data/st0-100.jpg +0 -0
  132. data/docs/nasu/keynote/cucumber03.key/Index.zip +0 -0
  133. data/docs/nasu/keynote/cucumber03.key/Metadata/BuildVersionHistory.plist +8 -0
  134. data/docs/nasu/keynote/cucumber03.key/Metadata/DocumentIdentifier +1 -0
  135. data/docs/nasu/keynote/cucumber03.key/Metadata/Properties.plist +0 -0
  136. data/docs/nasu/keynote/cucumber03.key/preview-micro.jpg +0 -0
  137. data/docs/nasu/keynote/cucumber03.key/preview-web.jpg +0 -0
  138. data/docs/nasu/keynote/cucumber03.key/preview.jpg +0 -0
  139. data/docs/nasu/keynote/cucumber04.key/Data/110809_FamilyChineseOahu_EN_00317_2040x1360-small-12.jpg +0 -0
  140. data/docs/nasu/keynote/cucumber04.key/Data/110809_FamilyChineseOahu_EN_02016_981x654-small-14.jpg +0 -0
  141. data/docs/nasu/keynote/cucumber04.key/Data/110809_FamilyChineseOahu_EN_02390_2880x1921-small-10.jpg +0 -0
  142. data/docs/nasu/keynote/cucumber04.key/Data/mt10@2x-87.jpg +0 -0
  143. data/docs/nasu/keynote/cucumber04.key/Data/mt1@2x-78.jpg +0 -0
  144. data/docs/nasu/keynote/cucumber04.key/Data/mt2@2x-79.jpg +0 -0
  145. data/docs/nasu/keynote/cucumber04.key/Data/mt3@2x-80.jpg +0 -0
  146. data/docs/nasu/keynote/cucumber04.key/Data/mt4@2x-81.jpg +0 -0
  147. data/docs/nasu/keynote/cucumber04.key/Data/mt5@2x-82.jpg +0 -0
  148. data/docs/nasu/keynote/cucumber04.key/Data/mt6@2x-83.jpg +0 -0
  149. data/docs/nasu/keynote/cucumber04.key/Data/mt7@2x-84.jpg +0 -0
  150. data/docs/nasu/keynote/cucumber04.key/Data/mt8@2x-85.jpg +0 -0
  151. data/docs/nasu/keynote/cucumber04.key/Data/mt9@2x-86.jpg +0 -0
  152. data/docs/nasu/keynote/cucumber04.key/Data/pasted-image-106.png +0 -0
  153. data/docs/nasu/keynote/cucumber04.key/Data/pasted-image-small-107.png +0 -0
  154. data/docs/nasu/keynote/cucumber04.key/Data/st0-115.jpg +0 -0
  155. data/docs/nasu/keynote/cucumber04.key/Index.zip +0 -0
  156. data/docs/nasu/keynote/cucumber04.key/Metadata/BuildVersionHistory.plist +8 -0
  157. data/docs/nasu/keynote/cucumber04.key/Metadata/DocumentIdentifier +1 -0
  158. data/docs/nasu/keynote/cucumber04.key/Metadata/Properties.plist +0 -0
  159. data/docs/nasu/keynote/cucumber04.key/preview-micro.jpg +0 -0
  160. data/docs/nasu/keynote/cucumber04.key/preview-web.jpg +0 -0
  161. data/docs/nasu/keynote/cucumber04.key/preview.jpg +0 -0
  162. data/docs/nasu/keynote/cucumber05.key/Data/110809_FamilyChineseOahu_EN_00317_2040x1360-small-12.jpg +0 -0
  163. data/docs/nasu/keynote/cucumber05.key/Data/110809_FamilyChineseOahu_EN_02016_981x654-small-14.jpg +0 -0
  164. data/docs/nasu/keynote/cucumber05.key/Data/110809_FamilyChineseOahu_EN_02390_2880x1921-small-10.jpg +0 -0
  165. data/docs/nasu/keynote/cucumber05.key/Data/mt10@2x-87.jpg +0 -0
  166. data/docs/nasu/keynote/cucumber05.key/Data/mt1@2x-78.jpg +0 -0
  167. data/docs/nasu/keynote/cucumber05.key/Data/mt2@2x-79.jpg +0 -0
  168. data/docs/nasu/keynote/cucumber05.key/Data/mt3@2x-80.jpg +0 -0
  169. data/docs/nasu/keynote/cucumber05.key/Data/mt4@2x-81.jpg +0 -0
  170. data/docs/nasu/keynote/cucumber05.key/Data/mt5@2x-82.jpg +0 -0
  171. data/docs/nasu/keynote/cucumber05.key/Data/mt6@2x-83.jpg +0 -0
  172. data/docs/nasu/keynote/cucumber05.key/Data/mt7@2x-84.jpg +0 -0
  173. data/docs/nasu/keynote/cucumber05.key/Data/mt8@2x-85.jpg +0 -0
  174. data/docs/nasu/keynote/cucumber05.key/Data/mt9@2x-86.jpg +0 -0
  175. data/docs/nasu/keynote/cucumber05.key/Data/pasted-image-89.png +0 -0
  176. data/docs/nasu/keynote/cucumber05.key/Data/pasted-image-small-90.png +0 -0
  177. data/docs/nasu/keynote/cucumber05.key/Data/st0-97.jpg +0 -0
  178. data/docs/nasu/keynote/cucumber05.key/Index.zip +0 -0
  179. data/docs/nasu/keynote/cucumber05.key/Metadata/BuildVersionHistory.plist +8 -0
  180. data/docs/nasu/keynote/cucumber05.key/Metadata/DocumentIdentifier +1 -0
  181. data/docs/nasu/keynote/cucumber05.key/Metadata/Properties.plist +0 -0
  182. data/docs/nasu/keynote/cucumber05.key/preview-micro.jpg +0 -0
  183. data/docs/nasu/keynote/cucumber05.key/preview-web.jpg +0 -0
  184. data/docs/nasu/keynote/cucumber05.key/preview.jpg +0 -0
  185. data/docs/nasu/keynote/my_help_nasu1.key/Data/110809_FamilyChineseOahu_EN_00317_2040x1360-small-12.jpg +0 -0
  186. data/docs/nasu/keynote/my_help_nasu1.key/Data/110809_FamilyChineseOahu_EN_02016_981x654-small-14.jpg +0 -0
  187. data/docs/nasu/keynote/my_help_nasu1.key/Data/110809_FamilyChineseOahu_EN_02390_2880x1921-small-10.jpg +0 -0
  188. data/docs/nasu/keynote/my_help_nasu1.key/Data/mt10@2x-87.jpg +0 -0
  189. data/docs/nasu/keynote/my_help_nasu1.key/Data/mt1@2x-78.jpg +0 -0
  190. data/docs/nasu/keynote/my_help_nasu1.key/Data/mt2@2x-79.jpg +0 -0
  191. data/docs/nasu/keynote/my_help_nasu1.key/Data/mt3@2x-80.jpg +0 -0
  192. data/docs/nasu/keynote/my_help_nasu1.key/Data/mt4@2x-81.jpg +0 -0
  193. data/docs/nasu/keynote/my_help_nasu1.key/Data/mt5@2x-82.jpg +0 -0
  194. data/docs/nasu/keynote/my_help_nasu1.key/Data/mt6@2x-83.jpg +0 -0
  195. data/docs/nasu/keynote/my_help_nasu1.key/Data/mt7@2x-84.jpg +0 -0
  196. data/docs/nasu/keynote/my_help_nasu1.key/Data/mt8@2x-85.jpg +0 -0
  197. data/docs/nasu/keynote/my_help_nasu1.key/Data/mt9@2x-86.jpg +0 -0
  198. data/docs/nasu/keynote/my_help_nasu1.key/Data/st0-299.jpg +0 -0
  199. data/docs/nasu/keynote/my_help_nasu1.key/Index.zip +0 -0
  200. data/docs/nasu/keynote/my_help_nasu1.key/Metadata/BuildVersionHistory.plist +8 -0
  201. data/docs/nasu/keynote/my_help_nasu1.key/Metadata/DocumentIdentifier +1 -0
  202. data/docs/nasu/keynote/my_help_nasu1.key/Metadata/Properties.plist +0 -0
  203. data/docs/nasu/keynote/my_help_nasu1.key/preview-micro.jpg +0 -0
  204. data/docs/nasu/keynote/my_help_nasu1.key/preview-web.jpg +0 -0
  205. data/docs/nasu/keynote/my_help_nasu1.key/preview.jpg +0 -0
  206. data/docs/nasu/keynote/rspec01.key/Data/110809_FamilyChineseOahu_EN_00317_2040x1360-small-12.jpg +0 -0
  207. data/docs/nasu/keynote/rspec01.key/Data/110809_FamilyChineseOahu_EN_02016_981x654-small-14.jpg +0 -0
  208. data/docs/nasu/keynote/rspec01.key/Data/110809_FamilyChineseOahu_EN_02390_2880x1921-small-10.jpg +0 -0
  209. data/docs/nasu/keynote/rspec01.key/Data/mt10@2x-87.jpg +0 -0
  210. data/docs/nasu/keynote/rspec01.key/Data/mt1@2x-78.jpg +0 -0
  211. data/docs/nasu/keynote/rspec01.key/Data/mt2@2x-79.jpg +0 -0
  212. data/docs/nasu/keynote/rspec01.key/Data/mt3@2x-80.jpg +0 -0
  213. data/docs/nasu/keynote/rspec01.key/Data/mt4@2x-81.jpg +0 -0
  214. data/docs/nasu/keynote/rspec01.key/Data/mt5@2x-82.jpg +0 -0
  215. data/docs/nasu/keynote/rspec01.key/Data/mt6@2x-83.jpg +0 -0
  216. data/docs/nasu/keynote/rspec01.key/Data/mt7@2x-84.jpg +0 -0
  217. data/docs/nasu/keynote/rspec01.key/Data/mt8@2x-85.jpg +0 -0
  218. data/docs/nasu/keynote/rspec01.key/Data/mt9@2x-86.jpg +0 -0
  219. data/docs/nasu/keynote/rspec01.key/Data/pasted-image-89.png +0 -0
  220. data/docs/nasu/keynote/rspec01.key/Data/pasted-image-small-90.png +0 -0
  221. data/docs/nasu/keynote/rspec01.key/Data/st0-96.jpg +0 -0
  222. data/docs/nasu/keynote/rspec01.key/Index.zip +0 -0
  223. data/docs/nasu/keynote/rspec01.key/Metadata/BuildVersionHistory.plist +8 -0
  224. data/docs/nasu/keynote/rspec01.key/Metadata/DocumentIdentifier +1 -0
  225. data/docs/nasu/keynote/rspec01.key/Metadata/Properties.plist +0 -0
  226. data/docs/nasu/keynote/rspec01.key/preview-micro.jpg +0 -0
  227. data/docs/nasu/keynote/rspec01.key/preview-web.jpg +0 -0
  228. data/docs/nasu/keynote/rspec01.key/preview.jpg +0 -0
  229. data/docs/nasu/latex_dir/abstract.tex +18 -0
  230. data/{my_help_nasu → docs/nasu}/latex_dir/code.tex +9 -21
  231. data/docs/nasu/latex_dir/discussion.aux +28 -0
  232. data/docs/nasu/latex_dir/discussion.tex +19 -0
  233. data/docs/nasu/latex_dir/features.aux +30 -0
  234. data/docs/nasu/latex_dir/features.tex +186 -0
  235. data/{my_help_nasu → docs/nasu}/latex_dir/head.tex +1 -1
  236. data/{my_help_nasu → docs/nasu}/latex_dir/introduction.aux +3 -3
  237. data/{my_help_nasu → docs/nasu}/latex_dir/introduction.tex +15 -16
  238. data/{my_help_nasu → docs/nasu}/latex_dir/jlisting.sty +0 -0
  239. data/{my_help_nasu/latex_dir/consideration.aux → docs/nasu/latex_dir/method.aux} +7 -8
  240. data/docs/nasu/latex_dir/method.tex +6 -0
  241. data/{my_help_nasu → docs/nasu}/latex_dir/method_bdd.aux +10 -7
  242. data/{my_help_nasu → docs/nasu}/latex_dir/method_bdd.tex +14 -5
  243. data/{my_help_nasu → docs/nasu}/latex_dir/method_cucumber.aux +10 -9
  244. data/{my_help_nasu → docs/nasu}/latex_dir/method_cucumber.tex +15 -18
  245. data/{my_help_nasu → docs/nasu}/latex_dir/method_usage.aux +11 -11
  246. data/{my_help_nasu → docs/nasu}/latex_dir/method_usage.tex +35 -29
  247. data/{my_help_nasu → docs/nasu}/latex_dir/my_help_nasu.aux +6 -5
  248. data/docs/nasu/latex_dir/my_help_nasu.log +363 -0
  249. data/docs/nasu/latex_dir/my_help_nasu.pdf +0 -0
  250. data/docs/nasu/latex_dir/my_help_nasu.synctex.gz +0 -0
  251. data/{my_help_nasu → docs/nasu}/latex_dir/my_help_nasu.tex +12 -18
  252. data/docs/nasu/latex_dir/my_help_nasu.toc +35 -0
  253. data/docs/nasu/latex_dir/new_code.aux +44 -0
  254. data/docs/nasu/latex_dir/new_code.tex +237 -0
  255. data/{my_help_nasu → docs/nasu}/latex_dir/overview.aux +2 -2
  256. data/{my_help_nasu/latex_dir → docs/nasu}/latex_dir/pre.tex +0 -0
  257. data/docs/nasu/method.hiki +5 -0
  258. data/{my_help_nasu → docs/nasu}/method_bdd.hiki +14 -8
  259. data/{my_help_nasu → docs/nasu}/method_cucumber.hiki +14 -17
  260. data/{my_help_nasu → docs/nasu}/method_usage.hiki +25 -24
  261. data/docs/nasu/my_help_nasu/my_help_nasu.001.bb +5 -0
  262. data/{my_help_nasu → docs/nasu}/my_help_nasu/my_help_nasu.001.jpeg +0 -0
  263. data/docs/nasu/my_help_nasu/my_help_nasu.002.bb +5 -0
  264. data/docs/nasu/my_help_nasu/my_help_nasu.002.jpeg +0 -0
  265. data/docs/nasu/my_help_nasu/my_help_nasu.003.bb +5 -0
  266. data/docs/nasu/my_help_nasu/my_help_nasu.003.jpeg +0 -0
  267. data/docs/nasu/my_help_nasu/my_help_nasu.004.bb +5 -0
  268. data/docs/nasu/my_help_nasu/my_help_nasu.004.jpeg +0 -0
  269. data/docs/nasu/my_help_nasu/my_help_nasu.005.bb +5 -0
  270. data/docs/nasu/my_help_nasu/my_help_nasu.005.jpeg +0 -0
  271. data/docs/nasu/my_help_nasu/my_help_nasu.006.bb +5 -0
  272. data/docs/nasu/my_help_nasu/my_help_nasu.006.jpeg +0 -0
  273. data/docs/nasu/my_help_nasu/my_help_nasu.007.bb +5 -0
  274. data/docs/nasu/my_help_nasu/my_help_nasu.007.jpeg +0 -0
  275. data/docs/nasu/my_help_nasu/my_help_nasu.008.bb +5 -0
  276. data/docs/nasu/my_help_nasu/my_help_nasu.008.jpeg +0 -0
  277. data/docs/nasu/my_help_nasu.hiki +28 -0
  278. data/docs/nasu/my_help_nasu.key +0 -0
  279. data/docs/nasu/my_help_nasu09.key +0 -0
  280. data/docs/nasu/my_help_nasu1/my_help_nasu1.001.jpg +0 -0
  281. data/docs/nasu/nasu_abst/abst_fig.bb +5 -0
  282. data/docs/nasu/nasu_abst/abst_fig.png +0 -0
  283. data/docs/nasu/nasu_abst/my_help_nasu.001.bb +5 -0
  284. data/docs/nasu/nasu_abst/my_help_nasu.001.jpg +0 -0
  285. data/docs/nasu/nasu_abst/my_help_nasu.001.png +0 -0
  286. data/docs/nasu/nasu_abst/nasu_abst.aux +10 -0
  287. data/docs/nasu/nasu_abst/nasu_abst.log +179 -0
  288. data/docs/nasu/nasu_abst/nasu_abst.pdf +0 -0
  289. data/docs/nasu/nasu_abst/nasu_abst.synctex.gz +0 -0
  290. data/docs/nasu/nasu_abst/nasu_abst.tex +63 -0
  291. data/docs/nasu/new_code.hiki +246 -0
  292. data/docs/nasu/spec/.rspec +2 -0
  293. data/docs/nasu/spec/my_help_spec.rb +75 -0
  294. data/docs/nasu/spec/my_todo/todo_spec.rb +15 -0
  295. data/docs/nasu/spec/spec_helper.rb +11 -0
  296. data/docs/nasu/spec/support/aruba.rb +1 -0
  297. data/docs/nasu/spec/thor_spec.rb +81 -0
  298. data/docs/nasu/test/my_help_test.rb +11 -0
  299. data/docs/nasu/test/test_helper.rb +4 -0
  300. data/{hikis → docs}/tmp.org +0 -0
  301. data/docs/yagi/bachelor_thesis/final/figs/opt_thor.jpeg +0 -0
  302. data/docs/yagi/bachelor_thesis/final/handout/handout.aux +14 -0
  303. data/{my_help_nasu/latex_dir/my_help_nasu.log → docs/yagi/bachelor_thesis/final/handout/handout.log} +46 -175
  304. data/docs/yagi/bachelor_thesis/final/handout/handout.pdf +0 -0
  305. data/docs/yagi/bachelor_thesis/final/handout/handout.synctex.gz +0 -0
  306. data/docs/yagi/bachelor_thesis/final/handout/handout.tex +123 -0
  307. data/docs/yagi/bachelor_thesis/final/mk_latex/thesis/thesis.aux +46 -0
  308. data/docs/yagi/bachelor_thesis/final/mk_latex/thesis/thesis.dvi +0 -0
  309. data/{lor → docs/yagi/bachelor_thesis/final/mk_latex/thesis/thesis.lof} +0 -0
  310. data/docs/yagi/bachelor_thesis/final/mk_latex/thesis/thesis.lot +0 -0
  311. data/docs/yagi/bachelor_thesis/final/mk_latex/thesis/thesis.synctex.gz +0 -0
  312. data/docs/yagi/bachelor_thesis/final/mk_latex/thesis/thesis.toc +0 -0
  313. data/docs/yagi/bachelor_thesis/final/thesis/figs/opt_thor.png +0 -0
  314. data/docs/yagi/bachelor_thesis/final/thesis/final_thesis.ipynb +449 -0
  315. data/docs/yagi/bachelor_thesis/final/thesis/mk_latex/latex/final_thesis.tex +718 -0
  316. data/docs/yagi/bachelor_thesis/final/thesis/mk_latex/split_files/chapter1/chapter1.tex +8 -0
  317. data/docs/yagi/bachelor_thesis/final/thesis/mk_latex/split_files/chapter2/chapter2.log +28 -0
  318. data/docs/yagi/bachelor_thesis/final/thesis/mk_latex/split_files/chapter2/chapter2.tex +127 -0
  319. data/{my_help_nasu/latex_dir/method_cucumber.log → docs/yagi/bachelor_thesis/final/thesis/mk_latex/split_files/chapter3/chapter3.log} +11 -11
  320. data/docs/yagi/bachelor_thesis/final/thesis/mk_latex/split_files/chapter3/chapter3.tex +328 -0
  321. data/docs/yagi/bachelor_thesis/final/thesis/mk_latex/split_files/chapter4/chapter4.tex +13 -0
  322. data/docs/yagi/bachelor_thesis/final/thesis/mk_latex/split_files/chapter5/chapter5.tex +5 -0
  323. data/docs/yagi/bachelor_thesis/final/thesis/mk_latex/split_files/chapter6/chapter6.log +38 -0
  324. data/docs/yagi/bachelor_thesis/final/thesis/mk_latex/split_files/chapter6/chapter6.tex +28 -0
  325. data/docs/yagi/bachelor_thesis/final/thesis/mk_latex/split_files/informations/informations.aux +1 -0
  326. data/docs/yagi/bachelor_thesis/final/thesis/mk_latex/split_files/informations/informations.log +55 -0
  327. data/docs/yagi/bachelor_thesis/final/thesis/mk_latex/split_files/informations/informations.tex +6 -0
  328. data/docs/yagi/bachelor_thesis/final/thesis/mk_latex/split_files/tmp/tmp.tex +1 -0
  329. data/docs/yagi/bachelor_thesis/final/thesis/mk_latex/thesis/.splits_location.tex +6 -0
  330. data/docs/yagi/bachelor_thesis/final/thesis/mk_latex/thesis/thesis.aux +114 -0
  331. data/docs/yagi/bachelor_thesis/final/thesis/mk_latex/thesis/thesis.lof +4 -0
  332. data/docs/yagi/bachelor_thesis/final/thesis/mk_latex/thesis/thesis.log +699 -0
  333. data/docs/yagi/bachelor_thesis/final/thesis/mk_latex/thesis/thesis.lot +5 -0
  334. data/docs/yagi/bachelor_thesis/final/thesis/mk_latex/thesis/thesis.out.ps +98 -0
  335. data/docs/yagi/bachelor_thesis/final/thesis/mk_latex/thesis/thesis.pdf +0 -0
  336. data/docs/yagi/bachelor_thesis/final/thesis/mk_latex/thesis/thesis.synctex.gz +0 -0
  337. data/docs/yagi/bachelor_thesis/final/thesis/mk_latex/thesis/thesis.tex +30 -0
  338. data/docs/yagi/bachelor_thesis/final/thesis/mk_latex/thesis/thesis.toc +22 -0
  339. data/docs/yagi/bachelor_thesis/final/thesis/mk_latex/thesis/thesis_checked_180213_1433.pdf +0 -0
  340. data/docs/yagi/bachelor_thesis/final/thesis/mk_latex/thesis_pieces/form00_style.tex +25 -0
  341. data/docs/yagi/bachelor_thesis/final/thesis/mk_latex/thesis_pieces/tightlist_setting.tex +2 -0
  342. data/docs/yagi/bachelor_thesis/final/thesis/mk_latex/thesis_pieces/usepackage.tex +25 -0
  343. data/docs/yagi/bachelor_thesis/translation/awesome_chapter2.ipynb +84 -0
  344. data/docs/yagi/bachelor_thesis/translation/awesome_introduction.ipynb +328 -0
  345. data/docs/yagi/comparisons/.ipynb_checkpoints/Untitled-checkpoint.ipynb +6 -0
  346. data/docs/yagi/comparisons/.ipynb_checkpoints/comp-checkpoint.ipynb +230 -0
  347. data/docs/yagi/comparisons/comp.ipynb +178 -0
  348. data/docs/yagi/comparisons/hanami.rb +25 -0
  349. data/docs/yagi/comparisons/optparse.rb +21 -0
  350. data/docs/yagi/comparisons/thor.rb +11 -0
  351. data/docs/yagi/midterm_presentation/.ipynb_checkpoints/abst-checkpoint.ipynb +87 -0
  352. data/docs/yagi/midterm_presentation/abst.aux +16 -0
  353. data/docs/yagi/midterm_presentation/abst.ipynb +87 -0
  354. data/docs/yagi/midterm_presentation/abst.log +222 -0
  355. data/docs/yagi/midterm_presentation/abst.pdf +0 -0
  356. data/docs/yagi/midterm_presentation/abst.synctex.gz +0 -0
  357. data/docs/yagi/midterm_presentation/abst.tex +133 -0
  358. data/{my_help_nasu/latex_dir/jlisting.tex → docs/yagi/midterm_presentation/jlisting.sty} +0 -0
  359. data/docs/yagi/midterm_presentation/mid_keynote/mid_keynote.001.png +0 -0
  360. data/docs/yagi/midterm_presentation/mid_keynote/mid_keynote.002.png +0 -0
  361. data/docs/yagi/midterm_presentation/mid_keynote/mid_keynote.003.png +0 -0
  362. data/docs/yagi/midterm_presentation/mid_keynote/mid_keynote.004.png +0 -0
  363. data/docs/yagi/midterm_presentation/mid_keynote/mid_keynote.005.png +0 -0
  364. data/docs/yagi/midterm_presentation/mid_keynote.key/Data/110809_FamilyChineseOahu_EN_00317_2040x1360-small-12.jpg +0 -0
  365. data/docs/yagi/midterm_presentation/mid_keynote.key/Data/110809_FamilyChineseOahu_EN_02016_981x654-small-14.jpg +0 -0
  366. data/docs/yagi/midterm_presentation/mid_keynote.key/Data/110809_FamilyChineseOahu_EN_02390_2880x1921-small-10.jpg +0 -0
  367. data/docs/yagi/midterm_presentation/mid_keynote.key/Data/mt10@2x-92.jpg +0 -0
  368. data/docs/yagi/midterm_presentation/mid_keynote.key/Data/mt1@2x-83.jpg +0 -0
  369. data/docs/yagi/midterm_presentation/mid_keynote.key/Data/mt2@2x-84.jpg +0 -0
  370. data/docs/yagi/midterm_presentation/mid_keynote.key/Data/mt3@2x-85.jpg +0 -0
  371. data/docs/yagi/midterm_presentation/mid_keynote.key/Data/mt4@2x-86.jpg +0 -0
  372. data/docs/yagi/midterm_presentation/mid_keynote.key/Data/mt5@2x-87.jpg +0 -0
  373. data/docs/yagi/midterm_presentation/mid_keynote.key/Data/mt6@2x-88.jpg +0 -0
  374. data/docs/yagi/midterm_presentation/mid_keynote.key/Data/mt7@2x-89.jpg +0 -0
  375. data/docs/yagi/midterm_presentation/mid_keynote.key/Data/mt8@2x-90.jpg +0 -0
  376. data/docs/yagi/midterm_presentation/mid_keynote.key/Data/mt9@2x-91.jpg +0 -0
  377. data/docs/yagi/midterm_presentation/mid_keynote.key/Data/st0-438.jpg +0 -0
  378. data/docs/yagi/midterm_presentation/mid_keynote.key/Data/st1-598.jpg +0 -0
  379. data/docs/yagi/midterm_presentation/mid_keynote.key/Data/st2-648.jpg +0 -0
  380. data/docs/yagi/midterm_presentation/mid_keynote.key/Data/st3-652.jpg +0 -0
  381. data/docs/yagi/midterm_presentation/mid_keynote.key/Data/st4-671.jpg +0 -0
  382. data/docs/yagi/midterm_presentation/mid_keynote.key/Index.zip +0 -0
  383. data/docs/yagi/midterm_presentation/mid_keynote.key/Metadata/BuildVersionHistory.plist +8 -0
  384. data/docs/yagi/midterm_presentation/mid_keynote.key/Metadata/DocumentIdentifier +1 -0
  385. data/docs/yagi/midterm_presentation/mid_keynote.key/Metadata/Properties.plist +0 -0
  386. data/docs/yagi/midterm_presentation/mid_keynote.key/preview-micro.jpg +0 -0
  387. data/docs/yagi/midterm_presentation/mid_keynote.key/preview-web.jpg +0 -0
  388. data/docs/yagi/midterm_presentation/mid_keynote.key/preview.jpg +0 -0
  389. data/docs/yagi/thor_spec.ipynb +192 -0
  390. data/docs/yagi/thor_task.ipynb +98 -0
  391. data/exe/my_help +3 -1
  392. data/lib/my_help/org2yml.rb +46 -0
  393. data/lib/my_help/version.rb +1 -1
  394. data/lib/my_help/yml2org.rb +36 -0
  395. data/lib/my_help.rb +76 -30
  396. data/lib/my_help_thor.rb +170 -0
  397. data/lib/my_todo/my_todo.rb +5 -2
  398. data/lib/specific_help.rb +52 -25
  399. data/lib/{specific_help.rb~ → specific_help_bu.rb} +129 -89
  400. data/lib/specific_help_opt.rb +71 -0
  401. data/lib/specific_help_thor.rb +172 -0
  402. data/lib/templates/emacs_help.org +47 -0
  403. data/lib/templates/emacs_help_e.org +49 -0
  404. data/lib/templates/my_todo.org +11 -0
  405. data/lib/templates/template_help.org +8 -0
  406. data/make_docker.sh +5 -0
  407. data/my_help.gemspec +3 -2
  408. metadata +406 -92
  409. data/.DS_Store +0 -0
  410. data/CODE_OF_CONDUCT.md +0 -49
  411. data/README_en.md +0 -132
  412. data/exe/e_h +0 -4
  413. data/exe/emacs_help +0 -4
  414. data/exe/my_todo +0 -4
  415. data/hikis/README_en.hiki +0 -130
  416. data/hikis/README_ja.hiki +0 -316
  417. data/hikis/diff_against_org-mode.hiki +0 -34
  418. data/hikis/emacs_help.hiki +0 -47
  419. data/hikis/template_help.hiki +0 -51
  420. data/latexes/handout_pre.tex +0 -11
  421. data/lib/.emacs_help.rb.swp +0 -0
  422. data/lib/daddygongon/emacs_help.yml +0 -89
  423. data/lib/daddygongon/my_todo.yml +0 -31
  424. data/lib/daddygongon/template_help.yml +0 -33
  425. data/lib/emacs_help.rb~ +0 -137
  426. data/lib/my_todo/my_todo.rb~ +0 -7
  427. data/lib/todo.rb~ +0 -1
  428. data/my_help.wiki/Home.md +0 -330
  429. data/my_help.wiki/README_en.md +0 -132
  430. data/my_help.wiki/README_ja.md +0 -330
  431. data/my_help.wiki/emacs_help.md +0 -46
  432. data/my_help.wiki/template_help.md +0 -51
  433. data/my_help_nasu/.DS_Store +0 -0
  434. data/my_help_nasu/consideration.hiki +0 -8
  435. data/my_help_nasu/figs/my_help_nasu.001.jpeg +0 -0
  436. data/my_help_nasu/figs/my_help_nasu.001.jpg +0 -0
  437. data/my_help_nasu/figs/my_help_nasu1.001.jpg +0 -0
  438. data/my_help_nasu/latex_dir/.gitignore +0 -1
  439. data/my_help_nasu/latex_dir/Rakefile +0 -420
  440. data/my_help_nasu/latex_dir/code.aux +0 -25
  441. data/my_help_nasu/latex_dir/consideration.tex +0 -9
  442. data/my_help_nasu/latex_dir/features.aux +0 -31
  443. data/my_help_nasu/latex_dir/features.tex +0 -173
  444. data/my_help_nasu/latex_dir/hiki_help.yml +0 -53
  445. data/my_help_nasu/latex_dir/latex_dir/head.tex +0 -9
  446. data/my_help_nasu/latex_dir/latex_dir/jlisting.tex +0 -216
  447. data/my_help_nasu/latex_dir/my_help_nasu.pdf +0 -0
  448. data/my_help_nasu/latex_dir/my_help_nasu.synctex.gz +0 -0
  449. data/my_help_nasu/latex_dir/my_help_nasu.toc +0 -32
  450. data/my_help_nasu/latex_dir/overview.tex +0 -12
  451. data/my_help_nasu/latex_dir/pre.tex +0 -36
  452. data/my_help_nasu/my_help_nasu/.DS_Store +0 -0
  453. data/my_help_nasu/my_help_nasu.hiki +0 -32
  454. data/my_help_nasu/my_help_nasu.key +0 -0
  455. data/my_help_nasu/overview.hiki +0 -11
@@ -0,0 +1,179 @@
1
+ This is e-pTeX, Version 3.14159265-p3.7-160201-2.6 (utf8.euc) (TeX Live 2016) (preloaded format=platex 2017.1.26) 16 FEB 2017 11:32
2
+ entering extended mode
3
+ restricted \write18 enabled.
4
+ file:line:error style messages enabled.
5
+ %&-line parsing enabled.
6
+ **nasu_abst.tex
7
+ (./nasu_abst.tex
8
+ pLaTeX2e <2016/11/29> (based on LaTeX2e <2017/01/01>)
9
+ Babel <3.9r> and hyphenation patterns for 83 language(s) loaded.
10
+ (/usr/local/texlive/2016/texmf-dist/tex/platex/jsclasses/jsarticle.cls
11
+ Document Class: jsarticle 2017/01/13 okumura, texjporg
12
+ \jsc@mpt=\dimen118
13
+ \jsc@mmm=\dimen119
14
+ \jsc@smallskipamount=\skip41
15
+ LaTeX Info: Redefining \rmfamily on input line 468.
16
+ LaTeX Info: Redefining \sffamily on input line 471.
17
+ LaTeX Info: Redefining \ttfamily on input line 474.
18
+ LaTeX Info: Redefining \textmc on input line 477.
19
+ LaTeX Info: Redefining \textgt on input line 479.
20
+ \symmincho=\mathgroup4
21
+ LaTeX Font Info: Overwriting symbol font `mincho' in version `bold'
22
+ (Font) JY1/mc/m/n --> JY1/gt/m/n on input line 540.
23
+ LaTeX Font Info: Font shape `JT1/mc/m/n' will be
24
+ (Font) scaled to size 9.60999pt on input line 731.
25
+ LaTeX Font Info: Font shape `JY1/mc/m/n' will be
26
+ (Font) scaled to size 9.60999pt on input line 731.
27
+ \fullwidth=\dimen120
28
+ LaTeX Font Info: Font shape `JT1/mc/m/n' will be
29
+ (Font) scaled to size 7.68799pt on input line 883.
30
+ LaTeX Font Info: Font shape `JY1/mc/m/n' will be
31
+ (Font) scaled to size 7.68799pt on input line 883.
32
+ \c@part=\count82
33
+ \c@section=\count83
34
+ \c@subsection=\count84
35
+ \c@subsubsection=\count85
36
+ \c@paragraph=\count86
37
+ \c@subparagraph=\count87
38
+ \@abstractbox=\box41
39
+ \c@figure=\count88
40
+ \c@table=\count89
41
+ \abovecaptionskip=\skip42
42
+ \belowcaptionskip=\skip43
43
+ \jsc@tocl@width=\dimen121
44
+ \@lnumwidth=\dimen122
45
+ \bibindent=\dimen123
46
+ (/usr/local/texlive/2016/texmf-dist/tex/platex/jsclasses/jslogo.sty
47
+ Package: jslogo 2016/07/14 okumura, texjporg
48
+ LaTeX Info: Redefining \TeX on input line 94.
49
+ LaTeX Info: Redefining \LaTeX on input line 147.
50
+ LaTeX Info: Redefining \LaTeXe on input line 200.
51
+ )
52
+ \heisei=\count90
53
+ )
54
+ (/usr/local/texlive/2016/texmf-dist/tex/latex/graphics/graphicx.sty
55
+ Package: graphicx 2014/10/28 v1.0g Enhanced LaTeX Graphics (DPC,SPQR)
56
+
57
+ (/usr/local/texlive/2016/texmf-dist/tex/latex/graphics/keyval.sty
58
+ Package: keyval 2014/10/28 v1.15 key=value parser (DPC)
59
+ \KV@toks@=\toks15
60
+ )
61
+ (/usr/local/texlive/2016/texmf-dist/tex/latex/graphics/graphics.sty
62
+ Package: graphics 2016/10/09 v1.0u Standard LaTeX Graphics (DPC,SPQR)
63
+
64
+ (/usr/local/texlive/2016/texmf-dist/tex/latex/graphics/trig.sty
65
+ Package: trig 2016/01/03 v1.10 sin cos tan (DPC)
66
+ )
67
+ (/usr/local/texlive/2016/texmf-dist/tex/latex/graphics-cfg/graphics.cfg
68
+ File: graphics.cfg 2016/06/04 v1.11 sample graphics configuration
69
+ )
70
+ Package graphics Info: Driver file: dvipdfmx.def on input line 99.
71
+
72
+ (/usr/local/texlive/2016/texmf-dist/tex/latex/graphics-def/dvipdfmx.def
73
+ File: dvipdfmx.def 2016/07/11 v4.12 LaTeX color/graphics driver for dvipdfmx (L
74
+ 3/ChoF)
75
+ ))
76
+ \Gin@req@height=\dimen124
77
+ \Gin@req@width=\dimen125
78
+ )
79
+ (/usr/local/texlive/2016/texmf-dist/tex/latex/listings/listings.sty
80
+ \lst@mode=\count91
81
+ \lst@gtempboxa=\box42
82
+ \lst@token=\toks16
83
+ \lst@length=\count92
84
+ \lst@currlwidth=\dimen126
85
+ \lst@column=\count93
86
+ \lst@pos=\count94
87
+ \lst@lostspace=\dimen127
88
+ \lst@width=\dimen128
89
+ \lst@newlines=\count95
90
+ \lst@lineno=\count96
91
+ \lst@maxwidth=\dimen129
92
+
93
+ (/usr/local/texlive/2016/texmf-dist/tex/latex/listings/lstmisc.sty
94
+ File: lstmisc.sty 2015/06/04 1.6 (Carsten Heinz)
95
+ \c@lstnumber=\count97
96
+ \lst@skipnumbers=\count98
97
+ \lst@framebox=\box43
98
+ )
99
+ (/usr/local/texlive/2016/texmf-dist/tex/latex/listings/listings.cfg
100
+ File: listings.cfg 2015/06/04 1.6 listings configuration
101
+ ))
102
+ Package: listings 2015/06/04 1.6 (Carsten Heinz)
103
+
104
+ (./nasu_abst.aux)
105
+ \openout1 = `nasu_abst.aux'.
106
+
107
+ LaTeX Font Info: Checking defaults for OML/cmm/m/it on input line 12.
108
+ LaTeX Font Info: ... okay on input line 12.
109
+ LaTeX Font Info: Checking defaults for T1/cmr/m/n on input line 12.
110
+ LaTeX Font Info: ... okay on input line 12.
111
+ LaTeX Font Info: Checking defaults for OT1/cmr/m/n on input line 12.
112
+ LaTeX Font Info: ... okay on input line 12.
113
+ LaTeX Font Info: Checking defaults for OMS/cmsy/m/n on input line 12.
114
+ LaTeX Font Info: ... okay on input line 12.
115
+ LaTeX Font Info: Checking defaults for OMX/cmex/m/n on input line 12.
116
+ LaTeX Font Info: ... okay on input line 12.
117
+ LaTeX Font Info: Checking defaults for U/cmr/m/n on input line 12.
118
+ LaTeX Font Info: ... okay on input line 12.
119
+ LaTeX Font Info: Checking defaults for JY1/mc/m/n on input line 12.
120
+ LaTeX Font Info: ... okay on input line 12.
121
+ LaTeX Font Info: Checking defaults for JT1/mc/m/n on input line 12.
122
+ LaTeX Font Info: ... okay on input line 12.
123
+ \c@lstlisting=\count99
124
+ LaTeX Font Info: Font shape `JT1/mc/m/n' will be
125
+ (Font) scaled to size 16.60605pt on input line 16.
126
+ LaTeX Font Info: Font shape `JY1/mc/m/n' will be
127
+ (Font) scaled to size 16.60605pt on input line 16.
128
+ LaTeX Font Info: Font shape `JT1/mc/m/n' will be
129
+ (Font) scaled to size 11.53198pt on input line 16.
130
+ LaTeX Font Info: Font shape `JY1/mc/m/n' will be
131
+ (Font) scaled to size 11.53198pt on input line 16.
132
+ LaTeX Font Info: External font `cmex10' loaded for size
133
+ (Font) <12> on input line 16.
134
+ LaTeX Font Info: External font `cmex10' loaded for size
135
+ (Font) <8> on input line 16.
136
+ LaTeX Font Info: External font `cmex10' loaded for size
137
+ (Font) <6> on input line 16.
138
+ LaTeX Font Info: Font shape `JY1/mc/m/n' will be
139
+ (Font) scaled to size 5.76599pt on input line 16.
140
+ LaTeX Font Info: Font shape `JT1/gt/m/n' will be
141
+ (Font) scaled to size 11.53198pt on input line 18.
142
+ LaTeX Font Info: Font shape `JY1/gt/m/n' will be
143
+ (Font) scaled to size 11.53198pt on input line 18.
144
+ LaTeX Font Info: Font shape `JT1/gt/m/n' will be
145
+ (Font) scaled to size 9.60999pt on input line 25.
146
+ LaTeX Font Info: Font shape `JY1/gt/m/n' will be
147
+ (Font) scaled to size 9.60999pt on input line 25.
148
+ File: abst_fig.png Graphic file (type bmp)
149
+ <abst_fig.png>
150
+ LaTeX Font Info: Font shape `JT1/mc/m/n' will be
151
+ (Font) scaled to size 8.64899pt on input line 33.
152
+ LaTeX Font Info: Font shape `JY1/mc/m/n' will be
153
+ (Font) scaled to size 8.64899pt on input line 33.
154
+
155
+ Underfull \vbox (badness 10000) has occurred while \output is active []
156
+
157
+ LaTeX Font Info: Font shape `JT1/mc/m/it' in size <10> not available
158
+ (Font) Font shape `JT1/mc/m/n' tried instead on input line 61.
159
+ LaTeX Font Info: Font shape `JT1/mc/m/n' will be
160
+ (Font) scaled to size 9.60999pt on input line 61.
161
+ LaTeX Font Info: Font shape `JY1/mc/m/it' in size <10> not available
162
+ (Font) Font shape `JY1/mc/m/n' tried instead on input line 61.
163
+ LaTeX Font Info: Font shape `JY1/mc/m/n' will be
164
+ (Font) scaled to size 9.60999pt on input line 61.
165
+ [1
166
+
167
+
168
+ ]
169
+ (./nasu_abst.aux) )
170
+ Here is how much of TeX's memory you used:
171
+ 2015 strings out of 493683
172
+ 27305 string characters out of 6149653
173
+ 93733 words of memory out of 5000000
174
+ 5615 multiletter control sequences out of 15000+600000
175
+ 13862 words of font info for 60 fonts, out of 8000000 for 9000
176
+ 934 hyphenation exceptions out of 8191
177
+ 26i,7n,32p,679b,325s stack positions out of 5000i,500n,10000p,200000b,80000s
178
+
179
+ Output written on nasu_abst.dvi (1 page, 7808 bytes).
Binary file
@@ -0,0 +1,63 @@
1
+ \documentclass[10pt,a4j,twocolumn]{jsarticle}
2
+
3
+ \usepackage[dvipdfmx]{graphicx}
4
+ \usepackage{listings}
5
+ \setlength{\textheight}{275mm}
6
+ \headheight 5mm
7
+ \topmargin -30mm
8
+ \textwidth 185mm
9
+ \oddsidemargin -15mm
10
+ \evensidemargin -15mm
11
+ \pagestyle{empty}
12
+ \begin{document}
13
+ \title{ユーザメモソフトmy\_helpのビヘイビアテスト開発}
14
+ \author{関西学院大学 情報科学科 西谷研究室 2535 那須比呂貴}
15
+ \date{}
16
+ \maketitle
17
+
18
+ \section{目的}
19
+ \vspace{-0.5em}
20
+ プログラム開発では,統合開発環境がいくつも用意されているが,多くの現場では,terminal上での開発が一般的である.ところが,プログラミング初心者はterminal上でのcharacter user interface(CUI)を苦手としている.この不可欠なCUIスキルの習得を助けるソフトとして,ユーザメモソフトmy\_helpがruby gemsに置かれている.しかし,Ruby gemsとして提供されているこのソフトは,テストが用意されていない.今後ソフトを共同開発を進めていくには,仕様や動作の標準となるテスト記述が不可欠である.本研究の目的は,ユーザメモソフトであるmy\_helpのテストをBDDを用いて開発することである.
21
+
22
+ \section{方法}
23
+ \vspace{-0.5em}
24
+ \paragraph{BDD}
25
+ ビヘイビア駆動開発(Behaviour-Driven Development : BDD)は,テスト駆動開発(Test-Driven Development : TDD)の工程への理解を深め,それをうまく説明しようとして始まった.TDDの持つ単語のイメージが構造のテストを中心とすべしというのに対して,BDDはソフトの振る舞いに中心をおくという意図がある.この違いが,初めに考えるべきテストの性質を変化させ,構造ではなく振る舞いを中心にテストを構築するという意識をもたせてくれる.さらに,実世界における開発チームやテストチーム,あるいはドキュメントチーム間のコミュニケーションの取り方を,システムで提供するのがBDDのフレームワークであり,CucumberとRSpecはこれを実現する一つのシステムとして提供されている\cite{RSpecBook}.
26
+
27
+ \paragraph{CucumberとRSpec}
28
+ 図1はRSpecとCucumberの関係図である.BDDの流れとして,まずCucumberで一つのシナリオに焦点を当てて,その振る舞いを記述するfeatureを書く.一つのfeatureが書けたら、次に,それぞれfeatureを実現するステップに分けて仕様を決める.これはTDDのred green refactoringの前に行う作業,「仕様を決める」に対応している.このプロセスが終了したら,RSpecに進む.
29
+ RSpecでは実際にテストコードを書き,ここでもred, green, refactoringをおこない,RSpecが成功したら,Cucumberのrefactoringをおこなう.
30
+ \begin{figure}
31
+ \begin{center}
32
+ \includegraphics[width=5cm, bb=0 0 394 443]{abst_fig.png}
33
+ \caption{RSpecとCucumberのRed-Green-Refactoringサイクル間の関係.}
34
+ \end{center}
35
+ \vspace{-3em}
36
+ \end{figure}
37
+
38
+ \section{ビヘイビアテスト駆動開発の実践}
39
+ CucumberとRSpecを用いてBDDでmy\_helpのテスト開発を進めていった.
40
+ ここでは,焦点を合わせたmy\_helpの中での一つの振る舞いである「todoの更新」を例として詳しく見ていく.
41
+ \begin{description}
42
+ \item[cucumber]
43
+ \begin{enumerate}
44
+ \item まず,「todoの更新」のシナリオをfeatureで記述.
45
+ \item cucumberを実行するとステップの元なるコードブロックが自動生成されるので,それをコピー\&ペーストしてステップを記述.
46
+ \item ここではあれば良いなと思うコードを記述し,もう一度cucumberを実行.
47
+ \end{enumerate}
48
+ \item[rspec]
49
+ \item ここでは,エラーが出るはずで,そのシナリオに焦点をあて,RSpecに移行してテストコードを記述.
50
+ \item[cucumber] RSpecが成功したら,もう一度Cucumberに戻り,redをgreenに.
51
+ \end{description}
52
+ このようにして,BDDのコンセプトに従って,my\_helpの仕様や動作の標準を確定していった.
53
+
54
+ \section{まとめ}
55
+ \vspace{-0.5em}
56
+ my\_helpのテスト記述の進展に伴って,仕様や動作の標準が確定した.
57
+ my\_helpは今後も開発者,ならびに多くのユーザの使用を通じて,どのように進化させれば便利なのかが徐々にわかってくる.つまり,ビヘイビアの記述により,今後my\_helpを進化させるための共同開発が円滑に進める手助けになる.
58
+ さらに,my\_helpの使用方法が明確になったことで,本研究で作成したmy\_helpのfeaturesを読めば初心者でもmy\_helpの振る舞いが容易に理解できるようになった.
59
+
60
+ \begin{thebibliography}{99}
61
+ \bibitem{RSpecBook} "The RSpec Book", David Chelimsky {\it et al.}, (翔泳社, 2012).
62
+ \end{thebibliography}
63
+ \end{document}
@@ -0,0 +1,246 @@
1
+ {{toc}}
2
+ !ビヘイビア駆動開発の実践
3
+
4
+ CucumberとRSpecを用いてBDDでmy_helpのテスト開発を進めていきました.
5
+ // アプリの振る舞いを説明する
6
+ // なぜ自分が作ったかを納得してもらえないから.
7
+ // 自分の作業の目的の意義を説明するために,全体の概要を説明することは妥当
8
+ // 先行研究->先行開発,ソフト開発==研究,why!!
9
+ ビヘイビア駆動開発のコツとして「焦点を合わせる」ことが強調されています.
10
+ ここでは,焦点を合わせたmy_helpの中での一つの振る舞いである
11
+ 「todoの更新」を例として詳しく見ていきます.
12
+
13
+ !!todoの更新マニュアル
14
+ 最初に,todoを更新するときの手順を示します.
15
+
16
+ #my_todo --editを入力して~/.my_help/my_todo.ymlを開く
17
+ #editorでtodoを書き込む(今週やることならweeklyというitemを作ってそこに書き込む)
18
+ #保存して~/.my_help/my_todo.ymlを閉じる
19
+ //#my_todoと打ち込んで更新されていたら完成
20
+ //#my_todo --store [item]を入力してitemのバックアップをとる
21
+
22
+ この振る舞いがきちんとできているのかをBDDでテストを書いていきます.
23
+
24
+ !!Cucumber
25
+
26
+ 以下はtodoの更新を行うときのfeatureです.
27
+ まず,適当なディレクトリにfeaturesというディレクトリを作成します.
28
+ 次に先ほど作成した,featuresディレクトリにmy_todo.featureを作成します.
29
+ <<< tcsh
30
+ # language: ja
31
+
32
+ 機能: todoの更新を行う
33
+ 自分のするべきことを書き込むためにtodoを更新する
34
+
35
+ シナリオ: コマンドを入力してtodoを更新していく
36
+ 前提 todoを編集したい
37
+ もし "my_todo --edit"と入力する
38
+ ならば editが開かれる
39
+ かつ 自分のtodoを書き込む
40
+ >>>
41
+
42
+ 機能とは,このシステムの機能のことを記述します.ここでは,todoを更新するシステムですので,「todoの更新を行う」です.
43
+ 機能の下には,機能の補足説明を記述します.機能の補足説明では,ルールがないので自分がわかりやすいように,記述するのが常識です.
44
+ シナリオは,その名の通りtodoを更新する時のユーザの行動やシステム振る舞いを前提,もし,ならば,かつ,しかしに分類して記述します.
45
+
46
+
47
+ ここまでfeatureが記述できたら,次はcucumberコマンドを実行してみます.
48
+ コマンドは以下の通りです.
49
+ nasu% cucumber features/my_todo.feature
50
+ featuresディレクトリにあるmy_todo.featureファイルをcucumberで実行するという意味です.
51
+
52
+ 実行すると図{{ref(fig:003)}}のようになります.
53
+
54
+ !!!caption:(fig:003)step定義をする前のcucumberの実行結果.
55
+ {{attach_view(my_help_nasu.003.jpeg,my_help_nasu)}})
56
+
57
+ ここでは,1つのscenarioと4つのstepが失敗しています.
58
+ まだstep定義を記述していないので当たり前です.
59
+
60
+ 一度cucumberを実行したのには理由があります.
61
+ featureを書いた時点でcucumberを実行すると,ステップ定義の元となるコマンドを,cucumberが自動的に作成してくれるからです.
62
+
63
+ 以下がcucumberから出力されたステップ定義の元となる部分です.
64
+
65
+ <<< tcsh
66
+ 前提(/^todoを編集したい$/) do
67
+
68
+ end
69
+
70
+ もし(/^"([^"]*)"と入力する$/) do |command|
71
+
72
+ end
73
+
74
+ ならば(/^editが開かれる$/) do
75
+
76
+ end
77
+
78
+ ならば(/^自分のtodoを書き込む$/) do
79
+
80
+ end
81
+ >>>
82
+
83
+ これをコピーして,featuresディレクトリの中でstep_definitionsディレクトリを作成し,その中にmy_todo_spec.rbを作成し,そこに貼付けます.
84
+
85
+ ここでもう一度cucumberを実行してみると図{{ref(fig:004)}}のように変化が出てきます.
86
+
87
+ !!!caption:(fig:004)defaultのstep定義を貼り付けた後のcucumberの実行結果.
88
+ {{attach_view(my_help_nasu.004.jpeg,my_help_nasu)}}
89
+
90
+ これは1つのシナリオがあり,1つがpendingであり,4つのstepの内1つがpendingで3つがskipしたことを表しています.
91
+ step_definitionsのmy_todo_spec.rbのpending部分を書き換えて,step_definitionsの記述を進めていきます.
92
+
93
+ まず,「前提」を見てみるとmy_helpが何か振る舞いをすることはありません.
94
+ よって,このままにしておきます.
95
+ 「もし」もユーザが入力するコマンドであり,my_helpが何か振る舞いをすることはないのでこのままにしておきます.
96
+ 次に,「ならば」を見てみるとmy_helpがeditを開くという振る舞いをしています.
97
+ ステップ定義では,あれば良いと思うコードを記述するので私は下記のように記述しました.
98
+
99
+ <<< tcsh
100
+ ならば(/^editが開かれる$/) do
101
+ Mytodo::Edit.new.open
102
+ end
103
+ >>>
104
+
105
+ pendingの部分が書けたので,もう一度cucumber features/my_todo.featureを実行します.
106
+ すると,図{{ref(fig:005)}}のような結果が返ってきました.
107
+
108
+ !!!caption:(fig:005)pendingのstep定義を書き込んだ後のcucumberの実行結果.
109
+ {{attach_view(my_help_nasu.005.jpeg,my_help_nasu)}}
110
+
111
+ Cucumberは,エラーが出たステップのすぐ後ろにエラーを表示してくれます.
112
+ ここでCucumberでエラーが出たので,この「ならば editが開かれる」のシナリオに注目してRSpecに進むことにします.
113
+
114
+
115
+ !!RSpec
116
+ 次にRSpecを使って実際にtodoを更新する振る舞いをするコード書いていきます.
117
+
118
+ そのための準備として,まずspecというディレクトリを作成し,my_todoというサブディレクトリを追加します.
119
+ 次に,このサブディレクトリにtodo_spec.rbというファイルを追加します.
120
+ この機能はmy_help --editと入力されれば,~/.my_help/my_todo.ymlが開かれるので,その振る舞いをするコードを書きます.
121
+ まずtodo_spec.rbは下記の通りです.
122
+
123
+ <<< ruby
124
+ require 'spec_helper'
125
+
126
+
127
+ module Mytodo
128
+ describe Todo do
129
+ describe "#open" do
130
+ it "open file my_todo.yml"
131
+ end
132
+ end
133
+ end
134
+
135
+ >>>
136
+
137
+ describe()メソッドは,RSpecのAPIにアクセスしてRSpec::Core::ExampleGroupのサブクラスを返します.
138
+ ExampleGroupクラスはオブジェクトに期待される振る舞いのサンプルを示すグループです.
139
+ it()メソッドはサンプルを作成します.
140
+
141
+
142
+ 完成したコードを下記の通りです.
143
+
144
+ <<< ruby
145
+ require 'spec_helper'
146
+
147
+
148
+ module Mytodo
149
+ describe Todo do
150
+ describe "#open" do
151
+ it "open file my_todo.yml" do
152
+ system("emacs ~/.my_help/my_todo.yml")
153
+ end
154
+ end
155
+ end
156
+ end
157
+
158
+ >>>
159
+
160
+ specディレクトリのmy_todoディレクトリをrspecで実行すると図{{ref(fig:006)}}結果がでました.
161
+ [[--color]]を付け加えるとわかりやすく色づけをしてくれて,見やすくなります.
162
+
163
+ !!!caption:(fig:006)pendingのstep定義を書き込んだ後のcucumberの実行結果.
164
+ {{attach_view(my_help_nasu.006.jpeg,my_help_nasu)}}
165
+
166
+ 図{{ref(fig:006)}}を見るとエラーが出てしまっているのがわかります.
167
+
168
+ `<module:Mytodo>': uninitialized constant Mytodo::Edit (NameError)
169
+
170
+ 上記のエラーを解決するために,specディレクトリの一つ上の構造のディレクトリにlibディレクトリを作成します.
171
+ その中にmy_todoというディレクトリを作成し,my_todo.rbを作成します.
172
+
173
+ 構造を表示すると以下のようになります.
174
+ /Users/nasubi/my_help/lib/my_todo% ls
175
+ my_todo.rb
176
+
177
+ my_todo.rbに先ほどのエラーでMytodoというmoduleがないといわれているので,
178
+ ここで作成します.
179
+
180
+ /Users/nasubi/my_help/lib/my_todo/my_todo.rbの中に以下のコードを記述します.
181
+
182
+ <<< tcsh
183
+ module Mytodo
184
+ class Edit
185
+ def open
186
+
187
+ end
188
+ end
189
+ end
190
+ >>>
191
+
192
+ また,これをrequireしないといけないので,lib/todo.rbとして,以下を追加します.
193
+ <<<
194
+ require 'my_todo/my_todo'
195
+ >>>
196
+
197
+ これだけでは,rspecがlib/my_todo/my_todo.rbを読み込んでいないため,このスペックを実行するために,specディレクトリにspec_helper.rbに以下を追加します.
198
+
199
+ <<< tcsh
200
+ $LOAD_PATH.unshift File.expand_path('../../lib', __FILE__)
201
+ require 'todo'
202
+ >>>
203
+
204
+ これでもう一度rspecを実行してみると図{{ref(fig:007)}}の結果が返ってきました.
205
+
206
+ !!!caption:(fig:007)redを修正してgreenになったrspecの実行結果
207
+ {{attach_view(my_help_nasu.007.jpeg,my_help_nasu)}}
208
+
209
+ 図{{ref(fig:007)}}を見ると,エラーが消えて成功しているのがわかります.
210
+ これで「ならば editが開かれる」のシナリオのRSpec部分が成功しました.
211
+ Red, Greenと進めたので次はRefactoringをするのですが,ここではあまり必要のないので省略します.
212
+ RSpecが終わったので,Cucumberに戻ります.
213
+
214
+ 先ほどlibディレクトリでlib/my_todo/my_todo.rbを作成したので,cucumberでも読み込むために,以下を作成します.
215
+
216
+ /Users/nasubi/my_help/features/support/env.rb
217
+
218
+ env.rbの中は以下の通りです.
219
+ <<< ruby
220
+ $LOAD_PATH.unshift File.expand_path('../../../lib', __FILE__)
221
+ require 'todo'
222
+ >>>
223
+
224
+ これでcucumberもlib/の中身を読み取ってくれます.
225
+
226
+ もう一度cucumberを実行してみると,図{{ref(fig:008)}}の結果が返ってきました.
227
+
228
+ !!!caption:(fig:008)libの中身を読み込むようにしたcucumberの実行結果.
229
+ {{attach_view(my_help_nasu.008.jpeg,my_help_nasu)}}
230
+
231
+ エラーが消えています.
232
+
233
+ これでBDDが成功しました.
234
+ 残りの「自分のtodoを書き込む」もmy_helpが何か振る舞いをするわけではないので,「コマンドを入力してtodoを更新する」シナリオ全てのテスト開発が終わりました.
235
+ このようにBDDでmy_helpのテスト開発を行っていきました.
236
+
237
+ !!.rspec options
238
+ 図{{ref(fig:006)}}の時に述べたように,[rspec spec --color]で実行すると成功すればGreenで表示され,失敗すればRedで表示されます.
239
+ 結果に色がついていると見やすく,どのような結果が出ているかが一目瞭然です.
240
+ しかし,毎回[--color]のコマンドを打ち込むのが面倒になってきます.
241
+ そこで,カレントディレクトリに.rspecを用意し,
242
+ <<<
243
+ --format documentation
244
+ --color
245
+ >>>
246
+ のようにすることで,rspecで実行するときにこのファイルを読み込み,[--color]を入力しなくても実行されます.
@@ -0,0 +1,2 @@
1
+ --format documentation
2
+ --color
@@ -0,0 +1,75 @@
1
+ # -*- coding: utf-8 -*-
2
+ require "./spec_helper.rb"
3
+
4
+ RSpec.describe 'my_help command', type: :aruba do
5
+ context 'version option' do
6
+ before(:each) { run('my_help -v') }
7
+ it { expect(last_command_started).to be_successfully_executed }
8
+ it { expect(last_command_started).to have_output("my_help 0.4.5") }
9
+ end
10
+
11
+ context 'help option' do
12
+ expected = <<EXPECTED
13
+ Usage: my_help [options]
14
+ -v, --version show program Version.
15
+ -l, --list list specific helps
16
+ -e, --edit NAME edit NAME help(eg test_help)
17
+ -i, --init NAME initialize NAME help(eg test_help)
18
+ -m, --make make executables for all helps
19
+ -c, --clean clean up exe dir.
20
+ --install_local install local after edit helps
21
+ --delete NAME delete NAME help
22
+ EXPECTED
23
+ before(:each) { run('my_help -h') }
24
+ it { expect(last_command_started).to be_successfully_executed }
25
+ it { expect(last_command_started).to have_output(expected.chomp) }
26
+ end
27
+
28
+ context 'init option1' do
29
+ before(:each) { run('my_help -i test_help') }
30
+
31
+ expected=<<EOS
32
+ "/Users/OyagiToshiharu/.my_help/test_help.yml"
33
+ File exists. rm it first to initialize it.
34
+ EOS
35
+ it { expect(last_command_started).to be_successfully_executed }
36
+ it { expect(last_command_started).to have_output(expected.chomp) }
37
+ end
38
+
39
+
40
+ context 'edit option' do
41
+ expected = <<EXPECTED
42
+ #<OptionParser::MissingArgument: -e>
43
+ EXPECTED
44
+ before(:each) { run('my_help -e') }
45
+ it { expect(last_command_started).to be_successfully_executed }
46
+ it { expect(last_command_started).to have_output(expected.chomp) }
47
+ end
48
+
49
+ context 'init option2' do
50
+ expected = <<EXPECTED
51
+ #<OptionParser::MissingArgument: -i>
52
+ EXPECTED
53
+ before(:each) { run('my_help -i') }
54
+ it { expect(last_command_started).to be_successfully_executed }
55
+ it { expect(last_command_started).to have_output(expected.chomp) }
56
+ end
57
+
58
+ context 'make option' do
59
+ expected = <<EXPECTED
60
+ "exe/my_todo"
61
+ #<Errno::ENOENT: No such file or directory @ rb_sysopen - exe/my_todo>
62
+ EXPECTED
63
+ before(:each) { run('my_help -m') }
64
+ it { expect(last_command_started).to be_successfully_executed }
65
+ it { expect(last_command_started).to have_output(expected.chomp) }
66
+ end
67
+
68
+ context 'list option' do
69
+ expected = "Specific help file:\n my_todo\t:my todo\n emacs_help\t:emacsのキーバインド\n test_help\t:ヘルプのサンプル雛形\n"
70
+
71
+ before(:each) { run('my_help -l') }
72
+ it { expect(last_command_started).to be_successfully_executed }
73
+ it { expect(last_command_started).to have_output(expected.chomp) }
74
+ end
75
+ end
@@ -0,0 +1,15 @@
1
+
2
+ require 'spec_helper'
3
+
4
+
5
+ module Mytodo
6
+ describe Edit do
7
+ describe "#open" do
8
+ it "open file my_todo.yml" do
9
+ # if command == "my_todo --edit"
10
+ system("emacs ~/.my_help/my_todo.yml")
11
+ # end
12
+ end
13
+ end
14
+ end
15
+ end
@@ -0,0 +1,11 @@
1
+ $LOAD_PATH.unshift File.expand_path('../../lib', __FILE__)
2
+ require 'my_help'
3
+ require 'todo'
4
+ if RUBY_VERSION < '1.9.3'
5
+ ::Dir.glob(::File.expand_path('../support/*.rb', __FILE__)).each { |f| require File.join(File.dirname(f), File.basename(f, '.rb')) }
6
+ ::Dir.glob(::File.expand_path('../support/**/*.rb', __FILE__)).each { |f| require File.join(File.dirname(f), File.basename(f, '.rb')) }
7
+ else
8
+ ::Dir.glob(::File.expand_path('../support/*.rb', __FILE__)).each { |f| require_relative f }
9
+ ::Dir.glob(::File.expand_path('../support/**/*.rb', __FILE__)).each { |f| require_relative f }
10
+ end
11
+
@@ -0,0 +1 @@
1
+ require 'aruba/rspec'