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.
- checksums.yaml +4 -4
- data/.dockerignore +2 -0
- data/.gitignore +29 -2
- data/.ipynb_checkpoints/README-checkpoint.ipynb +511 -0
- data/.ipynb_checkpoints/Untitled-checkpoint.ipynb +6 -0
- data/.ruby-version +1 -0
- data/Dockerfile.template +13 -0
- data/README.md +341 -256
- data/README.org +480 -0
- data/Rakefile +9 -31
- data/docs/.ipynb_checkpoints/README-checkpoint.ipynb +112 -0
- data/docs/.ipynb_checkpoints/Untitled-checkpoint.ipynb +219 -0
- data/docs/README.ipynb +112 -0
- data/docs/bob/README_en.ipynb +219 -0
- data/docs/bob/diff_against_org_mode.ipynb +119 -0
- data/docs/bob/emacs_help.ipynb +133 -0
- data/docs/bob/template_help.ipynb +136 -0
- data/{my_help_nasu → docs/nasu}/.gitignore +0 -0
- data/{my_help_nasu → docs/nasu}/Rakefile +91 -20
- data/docs/nasu/abstract.hiki +17 -0
- data/{my_help_nasu → docs/nasu}/code.hiki +25 -21
- data/docs/nasu/discussion.hiki +38 -0
- data/docs/nasu/features/add.feature +12 -0
- data/docs/nasu/features/all_help.feature +10 -0
- data/docs/nasu/features/backup_list.feature +10 -0
- data/docs/nasu/features/edit_help.feature +9 -0
- data/docs/nasu/features/my_todo.feature +16 -0
- data/docs/nasu/features/remove.feature +10 -0
- data/docs/nasu/features/sample_e.feature +6 -0
- data/docs/nasu/features/step_definitions/add_spec.rb +18 -0
- data/docs/nasu/features/step_definitions/all_help_spec.rb +18 -0
- data/docs/nasu/features/step_definitions/backup_list_spec.rb +18 -0
- data/docs/nasu/features/step_definitions/edit_help_spec.rb +19 -0
- data/docs/nasu/features/step_definitions/my_todo_spec.rb +25 -0
- data/docs/nasu/features/step_definitions/remove_spec.rb +18 -0
- data/docs/nasu/features/step_definitions/store_spec.rb +18 -0
- data/docs/nasu/features/step_definitions/to_hiki_spec.rb +18 -0
- data/docs/nasu/features/store.feature +10 -0
- data/docs/nasu/features/support/env.rb +2 -0
- data/docs/nasu/features/test.feature +10 -0
- data/docs/nasu/features/to_hiki.feature +10 -0
- data/{my_help_nasu → docs/nasu}/features.hiki +80 -70
- data/docs/nasu/figs/cucumber01.001.jpg +0 -0
- data/docs/nasu/figs/cucumber02.001.jpg +0 -0
- data/docs/nasu/figs/cucumber03.001.jpg +0 -0
- data/docs/nasu/figs/cucumber04.001.jpg +0 -0
- data/docs/nasu/figs/cucumber05.001.jpg +0 -0
- data/docs/nasu/figs/cucumber1.jpg +0 -0
- data/docs/nasu/figs/cucumber2.jpg +0 -0
- data/docs/nasu/figs/cucumber3.jpg +0 -0
- data/docs/nasu/figs/cucumber4.jpg +0 -0
- data/docs/nasu/figs/my_help_nasu.001.jpeg +0 -0
- data/docs/nasu/figs/my_help_nasu.002.jpeg +0 -0
- data/docs/nasu/figs/my_help_nasu.003.jpeg +0 -0
- data/docs/nasu/figs/my_help_nasu.004.jpeg +0 -0
- data/docs/nasu/figs/my_help_nasu.005.jpeg +0 -0
- data/docs/nasu/figs/my_help_nasu.006.jpeg +0 -0
- data/docs/nasu/figs/my_help_nasu.007.jpeg +0 -0
- data/docs/nasu/figs/my_help_nasu.008.jpeg +0 -0
- data/docs/nasu/figs/my_help_nasu.pdf +0 -0
- data/docs/nasu/figs/my_help_nasu.png +0 -0
- data/docs/nasu/figs/my_help_nasu1.001.jpg +0 -0
- data/docs/nasu/figs/rspec01.001.jpg +0 -0
- data/docs/nasu/figs/rspec1.jpg +0 -0
- data/docs/nasu/figs/rspec2.jpg +0 -0
- data/{my_help_nasu → docs/nasu}/head2.tex +0 -0
- data/{my_help_nasu → docs/nasu}/hiki_help.yml +0 -0
- data/{my_help_nasu → docs/nasu}/introduction.hiki +15 -16
- data/{my_help_nasu → docs/nasu}/key_bind_mi +0 -0
- data/docs/nasu/keynote/cucumber01.key/Data/110809_FamilyChineseOahu_EN_00317_2040x1360-small-12.jpg +0 -0
- data/docs/nasu/keynote/cucumber01.key/Data/110809_FamilyChineseOahu_EN_02016_981x654-small-14.jpg +0 -0
- data/docs/nasu/keynote/cucumber01.key/Data/110809_FamilyChineseOahu_EN_02390_2880x1921-small-10.jpg +0 -0
- data/docs/nasu/keynote/cucumber01.key/Data/mt10@2x-87.jpg +0 -0
- data/docs/nasu/keynote/cucumber01.key/Data/mt1@2x-78.jpg +0 -0
- data/docs/nasu/keynote/cucumber01.key/Data/mt2@2x-79.jpg +0 -0
- data/docs/nasu/keynote/cucumber01.key/Data/mt3@2x-80.jpg +0 -0
- data/docs/nasu/keynote/cucumber01.key/Data/mt4@2x-81.jpg +0 -0
- data/docs/nasu/keynote/cucumber01.key/Data/mt5@2x-82.jpg +0 -0
- data/docs/nasu/keynote/cucumber01.key/Data/mt6@2x-83.jpg +0 -0
- data/docs/nasu/keynote/cucumber01.key/Data/mt7@2x-84.jpg +0 -0
- data/docs/nasu/keynote/cucumber01.key/Data/mt8@2x-85.jpg +0 -0
- data/docs/nasu/keynote/cucumber01.key/Data/mt9@2x-86.jpg +0 -0
- data/docs/nasu/keynote/cucumber01.key/Data/pasted-image-89.png +0 -0
- data/docs/nasu/keynote/cucumber01.key/Data/pasted-image-small-90.png +0 -0
- data/docs/nasu/keynote/cucumber01.key/Data/st0-104.jpg +0 -0
- data/docs/nasu/keynote/cucumber01.key/Index.zip +0 -0
- data/docs/nasu/keynote/cucumber01.key/Metadata/BuildVersionHistory.plist +8 -0
- data/docs/nasu/keynote/cucumber01.key/Metadata/DocumentIdentifier +1 -0
- data/docs/nasu/keynote/cucumber01.key/Metadata/Properties.plist +0 -0
- data/docs/nasu/keynote/cucumber01.key/preview-micro.jpg +0 -0
- data/docs/nasu/keynote/cucumber01.key/preview-web.jpg +0 -0
- data/docs/nasu/keynote/cucumber01.key/preview.jpg +0 -0
- data/docs/nasu/keynote/cucumber02.key/Data/110809_FamilyChineseOahu_EN_00317_2040x1360-small-12.jpg +0 -0
- data/docs/nasu/keynote/cucumber02.key/Data/110809_FamilyChineseOahu_EN_02016_981x654-small-14.jpg +0 -0
- data/docs/nasu/keynote/cucumber02.key/Data/110809_FamilyChineseOahu_EN_02390_2880x1921-small-10.jpg +0 -0
- data/docs/nasu/keynote/cucumber02.key/Data/mt10@2x-87.jpg +0 -0
- data/docs/nasu/keynote/cucumber02.key/Data/mt1@2x-78.jpg +0 -0
- data/docs/nasu/keynote/cucumber02.key/Data/mt2@2x-79.jpg +0 -0
- data/docs/nasu/keynote/cucumber02.key/Data/mt3@2x-80.jpg +0 -0
- data/docs/nasu/keynote/cucumber02.key/Data/mt4@2x-81.jpg +0 -0
- data/docs/nasu/keynote/cucumber02.key/Data/mt5@2x-82.jpg +0 -0
- data/docs/nasu/keynote/cucumber02.key/Data/mt6@2x-83.jpg +0 -0
- data/docs/nasu/keynote/cucumber02.key/Data/mt7@2x-84.jpg +0 -0
- data/docs/nasu/keynote/cucumber02.key/Data/mt8@2x-85.jpg +0 -0
- data/docs/nasu/keynote/cucumber02.key/Data/mt9@2x-86.jpg +0 -0
- data/docs/nasu/keynote/cucumber02.key/Data/pasted-image-89.png +0 -0
- data/docs/nasu/keynote/cucumber02.key/Data/pasted-image-small-90.png +0 -0
- data/docs/nasu/keynote/cucumber02.key/Data/st0-96.jpg +0 -0
- data/docs/nasu/keynote/cucumber02.key/Index.zip +0 -0
- data/docs/nasu/keynote/cucumber02.key/Metadata/BuildVersionHistory.plist +8 -0
- data/docs/nasu/keynote/cucumber02.key/Metadata/DocumentIdentifier +1 -0
- data/docs/nasu/keynote/cucumber02.key/Metadata/Properties.plist +0 -0
- data/docs/nasu/keynote/cucumber02.key/preview-micro.jpg +0 -0
- data/docs/nasu/keynote/cucumber02.key/preview-web.jpg +0 -0
- data/docs/nasu/keynote/cucumber02.key/preview.jpg +0 -0
- data/docs/nasu/keynote/cucumber03.key/Data/110809_FamilyChineseOahu_EN_00317_2040x1360-small-12.jpg +0 -0
- data/docs/nasu/keynote/cucumber03.key/Data/110809_FamilyChineseOahu_EN_02016_981x654-small-14.jpg +0 -0
- data/docs/nasu/keynote/cucumber03.key/Data/110809_FamilyChineseOahu_EN_02390_2880x1921-small-10.jpg +0 -0
- data/docs/nasu/keynote/cucumber03.key/Data/mt10@2x-87.jpg +0 -0
- data/docs/nasu/keynote/cucumber03.key/Data/mt1@2x-78.jpg +0 -0
- data/docs/nasu/keynote/cucumber03.key/Data/mt2@2x-79.jpg +0 -0
- data/docs/nasu/keynote/cucumber03.key/Data/mt3@2x-80.jpg +0 -0
- data/docs/nasu/keynote/cucumber03.key/Data/mt4@2x-81.jpg +0 -0
- data/docs/nasu/keynote/cucumber03.key/Data/mt5@2x-82.jpg +0 -0
- data/docs/nasu/keynote/cucumber03.key/Data/mt6@2x-83.jpg +0 -0
- data/docs/nasu/keynote/cucumber03.key/Data/mt7@2x-84.jpg +0 -0
- data/docs/nasu/keynote/cucumber03.key/Data/mt8@2x-85.jpg +0 -0
- data/docs/nasu/keynote/cucumber03.key/Data/mt9@2x-86.jpg +0 -0
- data/docs/nasu/keynote/cucumber03.key/Data/pasted-image-89.png +0 -0
- data/docs/nasu/keynote/cucumber03.key/Data/pasted-image-small-90.png +0 -0
- data/docs/nasu/keynote/cucumber03.key/Data/st0-100.jpg +0 -0
- data/docs/nasu/keynote/cucumber03.key/Index.zip +0 -0
- data/docs/nasu/keynote/cucumber03.key/Metadata/BuildVersionHistory.plist +8 -0
- data/docs/nasu/keynote/cucumber03.key/Metadata/DocumentIdentifier +1 -0
- data/docs/nasu/keynote/cucumber03.key/Metadata/Properties.plist +0 -0
- data/docs/nasu/keynote/cucumber03.key/preview-micro.jpg +0 -0
- data/docs/nasu/keynote/cucumber03.key/preview-web.jpg +0 -0
- data/docs/nasu/keynote/cucumber03.key/preview.jpg +0 -0
- data/docs/nasu/keynote/cucumber04.key/Data/110809_FamilyChineseOahu_EN_00317_2040x1360-small-12.jpg +0 -0
- data/docs/nasu/keynote/cucumber04.key/Data/110809_FamilyChineseOahu_EN_02016_981x654-small-14.jpg +0 -0
- data/docs/nasu/keynote/cucumber04.key/Data/110809_FamilyChineseOahu_EN_02390_2880x1921-small-10.jpg +0 -0
- data/docs/nasu/keynote/cucumber04.key/Data/mt10@2x-87.jpg +0 -0
- data/docs/nasu/keynote/cucumber04.key/Data/mt1@2x-78.jpg +0 -0
- data/docs/nasu/keynote/cucumber04.key/Data/mt2@2x-79.jpg +0 -0
- data/docs/nasu/keynote/cucumber04.key/Data/mt3@2x-80.jpg +0 -0
- data/docs/nasu/keynote/cucumber04.key/Data/mt4@2x-81.jpg +0 -0
- data/docs/nasu/keynote/cucumber04.key/Data/mt5@2x-82.jpg +0 -0
- data/docs/nasu/keynote/cucumber04.key/Data/mt6@2x-83.jpg +0 -0
- data/docs/nasu/keynote/cucumber04.key/Data/mt7@2x-84.jpg +0 -0
- data/docs/nasu/keynote/cucumber04.key/Data/mt8@2x-85.jpg +0 -0
- data/docs/nasu/keynote/cucumber04.key/Data/mt9@2x-86.jpg +0 -0
- data/docs/nasu/keynote/cucumber04.key/Data/pasted-image-106.png +0 -0
- data/docs/nasu/keynote/cucumber04.key/Data/pasted-image-small-107.png +0 -0
- data/docs/nasu/keynote/cucumber04.key/Data/st0-115.jpg +0 -0
- data/docs/nasu/keynote/cucumber04.key/Index.zip +0 -0
- data/docs/nasu/keynote/cucumber04.key/Metadata/BuildVersionHistory.plist +8 -0
- data/docs/nasu/keynote/cucumber04.key/Metadata/DocumentIdentifier +1 -0
- data/docs/nasu/keynote/cucumber04.key/Metadata/Properties.plist +0 -0
- data/docs/nasu/keynote/cucumber04.key/preview-micro.jpg +0 -0
- data/docs/nasu/keynote/cucumber04.key/preview-web.jpg +0 -0
- data/docs/nasu/keynote/cucumber04.key/preview.jpg +0 -0
- data/docs/nasu/keynote/cucumber05.key/Data/110809_FamilyChineseOahu_EN_00317_2040x1360-small-12.jpg +0 -0
- data/docs/nasu/keynote/cucumber05.key/Data/110809_FamilyChineseOahu_EN_02016_981x654-small-14.jpg +0 -0
- data/docs/nasu/keynote/cucumber05.key/Data/110809_FamilyChineseOahu_EN_02390_2880x1921-small-10.jpg +0 -0
- data/docs/nasu/keynote/cucumber05.key/Data/mt10@2x-87.jpg +0 -0
- data/docs/nasu/keynote/cucumber05.key/Data/mt1@2x-78.jpg +0 -0
- data/docs/nasu/keynote/cucumber05.key/Data/mt2@2x-79.jpg +0 -0
- data/docs/nasu/keynote/cucumber05.key/Data/mt3@2x-80.jpg +0 -0
- data/docs/nasu/keynote/cucumber05.key/Data/mt4@2x-81.jpg +0 -0
- data/docs/nasu/keynote/cucumber05.key/Data/mt5@2x-82.jpg +0 -0
- data/docs/nasu/keynote/cucumber05.key/Data/mt6@2x-83.jpg +0 -0
- data/docs/nasu/keynote/cucumber05.key/Data/mt7@2x-84.jpg +0 -0
- data/docs/nasu/keynote/cucumber05.key/Data/mt8@2x-85.jpg +0 -0
- data/docs/nasu/keynote/cucumber05.key/Data/mt9@2x-86.jpg +0 -0
- data/docs/nasu/keynote/cucumber05.key/Data/pasted-image-89.png +0 -0
- data/docs/nasu/keynote/cucumber05.key/Data/pasted-image-small-90.png +0 -0
- data/docs/nasu/keynote/cucumber05.key/Data/st0-97.jpg +0 -0
- data/docs/nasu/keynote/cucumber05.key/Index.zip +0 -0
- data/docs/nasu/keynote/cucumber05.key/Metadata/BuildVersionHistory.plist +8 -0
- data/docs/nasu/keynote/cucumber05.key/Metadata/DocumentIdentifier +1 -0
- data/docs/nasu/keynote/cucumber05.key/Metadata/Properties.plist +0 -0
- data/docs/nasu/keynote/cucumber05.key/preview-micro.jpg +0 -0
- data/docs/nasu/keynote/cucumber05.key/preview-web.jpg +0 -0
- data/docs/nasu/keynote/cucumber05.key/preview.jpg +0 -0
- data/docs/nasu/keynote/my_help_nasu1.key/Data/110809_FamilyChineseOahu_EN_00317_2040x1360-small-12.jpg +0 -0
- data/docs/nasu/keynote/my_help_nasu1.key/Data/110809_FamilyChineseOahu_EN_02016_981x654-small-14.jpg +0 -0
- data/docs/nasu/keynote/my_help_nasu1.key/Data/110809_FamilyChineseOahu_EN_02390_2880x1921-small-10.jpg +0 -0
- data/docs/nasu/keynote/my_help_nasu1.key/Data/mt10@2x-87.jpg +0 -0
- data/docs/nasu/keynote/my_help_nasu1.key/Data/mt1@2x-78.jpg +0 -0
- data/docs/nasu/keynote/my_help_nasu1.key/Data/mt2@2x-79.jpg +0 -0
- data/docs/nasu/keynote/my_help_nasu1.key/Data/mt3@2x-80.jpg +0 -0
- data/docs/nasu/keynote/my_help_nasu1.key/Data/mt4@2x-81.jpg +0 -0
- data/docs/nasu/keynote/my_help_nasu1.key/Data/mt5@2x-82.jpg +0 -0
- data/docs/nasu/keynote/my_help_nasu1.key/Data/mt6@2x-83.jpg +0 -0
- data/docs/nasu/keynote/my_help_nasu1.key/Data/mt7@2x-84.jpg +0 -0
- data/docs/nasu/keynote/my_help_nasu1.key/Data/mt8@2x-85.jpg +0 -0
- data/docs/nasu/keynote/my_help_nasu1.key/Data/mt9@2x-86.jpg +0 -0
- data/docs/nasu/keynote/my_help_nasu1.key/Data/st0-299.jpg +0 -0
- data/docs/nasu/keynote/my_help_nasu1.key/Index.zip +0 -0
- data/docs/nasu/keynote/my_help_nasu1.key/Metadata/BuildVersionHistory.plist +8 -0
- data/docs/nasu/keynote/my_help_nasu1.key/Metadata/DocumentIdentifier +1 -0
- data/docs/nasu/keynote/my_help_nasu1.key/Metadata/Properties.plist +0 -0
- data/docs/nasu/keynote/my_help_nasu1.key/preview-micro.jpg +0 -0
- data/docs/nasu/keynote/my_help_nasu1.key/preview-web.jpg +0 -0
- data/docs/nasu/keynote/my_help_nasu1.key/preview.jpg +0 -0
- data/docs/nasu/keynote/rspec01.key/Data/110809_FamilyChineseOahu_EN_00317_2040x1360-small-12.jpg +0 -0
- data/docs/nasu/keynote/rspec01.key/Data/110809_FamilyChineseOahu_EN_02016_981x654-small-14.jpg +0 -0
- data/docs/nasu/keynote/rspec01.key/Data/110809_FamilyChineseOahu_EN_02390_2880x1921-small-10.jpg +0 -0
- data/docs/nasu/keynote/rspec01.key/Data/mt10@2x-87.jpg +0 -0
- data/docs/nasu/keynote/rspec01.key/Data/mt1@2x-78.jpg +0 -0
- data/docs/nasu/keynote/rspec01.key/Data/mt2@2x-79.jpg +0 -0
- data/docs/nasu/keynote/rspec01.key/Data/mt3@2x-80.jpg +0 -0
- data/docs/nasu/keynote/rspec01.key/Data/mt4@2x-81.jpg +0 -0
- data/docs/nasu/keynote/rspec01.key/Data/mt5@2x-82.jpg +0 -0
- data/docs/nasu/keynote/rspec01.key/Data/mt6@2x-83.jpg +0 -0
- data/docs/nasu/keynote/rspec01.key/Data/mt7@2x-84.jpg +0 -0
- data/docs/nasu/keynote/rspec01.key/Data/mt8@2x-85.jpg +0 -0
- data/docs/nasu/keynote/rspec01.key/Data/mt9@2x-86.jpg +0 -0
- data/docs/nasu/keynote/rspec01.key/Data/pasted-image-89.png +0 -0
- data/docs/nasu/keynote/rspec01.key/Data/pasted-image-small-90.png +0 -0
- data/docs/nasu/keynote/rspec01.key/Data/st0-96.jpg +0 -0
- data/docs/nasu/keynote/rspec01.key/Index.zip +0 -0
- data/docs/nasu/keynote/rspec01.key/Metadata/BuildVersionHistory.plist +8 -0
- data/docs/nasu/keynote/rspec01.key/Metadata/DocumentIdentifier +1 -0
- data/docs/nasu/keynote/rspec01.key/Metadata/Properties.plist +0 -0
- data/docs/nasu/keynote/rspec01.key/preview-micro.jpg +0 -0
- data/docs/nasu/keynote/rspec01.key/preview-web.jpg +0 -0
- data/docs/nasu/keynote/rspec01.key/preview.jpg +0 -0
- data/docs/nasu/latex_dir/abstract.tex +18 -0
- data/{my_help_nasu → docs/nasu}/latex_dir/code.tex +9 -21
- data/docs/nasu/latex_dir/discussion.aux +28 -0
- data/docs/nasu/latex_dir/discussion.tex +19 -0
- data/docs/nasu/latex_dir/features.aux +30 -0
- data/docs/nasu/latex_dir/features.tex +186 -0
- data/{my_help_nasu → docs/nasu}/latex_dir/head.tex +1 -1
- data/{my_help_nasu → docs/nasu}/latex_dir/introduction.aux +3 -3
- data/{my_help_nasu → docs/nasu}/latex_dir/introduction.tex +15 -16
- data/{my_help_nasu → docs/nasu}/latex_dir/jlisting.sty +0 -0
- data/{my_help_nasu/latex_dir/consideration.aux → docs/nasu/latex_dir/method.aux} +7 -8
- data/docs/nasu/latex_dir/method.tex +6 -0
- data/{my_help_nasu → docs/nasu}/latex_dir/method_bdd.aux +10 -7
- data/{my_help_nasu → docs/nasu}/latex_dir/method_bdd.tex +14 -5
- data/{my_help_nasu → docs/nasu}/latex_dir/method_cucumber.aux +10 -9
- data/{my_help_nasu → docs/nasu}/latex_dir/method_cucumber.tex +15 -18
- data/{my_help_nasu → docs/nasu}/latex_dir/method_usage.aux +11 -11
- data/{my_help_nasu → docs/nasu}/latex_dir/method_usage.tex +35 -29
- data/{my_help_nasu → docs/nasu}/latex_dir/my_help_nasu.aux +6 -5
- data/docs/nasu/latex_dir/my_help_nasu.log +363 -0
- data/docs/nasu/latex_dir/my_help_nasu.pdf +0 -0
- data/docs/nasu/latex_dir/my_help_nasu.synctex.gz +0 -0
- data/{my_help_nasu → docs/nasu}/latex_dir/my_help_nasu.tex +12 -18
- data/docs/nasu/latex_dir/my_help_nasu.toc +35 -0
- data/docs/nasu/latex_dir/new_code.aux +44 -0
- data/docs/nasu/latex_dir/new_code.tex +237 -0
- data/{my_help_nasu → docs/nasu}/latex_dir/overview.aux +2 -2
- data/{my_help_nasu/latex_dir → docs/nasu}/latex_dir/pre.tex +0 -0
- data/docs/nasu/method.hiki +5 -0
- data/{my_help_nasu → docs/nasu}/method_bdd.hiki +14 -8
- data/{my_help_nasu → docs/nasu}/method_cucumber.hiki +14 -17
- data/{my_help_nasu → docs/nasu}/method_usage.hiki +25 -24
- data/docs/nasu/my_help_nasu/my_help_nasu.001.bb +5 -0
- data/{my_help_nasu → docs/nasu}/my_help_nasu/my_help_nasu.001.jpeg +0 -0
- data/docs/nasu/my_help_nasu/my_help_nasu.002.bb +5 -0
- data/docs/nasu/my_help_nasu/my_help_nasu.002.jpeg +0 -0
- data/docs/nasu/my_help_nasu/my_help_nasu.003.bb +5 -0
- data/docs/nasu/my_help_nasu/my_help_nasu.003.jpeg +0 -0
- data/docs/nasu/my_help_nasu/my_help_nasu.004.bb +5 -0
- data/docs/nasu/my_help_nasu/my_help_nasu.004.jpeg +0 -0
- data/docs/nasu/my_help_nasu/my_help_nasu.005.bb +5 -0
- data/docs/nasu/my_help_nasu/my_help_nasu.005.jpeg +0 -0
- data/docs/nasu/my_help_nasu/my_help_nasu.006.bb +5 -0
- data/docs/nasu/my_help_nasu/my_help_nasu.006.jpeg +0 -0
- data/docs/nasu/my_help_nasu/my_help_nasu.007.bb +5 -0
- data/docs/nasu/my_help_nasu/my_help_nasu.007.jpeg +0 -0
- data/docs/nasu/my_help_nasu/my_help_nasu.008.bb +5 -0
- data/docs/nasu/my_help_nasu/my_help_nasu.008.jpeg +0 -0
- data/docs/nasu/my_help_nasu.hiki +28 -0
- data/docs/nasu/my_help_nasu.key +0 -0
- data/docs/nasu/my_help_nasu09.key +0 -0
- data/docs/nasu/my_help_nasu1/my_help_nasu1.001.jpg +0 -0
- data/docs/nasu/nasu_abst/abst_fig.bb +5 -0
- data/docs/nasu/nasu_abst/abst_fig.png +0 -0
- data/docs/nasu/nasu_abst/my_help_nasu.001.bb +5 -0
- data/docs/nasu/nasu_abst/my_help_nasu.001.jpg +0 -0
- data/docs/nasu/nasu_abst/my_help_nasu.001.png +0 -0
- data/docs/nasu/nasu_abst/nasu_abst.aux +10 -0
- data/docs/nasu/nasu_abst/nasu_abst.log +179 -0
- data/docs/nasu/nasu_abst/nasu_abst.pdf +0 -0
- data/docs/nasu/nasu_abst/nasu_abst.synctex.gz +0 -0
- data/docs/nasu/nasu_abst/nasu_abst.tex +63 -0
- data/docs/nasu/new_code.hiki +246 -0
- data/docs/nasu/spec/.rspec +2 -0
- data/docs/nasu/spec/my_help_spec.rb +75 -0
- data/docs/nasu/spec/my_todo/todo_spec.rb +15 -0
- data/docs/nasu/spec/spec_helper.rb +11 -0
- data/docs/nasu/spec/support/aruba.rb +1 -0
- data/docs/nasu/spec/thor_spec.rb +81 -0
- data/docs/nasu/test/my_help_test.rb +11 -0
- data/docs/nasu/test/test_helper.rb +4 -0
- data/{hikis → docs}/tmp.org +0 -0
- data/docs/yagi/bachelor_thesis/final/figs/opt_thor.jpeg +0 -0
- data/docs/yagi/bachelor_thesis/final/handout/handout.aux +14 -0
- data/{my_help_nasu/latex_dir/my_help_nasu.log → docs/yagi/bachelor_thesis/final/handout/handout.log} +46 -175
- data/docs/yagi/bachelor_thesis/final/handout/handout.pdf +0 -0
- data/docs/yagi/bachelor_thesis/final/handout/handout.synctex.gz +0 -0
- data/docs/yagi/bachelor_thesis/final/handout/handout.tex +123 -0
- data/docs/yagi/bachelor_thesis/final/mk_latex/thesis/thesis.aux +46 -0
- data/docs/yagi/bachelor_thesis/final/mk_latex/thesis/thesis.dvi +0 -0
- data/{lor → docs/yagi/bachelor_thesis/final/mk_latex/thesis/thesis.lof} +0 -0
- data/docs/yagi/bachelor_thesis/final/mk_latex/thesis/thesis.lot +0 -0
- data/docs/yagi/bachelor_thesis/final/mk_latex/thesis/thesis.synctex.gz +0 -0
- data/docs/yagi/bachelor_thesis/final/mk_latex/thesis/thesis.toc +0 -0
- data/docs/yagi/bachelor_thesis/final/thesis/figs/opt_thor.png +0 -0
- data/docs/yagi/bachelor_thesis/final/thesis/final_thesis.ipynb +449 -0
- data/docs/yagi/bachelor_thesis/final/thesis/mk_latex/latex/final_thesis.tex +718 -0
- data/docs/yagi/bachelor_thesis/final/thesis/mk_latex/split_files/chapter1/chapter1.tex +8 -0
- data/docs/yagi/bachelor_thesis/final/thesis/mk_latex/split_files/chapter2/chapter2.log +28 -0
- data/docs/yagi/bachelor_thesis/final/thesis/mk_latex/split_files/chapter2/chapter2.tex +127 -0
- data/{my_help_nasu/latex_dir/method_cucumber.log → docs/yagi/bachelor_thesis/final/thesis/mk_latex/split_files/chapter3/chapter3.log} +11 -11
- data/docs/yagi/bachelor_thesis/final/thesis/mk_latex/split_files/chapter3/chapter3.tex +328 -0
- data/docs/yagi/bachelor_thesis/final/thesis/mk_latex/split_files/chapter4/chapter4.tex +13 -0
- data/docs/yagi/bachelor_thesis/final/thesis/mk_latex/split_files/chapter5/chapter5.tex +5 -0
- data/docs/yagi/bachelor_thesis/final/thesis/mk_latex/split_files/chapter6/chapter6.log +38 -0
- data/docs/yagi/bachelor_thesis/final/thesis/mk_latex/split_files/chapter6/chapter6.tex +28 -0
- data/docs/yagi/bachelor_thesis/final/thesis/mk_latex/split_files/informations/informations.aux +1 -0
- data/docs/yagi/bachelor_thesis/final/thesis/mk_latex/split_files/informations/informations.log +55 -0
- data/docs/yagi/bachelor_thesis/final/thesis/mk_latex/split_files/informations/informations.tex +6 -0
- data/docs/yagi/bachelor_thesis/final/thesis/mk_latex/split_files/tmp/tmp.tex +1 -0
- data/docs/yagi/bachelor_thesis/final/thesis/mk_latex/thesis/.splits_location.tex +6 -0
- data/docs/yagi/bachelor_thesis/final/thesis/mk_latex/thesis/thesis.aux +114 -0
- data/docs/yagi/bachelor_thesis/final/thesis/mk_latex/thesis/thesis.lof +4 -0
- data/docs/yagi/bachelor_thesis/final/thesis/mk_latex/thesis/thesis.log +699 -0
- data/docs/yagi/bachelor_thesis/final/thesis/mk_latex/thesis/thesis.lot +5 -0
- data/docs/yagi/bachelor_thesis/final/thesis/mk_latex/thesis/thesis.out.ps +98 -0
- data/docs/yagi/bachelor_thesis/final/thesis/mk_latex/thesis/thesis.pdf +0 -0
- data/docs/yagi/bachelor_thesis/final/thesis/mk_latex/thesis/thesis.synctex.gz +0 -0
- data/docs/yagi/bachelor_thesis/final/thesis/mk_latex/thesis/thesis.tex +30 -0
- data/docs/yagi/bachelor_thesis/final/thesis/mk_latex/thesis/thesis.toc +22 -0
- data/docs/yagi/bachelor_thesis/final/thesis/mk_latex/thesis/thesis_checked_180213_1433.pdf +0 -0
- data/docs/yagi/bachelor_thesis/final/thesis/mk_latex/thesis_pieces/form00_style.tex +25 -0
- data/docs/yagi/bachelor_thesis/final/thesis/mk_latex/thesis_pieces/tightlist_setting.tex +2 -0
- data/docs/yagi/bachelor_thesis/final/thesis/mk_latex/thesis_pieces/usepackage.tex +25 -0
- data/docs/yagi/bachelor_thesis/translation/awesome_chapter2.ipynb +84 -0
- data/docs/yagi/bachelor_thesis/translation/awesome_introduction.ipynb +328 -0
- data/docs/yagi/comparisons/.ipynb_checkpoints/Untitled-checkpoint.ipynb +6 -0
- data/docs/yagi/comparisons/.ipynb_checkpoints/comp-checkpoint.ipynb +230 -0
- data/docs/yagi/comparisons/comp.ipynb +178 -0
- data/docs/yagi/comparisons/hanami.rb +25 -0
- data/docs/yagi/comparisons/optparse.rb +21 -0
- data/docs/yagi/comparisons/thor.rb +11 -0
- data/docs/yagi/midterm_presentation/.ipynb_checkpoints/abst-checkpoint.ipynb +87 -0
- data/docs/yagi/midterm_presentation/abst.aux +16 -0
- data/docs/yagi/midterm_presentation/abst.ipynb +87 -0
- data/docs/yagi/midterm_presentation/abst.log +222 -0
- data/docs/yagi/midterm_presentation/abst.pdf +0 -0
- data/docs/yagi/midterm_presentation/abst.synctex.gz +0 -0
- data/docs/yagi/midterm_presentation/abst.tex +133 -0
- data/{my_help_nasu/latex_dir/jlisting.tex → docs/yagi/midterm_presentation/jlisting.sty} +0 -0
- data/docs/yagi/midterm_presentation/mid_keynote/mid_keynote.001.png +0 -0
- data/docs/yagi/midterm_presentation/mid_keynote/mid_keynote.002.png +0 -0
- data/docs/yagi/midterm_presentation/mid_keynote/mid_keynote.003.png +0 -0
- data/docs/yagi/midterm_presentation/mid_keynote/mid_keynote.004.png +0 -0
- data/docs/yagi/midterm_presentation/mid_keynote/mid_keynote.005.png +0 -0
- data/docs/yagi/midterm_presentation/mid_keynote.key/Data/110809_FamilyChineseOahu_EN_00317_2040x1360-small-12.jpg +0 -0
- data/docs/yagi/midterm_presentation/mid_keynote.key/Data/110809_FamilyChineseOahu_EN_02016_981x654-small-14.jpg +0 -0
- data/docs/yagi/midterm_presentation/mid_keynote.key/Data/110809_FamilyChineseOahu_EN_02390_2880x1921-small-10.jpg +0 -0
- data/docs/yagi/midterm_presentation/mid_keynote.key/Data/mt10@2x-92.jpg +0 -0
- data/docs/yagi/midterm_presentation/mid_keynote.key/Data/mt1@2x-83.jpg +0 -0
- data/docs/yagi/midterm_presentation/mid_keynote.key/Data/mt2@2x-84.jpg +0 -0
- data/docs/yagi/midterm_presentation/mid_keynote.key/Data/mt3@2x-85.jpg +0 -0
- data/docs/yagi/midterm_presentation/mid_keynote.key/Data/mt4@2x-86.jpg +0 -0
- data/docs/yagi/midterm_presentation/mid_keynote.key/Data/mt5@2x-87.jpg +0 -0
- data/docs/yagi/midterm_presentation/mid_keynote.key/Data/mt6@2x-88.jpg +0 -0
- data/docs/yagi/midterm_presentation/mid_keynote.key/Data/mt7@2x-89.jpg +0 -0
- data/docs/yagi/midterm_presentation/mid_keynote.key/Data/mt8@2x-90.jpg +0 -0
- data/docs/yagi/midterm_presentation/mid_keynote.key/Data/mt9@2x-91.jpg +0 -0
- data/docs/yagi/midterm_presentation/mid_keynote.key/Data/st0-438.jpg +0 -0
- data/docs/yagi/midterm_presentation/mid_keynote.key/Data/st1-598.jpg +0 -0
- data/docs/yagi/midterm_presentation/mid_keynote.key/Data/st2-648.jpg +0 -0
- data/docs/yagi/midterm_presentation/mid_keynote.key/Data/st3-652.jpg +0 -0
- data/docs/yagi/midterm_presentation/mid_keynote.key/Data/st4-671.jpg +0 -0
- data/docs/yagi/midterm_presentation/mid_keynote.key/Index.zip +0 -0
- data/docs/yagi/midterm_presentation/mid_keynote.key/Metadata/BuildVersionHistory.plist +8 -0
- data/docs/yagi/midterm_presentation/mid_keynote.key/Metadata/DocumentIdentifier +1 -0
- data/docs/yagi/midterm_presentation/mid_keynote.key/Metadata/Properties.plist +0 -0
- data/docs/yagi/midterm_presentation/mid_keynote.key/preview-micro.jpg +0 -0
- data/docs/yagi/midterm_presentation/mid_keynote.key/preview-web.jpg +0 -0
- data/docs/yagi/midterm_presentation/mid_keynote.key/preview.jpg +0 -0
- data/docs/yagi/thor_spec.ipynb +192 -0
- data/docs/yagi/thor_task.ipynb +98 -0
- data/exe/my_help +3 -1
- data/lib/my_help/org2yml.rb +46 -0
- data/lib/my_help/version.rb +1 -1
- data/lib/my_help/yml2org.rb +36 -0
- data/lib/my_help.rb +76 -30
- data/lib/my_help_thor.rb +170 -0
- data/lib/my_todo/my_todo.rb +5 -2
- data/lib/specific_help.rb +52 -25
- data/lib/{specific_help.rb~ → specific_help_bu.rb} +129 -89
- data/lib/specific_help_opt.rb +71 -0
- data/lib/specific_help_thor.rb +172 -0
- data/lib/templates/emacs_help.org +47 -0
- data/lib/templates/emacs_help_e.org +49 -0
- data/lib/templates/my_todo.org +11 -0
- data/lib/templates/template_help.org +8 -0
- data/make_docker.sh +5 -0
- data/my_help.gemspec +3 -2
- metadata +406 -92
- data/.DS_Store +0 -0
- data/CODE_OF_CONDUCT.md +0 -49
- data/README_en.md +0 -132
- data/exe/e_h +0 -4
- data/exe/emacs_help +0 -4
- data/exe/my_todo +0 -4
- data/hikis/README_en.hiki +0 -130
- data/hikis/README_ja.hiki +0 -316
- data/hikis/diff_against_org-mode.hiki +0 -34
- data/hikis/emacs_help.hiki +0 -47
- data/hikis/template_help.hiki +0 -51
- data/latexes/handout_pre.tex +0 -11
- data/lib/.emacs_help.rb.swp +0 -0
- data/lib/daddygongon/emacs_help.yml +0 -89
- data/lib/daddygongon/my_todo.yml +0 -31
- data/lib/daddygongon/template_help.yml +0 -33
- data/lib/emacs_help.rb~ +0 -137
- data/lib/my_todo/my_todo.rb~ +0 -7
- data/lib/todo.rb~ +0 -1
- data/my_help.wiki/Home.md +0 -330
- data/my_help.wiki/README_en.md +0 -132
- data/my_help.wiki/README_ja.md +0 -330
- data/my_help.wiki/emacs_help.md +0 -46
- data/my_help.wiki/template_help.md +0 -51
- data/my_help_nasu/.DS_Store +0 -0
- data/my_help_nasu/consideration.hiki +0 -8
- data/my_help_nasu/figs/my_help_nasu.001.jpeg +0 -0
- data/my_help_nasu/figs/my_help_nasu.001.jpg +0 -0
- data/my_help_nasu/figs/my_help_nasu1.001.jpg +0 -0
- data/my_help_nasu/latex_dir/.gitignore +0 -1
- data/my_help_nasu/latex_dir/Rakefile +0 -420
- data/my_help_nasu/latex_dir/code.aux +0 -25
- data/my_help_nasu/latex_dir/consideration.tex +0 -9
- data/my_help_nasu/latex_dir/features.aux +0 -31
- data/my_help_nasu/latex_dir/features.tex +0 -173
- data/my_help_nasu/latex_dir/hiki_help.yml +0 -53
- data/my_help_nasu/latex_dir/latex_dir/head.tex +0 -9
- data/my_help_nasu/latex_dir/latex_dir/jlisting.tex +0 -216
- data/my_help_nasu/latex_dir/my_help_nasu.pdf +0 -0
- data/my_help_nasu/latex_dir/my_help_nasu.synctex.gz +0 -0
- data/my_help_nasu/latex_dir/my_help_nasu.toc +0 -32
- data/my_help_nasu/latex_dir/overview.tex +0 -12
- data/my_help_nasu/latex_dir/pre.tex +0 -36
- data/my_help_nasu/my_help_nasu/.DS_Store +0 -0
- data/my_help_nasu/my_help_nasu.hiki +0 -32
- data/my_help_nasu/my_help_nasu.key +0 -0
- 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
|
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,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,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'
|