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,133 @@
1
+ {
2
+ "cells": [
3
+ {
4
+ "cell_type": "markdown",
5
+ "metadata": {
6
+ "toc": "true"
7
+ },
8
+ "source": [
9
+ "# Table of Contents\n",
10
+ " <p><div class=\"lev1 toc-item\"><a href=\"#emacs_help\" data-toc-modified-id=\"emacs_help-1\"><span class=\"toc-item-num\">1&nbsp;&nbsp;</span>emacs_help</a></div>"
11
+ ]
12
+ },
13
+ {
14
+ "cell_type": "markdown",
15
+ "metadata": {},
16
+ "source": [
17
+ "# emacs_help\n",
18
+ "\n",
19
+ "```\n",
20
+ " emacsのキーバインド\n",
21
+ " \n",
22
+ "特殊キー操作\n",
23
+ " c-f, controlキーを押しながら 'f'\n",
24
+ " M-f, escキーを押した後一度離して'f'\n",
25
+ " 操作の中断c-g, 操作の取り消し(Undo) c-x u\n",
26
+ " cc by Shigeto R. Nishitani, 2016\n",
27
+ "カーソル移動cursor\n",
28
+ " c-f, move Forwrard, 前or右へ\n",
29
+ " c-b, move Backwrard, 後or左へ\n",
30
+ " c-a, go Ahead of line, 行頭へ\n",
31
+ " c-e, go End of line, 行末へ\n",
32
+ " c-n, move Next line, 次行へ\n",
33
+ " c-p, move Previous line, 前行へ\n",
34
+ "ページ移動page\n",
35
+ " c-v, move Vertical, 次のページへ\n",
36
+ " M-v, move reversive Vertical,前のページへ\n",
37
+ " c-l, centerise Line, 現在行を中心に\n",
38
+ " M-<, move Top of file, ファイルの先頭へ\n",
39
+ " M->, move Bottom of file, ファイルの最後尾へ\n",
40
+ "ファイル操作file\n",
41
+ " c-x c-f, Find file, ファイルを開く\n",
42
+ " c-x c-s, Save file, ファイルを保存\n",
43
+ " c-x c-w, Write file NAME, ファイルを別名で書き込む\n",
44
+ "編集操作edit\n",
45
+ " c-d, Delete char, 一字削除\n",
46
+ " c-k, Kill line, 一行抹消,カット\n",
47
+ " c-y, Yank, ペースト\n",
48
+ " c-w, Kill region, 領域抹消,カット\n",
49
+ " 領域選択は,先頭or最後尾でc-spaceした後,最後尾or先頭へカーソル移動\n",
50
+ " c-s, forward incremental Search WORD, 前へWORDを検索\n",
51
+ " c-r, Reverse incremental search WORD, 後へWORDを検索\n",
52
+ " M-x query-replace WORD1 <ret> WORD2:対話的置換(y or nで可否選択)\n",
53
+ "ウィンドウ操作window\n",
54
+ " c-x 2, 2 windows, 二つに分割\n",
55
+ " c-x 1, 1 windows, 一つに戻す\n",
56
+ " c-x 3, 3rd window sep,縦線分割\n",
57
+ " c-x o, Other windows, 次の画面へ移動\n",
58
+ "バッファー操作buffer(すでにopenしてemacsにバッファーされたfile)\n",
59
+ " c-x b, show Buffer, バッファのリスト\n",
60
+ " c-x c-b, next Buffer, 次のバッファへ移動\n",
61
+ "終了操作quit\n",
62
+ " c-x c-c, Quit emacs, ファイルを保存して終了\n",
63
+ " c-z, suspend emacs, 一時停止,fgで復活\n",
64
+ "```"
65
+ ]
66
+ },
67
+ {
68
+ "cell_type": "code",
69
+ "execution_count": null,
70
+ "metadata": {
71
+ "collapsed": true
72
+ },
73
+ "outputs": [],
74
+ "source": []
75
+ }
76
+ ],
77
+ "metadata": {
78
+ "kernelspec": {
79
+ "display_name": "Ruby 2.2.2",
80
+ "language": "ruby",
81
+ "name": "ruby"
82
+ },
83
+ "language_info": {
84
+ "file_extension": ".rb",
85
+ "mimetype": "application/x-ruby",
86
+ "name": "ruby",
87
+ "version": "2.2.2"
88
+ },
89
+ "latex_envs": {
90
+ "LaTeX_envs_menu_present": true,
91
+ "autocomplete": true,
92
+ "bibliofile": "biblio.bib",
93
+ "cite_by": "apalike",
94
+ "current_citInitial": 1,
95
+ "eqLabelWithNumbers": true,
96
+ "eqNumInitial": 1,
97
+ "hotkeys": {
98
+ "equation": "Ctrl-E",
99
+ "itemize": "Ctrl-I"
100
+ },
101
+ "labels_anchors": false,
102
+ "latex_user_defs": false,
103
+ "report_style_numbering": false,
104
+ "user_envs_cfg": false
105
+ },
106
+ "toc": {
107
+ "colors": {
108
+ "hover_highlight": "#DAA520",
109
+ "navigate_num": "#000000",
110
+ "navigate_text": "#333333",
111
+ "running_highlight": "#FF0000",
112
+ "selected_highlight": "#FFD700",
113
+ "sidebar_border": "#EEEEEE",
114
+ "wrapper_background": "#FFFFFF"
115
+ },
116
+ "moveMenuLeft": true,
117
+ "nav_menu": {
118
+ "height": "31px",
119
+ "width": "253px"
120
+ },
121
+ "navigate_menu": true,
122
+ "number_sections": true,
123
+ "sideBar": true,
124
+ "threshold": 4,
125
+ "toc_cell": true,
126
+ "toc_section_display": "block",
127
+ "toc_window_display": true,
128
+ "widenNotebook": false
129
+ }
130
+ },
131
+ "nbformat": 4,
132
+ "nbformat_minor": 2
133
+ }
@@ -0,0 +1,136 @@
1
+ {
2
+ "cells": [
3
+ {
4
+ "cell_type": "markdown",
5
+ "metadata": {
6
+ "toc": "true"
7
+ },
8
+ "source": [
9
+ "# Table of Contents\n",
10
+ " <p><div class=\"lev1 toc-item\"><a href=\"#template_helpの出力結果\" data-toc-modified-id=\"template_helpの出力結果-1\"><span class=\"toc-item-num\">1&nbsp;&nbsp;</span>template_helpの出力結果</a></div><div class=\"lev1 toc-item\"><a href=\"#template_helpの中身\" data-toc-modified-id=\"template_helpの中身-2\"><span class=\"toc-item-num\">2&nbsp;&nbsp;</span>template_helpの中身</a></div>"
11
+ ]
12
+ },
13
+ {
14
+ "cell_type": "markdown",
15
+ "metadata": {},
16
+ "source": [
17
+ "# template_helpの出力結果\n",
18
+ "\n",
19
+ "``` ruby\n",
20
+ "bob% bundle exec exe/template_help --to_hiki\n",
21
+ "ヘルプのサンプル雛形.\n",
22
+ "headに常に表示される内容を記述.\n",
23
+ "---\n",
24
+ "<<<\n",
25
+ " ヘルプのサンプル雛形.\n",
26
+ " headに常に表示される内容を記述.\n",
27
+ "単元\n",
28
+ " c-f, move Forwrard, 前or右へ\n",
29
+ " フォーマットは自由です.\n",
30
+ "単元2\n",
31
+ " c-f, move Forwrard, 前or右へ\n",
32
+ " フォーマットは自由です.\n",
33
+ "```\n",
34
+ "\n",
35
+ "# template_helpの中身\n",
36
+ "helpの実態は~/.my_helpに保存されたYAML形式のfileです.書き方はコメントを参照ください.\n",
37
+ "\n",
38
+ "```ruby\n",
39
+ "---\n",
40
+ "#start header, which appears every time.\n",
41
+ ":head: #never change\n",
42
+ "- ヘルプのサンプル雛形 #describe the contents breafly.\n",
43
+ "- \" headに常に表示される内容を記述\" #head '- ' is necessary\n",
44
+ ":license: #never change\n",
45
+ "- \" cc by Shigeto R. Nishitani, 2016\" #show licence\n",
46
+ "# start the first item\n",
47
+ ":item: #change snake word\n",
48
+ " :opts: #never change\n",
49
+ " :short: -i #change short option\n",
50
+ " :long: --item #change long option\n",
51
+ " :desc: 単元(item) #describe what for in help list\n",
52
+ " :title: 単元 #describe what for in each help\n",
53
+ " :cont: #the following lines are appeared.\n",
54
+ " - c-f, move Forwrard, 前or右へ #top ' - ' are necessary for yaml format\n",
55
+ " - フォーマットは自由です. \n",
56
+ "\n",
57
+ "# start the second item... and so on.\n",
58
+ ":item2: \n",
59
+ " :opts: \n",
60
+ " :short: -j\n",
61
+ " :long: --item2\n",
62
+ " :desc: 単元2(item2)\n",
63
+ " :title: 単元2\n",
64
+ " :cont:\n",
65
+ " - c-f, move Forwrard, 前or右へ\n",
66
+ " - フォーマットは自由です. \n",
67
+ "```\n"
68
+ ]
69
+ },
70
+ {
71
+ "cell_type": "code",
72
+ "execution_count": null,
73
+ "metadata": {
74
+ "collapsed": true
75
+ },
76
+ "outputs": [],
77
+ "source": []
78
+ }
79
+ ],
80
+ "metadata": {
81
+ "kernelspec": {
82
+ "display_name": "Ruby 2.2.2",
83
+ "language": "ruby",
84
+ "name": "ruby"
85
+ },
86
+ "language_info": {
87
+ "file_extension": ".rb",
88
+ "mimetype": "application/x-ruby",
89
+ "name": "ruby",
90
+ "version": "2.2.2"
91
+ },
92
+ "latex_envs": {
93
+ "LaTeX_envs_menu_present": true,
94
+ "autocomplete": true,
95
+ "bibliofile": "biblio.bib",
96
+ "cite_by": "apalike",
97
+ "current_citInitial": 1,
98
+ "eqLabelWithNumbers": true,
99
+ "eqNumInitial": 1,
100
+ "hotkeys": {
101
+ "equation": "Ctrl-E",
102
+ "itemize": "Ctrl-I"
103
+ },
104
+ "labels_anchors": false,
105
+ "latex_user_defs": false,
106
+ "report_style_numbering": false,
107
+ "user_envs_cfg": false
108
+ },
109
+ "toc": {
110
+ "colors": {
111
+ "hover_highlight": "#DAA520",
112
+ "navigate_num": "#000000",
113
+ "navigate_text": "#333333",
114
+ "running_highlight": "#FF0000",
115
+ "selected_highlight": "#FFD700",
116
+ "sidebar_border": "#EEEEEE",
117
+ "wrapper_background": "#FFFFFF"
118
+ },
119
+ "moveMenuLeft": true,
120
+ "nav_menu": {
121
+ "height": "48px",
122
+ "width": "253px"
123
+ },
124
+ "navigate_menu": true,
125
+ "number_sections": true,
126
+ "sideBar": true,
127
+ "threshold": 4,
128
+ "toc_cell": true,
129
+ "toc_section_display": "block",
130
+ "toc_window_display": true,
131
+ "widenNotebook": false
132
+ }
133
+ },
134
+ "nbformat": 4,
135
+ "nbformat_minor": 2
136
+ }
File without changes
@@ -1,7 +1,10 @@
1
+
1
2
  # -*- coding: utf-8 -*-
