smalruby-editor 0.1.23 → 0.1.24
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of smalruby-editor might be problematic. Click here for more details.
- checksums.yaml +4 -4
- data/.rspec +0 -1
- data/.rubocop.yml +4 -0
- data/.ruby-version +1 -1
- data/.travis.yml +1 -1
- data/Guardfile +45 -0
- data/app/assets/javascripts/application.js +0 -1
- data/app/assets/javascripts/msg/ja.js +1 -1
- data/app/assets/stylesheets/toolbox.css.scss.erb +1 -16
- data/app/controllers/source_codes_controller.rb +12 -7
- data/app/models/source_code.rb +34 -1
- data/app/views/editor/_toolbox.html.haml +155 -143
- data/app/views/editor/index.html.haml +4 -4
- data/app/views/layouts/application.html.erb +2 -2
- data/bin/bundle +1 -1
- data/bin/rails +5 -1
- data/bin/rake +5 -1
- data/bin/rspec +7 -0
- data/bin/spring +20 -0
- data/bin/teaspoon +7 -0
- data/lib/smalruby_editor/version.rb +3 -3
- data/public/assets/{application-92fb2e7b8dd198fbfae7f8451c891ba2.css → application-d5358d75a2c4e570c749b333c59b55ab.css} +1 -1
- data/public/assets/application-d5358d75a2c4e570c749b333c59b55ab.css.gz +0 -0
- data/public/assets/{application-e3cd434424f565fcebf7d7d13353536f.js → application-fda71a642d958ffbaf90185c471d6e51.js} +5 -5
- data/public/assets/application-fda71a642d958ffbaf90185c471d6e51.js.gz +0 -0
- data/public/assets/{manifest-6094ee90554fe1d9bb1a229d8daa16d7.json → manifest-1a9856df207640ec658271db34b30dbb.json} +1 -1
- data/public/assets/msg/{ja-8f29832e96564fb7a0c2280c4d4390b8.js → ja-4d22bd0341f464f9d1b9f373121bce6d.js} +1 -1
- data/public/assets/msg/ja-4d22bd0341f464f9d1b9f373121bce6d.js.gz +0 -0
- data/smalruby-editor.gemspec +0 -1
- data/spec/models/source_code_spec.rb +88 -1
- data/spec/spec_helper.rb +114 -137
- metadata +13 -23
- data/public/assets/application-92fb2e7b8dd198fbfae7f8451c891ba2.css.gz +0 -0
- data/public/assets/application-e3cd434424f565fcebf7d7d13353536f.js.gz +0 -0
- data/public/assets/msg/ja-8f29832e96564fb7a0c2280c4d4390b8.js.gz +0 -0
Binary file
|
@@ -1 +1 @@
|
|
1
|
-
{"files":{"favicon-d958ba1d3efbea2e9a10fda1b5970b6c.ico":{"logical_path":"favicon.ico","mtime":"2014-12-02T18:24:29+09:00","size":5430,"digest":"d958ba1d3efbea2e9a10fda1b5970b6c"},"application-
|
1
|
+
{"files":{"favicon-d958ba1d3efbea2e9a10fda1b5970b6c.ico":{"logical_path":"favicon.ico","mtime":"2014-12-02T18:24:29+09:00","size":5430,"digest":"d958ba1d3efbea2e9a10fda1b5970b6c"},"application-fda71a642d958ffbaf90185c471d6e51.js":{"logical_path":"application.js","mtime":"2015-01-11T23:15:57+09:00","size":1167563,"digest":"fda71a642d958ffbaf90185c471d6e51"},"msg/en_us-893d970ff8061fbe7459f009582c4df5.js":{"logical_path":"msg/en_us.js","mtime":"2015-01-10T03:02:51+09:00","size":11508,"digest":"893d970ff8061fbe7459f009582c4df5"},"msg/ja-4d22bd0341f464f9d1b9f373121bce6d.js":{"logical_path":"msg/ja.js","mtime":"2015-01-11T14:27:38+09:00","size":12600,"digest":"4d22bd0341f464f9d1b9f373121bce6d"},"application-d5358d75a2c4e570c749b333c59b55ab.css":{"logical_path":"application.css","mtime":"2015-01-16T08:57:59+09:00","size":95948,"digest":"d5358d75a2c4e570c749b333c59b55ab"},"blockly/msg/js/en_us-6f7333af29688596ef863fa36a22cb41.js":{"logical_path":"blockly/msg/js/en_us.js","mtime":"2014-12-09T15:06:34+09:00","size":25835,"digest":"6f7333af29688596ef863fa36a22cb41"},"blockly/msg/js/ja-d2cbf808bda8180571bc5f39141a98fe.js":{"logical_path":"blockly/msg/js/ja.js","mtime":"2014-12-02T18:28:32+09:00","size":30238,"digest":"d2cbf808bda8180571bc5f39141a98fe"},"jquery-ui/animated-overlay-9b629ab5247187e831ea51106acdf03a.gif":{"logical_path":"jquery-ui/animated-overlay.gif","mtime":"2015-01-11T23:15:23+09:00","size":1738,"digest":"9b629ab5247187e831ea51106acdf03a"},"jquery-ui/ui-bg_flat_0_aaaaaa_40x100-e055bc219bd3aed111713c2ef884d6f4.png":{"logical_path":"jquery-ui/ui-bg_flat_0_aaaaaa_40x100.png","mtime":"2015-01-11T23:15:23+09:00","size":180,"digest":"e055bc219bd3aed111713c2ef884d6f4"},"jquery-ui/ui-bg_flat_75_ffffff_40x100-1ed964fd6a424fc2d8653d5a64705840.png":{"logical_path":"jquery-ui/ui-bg_flat_75_ffffff_40x100.png","mtime":"2015-01-11T23:15:23+09:00","size":178,"digest":"1ed964fd6a424fc2d8653d5a64705840"},"jquery-ui/ui-bg_glass_55_fbf9ee_1x400-c47b4313972b0311e02e671fd15a66c9.png":{"logical_path":"jquery-ui/ui-bg_glass_55_fbf9ee_1x400.png","mtime":"2015-01-11T23:15:23+09:00","size":120,"digest":"c47b4313972b0311e02e671fd15a66c9"},"jquery-ui/ui-bg_glass_65_ffffff_1x400-4b5173f329e3e9fbfcfcc88a84920e81.png":{"logical_path":"jquery-ui/ui-bg_glass_65_ffffff_1x400.png","mtime":"2015-01-11T23:15:23+09:00","size":105,"digest":"4b5173f329e3e9fbfcfcc88a84920e81"},"jquery-ui/ui-bg_glass_75_dadada_1x400-b0155cdc12d3bcdfa7f4890938366181.png":{"logical_path":"jquery-ui/ui-bg_glass_75_dadada_1x400.png","mtime":"2015-01-11T23:15:23+09:00","size":111,"digest":"b0155cdc12d3bcdfa7f4890938366181"},"jquery-ui/ui-bg_glass_75_e6e6e6_1x400-21014afa81b0fea76840432b22d9d0e5.png":{"logical_path":"jquery-ui/ui-bg_glass_75_e6e6e6_1x400.png","mtime":"2015-01-11T23:15:23+09:00","size":110,"digest":"21014afa81b0fea76840432b22d9d0e5"},"jquery-ui/ui-bg_glass_95_fef1ec_1x400-6526cba95388d3f36f03cc6296f192b5.png":{"logical_path":"jquery-ui/ui-bg_glass_95_fef1ec_1x400.png","mtime":"2015-01-11T23:15:23+09:00","size":119,"digest":"6526cba95388d3f36f03cc6296f192b5"},"jquery-ui/ui-bg_highlight-soft_75_cccccc_1x100-f0e42cc2ef6523f77aa730753cff0462.png":{"logical_path":"jquery-ui/ui-bg_highlight-soft_75_cccccc_1x100.png","mtime":"2015-01-11T23:15:23+09:00","size":101,"digest":"f0e42cc2ef6523f77aa730753cff0462"},"jquery-ui/ui-icons_222222_256x240-d5b2a50ddba8e90f9487cc29efbc9080.png":{"logical_path":"jquery-ui/ui-icons_222222_256x240.png","mtime":"2015-01-11T23:15:23+09:00","size":4369,"digest":"d5b2a50ddba8e90f9487cc29efbc9080"},"jquery-ui/ui-icons_2e83ff_256x240-735b447c0a9f42ce6836a1e74aad6f23.png":{"logical_path":"jquery-ui/ui-icons_2e83ff_256x240.png","mtime":"2015-01-11T23:15:23+09:00","size":4369,"digest":"735b447c0a9f42ce6836a1e74aad6f23"},"jquery-ui/ui-icons_454545_256x240-ed3057724414ea20ff7bae1cdb644aca.png":{"logical_path":"jquery-ui/ui-icons_454545_256x240.png","mtime":"2015-01-11T23:15:23+09:00","size":4369,"digest":"ed3057724414ea20ff7bae1cdb644aca"},"jquery-ui/ui-icons_888888_256x240-ce584ffa171c3ea9a018cf0d7bec65c8.png":{"logical_path":"jquery-ui/ui-icons_888888_256x240.png","mtime":"2015-01-11T23:15:23+09:00","size":4369,"digest":"ce584ffa171c3ea9a018cf0d7bec65c8"},"jquery-ui/ui-icons_cd0a0a_256x240-747e96029e8dedcabc224e5f7d1f2ede.png":{"logical_path":"jquery-ui/ui-icons_cd0a0a_256x240.png","mtime":"2015-01-11T23:15:23+09:00","size":4369,"digest":"747e96029e8dedcabc224e5f7d1f2ede"},"loading-e77296be32d066d3e29d3bf9803fa417.gif":{"logical_path":"loading.gif","mtime":"2015-01-11T23:11:45+09:00","size":3897,"digest":"e77296be32d066d3e29d3bf9803fa417"},"progressbar-ee8fb1222f286f625bbf7332844a6a0c.gif":{"logical_path":"progressbar.gif","mtime":"2015-01-11T23:11:45+09:00","size":3323,"digest":"ee8fb1222f286f625bbf7332844a6a0c"}},"assets":{"favicon.ico":"favicon-d958ba1d3efbea2e9a10fda1b5970b6c.ico","application.js":"application-fda71a642d958ffbaf90185c471d6e51.js","msg/en_us.js":"msg/en_us-893d970ff8061fbe7459f009582c4df5.js","msg/ja.js":"msg/ja-4d22bd0341f464f9d1b9f373121bce6d.js","application.css":"application-d5358d75a2c4e570c749b333c59b55ab.css","blockly/msg/js/en_us.js":"blockly/msg/js/en_us-6f7333af29688596ef863fa36a22cb41.js","blockly/msg/js/ja.js":"blockly/msg/js/ja-d2cbf808bda8180571bc5f39141a98fe.js","jquery-ui/animated-overlay.gif":"jquery-ui/animated-overlay-9b629ab5247187e831ea51106acdf03a.gif","jquery-ui/ui-bg_flat_0_aaaaaa_40x100.png":"jquery-ui/ui-bg_flat_0_aaaaaa_40x100-e055bc219bd3aed111713c2ef884d6f4.png","jquery-ui/ui-bg_flat_75_ffffff_40x100.png":"jquery-ui/ui-bg_flat_75_ffffff_40x100-1ed964fd6a424fc2d8653d5a64705840.png","jquery-ui/ui-bg_glass_55_fbf9ee_1x400.png":"jquery-ui/ui-bg_glass_55_fbf9ee_1x400-c47b4313972b0311e02e671fd15a66c9.png","jquery-ui/ui-bg_glass_65_ffffff_1x400.png":"jquery-ui/ui-bg_glass_65_ffffff_1x400-4b5173f329e3e9fbfcfcc88a84920e81.png","jquery-ui/ui-bg_glass_75_dadada_1x400.png":"jquery-ui/ui-bg_glass_75_dadada_1x400-b0155cdc12d3bcdfa7f4890938366181.png","jquery-ui/ui-bg_glass_75_e6e6e6_1x400.png":"jquery-ui/ui-bg_glass_75_e6e6e6_1x400-21014afa81b0fea76840432b22d9d0e5.png","jquery-ui/ui-bg_glass_95_fef1ec_1x400.png":"jquery-ui/ui-bg_glass_95_fef1ec_1x400-6526cba95388d3f36f03cc6296f192b5.png","jquery-ui/ui-bg_highlight-soft_75_cccccc_1x100.png":"jquery-ui/ui-bg_highlight-soft_75_cccccc_1x100-f0e42cc2ef6523f77aa730753cff0462.png","jquery-ui/ui-icons_222222_256x240.png":"jquery-ui/ui-icons_222222_256x240-d5b2a50ddba8e90f9487cc29efbc9080.png","jquery-ui/ui-icons_2e83ff_256x240.png":"jquery-ui/ui-icons_2e83ff_256x240-735b447c0a9f42ce6836a1e74aad6f23.png","jquery-ui/ui-icons_454545_256x240.png":"jquery-ui/ui-icons_454545_256x240-ed3057724414ea20ff7bae1cdb644aca.png","jquery-ui/ui-icons_888888_256x240.png":"jquery-ui/ui-icons_888888_256x240-ce584ffa171c3ea9a018cf0d7bec65c8.png","jquery-ui/ui-icons_cd0a0a_256x240.png":"jquery-ui/ui-icons_cd0a0a_256x240-747e96029e8dedcabc224e5f7d1f2ede.png","loading.gif":"loading-e77296be32d066d3e29d3bf9803fa417.gif","progressbar.gif":"progressbar-ee8fb1222f286f625bbf7332844a6a0c.gif"}}
|
@@ -1 +1 @@
|
|
1
|
-
goog.provide("Blockly.Msg.ja.smalruby"),goog.require("Blockly.Msg"),Blockly.Msg.VIEWS_MAIN_MENU_VIEW_COMMON_LINES="行",Blockly.Msg.VIEWS_MAIN_MENU_VIEW_COMMON_LETTERS="文字",Blockly.Msg.VIEWS_MAIN_MENU_VIEW_COMMON_COMMA="、",Blockly.Msg.VIEWS_MAIN_MENU_VIEW_BLOCK_MODE_BLOCKUI_TITLE="プログラムの変換中",Blockly.Msg.VIEWS_MAIN_MENU_VIEW_BLOCK_MODE_BLOCKUI_MESSAGE="プログラムをブロックに変換しています。",Blockly.Msg.VIEWS_MAIN_MENU_VIEW_BLOCK_MODE_ERROR="ブロックへの変換に失敗しました",Blockly.Msg.VIEWS_MAIN_MENU_VIEW_RUN_BLOCKUI_TITLE="プログラムの実行中",Blockly.Msg.VIEWS_MAIN_MENU_VIEW_RUN_BLOCKUI_MESSAGE="プログラムの画面に切り替えてください。",Blockly.Msg.VIEWS_MAIN_MENU_VIEW_RUN_BLOCKUI_NOTICE="プログラムをセーブ・チェックしてから実行するよ♪<br>Escキーを押すとプログラムが終わります。",Blockly.Msg.VIEWS_MAIN_MENU_VIEW_RUN_ERROR_CANT_RUN="プログラムを実行できませんでした",Blockly.Msg.VIEWS_MAIN_MENU_VIEW_RUN_ERROR_CANCEL_TO_RUN="プログラムの実行をキャンセルしました",Blockly.Msg.VIEWS_MAIN_MENU_VIEW_DOWNLOAD_BLOCKUI_TITLE="プログラムのダウンロード中",Blockly.Msg.VIEWS_MAIN_MENU_VIEW_DOWNLOAD_BLOCKUI_MESSAGE="プログラムをダウンロードしています。",Blockly.Msg.BLOCKS_MOTION_MOVE="%1歩動かす",Blockly.Msg.BLOCKS_MOTION_TURN_RIGHT_DEGREES="時計回りに%1度回す",Blockly.Msg.BLOCKS_MOTION_TURN_LEFT_DEGREES="反時計回りに%1度回す",Blockly.Msg.BLOCKS_MOTION_POINT_IN_DIRECTION="%1度に向ける",Blockly.Msg.BLOCKS_MOTION_POINT_TOWARDS_MOUSE="マウスポインターへ向ける",Blockly.Msg.BLOCKS_MOTION_POINT_TOWARDS_CHARACTER="へ向ける",Blockly.Msg.BLOCKS_MOTION_SET_X_Y_X="x座標を",Blockly.Msg.BLOCKS_MOTION_SET_X_Y_Y="、y座標を",Blockly.Msg.BLOCKS_MOTION_SET_X_Y_SUFFIX="にする",Blockly.Msg.BLOCKS_MOTION_GO_TO_MOUSE="マウスポインターへ行く",Blockly.Msg.BLOCKS_MOTION_GO_TO_CHARACTER_PREFIX="",Blockly.Msg.BLOCKS_MOTION_GO_TO_CHARACTER_SUFFIX="へ行く",Blockly.Msg.BLOCKS_MOTION_CHANGE_X_BY="x座標を%1ずつ変える",Blockly.Msg.BLOCKS_MOTION_SET_X="x座標を%1にする",Blockly.Msg.BLOCKS_MOTION_CHANGE_Y_BY="y座標を%1ずつ変える",Blockly.Msg.BLOCKS_MOTION_SET_Y="y座標を%1にする",Blockly.Msg.BLOCKS_MOTION_TURN_IF_REACH_WALL="もし端に着いたら、跳ね返る",Blockly.Msg.BLOCKS_MOTION_TURN="跳ね返る",Blockly.Msg.BLOCKS_MOTION_TURN_XY_X="水平(x)",Blockly.Msg.BLOCKS_MOTION_TURN_XY_Y="垂直(y)",Blockly.Msg.BLOCKS_MOTION_TURN_XY_PREFIX="",Blockly.Msg.BLOCKS_MOTION_TURN_XY_SUFFIX="方向に跳ね返る",Blockly.Msg.BLOCKS_MOTION_SET_ROTATION_STYLE_LEFT_RIGHT="左右のみ",Blockly.Msg.BLOCKS_MOTION_SET_ROTATION_STYLE_NONE="回転しない",Blockly.Msg.BLOCKS_MOTION_SET_ROTATION_STYLE_FREE="自由に回転",Blockly.Msg.BLOCKS_MOTION_SET_ROTATION_STYLE_PREFIX="回転方法を",Blockly.Msg.BLOCKS_MOTION_SET_ROTATION_STYLE_SUFFIX="にする",Blockly.Msg.BLOCKS_MOTION_SELF_X="x座標",Blockly.Msg.BLOCKS_MOTION_SELF_Y="y座標",Blockly.Msg.BLOCKS_MOTION_SELF_ANGLE="向き",Blockly.Msg.BLOCKS_EVENTS_ON_START="実行ボタンがクリックされたとき",Blockly.Msg.BLOCKS_EVENTS_ON_KEY_PUSH_OR_DOWN_PREFIX="キーボードの",Blockly.Msg.BLOCKS_EVENTS_ON_KEY_PUSH_OR_DOWN_MIDDLE="が",Blockly.Msg.BLOCKS_EVENTS_ON_KEY_PUSH_OR_DOWN_SUFFIX="とき",Blockly.Msg.BLOCKS_EVENTS_ON_CLICK="キャラクターがクリックされたとき",Blockly.Msg.BLOCKS_EVENTS_ON_HIT_PREFIX="",Blockly.Msg.BLOCKS_EVENTS_ON_HIT_SUFFIX="にぶつかったとき",Blockly.Msg.BLOCKS_SENSING_K_UP="↑",Blockly.Msg.BLOCKS_SENSING_K_DOWN="↓",Blockly.Msg.BLOCKS_SENSING_K_LEFT="←",Blockly.Msg.BLOCKS_SENSING_K_RIGHT="→",Blockly.Msg.BLOCKS_SENSING_K_SPACE="スペース",Blockly.Msg.BLOCKS_SENSING_PUSH="押された",Blockly.Msg.BLOCKS_SENSING_HOLD_DOWN="押され続けている",Blockly.Msg.BLOCKS_SENSING_DOWN=Blockly.Msg.BLOCKS_SENSING_PUSH,Blockly.Msg.BLOCKS_SENSING_M_LBUTTON="左ボタン",Blockly.Msg.BLOCKS_SENSING_M_MBUTTON="中ボタン",Blockly.Msg.BLOCKS_SENSING_M_RBUTTON="右ボタン",Blockly.Msg.BLOCKS_SENSING_UP="押された",Blockly.Msg.BLOCKS_SENSING_REACH_WALL="端に触れた",Blockly.Msg.BLOCKS_SENSING_INPUT_KEY_PUSH_OR_DOWN_PREFIX="キーボードの",Blockly.Msg.BLOCKS_SENSING_INPUT_KEY_PUSH_OR_DOWN_MIDDLE="が",Blockly.Msg.BLOCKS_SENSING_INPUT_KEY_PUSH_OR_DOWN_SUFFIX="",Blockly.Msg.BLOCKS_SENSING_INPUT_MOUSE_PUSH_OR_DOWN_PREFIX="マウスの",Blockly.Msg.BLOCKS_SENSING_INPUT_MOUSE_PUSH_OR_DOWN_MIDDLE="が",Blockly.Msg.BLOCKS_SENSING_INPUT_MOUSE_PUSH_OR_DOWN_SUFFIX="",Blockly.Msg.BLOCKS_SENSING_INPUT_MOUSE_POS_X="マウスのx座標",Blockly.Msg.BLOCKS_SENSING_INPUT_MOUSE_POS_Y="マウスのy座標",Blockly.Msg.BLOCKS_SENSING_HIT_PREFIX="",Blockly.Msg.BLOCKS_SENSING_HIT_SUFFIX="に触れた",Blockly.Msg.BLOCKS_SENSING_CHARACTER_PROPERTY_X="x座標",Blockly.Msg.BLOCKS_SENSING_CHARACTER_PROPERTY_Y="y座標",Blockly.Msg.BLOCKS_SENSING_CHARACTER_PROPERTY_ANGLE="向き",Blockly.Msg.BLOCKS_SENSING_CHARACTER_PROPERTY_COSTUME_INDEX="コスチューム番号",Blockly.Msg.BLOCKS_SENSING_CHARACTER_PROPERTY_COSTUME="コスチューム名",Blockly.Msg.BLOCKS_SENSING_CHARACTER_PROPERTY_SCALE="大きさ",Blockly.Msg.BLOCKS_SENSING_CHARACTER_PROPERTY_VOLUME="ボリューム",Blockly.Msg.BLOCKS_SENSING_CHARACTER_PROPERTY_MIDDLE="の",Blockly.Msg.BLOCKS_SENSING_TIME_NOW_YEAR="年",Blockly.Msg.BLOCKS_SENSING_TIME_NOW_MONTH="月",Blockly.Msg.BLOCKS_SENSING_TIME_NOW_DAY="日",Blockly.Msg.BLOCKS_SENSING_TIME_NOW_WDAY="曜日",Blockly.Msg.BLOCKS_SENSING_TIME_NOW_HOUR="時",Blockly.Msg.BLOCKS_SENSING_TIME_NOW_MIN="分",Blockly.Msg.BLOCKS_SENSING_TIME_NOW_SEC="秒",Blockly.Msg.BLOCKS_SENSING_TIME_NOW="現在の",Blockly.Msg.BLOCKS_CONTROL_SLEEP="%1秒待つ",Blockly.Msg.BLOCKS_CONTROL_LOOP="ずっと",Blockly.Msg.BLOCKS_CONTROL_LOOP_END="を繰り返す",Blockly.Msg.BLOCKS_CONTROL_BREAK="繰り返しから脱出する",Blockly.Msg.BLOCKS_CONTROL_NEXT="次の繰り返しにジャンプする",Blockly.Msg.BLOCKS_CONTROL_REDO="現在の繰り返しをやり直す",Blockly.Msg.BLOCKS_CONTROL_IF="もし",Blockly.Msg.BLOCKS_CONTROL_THEN="ならば",Blockly.Msg.BLOCKS_CONTROL_ELSE="でなければ",Blockly.Msg.BLOCKS_CONTROL_TIMES="%1回繰り返す",Blockly.Msg.BLOCKS_CONTROL_AWAIT_UNTIL="%1まで待つ",Blockly.Msg.BLOCKS_CONTROL_UNTIL="%1まで",Blockly.Msg.BLOCKS_CONTROL_AWAIT="ほんの少し待つ",Blockly.Msg.BLOCKS_RUBY_STATEMENT="文",Blockly.Msg.BLOCKS_RUBY_EXPRESSION="式",Blockly.Msg.BLOCKS_RUBY_COMMENT="コメント",Blockly.Msg.BLOCKS_FIELD_CHARACTER_NO_CHARACTER="キャラクターなし",Blockly.Msg.BLOCKS_SOUND_PRESET_SOUNDS_PIANO_DO="ピアノのド",Blockly.Msg.BLOCKS_SOUND_PRESET_SOUNDS_PIANO_RE="ピアノのレ",Blockly.Msg.BLOCKS_SOUND_PRESET_SOUNDS_PIANO_MI="ピアノのミ",Blockly.Msg.BLOCKS_SOUND_PRESET_SOUNDS_PIANO_FA="ピアノのファ",Blockly.Msg.BLOCKS_SOUND_PRESET_SOUNDS_PIANO_SO="ピアノのソ",Blockly.Msg.BLOCKS_SOUND_PRESET_SOUNDS_PIANO_RA="ピアノのラ",Blockly.Msg.BLOCKS_SOUND_PRESET_SOUNDS_PIANO_SI="ピアノのシ",Blockly.Msg.BLOCKS_SOUND_PRESET_SOUNDS_PIANO_DO_2="ピアノの高いド",Blockly.Msg.BLOCKS_SOUND_PLAY="%1の音を鳴らす",Blockly.Msg.BLOCKS_LOOKS_SAY="%1と言う",Blockly.Msg.BLOCKS_LOOKS_THINK="%1と考える",Blockly.Msg.BLOCKS_LOOKS_SAY_WITH_SECOND="%1と%2秒と言う",Blockly.Msg.BLOCKS_LOOKS_THINK_WITH_SECOND="%1と%2秒と考える",Blockly.Msg.BLOCKS_LOOKS_SHOW="表示する",Blockly.Msg.BLOCKS_LOOKS_HIDE="隠す",Blockly.Msg.BLOCKS_LOOKS_VANISH="消滅する",Blockly.Msg.BLOCKS_HARDWARE_LED_ON="LED%1をオンにする",Blockly.Msg.BLOCKS_HARDWARE_LED_OFF="LED%1をオフにする",Blockly.Msg.BLOCKS_HARDWARE_ANODE="アノード",Blockly.Msg.BLOCKS_HARDWARE_CATHODE="カソード",Blockly.Msg.BLOCKS_HARDWARE_LEFT=" 左",Blockly.Msg.BLOCKS_HARDWARE_RIGHT="右",Blockly.Msg.BLOCKS_HARDWARE_INIT_HARDWARE="ハードウェアを準備する",Blockly.Msg.BLOCKS_HARDWARE_RGB_LED_ON="set RGB LED %1 common %2 color to %3",Blockly.Msg.BLOCKS_HARDWARE_RGB_LED_ON="RGB LED%1コモン%2を%3にする",Blockly.Msg.BLOCKS_HARDWARE_RGB_LED_OFF="RGB LED%1コモン%2をオフにする",Blockly.Msg.BLOCKS_HARDWARE_SEVEN_SEGMENT_DISPLAY_SHOW="7セグディスプレイに%1を表示する",Blockly.Msg.BLOCKS_HARDWARE_SEVEN_SEGMENT_DISPLAY_OFF="7セグディスプレイをオフにする",Blockly.Msg.BLOCKS_HARDWARE_LCD_PUTS="LCDに%1を表示する",Blockly.Msg.BLOCKS_HARDWARE_LCD_CLEAR="LCDをクリアする",Blockly.Msg.BLOCKS_HARDWARE_SERVO_SET_POSITION="サーボ%1を%2度(5~180)にする",Blockly.Msg.BLOCKS_HARDWARE_TWO_WHEEL_DRIVE_CAR_FORWARD="2WD車%1を進める",Blockly.Msg.BLOCKS_HARDWARE_TWO_WHEEL_DRIVE_CAR_BACKWARD="2WD車%1をバックさせる",Blockly.Msg.BLOCKS_HARDWARE_TWO_WHEEL_DRIVE_CAR_TURN_LEFT="2WD車%1を左に曲げる",Blockly.Msg.BLOCKS_HARDWARE_TWO_WHEEL_DRIVE_CAR_TURN_RIGHT="2WD車%1を右に曲げる",Blockly.Msg.BLOCKS_HARDWARE_TWO_WHEEL_DRIVE_CAR_STOP="2WD車%1を止める",Blockly.Msg.BLOCKS_HARDWARE_TWO_WHEEL_DRIVE_CAR_RUN="2WD車%2を%3秒%1",Blockly.Msg.BLOCKS_HARDWARE_TWO_WHEEL_DRIVE_CAR_COMMANDS_FORWARD="進める",Blockly.Msg.BLOCKS_HARDWARE_TWO_WHEEL_DRIVE_CAR_COMMANDS_BACKWARD="バックさせる",Blockly.Msg.BLOCKS_HARDWARE_TWO_WHEEL_DRIVE_CAR_COMMANDS_TURN_LEFT="左に曲げる",Blockly.Msg.BLOCKS_HARDWARE_TWO_WHEEL_DRIVE_CAR_COMMANDS_TURN_RIGHT="右に曲げる",Blockly.Msg.BLOCKS_HARDWARE_TWO_WHEEL_DRIVE_CAR_COMMANDS_STOP="止める",Blockly.Msg.BLOCKS_HARDWARE_TWO_WHEEL_DRIVE_CAR_SET_SPEED="2WD車%1の%2の速度(%)を%3にする",Blockly.Msg.BLOCKS_HARDWARE_TWO_WHEEL_DRIVE_CAR_SPEED="2WD車%1の%2の速度(%)",Blockly.Msg.BLOCKS_HARDWARE_MOTOR_DRIVER_FORWARD="正転させる",Blockly.Msg.BLOCKS_HARDWARE_MOTOR_DRIVER_BACKWARD="逆転させる",Blockly.Msg.BLOCKS_HARDWARE_MOTOR_DRIVER_STOP="止める",Blockly.Msg.BLOCKS_HARDWARE_MOTOR_DRIVER="(モータードライバ%1で)モーターを%2",Blockly.Msg.BLOCKS_HARDWARE_MOTOR_DRIVER_SET_SPEED="(モータードライバ%1の)モーターの速度を%2にする",Blockly.Msg.BLOCKS_HARDWARE_MOTOR_DRIVER_SPEED="(モータードライバ%1の)モーターの速度(%)",Blockly.Msg.BLOCKS_HARDWARE_BUTTON_DOWN_OR_UP="ボタン%1が%2",Blockly.Msg.BLOCKS_HARDWARE_ON_BUTTON_DOWN_OR_UP="ボタン%1が%2とき",Blockly.Msg.BLOCKS_HARDWARE_BUTTON_NOT_USE_PULLUP="ボタン%1のプルアップ抵抗を使わない",Blockly.Msg.BLOCKS_HARDWARE_SENSOR_VALUE="センサー%1",Blockly.Msg.BLOCKS_HARDWARE_ON_SENSOR_CHANGE="センサー%1が変化したとき",Blockly.Msg.BLOCKS_OPERATORS_ADD="%1+%2",Blockly.Msg.BLOCKS_OPERATORS_MINUS="%1ー%2",Blockly.Msg.BLOCKS_OPERATORS_MULTIPLY="%1×%2",Blockly.Msg.BLOCKS_OPERATORS_DIVIDE="%1÷%2",Blockly.Msg.BLOCKS_OPERATORS_COMPARE_LT="%1<%2",Blockly.Msg.BLOCKS_OPERATORS_COMPARE_LTE="%1≦%2",Blockly.Msg.BLOCKS_OPERATORS_COMPARE_EQ="%1=%2",Blockly.Msg.BLOCKS_OPERATORS_COMPARE_GTE="%1≧%2",Blockly.Msg.BLOCKS_OPERATORS_COMPARE_GT="%1>%2",Blockly.Msg.BLOCKS_OPERATORS_RAND="%1から%2までの乱数",Blockly.Msg.BLOCKS_OPERATORS_AND="%1かつ%2",Blockly.Msg.BLOCKS_OPERATORS_OR="%1または%2",Blockly.Msg.BLOCKS_OPERATORS_NOT="%1ではない",Blockly.Msg.BLOCKS_OPERATORS_INDEX_OF="%1の%2番目",Blockly.Msg.BLOCKS_OPERATORS_LENGTH="%1の長さ",Blockly.Msg.BLOCKS_OPERATORS_MODULO="%1を%2で割った余り",Blockly.Msg.BLOCKS_OPERATORS_ROUND="%1を丸める",Blockly.Msg.BLOCKS_OPERATORS_MATH_METHOD="%1の%2",Blockly.Msg.BLOCKS_OPERATORS_MATH_METHOD_ABS="絶対値",Blockly.Msg.BLOCKS_OPERATORS_MATH_METHOD_FLOOR="切り上げ",Blockly.Msg.BLOCKS_OPERATORS_MATH_METHOD_CEIL="切り下げ",Blockly.Msg.BLOCKS_OPERATORS_MATH_METHOD_SQRT="平方根",Blockly.Msg.BLOCKS_OPERATORS_MATH_METHOD_SIN="sin",Blockly.Msg.BLOCKS_OPERATORS_MATH_METHOD_COS="cos",Blockly.Msg.BLOCKS_OPERATORS_MATH_METHOD_TAN="tan",Blockly.Msg.BLOCKS_OPERATORS_MATH_METHOD_ASIN="asin",Blockly.Msg.BLOCKS_OPERATORS_MATH_METHOD_ACOS="acos",Blockly.Msg.BLOCKS_OPERATORS_MATH_METHOD_ATAN="atan",Blockly.Msg.BLOCKS_OPERATORS_MATH_METHOD_LN="log",Blockly.Msg.BLOCKS_OPERATORS_MATH_METHOD_LOG="log10",Blockly.Msg.BLOCKS_OPERATORS_MATH_METHOD_E_SQUARE="e ^",Blockly.Msg.BLOCKS_OPERATORS_MATH_METHOD_10_SQUARE="10 ^",Blockly.Msg.BLOCKS_OPERATORS_TRUE="真",Blockly.Msg.BLOCKS_OPERATORS_FALSE="偽",Blockly.Msg.BLOCKS_PEN_DOWN_PEN="ペンを下ろす",Blockly.Msg.BLOCKS_PEN_UP_PEN="ペンを上げる",Blockly.Msg.BLOCKS_PEN_SET_PEN_COLOR="ペンの色を%1にする";
|
1
|
+
goog.provide("Blockly.Msg.ja.smalruby"),goog.require("Blockly.Msg"),Blockly.Msg.VIEWS_MAIN_MENU_VIEW_COMMON_LINES="行",Blockly.Msg.VIEWS_MAIN_MENU_VIEW_COMMON_LETTERS="文字",Blockly.Msg.VIEWS_MAIN_MENU_VIEW_COMMON_COMMA="、",Blockly.Msg.VIEWS_MAIN_MENU_VIEW_BLOCK_MODE_BLOCKUI_TITLE="プログラムの変換中",Blockly.Msg.VIEWS_MAIN_MENU_VIEW_BLOCK_MODE_BLOCKUI_MESSAGE="プログラムをブロックに変換しています。",Blockly.Msg.VIEWS_MAIN_MENU_VIEW_BLOCK_MODE_ERROR="ブロックへの変換に失敗しました",Blockly.Msg.VIEWS_MAIN_MENU_VIEW_RUN_BLOCKUI_TITLE="プログラムの実行中",Blockly.Msg.VIEWS_MAIN_MENU_VIEW_RUN_BLOCKUI_MESSAGE="プログラムの画面に切り替えてください。",Blockly.Msg.VIEWS_MAIN_MENU_VIEW_RUN_BLOCKUI_NOTICE="プログラムをセーブ・チェックしてから実行するよ♪<br>Escキーを押すとプログラムが終わります。",Blockly.Msg.VIEWS_MAIN_MENU_VIEW_RUN_ERROR_CANT_RUN="プログラムを実行できませんでした",Blockly.Msg.VIEWS_MAIN_MENU_VIEW_RUN_ERROR_CANCEL_TO_RUN="プログラムの実行をキャンセルしました",Blockly.Msg.VIEWS_MAIN_MENU_VIEW_DOWNLOAD_BLOCKUI_TITLE="プログラムのダウンロード中",Blockly.Msg.VIEWS_MAIN_MENU_VIEW_DOWNLOAD_BLOCKUI_MESSAGE="プログラムをダウンロードしています。",Blockly.Msg.BLOCKS_MOTION_MOVE="%1歩動かす",Blockly.Msg.BLOCKS_MOTION_TURN_RIGHT_DEGREES="時計回りに%1度回す",Blockly.Msg.BLOCKS_MOTION_TURN_LEFT_DEGREES="反時計回りに%1度回す",Blockly.Msg.BLOCKS_MOTION_POINT_IN_DIRECTION="%1度に向ける",Blockly.Msg.BLOCKS_MOTION_POINT_TOWARDS_MOUSE="マウスポインターへ向ける",Blockly.Msg.BLOCKS_MOTION_POINT_TOWARDS_CHARACTER="へ向ける",Blockly.Msg.BLOCKS_MOTION_SET_X_Y_X="x座標を",Blockly.Msg.BLOCKS_MOTION_SET_X_Y_Y="、y座標を",Blockly.Msg.BLOCKS_MOTION_SET_X_Y_SUFFIX="にする",Blockly.Msg.BLOCKS_MOTION_GO_TO_MOUSE="マウスポインターへ行く",Blockly.Msg.BLOCKS_MOTION_GO_TO_CHARACTER_PREFIX="",Blockly.Msg.BLOCKS_MOTION_GO_TO_CHARACTER_SUFFIX="へ行く",Blockly.Msg.BLOCKS_MOTION_CHANGE_X_BY="x座標を%1ずつ変える",Blockly.Msg.BLOCKS_MOTION_SET_X="x座標を%1にする",Blockly.Msg.BLOCKS_MOTION_CHANGE_Y_BY="y座標を%1ずつ変える",Blockly.Msg.BLOCKS_MOTION_SET_Y="y座標を%1にする",Blockly.Msg.BLOCKS_MOTION_TURN_IF_REACH_WALL="もし端に着いたら、跳ね返る",Blockly.Msg.BLOCKS_MOTION_TURN="跳ね返る",Blockly.Msg.BLOCKS_MOTION_TURN_XY_X="水平(x)",Blockly.Msg.BLOCKS_MOTION_TURN_XY_Y="垂直(y)",Blockly.Msg.BLOCKS_MOTION_TURN_XY_PREFIX="",Blockly.Msg.BLOCKS_MOTION_TURN_XY_SUFFIX="方向に跳ね返る",Blockly.Msg.BLOCKS_MOTION_SET_ROTATION_STYLE_LEFT_RIGHT="左右のみ",Blockly.Msg.BLOCKS_MOTION_SET_ROTATION_STYLE_NONE="回転しない",Blockly.Msg.BLOCKS_MOTION_SET_ROTATION_STYLE_FREE="自由に回転",Blockly.Msg.BLOCKS_MOTION_SET_ROTATION_STYLE_PREFIX="回転方法を",Blockly.Msg.BLOCKS_MOTION_SET_ROTATION_STYLE_SUFFIX="にする",Blockly.Msg.BLOCKS_MOTION_SELF_X="x座標",Blockly.Msg.BLOCKS_MOTION_SELF_Y="y座標",Blockly.Msg.BLOCKS_MOTION_SELF_ANGLE="向き",Blockly.Msg.BLOCKS_EVENTS_ON_START="実行ボタンがクリックされたとき",Blockly.Msg.BLOCKS_EVENTS_ON_KEY_PUSH_OR_DOWN_PREFIX="キーボードの",Blockly.Msg.BLOCKS_EVENTS_ON_KEY_PUSH_OR_DOWN_MIDDLE="が",Blockly.Msg.BLOCKS_EVENTS_ON_KEY_PUSH_OR_DOWN_SUFFIX="とき",Blockly.Msg.BLOCKS_EVENTS_ON_CLICK="キャラクターがクリックされたとき",Blockly.Msg.BLOCKS_EVENTS_ON_HIT_PREFIX="",Blockly.Msg.BLOCKS_EVENTS_ON_HIT_SUFFIX="にぶつかったとき",Blockly.Msg.BLOCKS_SENSING_K_UP="↑",Blockly.Msg.BLOCKS_SENSING_K_DOWN="↓",Blockly.Msg.BLOCKS_SENSING_K_LEFT="←",Blockly.Msg.BLOCKS_SENSING_K_RIGHT="→",Blockly.Msg.BLOCKS_SENSING_K_SPACE="スペース",Blockly.Msg.BLOCKS_SENSING_PUSH="押された",Blockly.Msg.BLOCKS_SENSING_HOLD_DOWN="押され続けている",Blockly.Msg.BLOCKS_SENSING_DOWN=Blockly.Msg.BLOCKS_SENSING_PUSH,Blockly.Msg.BLOCKS_SENSING_M_LBUTTON="左ボタン",Blockly.Msg.BLOCKS_SENSING_M_MBUTTON="中ボタン",Blockly.Msg.BLOCKS_SENSING_M_RBUTTON="右ボタン",Blockly.Msg.BLOCKS_SENSING_UP="離された",Blockly.Msg.BLOCKS_SENSING_REACH_WALL="端に触れた",Blockly.Msg.BLOCKS_SENSING_INPUT_KEY_PUSH_OR_DOWN_PREFIX="キーボードの",Blockly.Msg.BLOCKS_SENSING_INPUT_KEY_PUSH_OR_DOWN_MIDDLE="が",Blockly.Msg.BLOCKS_SENSING_INPUT_KEY_PUSH_OR_DOWN_SUFFIX="",Blockly.Msg.BLOCKS_SENSING_INPUT_MOUSE_PUSH_OR_DOWN_PREFIX="マウスの",Blockly.Msg.BLOCKS_SENSING_INPUT_MOUSE_PUSH_OR_DOWN_MIDDLE="が",Blockly.Msg.BLOCKS_SENSING_INPUT_MOUSE_PUSH_OR_DOWN_SUFFIX="",Blockly.Msg.BLOCKS_SENSING_INPUT_MOUSE_POS_X="マウスのx座標",Blockly.Msg.BLOCKS_SENSING_INPUT_MOUSE_POS_Y="マウスのy座標",Blockly.Msg.BLOCKS_SENSING_HIT_PREFIX="",Blockly.Msg.BLOCKS_SENSING_HIT_SUFFIX="に触れた",Blockly.Msg.BLOCKS_SENSING_CHARACTER_PROPERTY_X="x座標",Blockly.Msg.BLOCKS_SENSING_CHARACTER_PROPERTY_Y="y座標",Blockly.Msg.BLOCKS_SENSING_CHARACTER_PROPERTY_ANGLE="向き",Blockly.Msg.BLOCKS_SENSING_CHARACTER_PROPERTY_COSTUME_INDEX="コスチューム番号",Blockly.Msg.BLOCKS_SENSING_CHARACTER_PROPERTY_COSTUME="コスチューム名",Blockly.Msg.BLOCKS_SENSING_CHARACTER_PROPERTY_SCALE="大きさ",Blockly.Msg.BLOCKS_SENSING_CHARACTER_PROPERTY_VOLUME="ボリューム",Blockly.Msg.BLOCKS_SENSING_CHARACTER_PROPERTY_MIDDLE="の",Blockly.Msg.BLOCKS_SENSING_TIME_NOW_YEAR="年",Blockly.Msg.BLOCKS_SENSING_TIME_NOW_MONTH="月",Blockly.Msg.BLOCKS_SENSING_TIME_NOW_DAY="日",Blockly.Msg.BLOCKS_SENSING_TIME_NOW_WDAY="曜日",Blockly.Msg.BLOCKS_SENSING_TIME_NOW_HOUR="時",Blockly.Msg.BLOCKS_SENSING_TIME_NOW_MIN="分",Blockly.Msg.BLOCKS_SENSING_TIME_NOW_SEC="秒",Blockly.Msg.BLOCKS_SENSING_TIME_NOW="現在の",Blockly.Msg.BLOCKS_CONTROL_SLEEP="%1秒待つ",Blockly.Msg.BLOCKS_CONTROL_LOOP="ずっと",Blockly.Msg.BLOCKS_CONTROL_LOOP_END="を繰り返す",Blockly.Msg.BLOCKS_CONTROL_BREAK="繰り返しから脱出する",Blockly.Msg.BLOCKS_CONTROL_NEXT="次の繰り返しにジャンプする",Blockly.Msg.BLOCKS_CONTROL_REDO="現在の繰り返しをやり直す",Blockly.Msg.BLOCKS_CONTROL_IF="もし",Blockly.Msg.BLOCKS_CONTROL_THEN="ならば",Blockly.Msg.BLOCKS_CONTROL_ELSE="でなければ",Blockly.Msg.BLOCKS_CONTROL_TIMES="%1回繰り返す",Blockly.Msg.BLOCKS_CONTROL_AWAIT_UNTIL="%1まで待つ",Blockly.Msg.BLOCKS_CONTROL_UNTIL="%1まで",Blockly.Msg.BLOCKS_CONTROL_AWAIT="ほんの少し待つ",Blockly.Msg.BLOCKS_RUBY_STATEMENT="文",Blockly.Msg.BLOCKS_RUBY_EXPRESSION="式",Blockly.Msg.BLOCKS_RUBY_COMMENT="コメント",Blockly.Msg.BLOCKS_FIELD_CHARACTER_NO_CHARACTER="キャラクターなし",Blockly.Msg.BLOCKS_SOUND_PRESET_SOUNDS_PIANO_DO="ピアノのド",Blockly.Msg.BLOCKS_SOUND_PRESET_SOUNDS_PIANO_RE="ピアノのレ",Blockly.Msg.BLOCKS_SOUND_PRESET_SOUNDS_PIANO_MI="ピアノのミ",Blockly.Msg.BLOCKS_SOUND_PRESET_SOUNDS_PIANO_FA="ピアノのファ",Blockly.Msg.BLOCKS_SOUND_PRESET_SOUNDS_PIANO_SO="ピアノのソ",Blockly.Msg.BLOCKS_SOUND_PRESET_SOUNDS_PIANO_RA="ピアノのラ",Blockly.Msg.BLOCKS_SOUND_PRESET_SOUNDS_PIANO_SI="ピアノのシ",Blockly.Msg.BLOCKS_SOUND_PRESET_SOUNDS_PIANO_DO_2="ピアノの高いド",Blockly.Msg.BLOCKS_SOUND_PLAY="%1の音を鳴らす",Blockly.Msg.BLOCKS_LOOKS_SAY="%1と言う",Blockly.Msg.BLOCKS_LOOKS_THINK="%1と考える",Blockly.Msg.BLOCKS_LOOKS_SAY_WITH_SECOND="%1と%2秒と言う",Blockly.Msg.BLOCKS_LOOKS_THINK_WITH_SECOND="%1と%2秒と考える",Blockly.Msg.BLOCKS_LOOKS_SHOW="表示する",Blockly.Msg.BLOCKS_LOOKS_HIDE="隠す",Blockly.Msg.BLOCKS_LOOKS_VANISH="消滅する",Blockly.Msg.BLOCKS_HARDWARE_LED_ON="LED%1をオンにする",Blockly.Msg.BLOCKS_HARDWARE_LED_OFF="LED%1をオフにする",Blockly.Msg.BLOCKS_HARDWARE_ANODE="アノード",Blockly.Msg.BLOCKS_HARDWARE_CATHODE="カソード",Blockly.Msg.BLOCKS_HARDWARE_LEFT=" 左",Blockly.Msg.BLOCKS_HARDWARE_RIGHT="右",Blockly.Msg.BLOCKS_HARDWARE_INIT_HARDWARE="ハードウェアを準備する",Blockly.Msg.BLOCKS_HARDWARE_RGB_LED_ON="set RGB LED %1 common %2 color to %3",Blockly.Msg.BLOCKS_HARDWARE_RGB_LED_ON="RGB LED%1コモン%2を%3にする",Blockly.Msg.BLOCKS_HARDWARE_RGB_LED_OFF="RGB LED%1コモン%2をオフにする",Blockly.Msg.BLOCKS_HARDWARE_SEVEN_SEGMENT_DISPLAY_SHOW="7セグディスプレイに%1を表示する",Blockly.Msg.BLOCKS_HARDWARE_SEVEN_SEGMENT_DISPLAY_OFF="7セグディスプレイをオフにする",Blockly.Msg.BLOCKS_HARDWARE_LCD_PUTS="LCDに%1を表示する",Blockly.Msg.BLOCKS_HARDWARE_LCD_CLEAR="LCDをクリアする",Blockly.Msg.BLOCKS_HARDWARE_SERVO_SET_POSITION="サーボ%1を%2度(5~180)にする",Blockly.Msg.BLOCKS_HARDWARE_TWO_WHEEL_DRIVE_CAR_FORWARD="2WD車%1を進める",Blockly.Msg.BLOCKS_HARDWARE_TWO_WHEEL_DRIVE_CAR_BACKWARD="2WD車%1をバックさせる",Blockly.Msg.BLOCKS_HARDWARE_TWO_WHEEL_DRIVE_CAR_TURN_LEFT="2WD車%1を左に曲げる",Blockly.Msg.BLOCKS_HARDWARE_TWO_WHEEL_DRIVE_CAR_TURN_RIGHT="2WD車%1を右に曲げる",Blockly.Msg.BLOCKS_HARDWARE_TWO_WHEEL_DRIVE_CAR_STOP="2WD車%1を止める",Blockly.Msg.BLOCKS_HARDWARE_TWO_WHEEL_DRIVE_CAR_RUN="2WD車%2を%3秒%1",Blockly.Msg.BLOCKS_HARDWARE_TWO_WHEEL_DRIVE_CAR_COMMANDS_FORWARD="進める",Blockly.Msg.BLOCKS_HARDWARE_TWO_WHEEL_DRIVE_CAR_COMMANDS_BACKWARD="バックさせる",Blockly.Msg.BLOCKS_HARDWARE_TWO_WHEEL_DRIVE_CAR_COMMANDS_TURN_LEFT="左に曲げる",Blockly.Msg.BLOCKS_HARDWARE_TWO_WHEEL_DRIVE_CAR_COMMANDS_TURN_RIGHT="右に曲げる",Blockly.Msg.BLOCKS_HARDWARE_TWO_WHEEL_DRIVE_CAR_COMMANDS_STOP="止める",Blockly.Msg.BLOCKS_HARDWARE_TWO_WHEEL_DRIVE_CAR_SET_SPEED="2WD車%1の%2の速度(%)を%3にする",Blockly.Msg.BLOCKS_HARDWARE_TWO_WHEEL_DRIVE_CAR_SPEED="2WD車%1の%2の速度(%)",Blockly.Msg.BLOCKS_HARDWARE_MOTOR_DRIVER_FORWARD="正転させる",Blockly.Msg.BLOCKS_HARDWARE_MOTOR_DRIVER_BACKWARD="逆転させる",Blockly.Msg.BLOCKS_HARDWARE_MOTOR_DRIVER_STOP="止める",Blockly.Msg.BLOCKS_HARDWARE_MOTOR_DRIVER="(モータードライバ%1で)モーターを%2",Blockly.Msg.BLOCKS_HARDWARE_MOTOR_DRIVER_SET_SPEED="(モータードライバ%1の)モーターの速度を%2にする",Blockly.Msg.BLOCKS_HARDWARE_MOTOR_DRIVER_SPEED="(モータードライバ%1の)モーターの速度(%)",Blockly.Msg.BLOCKS_HARDWARE_BUTTON_DOWN_OR_UP="ボタン%1が%2",Blockly.Msg.BLOCKS_HARDWARE_ON_BUTTON_DOWN_OR_UP="ボタン%1が%2とき",Blockly.Msg.BLOCKS_HARDWARE_BUTTON_NOT_USE_PULLUP="ボタン%1のプルアップ抵抗を使わない",Blockly.Msg.BLOCKS_HARDWARE_SENSOR_VALUE="センサー%1",Blockly.Msg.BLOCKS_HARDWARE_ON_SENSOR_CHANGE="センサー%1が変化したとき",Blockly.Msg.BLOCKS_OPERATORS_ADD="%1+%2",Blockly.Msg.BLOCKS_OPERATORS_MINUS="%1ー%2",Blockly.Msg.BLOCKS_OPERATORS_MULTIPLY="%1×%2",Blockly.Msg.BLOCKS_OPERATORS_DIVIDE="%1÷%2",Blockly.Msg.BLOCKS_OPERATORS_COMPARE_LT="%1<%2",Blockly.Msg.BLOCKS_OPERATORS_COMPARE_LTE="%1≦%2",Blockly.Msg.BLOCKS_OPERATORS_COMPARE_EQ="%1=%2",Blockly.Msg.BLOCKS_OPERATORS_COMPARE_GTE="%1≧%2",Blockly.Msg.BLOCKS_OPERATORS_COMPARE_GT="%1>%2",Blockly.Msg.BLOCKS_OPERATORS_RAND="%1から%2までの乱数",Blockly.Msg.BLOCKS_OPERATORS_AND="%1かつ%2",Blockly.Msg.BLOCKS_OPERATORS_OR="%1または%2",Blockly.Msg.BLOCKS_OPERATORS_NOT="%1ではない",Blockly.Msg.BLOCKS_OPERATORS_INDEX_OF="%1の%2番目",Blockly.Msg.BLOCKS_OPERATORS_LENGTH="%1の長さ",Blockly.Msg.BLOCKS_OPERATORS_MODULO="%1を%2で割った余り",Blockly.Msg.BLOCKS_OPERATORS_ROUND="%1を丸める",Blockly.Msg.BLOCKS_OPERATORS_MATH_METHOD="%1の%2",Blockly.Msg.BLOCKS_OPERATORS_MATH_METHOD_ABS="絶対値",Blockly.Msg.BLOCKS_OPERATORS_MATH_METHOD_FLOOR="切り上げ",Blockly.Msg.BLOCKS_OPERATORS_MATH_METHOD_CEIL="切り下げ",Blockly.Msg.BLOCKS_OPERATORS_MATH_METHOD_SQRT="平方根",Blockly.Msg.BLOCKS_OPERATORS_MATH_METHOD_SIN="sin",Blockly.Msg.BLOCKS_OPERATORS_MATH_METHOD_COS="cos",Blockly.Msg.BLOCKS_OPERATORS_MATH_METHOD_TAN="tan",Blockly.Msg.BLOCKS_OPERATORS_MATH_METHOD_ASIN="asin",Blockly.Msg.BLOCKS_OPERATORS_MATH_METHOD_ACOS="acos",Blockly.Msg.BLOCKS_OPERATORS_MATH_METHOD_ATAN="atan",Blockly.Msg.BLOCKS_OPERATORS_MATH_METHOD_LN="log",Blockly.Msg.BLOCKS_OPERATORS_MATH_METHOD_LOG="log10",Blockly.Msg.BLOCKS_OPERATORS_MATH_METHOD_E_SQUARE="e ^",Blockly.Msg.BLOCKS_OPERATORS_MATH_METHOD_10_SQUARE="10 ^",Blockly.Msg.BLOCKS_OPERATORS_TRUE="真",Blockly.Msg.BLOCKS_OPERATORS_FALSE="偽",Blockly.Msg.BLOCKS_PEN_DOWN_PEN="ペンを下ろす",Blockly.Msg.BLOCKS_PEN_UP_PEN="ペンを上げる",Blockly.Msg.BLOCKS_PEN_SET_PEN_COLOR="ペンの色を%1にする";
|
Binary file
|
data/smalruby-editor.gemspec
CHANGED
@@ -77,7 +77,7 @@ describe SourceCode, 'Rubyのソースコードを表現するモデル' do
|
|
77
77
|
end
|
78
78
|
|
79
79
|
describe '#summary', 'プログラムの概要を取得する' do
|
80
|
-
describe 'XML形式'do
|
80
|
+
describe 'XML形式' do
|
81
81
|
let(:xml_path) { rb_path + '.xml' }
|
82
82
|
let(:data) { Rails.root.join(xml_path).read }
|
83
83
|
let(:source_code) {
|
@@ -128,4 +128,91 @@ describe SourceCode, 'Rubyのソースコードを表現するモデル' do
|
|
128
128
|
end
|
129
129
|
end
|
130
130
|
end
|
131
|
+
|
132
|
+
describe '#include_block?' do
|
133
|
+
describe 'XML形式' do
|
134
|
+
let(:data) { Rails.root.join(xml_path).read }
|
135
|
+
let(:source_code) {
|
136
|
+
SourceCode.new(filename: File.basename(xml_path), data: data)
|
137
|
+
}
|
138
|
+
|
139
|
+
subject { source_code.include_block?(type) }
|
140
|
+
|
141
|
+
context 'ソースコードにハードウェア関連ブロックを含む場合' do
|
142
|
+
let(:xml_path) { 'demos/adjust_2wd_car.rb.xml' }
|
143
|
+
|
144
|
+
context '引数にhardware_init_hardwareを指定する' do
|
145
|
+
let(:type) { 'hardware_init_hardware' }
|
146
|
+
|
147
|
+
it { should be_true }
|
148
|
+
end
|
149
|
+
|
150
|
+
context '引数にハードウェア関連ブロックを指定する' do
|
151
|
+
let(:type) { /^hardware_/ }
|
152
|
+
|
153
|
+
it { should be_true }
|
154
|
+
end
|
155
|
+
|
156
|
+
context '引数にpen_down_penを指定する' do
|
157
|
+
let(:type) { 'pen_down_pen' }
|
158
|
+
|
159
|
+
it { should be_false }
|
160
|
+
end
|
161
|
+
|
162
|
+
context '引数にペン関連ブロックを指定する' do
|
163
|
+
let(:type) { /^pen_/ }
|
164
|
+
|
165
|
+
it { should be_false }
|
166
|
+
end
|
167
|
+
end
|
168
|
+
|
169
|
+
context 'ソースコードにハードウェア関連ブロックを含まない場合' do
|
170
|
+
let(:xml_path) { 'demos/star.rb.xml' }
|
171
|
+
|
172
|
+
context '引数にhardware_init_hardwareを指定する' do
|
173
|
+
let(:type) { 'hardware_init_hardware' }
|
174
|
+
|
175
|
+
it { should be_false }
|
176
|
+
end
|
177
|
+
|
178
|
+
context '引数にハードウェア関連ブロックを指定する' do
|
179
|
+
let(:type) { /^hardware_/ }
|
180
|
+
|
181
|
+
it { should be_false }
|
182
|
+
end
|
183
|
+
|
184
|
+
context '引数にpen_down_penを指定する' do
|
185
|
+
let(:type) { 'pen_down_pen' }
|
186
|
+
|
187
|
+
it { should be_true }
|
188
|
+
end
|
189
|
+
|
190
|
+
context '引数にペン関連ブロックを指定する' do
|
191
|
+
let(:type) { /^pen_/ }
|
192
|
+
|
193
|
+
it { should be_true }
|
194
|
+
end
|
195
|
+
end
|
196
|
+
end
|
197
|
+
end
|
198
|
+
|
199
|
+
describe '#xml?' do
|
200
|
+
let(:source_code) {
|
201
|
+
SourceCode.new(filename: File.basename(path))
|
202
|
+
}
|
203
|
+
|
204
|
+
subject { source_code.xml? }
|
205
|
+
|
206
|
+
context 'a' do
|
207
|
+
let(:path) { 'car1.rb' }
|
208
|
+
|
209
|
+
it { should be_false }
|
210
|
+
end
|
211
|
+
|
212
|
+
context 'b' do
|
213
|
+
let(:path) { 'car1.rb.xml' }
|
214
|
+
|
215
|
+
it { should be_true }
|
216
|
+
end
|
217
|
+
end
|
131
218
|
end
|
data/spec/spec_helper.rb
CHANGED
@@ -1,154 +1,131 @@
|
|
1
1
|
# -*- coding: utf-8 -*-
|
2
2
|
require 'rubygems'
|
3
|
-
require 'spork'
|
4
|
-
# uncomment the following line to use spork with the debugger
|
5
|
-
# require 'spork/ext/ruby-debug'
|
6
|
-
|
7
|
-
Spork.prefork do
|
8
|
-
# Loading more in this block will cause your tests to run faster. However,
|
9
|
-
# if you change any configuration or code from libraries loaded here, you'll
|
10
|
-
# need to restart spork for it take effect.
|
11
|
-
|
12
|
-
ENV['RAILS_ENV'] ||= 'test'
|
13
|
-
require File.expand_path('../../config/environment', __FILE__)
|
14
|
-
require 'rspec/rails'
|
15
|
-
require 'rspec/autorun'
|
16
|
-
require 'capybara/dsl'
|
17
|
-
require 'capybara/rspec'
|
18
|
-
require 'capybara/poltergeist'
|
19
|
-
require 'turnip'
|
20
|
-
require 'turnip/capybara'
|
21
|
-
require 'simplecov' if ENV['COVERAGE'] || ENV['COVERALLS']
|
22
|
-
|
23
|
-
# Requires supporting ruby files with custom matchers and macros, etc,
|
24
|
-
# in spec/support/ and its subdirectories.
|
25
|
-
Dir[Rails.root.join('spec/support/**/*.rb')].each { |f| require f }
|
26
|
-
|
27
|
-
# Checks for pending migrations before tests are run.
|
28
|
-
# If you are not using ActiveRecord, you can remove this line.
|
29
|
-
ActiveRecord::Migration.check_pending! if defined?(ActiveRecord::Migration)
|
30
|
-
|
31
|
-
RSpec.configure do |config|
|
32
|
-
# ## Mock Framework
|
33
|
-
#
|
34
|
-
# If you prefer to use mocha, flexmock or RR, uncomment the
|
35
|
-
# appropriate line:
|
36
|
-
#
|
37
|
-
# config.mock_with :mocha
|
38
|
-
# config.mock_with :flexmock
|
39
|
-
# config.mock_with :rr
|
40
|
-
|
41
|
-
# Remove this line if you're not using ActiveRecord or
|
42
|
-
# ActiveRecord fixtures
|
43
|
-
config.fixture_path = "#{::Rails.root}/spec/fixtures"
|
44
|
-
|
45
|
-
# If you're not using ActiveRecord, or you'd prefer not to run each of your
|
46
|
-
# examples within a transaction, remove the following line or assign false
|
47
|
-
# instead of true.
|
48
|
-
config.use_transactional_fixtures = false
|
49
|
-
|
50
|
-
# If true, the base class of anonymous controllers will be inferred
|
51
|
-
# automatically. This will be the default behavior in future versions of
|
52
|
-
# rspec-rails.
|
53
|
-
config.infer_base_class_for_anonymous_controllers = false
|
54
|
-
|
55
|
-
# Run specs in random order to surface order dependencies. If you find an
|
56
|
-
# order dependency and want to debug it, you can fix the order by providing
|
57
|
-
# the seed, which is printed after each run.
|
58
|
-
# --seed 1234
|
59
|
-
config.order = 'random'
|
60
|
-
|
61
|
-
twb = (ENV['TARGET_WEB_BROWZER'] || ENV['TWB']).try(:downcase)
|
62
|
-
case twb
|
63
|
-
when 'firefox', 'ie', 'chrome'
|
64
|
-
Capybara.register_driver :selenium do |app|
|
65
|
-
opts = { browser: twb.to_sym }
|
66
|
-
|
67
|
-
dir = downloads_dir.to_s
|
68
|
-
dir.gsub!(File::SEPARATOR, File::ALT_SEPARATOR) if windows?
|
69
|
-
case twb
|
70
|
-
when 'firefox'
|
71
|
-
opts[:profile] = profile = Selenium::WebDriver::Firefox::Profile.new
|
72
|
-
profile['browser.download.folderList'] = 2 # custom location
|
73
|
-
profile['browser.download.dir'] = dir
|
74
|
-
profile['browser.helperApps.neverAsk.saveToDisk'] = 'text/plain'
|
75
|
-
when 'ie'
|
76
|
-
opts[:introduce_flakiness_by_ignoring_security_domains] = true
|
77
|
-
when 'chrome'
|
78
|
-
FileUtils.mkdir_p(dir)
|
79
|
-
opts[:prefs] = {
|
80
|
-
download: {
|
81
|
-
prompt_for_download: false,
|
82
|
-
default_directory: dir,
|
83
|
-
directory_upgrade: true,
|
84
|
-
}
|
85
|
-
}
|
86
|
-
|
87
|
-
opts[:switches] =
|
88
|
-
%w(
|
89
|
-
--ignore-certificate-errors
|
90
|
-
--disable-popup-blocking
|
91
|
-
--disable-translate
|
92
|
-
)
|
93
|
-
end
|
94
3
|
|
95
|
-
|
4
|
+
ENV['RAILS_ENV'] ||= 'test'
|
5
|
+
require File.expand_path('../../config/environment', __FILE__)
|
6
|
+
require 'rspec/rails'
|
7
|
+
require 'rspec/autorun'
|
8
|
+
require 'capybara/dsl'
|
9
|
+
require 'capybara/rspec'
|
10
|
+
require 'capybara/poltergeist'
|
11
|
+
require 'turnip'
|
12
|
+
require 'turnip/capybara'
|
13
|
+
require 'simplecov' if ENV['COVERAGE'] || ENV['COVERALLS']
|
14
|
+
|
15
|
+
# Requires supporting ruby files with custom matchers and macros, etc,
|
16
|
+
# in spec/support/ and its subdirectories.
|
17
|
+
Dir[Rails.root.join('spec/support/**/*.rb')].each { |f| require f }
|
18
|
+
|
19
|
+
# Checks for pending migrations before tests are run.
|
20
|
+
# If you are not using ActiveRecord, you can remove this line.
|
21
|
+
ActiveRecord::Migration.check_pending! if defined?(ActiveRecord::Migration)
|
22
|
+
|
23
|
+
RSpec.configure do |config|
|
24
|
+
# ## Mock Framework
|
25
|
+
#
|
26
|
+
# If you prefer to use mocha, flexmock or RR, uncomment the
|
27
|
+
# appropriate line:
|
28
|
+
#
|
29
|
+
# config.mock_with :mocha
|
30
|
+
# config.mock_with :flexmock
|
31
|
+
# config.mock_with :rr
|
32
|
+
|
33
|
+
# Remove this line if you're not using ActiveRecord or
|
34
|
+
# ActiveRecord fixtures
|
35
|
+
config.fixture_path = "#{::Rails.root}/spec/fixtures"
|
36
|
+
|
37
|
+
# If you're not using ActiveRecord, or you'd prefer not to run each of your
|
38
|
+
# examples within a transaction, remove the following line or assign false
|
39
|
+
# instead of true.
|
40
|
+
config.use_transactional_fixtures = false
|
41
|
+
|
42
|
+
# If true, the base class of anonymous controllers will be inferred
|
43
|
+
# automatically. This will be the default behavior in future versions of
|
44
|
+
# rspec-rails.
|
45
|
+
config.infer_base_class_for_anonymous_controllers = false
|
46
|
+
|
47
|
+
# Run specs in random order to surface order dependencies. If you find an
|
48
|
+
# order dependency and want to debug it, you can fix the order by providing
|
49
|
+
# the seed, which is printed after each run.
|
50
|
+
# --seed 1234
|
51
|
+
config.order = 'random'
|
52
|
+
|
53
|
+
twb = (ENV['TARGET_WEB_BROWZER'] || ENV['TWB']).try(:downcase)
|
54
|
+
case twb
|
55
|
+
when 'firefox', 'ie', 'chrome'
|
56
|
+
Capybara.register_driver :selenium do |app|
|
57
|
+
opts = { browser: twb.to_sym }
|
58
|
+
|
59
|
+
dir = downloads_dir.to_s
|
60
|
+
dir.gsub!(File::SEPARATOR, File::ALT_SEPARATOR) if windows?
|
61
|
+
case twb
|
62
|
+
when 'firefox'
|
63
|
+
opts[:profile] = profile = Selenium::WebDriver::Firefox::Profile.new
|
64
|
+
profile['browser.download.folderList'] = 2 # custom location
|
65
|
+
profile['browser.download.dir'] = dir
|
66
|
+
profile['browser.helperApps.neverAsk.saveToDisk'] = 'text/plain'
|
67
|
+
when 'ie'
|
68
|
+
opts[:introduce_flakiness_by_ignoring_security_domains] = true
|
69
|
+
when 'chrome'
|
70
|
+
FileUtils.mkdir_p(dir)
|
71
|
+
opts[:prefs] = {
|
72
|
+
download: {
|
73
|
+
prompt_for_download: false,
|
74
|
+
default_directory: dir,
|
75
|
+
directory_upgrade: true,
|
76
|
+
}
|
77
|
+
}
|
78
|
+
|
79
|
+
opts[:switches] =
|
80
|
+
%w(
|
81
|
+
--ignore-certificate-errors
|
82
|
+
--disable-popup-blocking
|
83
|
+
--disable-translate
|
84
|
+
)
|
96
85
|
end
|
97
|
-
Capybara.javascript_driver = :selenium
|
98
|
-
else
|
99
|
-
Capybara.javascript_driver = :poltergeist
|
100
|
-
Capybara.register_driver(:poltergeist) { |app|
|
101
|
-
Capybara::Poltergeist::Driver.new(app, timeout: 120)
|
102
|
-
}
|
103
|
-
end
|
104
86
|
|
105
|
-
|
106
|
-
config.include ERB::Util, type: :helper
|
107
|
-
config.include ERB::Util, type: :feature
|
108
|
-
config.include ActionView::Helpers::JavaScriptHelper, type: :feature
|
109
|
-
|
110
|
-
config.after(javascript: true) do
|
111
|
-
page.execute_script('window.onbeforeunload = null')
|
112
|
-
FileUtils.rm_rf(downloads_dir) if selenium?
|
87
|
+
Capybara::Selenium::Driver.new(app, opts)
|
113
88
|
end
|
89
|
+
Capybara.javascript_driver = :selenium
|
90
|
+
else
|
91
|
+
Capybara.javascript_driver = :poltergeist
|
92
|
+
Capybara.register_driver(:poltergeist) { |app|
|
93
|
+
Capybara::Poltergeist::Driver.new(app, timeout: 120)
|
94
|
+
}
|
95
|
+
end
|
114
96
|
|
115
|
-
|
116
|
-
|
97
|
+
config.include JsonSpec::Helpers
|
98
|
+
config.include ERB::Util, type: :helper
|
99
|
+
config.include ERB::Util, type: :feature
|
100
|
+
config.include ActionView::Helpers::JavaScriptHelper, type: :feature
|
117
101
|
|
118
|
-
|
119
|
-
|
120
|
-
|
121
|
-
|
122
|
-
end
|
102
|
+
config.after(javascript: true) do
|
103
|
+
page.execute_script('window.onbeforeunload = null')
|
104
|
+
FileUtils.rm_rf(downloads_dir) if selenium?
|
105
|
+
end
|
123
106
|
|
124
|
-
|
125
|
-
|
126
|
-
ENV['HOME'] = @_home
|
127
|
-
Rails.env = ENV['RAILS_ENV'] = @_rails_env
|
107
|
+
config.before(javascript: true, standalone: true) do
|
108
|
+
page.driver.restart
|
128
109
|
|
129
|
-
|
130
|
-
|
110
|
+
@_rails_env = Rails.env
|
111
|
+
Rails.env = ENV['RAILS_ENV'] = 'standalone'
|
112
|
+
@_home = ENV['HOME']
|
113
|
+
@_tmpdir = ENV['HOME'] = Dir.mktmpdir('smalruby-')
|
114
|
+
end
|
131
115
|
|
132
|
-
|
133
|
-
|
134
|
-
|
116
|
+
config.after(javascript: true, standalone: true) do
|
117
|
+
FileUtils.remove_entry_secure(@_tmpdir)
|
118
|
+
ENV['HOME'] = @_home
|
119
|
+
Rails.env = ENV['RAILS_ENV'] = @_rails_env
|
135
120
|
|
136
|
-
|
137
|
-
DatabaseRewinder.clean
|
138
|
-
end
|
121
|
+
page.driver.restart
|
139
122
|
end
|
140
|
-
end
|
141
|
-
|
142
|
-
Spork.each_run do
|
143
|
-
# This code will be run each time you run your specs.
|
144
123
|
|
145
|
-
|
146
|
-
|
147
|
-
|
148
|
-
# railties-3.2.3/lib/rails/application/finisher.rb あたりを参考に
|
149
|
-
Rails.application.reloaders.each { |reloader| reloader.execute_if_updated }
|
124
|
+
config.before :suite do
|
125
|
+
DatabaseRewinder.clean_all
|
126
|
+
end
|
150
127
|
|
151
|
-
|
152
|
-
|
128
|
+
config.after :each do
|
129
|
+
DatabaseRewinder.clean
|
153
130
|
end
|
154
131
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: smalruby-editor
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.24
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Kouji Takao
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2015-01-
|
11
|
+
date: 2015-01-16 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rails
|
@@ -80,20 +80,6 @@ dependencies:
|
|
80
80
|
- - "~>"
|
81
81
|
- !ruby/object:Gem::Version
|
82
82
|
version: 4.0.0
|
83
|
-
- !ruby/object:Gem::Dependency
|
84
|
-
name: turbolinks
|
85
|
-
requirement: !ruby/object:Gem::Requirement
|
86
|
-
requirements:
|
87
|
-
- - ">="
|
88
|
-
- !ruby/object:Gem::Version
|
89
|
-
version: '0'
|
90
|
-
type: :runtime
|
91
|
-
prerelease: false
|
92
|
-
version_requirements: !ruby/object:Gem::Requirement
|
93
|
-
requirements:
|
94
|
-
- - ">="
|
95
|
-
- !ruby/object:Gem::Version
|
96
|
-
version: '0'
|
97
83
|
- !ruby/object:Gem::Dependency
|
98
84
|
name: jbuilder
|
99
85
|
requirement: !ruby/object:Gem::Requirement
|
@@ -266,6 +252,7 @@ files:
|
|
266
252
|
- ".ruby-version"
|
267
253
|
- ".simplecov"
|
268
254
|
- ".travis.yml"
|
255
|
+
- Guardfile
|
269
256
|
- LEGAL
|
270
257
|
- LICENSE
|
271
258
|
- Procfile
|
@@ -417,7 +404,10 @@ files:
|
|
417
404
|
- bin/bundle
|
418
405
|
- bin/rails
|
419
406
|
- bin/rake
|
407
|
+
- bin/rspec
|
420
408
|
- bin/smalruby-editor
|
409
|
+
- bin/spring
|
410
|
+
- bin/teaspoon
|
421
411
|
- config.ru
|
422
412
|
- config/application.rb
|
423
413
|
- config/boot.rb
|
@@ -464,10 +454,10 @@ files:
|
|
464
454
|
- public/422.html
|
465
455
|
- public/500.html
|
466
456
|
- public/apple-touch-icon.png
|
467
|
-
- public/assets/application-
|
468
|
-
- public/assets/application-
|
469
|
-
- public/assets/application-
|
470
|
-
- public/assets/application-
|
457
|
+
- public/assets/application-d5358d75a2c4e570c749b333c59b55ab.css
|
458
|
+
- public/assets/application-d5358d75a2c4e570c749b333c59b55ab.css.gz
|
459
|
+
- public/assets/application-fda71a642d958ffbaf90185c471d6e51.js
|
460
|
+
- public/assets/application-fda71a642d958ffbaf90185c471d6e51.js.gz
|
471
461
|
- public/assets/blockly/msg/js/en_us-6f7333af29688596ef863fa36a22cb41.js
|
472
462
|
- public/assets/blockly/msg/js/en_us-6f7333af29688596ef863fa36a22cb41.js.gz
|
473
463
|
- public/assets/blockly/msg/js/ja-d2cbf808bda8180571bc5f39141a98fe.js
|
@@ -488,11 +478,11 @@ files:
|
|
488
478
|
- public/assets/jquery-ui/ui-icons_888888_256x240-ce584ffa171c3ea9a018cf0d7bec65c8.png
|
489
479
|
- public/assets/jquery-ui/ui-icons_cd0a0a_256x240-747e96029e8dedcabc224e5f7d1f2ede.png
|
490
480
|
- public/assets/loading-e77296be32d066d3e29d3bf9803fa417.gif
|
491
|
-
- public/assets/manifest-
|
481
|
+
- public/assets/manifest-1a9856df207640ec658271db34b30dbb.json
|
492
482
|
- public/assets/msg/en_us-893d970ff8061fbe7459f009582c4df5.js
|
493
483
|
- public/assets/msg/en_us-893d970ff8061fbe7459f009582c4df5.js.gz
|
494
|
-
- public/assets/msg/ja-
|
495
|
-
- public/assets/msg/ja-
|
484
|
+
- public/assets/msg/ja-4d22bd0341f464f9d1b9f373121bce6d.js
|
485
|
+
- public/assets/msg/ja-4d22bd0341f464f9d1b9f373121bce6d.js.gz
|
496
486
|
- public/assets/progressbar-ee8fb1222f286f625bbf7332844a6a0c.gif
|
497
487
|
- public/blockly/media/1x1.gif
|
498
488
|
- public/blockly/media/click.mp3
|
Binary file
|
Binary file
|
Binary file
|