2
3
  require 'systemu'
3
4
  require 'tempfile'
4
5
  require 'colorize'
6
+ require 'coderay'
7
+
5
8
  # -*- coding: utf-8 -*-
6
9
  begin
7
10
  $hiki_dir = File.readlines('./.hikirc')[0].chomp
@@ -34,7 +37,7 @@ task :reset_hiki do
34
37
  stdout.split("\n").each{|line|
35
38
  files << line.split(/\s+/)[-1]
36
39
  }
37
- p r_files = files.reverse[0..-4]
40
+ r_files = files.reverse[0..-4]
38
41
  r_files.each{|file|
39
42
  print "remove #{file}[ynqlA]? ".red
40
43
  input=STDIN.gets.chomp
@@ -49,7 +52,7 @@ task :reset_hiki do
49
52
  when 'q'
50
53
  exit
51
54
  when 'A'
52
- print "\nAre you sure?[Yn]"
55
+ print "\nAre you sure[Yn]? ".magenta
53
56
  input2 = STDIN.gets.chomp
54
57
  case input2
55
58
  when 'Y'
@@ -66,9 +69,11 @@ end
66
69
  desc "latex_dirのゴミを掃除"
67
70
  task :reset_latex_dir do
68
71
  system "mv latex_dir/head.tex ."
72
+ system "mv latex_dir/jlisting.sty ."
69
73
  system "rm -rf latex_dir"
70
74
  system "mkdir latex_dir"
71
75
  system "mv head.tex latex_dir/"
76
+ system "mv jlisting.sty latex_dir/"
72
77
  system "rake latex_all"
73
78
  end
74
79
 
@@ -80,14 +85,10 @@ task :mk_toc do
80
85
  if m=line.match(/\\contentsline \{(.+)\}\{\\numberline \{([\d|\.]+)\}(.+)\}\{\d+\}/)
81
86
  layer,sec_no,title=m[1],m[2],m[3]
82
87
  d = case m[1]
83
- when 'section'
84
- 1
85
- when 'subsection'
86
- 2
87
- when 'subsubsection'
88
- 3
89
- else
90
- 4
88
+ when 'section'; 1
89
+ when 'subsection'; 2
90
+ when 'subsubsection'; 3
91
+ else; 4
91
92
  end
92
93
  layer = "!"*d
93
94
  title.gsub!('\_','_')
@@ -101,7 +102,8 @@ end
101
102
  desc "FILE.hikiあるいはhikiファイルすべてを最新状態に更新"
102
103
  task :touch do
103
104
  if file=ARGV[1]
104
- p target = $basename+"_"+file.split('.')[0]
105
+ file_split=file.split(".")
106
+ p target = $basename==file_split[0] ? $basename : $basename+"_"+file_split[0]
105
107
  system "hiki -u #{target}"
106
108
  else
107
109
  p target = File.join($hiki_dir,'cache','attach',$basename)
@@ -109,17 +111,18 @@ task :touch do
109
111
  Dir.entries('.').each{|file|
110
112
  file_split=file.split(".")
111
113
  if file_split[1]=='hiki'
112
- next if file_split[0]==$basename
113
- p target = $basename+"_"+file_split[0]
114
+ p target = $basename==file_split[0] ? $basename : $basename+"_"+file_split[0]
114
115
  system "hiki -u #{target}"
115
116
  end
116
117
  }
117
118
  end
119
+ exit
118
120
  end
119
121
 
120
122
  desc "FILE.hikiあるいはhikiファイルをedtiorで開く"
121
123
  task :open do
122
- if file=ARGV[1]
124
+ if file=ARGV[1]
125
+ file += '.hiki' if file.split(".")[1]==nil
123
126
  system "open -a mi #{file}"
124
127
  else
125
128
  Dir.entries('.').each{|file|
@@ -143,6 +146,7 @@ task :latex_wrap => [:latex_base, :change_wrap] do
143
146
  end
144
147
 
145
148
  def latex_loop(entries,opts={})
149
+ check_bounding_box
146
150
  main_file=""
147
151
  entries.each{|file|
148
152
  options={:latex_all=>true}
@@ -183,20 +187,29 @@ end
183
187
 
184
188
  def check_bounding_box
185
189
  # $bounding_box="0 0 442 432"
186
- $bounding_box=" 0 0 737 453"
190
+ # $bounding_box=" 0 0 737 553"
191
+ # $fig_width="10"
192
+ $bounding_box=" 0 0 937 753"
193
+ $fig_width="12"
187
194
  end
188
195
 
189
196
  desc "すべてのhikiファイルをlatex変換"
190
197
  task :latex_all do
191
198
  p entries=Dir.entries('.')
192
- check_bounding_box
193
199
  main_file = latex_loop(entries,opts={:main=>true})
194
200
  latex_loop(entries)
195
201
  cont=""
196
202
  p reg_exp = Regexp.new("#{$basename}_(.+)")
197
203
  toc = false
198
204
  File.readlines(File.join($latex_dir,"#{main_file}.tex")).each{|line|
199
- line, toc = "", true if line.match(/\\tableofcontents/) and toc == true #only one
205
+ # line, toc = "", true if line.match(/\\tableofcontents/) and toc == true #only one
206
+ if line.match(/\\tableofcontents/)
207
+ if toc == false #only one
208
+ toc = true
209
+ else
210
+ line = ''
211
+ end
212
+ end
200
213
  line ="\\usepackage{listings,jlisting}" if line.match(/\\usepackage{listings}/)
201
214
  if line.match(/section{(.+)}/)
202
215
  if m=line.match(/\\verb\|(.+)\((.+)\)\|/)
@@ -219,6 +232,7 @@ task :latex_all do
219
232
  end
220
233
 
221
234
  task :latex_base do
235
+ check_bounding_box
222
236
  Dir.mkdir($latex_dir) unless Dir.exist?($latex_dir)
223
237
  convert_to_latex(ARGV[1])
224
238
  system("open #{$save_name}")
@@ -246,10 +260,27 @@ def convert_to_latex(file_name, options={})
246
260
  system "hiki2latex #{pre_command} #{options[:latex]} #{tf1} > #{tf2}"
247
261
  lines = File.readlines(tf2)
248
262
  system "rm #{tf1} #{tf2}"
249
- cont = ""
263
+ in_bib,cont=false,""
250
264
  lines.each{|line|
265
+ line=latex_cite_ref(line)
266
+ if m=line.match(/\\caption{\s*\((.+?)\)(.+)}/)
267
+ p m
268
+ puts line = "\\caption{#{m[2]}}\n\\label{#{m[1]}}\n"
269
+ end
270
+ if m=line.match(/\\section{reference:}(.+)/) and in_bib==false
271
+ in_bib=true
272
+ line = "\\begin{thebibliography}{99}\n"
273
+ puts line.blue
274
+ end
275
+ if m=line.match(/\\end{description}/) and in_bib==true
276
+ in_bib=false
277
+ line = "\\end{thebibliography}\n"
278
+ end
279
+ if m=line.match(/\\item\[(.+)\](.+)/) and in_bib==true
280
+ line ="\\bibitem{#{m[1]}} #{m[2]}"
281
+ end
251
282
  if m=line.match(/\\includegraphics\[width=6cm\]\{(.+)\}/)
252
- p line="\\includegraphics\[width=10cm,bb=#{$bounding_box}\]\{../figs/#{m[1]}\}\n"
283
+ p line="\\includegraphics\[width=#{$fig_width}cm,bb=#{$bounding_box}\]\{../figs/#{m[1]}\}\n"
253
284
  cont << line
254
285
  else
255
286
  cont << line
@@ -258,6 +289,18 @@ def convert_to_latex(file_name, options={})
258
289
  File.open($save_name,'w'){|file| file.print cont }
259
290
  end
260
291
 
292
+ def latex_cite_ref(line)
293
+ r_pair=[/\\verb\|{{cite\((.+?)\)}}\|/,/\\verb\|{{ref\((.+?)\)}}\|/]
294
+ while m=line.match(r_pair[0])
295
+ line.sub!(r_pair[0],"\\cite\{#{m[1]}\}")
296
+ end
297
+ while m=line.match(r_pair[1])
298
+ line.sub!(r_pair[1],"\\ref\{#{m[1]}\}")
299
+ end
300
+ # puts line.chomp.blue
301
+ return line
302
+ end
303
+
261
304
  task :change_wrap do
262
305
  lines = File.readlines($save_name)
263
306
 
@@ -346,6 +389,26 @@ task :sync => [:check_previous,:sync0]
346
389
  desc "hikiの強制同期"
347
390
  task :force_sync => [:sync0]
348
391
 
392
+ def hiki_cite_ref(file)
393
+ tf1 = 'tmp1.txt'
394
+ lines = File.readlines(file)
395
+ inside_pre_form,cont = false,""
396
+ lines.each{|line|
397
+ inside_pre_form=true if line.match(/^<<</) and !inside_pre_form
398
+ inside_pre_form=false if line.match(/^>>>/) and inside_pre_form
399
+ tr_pair=[/\{\{cite\((.+?)\)\}\}/,/\{\{ref\((.+)\)\}\}/]
400
+ while m=line.match(tr_pair[0]) and !inside_pre_form
401
+ puts line.sub!(tr_pair[0], "\[[[#{m[1]}|#{$basename}_references]]\]").chomp.green
402
+ end
403
+ while m=line.match(tr_pair[1]) and !inside_pre_form
404
+ puts line.sub!(tr_pair[1],"#{m[1]}").chomp.green
405
+ end
406
+ cont << line
407
+ }
408
+ File.open(tf1,'w'){|file| file.print cont }
409
+ return tf1
410
+ end
411
+
349
412
  task :sync0 do
350
413
  entries=Dir.entries('.')
351
414
  entries[2..-1].each{|source| #cp *.hiki
@@ -354,6 +417,7 @@ task :sync0 do
354
417
  p base = source.split('.')[0]
355
418
  name = (base==$basename)? base : $basename+'_'+base
356
419
  p target = File.join($hiki_dir,'text',name)
420
+ source = hiki_cite_ref(source)
357
421
  FileUtils.cp(source,target,:verbose=>true)
358
422
  }
359
423
  p entries=Dir.entries('./figs') #cp files in figs
@@ -388,7 +452,14 @@ task :self_copy do
388
452
  cp_files.each{|files|
389
453
  p source = files[0]
390
454
  p target = File.join('/Users/bob/Github/hikiutils/lib/templates/',files[1])
391
- FileUtils.cp(source,target,:verbose=>true)
455
+ command = "diff #{source} #{target}"
456
+ status, stdout, stderr=systemu command
457
+ if stdout!=''
458
+ puts command.red
459
+ puts CodeRay.scan(stdout, :Diff).term
460
+ print " Are you sure to save #{source}? [Yn] ".red
461
+ FileUtils.cp(source,target,:verbose=>true) if STDIN.gets.chomp=='Y'
462
+ end
392
463
  }
393
464
  end
394
465
 
@@ -0,0 +1,17 @@
1
+ プログラム開発では,統合開発環境がいくつも用意されているが,多くの現場では,terminal上での開発が一般的です.
2
+ ところが,プログラミング初心者はterminal上でのcharacter user interface(CUI)を苦手としています.
3
+ この不可欠なCUIスキルの習得を助けるソフトとして,ユーザメモソフトmy_helpがruby gemsに置かれています.
4
+ このcommand line interface(CLI)で動作するmy_helpは,helpをterminal上で簡単に提示するものです.
5
+ また,初心者が自ら編集することによって,すぐに参照できるメモとしての機能を提供しています.
6
+ これにより,プログラム開発に集中できることが期待でき,初心者のスキル習得が加速することが期待できます.
7
+ しかし,Ruby gemsとして提供されているこのソフトは,動作はするがテストが用意されていません.
8
+ 今後ソフトを進化させるために共同開発を進めていくには,仕様や動作の標準となるテスト記述が不可欠となります.
9
+ そこで,本研究では,ユーザメモソフトであるmy_helpのテストを開発することを目的とします.
10
+ 本研究では、テスト駆動開発の中でも,ソフトの振る舞いを記述します
11
+ Behavior Driven Development(BDD)に基づいてテストを記述していきます.
12
+ Rubyにおいて、BDD環境を提供する標準的なフレームワークであるCucumberとRSpecを用いて,
13
+ my_helpがどのような振る舞いをするのかを記述します.
14
+ Cucumberは自然言語で振る舞いを記述することができるため,ユーザにとって,わかりやすく振る舞いを確認することができます.
15
+ ここでは,実際にBDDの流れにそって,my_helpのある一例を取り上げてのテスト開発を進めていきます.
16
+ また,my_helpの頻繁に使うコマンドの振る舞いを記述しています.
17
+ このことにより,来年の本研究室の研究生のスキルがより向上することが期待されると考えています.
@@ -59,21 +59,25 @@ featuresディレクトリにあるmy_todo.featureファイルをcucumberで実
59
59
 
60
60
  実行すると以下のようになります.
61
61
 
62
- <<< tcsh
63
- # language: ja
64
- 機能: todoの更新を行う
65
- todoは更新していくものであり,新しく書いたり終わったものを消したいのでバックアップをとって,過去のtodoを残しておく
66
62
 
67
- シナリオ: コマンドを入力してtodoを更新していく # features/my_todo.feature:6
68
- 前提todoを編集したい # features/my_todo.feature:7
69
- もし"my_todo --edit"と入力する # features/my_todo.feature:8
70
- ならばeditが開かれる # features/my_todo.feature:9
71
- かつ自分のtodoを書き込む # features/my_todo.feature:10
63
+ //# language: ja
64
+ //機能: todoの更新を行う
65
+ //todoは更新していくものであり,新しく書いたり終わったものを消したいのでバックアップをとって,過去のtodoを残しておく
72
66
 
73
- シナリオ: コマンドを入力してバックアップをとる # features/my_todo.feature:12
74
- 前提todoの編集が終わった # features/my_todo.feature:13
75
- もし"my_todo --store [item]"と入力する # features/my_todo.feature:14
76
- ならばitemのバックアップを取る # features/my_todo.feature:15
67
+ // シナリオ: コマンドを入力してtodoを更新していく # features/my_todo.feature:6
68
+ // 前提todoを編集したい # features/my_todo.feature:7
69
+ // もし"my_todo --edit"と入力する # features/my_todo.feature:8
70
+ // ならばeditが開かれる # features/my_todo.feature:9
71
+ // かつ自分のtodoを書き込む # features/my_todo.feature:10
72
+
73
+ // シナリオ: コマンドを入力してバックアップをとる # features/my_todo.feature:12
74
+ // 前提todoの編集が終わった # features/my_todo.feature:13
75
+ // もし"my_todo --store [item]"と入力する # features/my_todo.feature:14
76
+ // ならばitemのバックアップを取る # features/my_todo.feature:15
77
+
78
+ <<< tcsh
79
+
80
+ <省略>
77
81
 
78
82
  2 scenarios (2 undefined)
79
83
  7 steps (7 undefined)
@@ -204,14 +208,14 @@ todoは更新していくものであり,新しく書いたり終わったもの
204
208
  >>>
205
209
 
206
210
  !!RSpec
207
- 次にRSpecを使って実際にtodoを更新する振る舞いをするコード書いていく.
211
+ 次にRSpecを使って実際にtodoを更新する振る舞いをするコード書いていきます.
208
212
 
209
- そのための準備として,まずspecというディレクトリを作成し,my_todoというサブディレクトリを追加する.
210
- 次に,このサブディレクトリにtodo_spec.rbというファイルを追加する.
213
+ そのための準備として,まずspecというディレクトリを作成し,my_todoというサブディレクトリを追加します.
214
+ 次に,このサブディレクトリにtodo_spec.rbというファイルを追加します.
211
215
  作業を進める過程で,lib/my_todo/my_todo.rbソースファイルとspec/my_todo/todo_spec.rbスペックファイルが1対1に対応するといった要領で,
212
- 並列のディレクトリ構造を築いていく.
216
+ 並列のディレクトリ構造を築いていきます.
213
217
  この機能はmy_help --editと入力されれば,~/.my_help/my_todo.ymlが開かれるのでその振る舞いをするコードを書きます.
214
- まずtodo_spec.rbは下記の通りになります
218
+ まずtodo_spec.rbは下記の通りになります.
215
219
 
216
220
  <<< ruby
217
221
  require 'spec_helper'
@@ -260,7 +264,7 @@ end
260
264
 
261
265
  >>>
262
266
 
263
- これでrspecを実行すると以下のような結果が表示される.
267
+ これでrspecを実行すると以下のような結果が表示されます.
264
268
  <<< tcsh
265
269
  /Users/nasubi/my_help% rspec spec --color
266
270
 
@@ -280,6 +284,6 @@ Finished in 3.87 seconds (files took 0.30703 seconds to load)
280
284
  5 examples, 0 failures
281
285
 
282
286
  >>>
283
- これでtodoを更新するときの振る舞いのテストはうまく成功した.
287
+ これでtodoを更新するときの振る舞いのテストはうまく成功しました.
284
288
 
285
- この方法でBDDでmy_helpのテスト開発を行い,仕様を決定していった.
289
+ この方法でBDDでmy_helpのテスト開発を行い,仕様を決定していきました.
@@ -0,0 +1,38 @@
1
+ !考察と今後の課題
2
+ !!考察
3
+ my_helpを対象とした具体的なビヘイビア駆動開発の実践を通して,以下のような問題点が明らかになってきました.
4
+ !!! Cucumberを記述できるようになるまで時間がかかる
5
+
6
+ //意見を述べるときはできるだけ客観的に記述するようにしてください.それでも,それが意見であることは読み手にはわかります.また,その意見が次からは事実になります.つまり,「那須によると」という研究成果になるわけです.あるいは
7
+ //""那須によるmy_helpのビヘイビア駆動開発の実践で言及されている通り,2017年当初においてはfeaturesを記述するデータベースは存在しなかった.
8
+ //となるわけです.どやかっこええやろ.
9
+
10
+ //日本語で書くことができるので,記述されているコードを理解するのは容易にできました.
11
+ //しかし,日本語で書くことができるので容易に記述することも可能であると考えていましたが,The RSpec Bookに記載されているテンプレートが少なく,理解が難しく感じました.
12
+ //自力で作成することはできますが,やはり時間がかかってしまうと考えます.
13
+ //ネットで検索しても,The RSpec Bookと類似したシナリオが多いのも問題の一つであり,書き方のテンプレートがもっと必要です.
14
+ //地道にCucumberを使用して,データベースのようなものを作成するのがよいと考えました.
15
+ //また,BDDではCucumberでエラーが出ている状況が正しく,Cucumberを放置してRSpecへと進みます.今までのプログラミングとは少し違う感覚に陥り,不安がよぎります.
16
+ //これは慣れるまでの辛抱ではありますが,この問題も時間との戦いです.
17
+
18
+ 日本語で書くことができるので,記述されているコードを「理解する」のは容易で,「記述する」ことも可能であると考えていました.ところが,The RSpec Book{{cite(RSpecBook)}}に記載されているテンプレートが少なく,理解することにも非常に困難を覚えました.自力で何も前例のない状況から作成することはできますが,やはり時間がかかってしまいます.ネットで検索しても,日本語のサイトではほぼThe RSpec Book{{cite(RSpecBook)}}と類似したシナリオしか記載されていないのも問題の一つであり,違った種類の書き方のテンプレートがもっと必要です.地道に幾度もCucumberを叩いて,featuresやrspecの記述すること,またそのデータベースを蓄えていくことが必要です.
19
+ また,BDDではCucumberでエラーが出ている状況が正しく,Cucumberを放置してRSpecへと進みます.今までのプログラミングとは少し違う感覚に陥り,不安がよぎります.これは慣れるまでの辛抱ではありますが,この問題も時間との戦いです.
20
+
21
+ !!! BDDを行うときにrubyの知識が必要
22
+ Cucumberのステップ定義やRSpecにおいてrubyを用いることが多々あります.スッテプ定義を記述するときに,あればよいと思うコードを書くのですが,具体的なプログラムを書くよりも難易度が高いと感じました.部分的なプログラムを作成するので,知識がないと正しいかどうかの判断が最後にしかできません.BDDを通してrubyを学べるという考え方もできますが,BDDでrubyを学ぶには物足りなさがあり,不向きです.したがって,BDDを使用する前にrubyの基礎の勉強は不可欠です.
23
+
24
+ // はい.今後はここから4回生を招き入れることはやめることにします.
25
+
26
+ !!my_helpの今後
27
+
28
+ //:Given:my_helpのテスト開発が成功したため,仕様や動作の標準が確定しました.
29
+ //:Should_be:
30
+ my_helpのテスト記述が完了するに伴って,仕様や動作の標準が確定しました.
31
+ //:Given:私は,my_helpは何度も使用することで,どのように進化させれば便利なのかがわかってくると考えているので,my_helpはまだまだ進化する機会が出てくると思います.
32
+ //:Shoule_be:
33
+ my_helpは今後も開発者,ならびに多くのユーザの使用を通じて,どのように進化させれば便利なのかが徐々にわかってくることで,my_helpはまだまだ進化する機会が出てくると思われます.
34
+ つまり,ビヘイビアの記述を利用することで,今後my_helpを進化させるための共同開発が円滑に進める手助けになると推測します.
35
+ また,my_helpの進化の開発だけに関わらず,my_helpの使用方法が明確になったことで,本研究で作成したmy_helpのfeaturesを読めば初心者でもmy_helpの振る舞いが容易に理解できます.
36
+ my_helpは本研究室で今後使われていくと予想し,本研究はこれからの研究の手助けになります.
37
+ 今後の本研究室の研究生が,CUIなどの習得に時間をかけずにプログラミングに集中でき,研究の質が向上すると予想できます.
38
+
@@ -0,0 +1,12 @@
1
+ #language: ja
2
+
3
+ #--add [item]
4
+ 機能: 新しいitemをspecific_helpに追加する
5
+ specific_helpとは,ユーザが作成するそれぞれのヘルプである
6
+ 新しいhelp画面を追加したい
7
+
8
+ シナリオ: コマンドを入力してspecific_helpにitemを追加する
9
+ 前提 新たなhelpコマンドを追加したい
10
+ もし emacs_help --add[item]を入力する
11
+ ならば ~/.my_help/emacs_help.ymlに新しいitemが自動的に追加される
12
+
@@ -0,0 +1,10 @@
1
+ #language: ja
2
+
3
+ #--all
4
+ 機能: 全てのhelp画面を見る
5
+ 複数のhelp画面を一度に見たい時に便利である
6
+
7
+ シナリオ: コマンドを入力してすべてのhelpを見る
8
+ 前提 複数のhelp画面を表示したい
9
+ もし emacs_help --allと入力する
10
+ ならば すべてのhelp画面が表示される