smalruby-editor 0.1.22-x86-mingw32 → 0.1.23-x86-mingw32

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of smalruby-editor might be problematic. Click here for more details.

Files changed (396) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +0 -0
  3. data/.rspec +0 -0
  4. data/.rubocop.yml +0 -0
  5. data/.ruby-version +1 -1
  6. data/.simplecov +0 -0
  7. data/.travis.yml +1 -1
  8. data/LEGAL +0 -0
  9. data/LICENSE +0 -0
  10. data/Procfile +0 -0
  11. data/README.rdoc +1 -0
  12. data/Rakefile +0 -0
  13. data/app/assets/images/.keep +0 -0
  14. data/app/assets/images/favicon.ico +0 -0
  15. data/app/assets/javascripts/application.js +0 -1
  16. data/app/assets/javascripts/blocks/blockly.js.coffee.erb +0 -0
  17. data/app/assets/javascripts/blocks/character.js.coffee.erb +0 -0
  18. data/app/assets/javascripts/blocks/control.js.coffee.erb +16 -19
  19. data/app/assets/javascripts/blocks/data.js.coffee.erb +0 -0
  20. data/app/assets/javascripts/blocks/etc.js.coffee.erb +0 -0
  21. data/app/assets/javascripts/blocks/events.js.coffee.erb +8 -6
  22. data/app/assets/javascripts/blocks/field_character.js.coffee.erb +6 -1
  23. data/app/assets/javascripts/blocks/hardware.js.coffee.erb +117 -167
  24. data/app/assets/javascripts/blocks/looks.js.coffee.erb +14 -16
  25. data/app/assets/javascripts/blocks/motion.js.coffee.erb +46 -47
  26. data/app/assets/javascripts/blocks/operators.js.coffee.erb +54 -57
  27. data/app/assets/javascripts/blocks/pen.js.coffee.erb +5 -9
  28. data/app/assets/javascripts/blocks/ruby.js.coffee.erb +4 -3
  29. data/app/assets/javascripts/blocks/sensing.js.coffee.erb +53 -48
  30. data/app/assets/javascripts/blocks/sound.js.coffee.erb +12 -10
  31. data/app/assets/javascripts/collections/.keep +0 -0
  32. data/app/assets/javascripts/collections/character_set.js.coffee +0 -0
  33. data/app/assets/javascripts/fix_blockly.js +74 -0
  34. data/app/assets/javascripts/generators/ruby.js.coffee.erb +0 -0
  35. data/app/assets/javascripts/models/.keep +0 -0
  36. data/app/assets/javascripts/models/character.js.coffee +0 -0
  37. data/app/assets/javascripts/models/scene.js.coffee +0 -0
  38. data/app/assets/javascripts/models/source_code.js.coffee +0 -0
  39. data/app/assets/javascripts/msg/en_us.js +236 -0
  40. data/app/assets/javascripts/msg/ja.js +237 -0
  41. data/app/assets/javascripts/routers/.keep +0 -0
  42. data/app/assets/javascripts/smalruby.js.coffee +8 -0
  43. data/app/assets/javascripts/views/.keep +0 -0
  44. data/app/assets/javascripts/views/character_modal_view.js.coffee +0 -0
  45. data/app/assets/javascripts/views/character_selector_view.js.coffee +0 -0
  46. data/app/assets/javascripts/views/load_modal_view.js.coffee +0 -0
  47. data/app/assets/javascripts/views/{main_menu_view.js.coffee → main_menu_view.js.coffee.erb} +19 -18
  48. data/app/assets/javascripts/views/reset_modal_view.js.coffee +0 -0
  49. data/app/assets/javascripts/views/signin_modal_view.js.coffee +0 -0
  50. data/app/assets/stylesheets/application.css +0 -0
  51. data/app/assets/stylesheets/editor.css.scss +4 -0
  52. data/app/assets/stylesheets/flatstrap-custom.css.scss +0 -0
  53. data/app/assets/stylesheets/load-modal.css.scss +0 -0
  54. data/app/assets/stylesheets/toolbox.css.scss.erb +0 -0
  55. data/app/assets/templates/.keep +0 -0
  56. data/app/controllers/application_controller.rb +16 -0
  57. data/app/controllers/concerns/.keep +0 -0
  58. data/app/controllers/editor_controller.rb +0 -0
  59. data/app/controllers/sessions_controller.rb +0 -0
  60. data/app/controllers/source_codes_controller.rb +0 -0
  61. data/app/helpers/application_helper.rb +11 -0
  62. data/app/helpers/editor_helper.rb +0 -0
  63. data/app/helpers/sessions_helper.rb +0 -0
  64. data/app/mailers/.keep +0 -0
  65. data/app/models/.keep +0 -0
  66. data/app/models/concerns/.keep +0 -0
  67. data/app/models/concerns/ruby_to_block.rb +0 -0
  68. data/app/models/concerns/ruby_to_block/block.rb +0 -0
  69. data/app/models/concerns/ruby_to_block/block/base.rb +0 -0
  70. data/app/models/concerns/ruby_to_block/block/character.rb +0 -0
  71. data/app/models/concerns/ruby_to_block/block/character_event.rb +0 -0
  72. data/app/models/concerns/ruby_to_block/block/character_method_call.rb +0 -0
  73. data/app/models/concerns/ruby_to_block/block/character_new.rb +0 -0
  74. data/app/models/concerns/ruby_to_block/block/character_operation.rb +0 -0
  75. data/app/models/concerns/ruby_to_block/block/control_beark.rb +0 -0
  76. data/app/models/concerns/ruby_to_block/block/control_if.rb +0 -0
  77. data/app/models/concerns/ruby_to_block/block/control_loop.rb +0 -0
  78. data/app/models/concerns/ruby_to_block/block/control_sleep.rb +0 -0
  79. data/app/models/concerns/ruby_to_block/block/do.rb +0 -0
  80. data/app/models/concerns/ruby_to_block/block/else.rb +0 -0
  81. data/app/models/concerns/ruby_to_block/block/end.rb +0 -0
  82. data/app/models/concerns/ruby_to_block/block/events_on_click.rb +0 -0
  83. data/app/models/concerns/ruby_to_block/block/events_on_key_push_or_down.rb +0 -0
  84. data/app/models/concerns/ruby_to_block/block/events_on_start.rb +0 -0
  85. data/app/models/concerns/ruby_to_block/block/hardware_button_down_or_up.rb +0 -0
  86. data/app/models/concerns/ruby_to_block/block/hardware_button_not_use_pullup.rb +0 -0
  87. data/app/models/concerns/ruby_to_block/block/hardware_init_hardware.rb +0 -0
  88. data/app/models/concerns/ruby_to_block/block/hardware_led_off.rb +0 -0
  89. data/app/models/concerns/ruby_to_block/block/hardware_led_on.rb +0 -0
  90. data/app/models/concerns/ruby_to_block/block/hardware_motor_driver.rb +0 -0
  91. data/app/models/concerns/ruby_to_block/block/hardware_motor_driver_set_speed.rb +0 -0
  92. data/app/models/concerns/ruby_to_block/block/hardware_motor_driver_speed.rb +0 -0
  93. data/app/models/concerns/ruby_to_block/block/hardware_on_button_down_or_up.rb +0 -0
  94. data/app/models/concerns/ruby_to_block/block/hardware_on_sensor_change.rb +0 -0
  95. data/app/models/concerns/ruby_to_block/block/hardware_operation.rb +0 -0
  96. data/app/models/concerns/ruby_to_block/block/hardware_rgb_led_off.rb +0 -0
  97. data/app/models/concerns/ruby_to_block/block/hardware_rgb_led_on.rb +0 -0
  98. data/app/models/concerns/ruby_to_block/block/hardware_sensor_value.rb +0 -0
  99. data/app/models/concerns/ruby_to_block/block/hardware_two_wheel_drive_car.rb +0 -0
  100. data/app/models/concerns/ruby_to_block/block/hardware_two_wheel_drive_car_commands.rb +0 -0
  101. data/app/models/concerns/ruby_to_block/block/hardware_two_wheel_drive_car_run.rb +0 -0
  102. data/app/models/concerns/ruby_to_block/block/hardware_two_wheel_drive_car_set_speed.rb +0 -0
  103. data/app/models/concerns/ruby_to_block/block/hardware_two_wheel_drive_car_speed.rb +0 -0
  104. data/app/models/concerns/ruby_to_block/block/looks_hide.rb +0 -0
  105. data/app/models/concerns/ruby_to_block/block/looks_say.rb +0 -0
  106. data/app/models/concerns/ruby_to_block/block/looks_show.rb +0 -0
  107. data/app/models/concerns/ruby_to_block/block/looks_vanish.rb +0 -0
  108. data/app/models/concerns/ruby_to_block/block/math_number.rb +0 -0
  109. data/app/models/concerns/ruby_to_block/block/motion_change_x_by.rb +0 -0
  110. data/app/models/concerns/ruby_to_block/block/motion_change_y_by.rb +0 -0
  111. data/app/models/concerns/ruby_to_block/block/motion_go_to_character.rb +0 -0
  112. data/app/models/concerns/ruby_to_block/block/motion_go_to_mouse.rb +0 -0
  113. data/app/models/concerns/ruby_to_block/block/motion_move.rb +0 -0
  114. data/app/models/concerns/ruby_to_block/block/motion_point_towards_character.rb +0 -0
  115. data/app/models/concerns/ruby_to_block/block/motion_point_towards_mouse.rb +0 -0
  116. data/app/models/concerns/ruby_to_block/block/motion_rotate_left.rb +0 -0
  117. data/app/models/concerns/ruby_to_block/block/motion_rotate_right.rb +0 -0
  118. data/app/models/concerns/ruby_to_block/block/motion_self_angle.rb +0 -0
  119. data/app/models/concerns/ruby_to_block/block/motion_self_x.rb +0 -0
  120. data/app/models/concerns/ruby_to_block/block/motion_self_y.rb +0 -0
  121. data/app/models/concerns/ruby_to_block/block/motion_set_angle.rb +0 -0
  122. data/app/models/concerns/ruby_to_block/block/motion_set_rotation_style.rb +17 -0
  123. data/app/models/concerns/ruby_to_block/block/motion_set_x.rb +0 -0
  124. data/app/models/concerns/ruby_to_block/block/motion_set_x_y.rb +0 -0
  125. data/app/models/concerns/ruby_to_block/block/motion_set_y.rb +0 -0
  126. data/app/models/concerns/ruby_to_block/block/motion_turn.rb +0 -0
  127. data/app/models/concerns/ruby_to_block/block/motion_turn_if_reach_wall.rb +0 -0
  128. data/app/models/concerns/ruby_to_block/block/motion_turn_xy.rb +0 -0
  129. data/app/models/concerns/ruby_to_block/block/null.rb +0 -0
  130. data/app/models/concerns/ruby_to_block/block/operators_compare.rb +0 -0
  131. data/app/models/concerns/ruby_to_block/block/operators_false.rb +0 -0
  132. data/app/models/concerns/ruby_to_block/block/operators_true.rb +0 -0
  133. data/app/models/concerns/ruby_to_block/block/require_smalruby.rb +0 -0
  134. data/app/models/concerns/ruby_to_block/block/ruby_comment.rb +0 -0
  135. data/app/models/concerns/ruby_to_block/block/ruby_expression.rb +0 -0
  136. data/app/models/concerns/ruby_to_block/block/ruby_p.rb +0 -0
  137. data/app/models/concerns/ruby_to_block/block/ruby_statement.rb +0 -0
  138. data/app/models/concerns/ruby_to_block/block/sensing_hit.rb +0 -0
  139. data/app/models/concerns/ruby_to_block/block/sensing_reach_wall.rb +0 -0
  140. data/app/models/concerns/ruby_to_block/block/sound_play.rb +0 -0
  141. data/app/models/concerns/ruby_to_block/block/sound_preset_sounds.rb +0 -0
  142. data/app/models/concerns/ruby_to_block/block/text.rb +0 -0
  143. data/app/models/concerns/ruby_to_block/block/value.rb +0 -0
  144. data/app/models/concerns/ruby_to_block/context.rb +0 -0
  145. data/app/models/concerns/ruby_to_block/formatter.rb +0 -0
  146. data/app/models/source_code.rb +0 -0
  147. data/app/views/editor/_block_tab.html.haml +4 -4
  148. data/app/views/editor/_character_modal.html.haml +7 -7
  149. data/app/views/editor/_load_modal.html.haml +6 -6
  150. data/app/views/editor/_reset_modal.html.haml +0 -0
  151. data/app/views/editor/_signin_modal.html.haml +0 -0
  152. data/app/views/editor/_toolbox.html.haml +39 -39
  153. data/app/views/editor/demo.html.erb +0 -0
  154. data/app/views/editor/index.html.haml +18 -18
  155. data/app/views/layouts/application.html.erb +2 -0
  156. data/bin/bundle +0 -0
  157. data/bin/rails +0 -0
  158. data/bin/rake +0 -0
  159. data/bin/smalruby-editor +0 -0
  160. data/config.ru +0 -0
  161. data/config/application.rb +1 -1
  162. data/config/boot.rb +0 -0
  163. data/config/database.yml.mysql2 +0 -0
  164. data/config/database.yml.sqlite3 +0 -0
  165. data/config/database.yml.travis +0 -0
  166. data/config/environment.rb +0 -0
  167. data/config/environments/development.rb +0 -0
  168. data/config/environments/production.rb +4 -1
  169. data/config/environments/standalone.rb +0 -0
  170. data/config/environments/test.rb +0 -0
  171. data/config/initializers/backtrace_silencers.rb +0 -0
  172. data/config/initializers/filter_parameter_logging.rb +0 -0
  173. data/config/initializers/inflections.rb +0 -0
  174. data/config/initializers/mime_types.rb +0 -0
  175. data/config/initializers/secret_token.rb +0 -0
  176. data/config/initializers/session_store.rb +0 -0
  177. data/config/initializers/teaspoon.rb +0 -0
  178. data/config/initializers/wrap_parameters.rb +0 -0
  179. data/config/locales/en.yml +64 -22
  180. data/config/locales/ja.yml +65 -0
  181. data/config/routes.rb +3 -1
  182. data/config/unicorn.rb +0 -0
  183. data/db/migrate/20131216121603_create_source_codes.rb +0 -0
  184. data/db/migrate/20131219045113_add_filename_to_source_code.rb +0 -0
  185. data/db/schema.rb +0 -0
  186. data/db/seeds.rb +0 -0
  187. data/demos/adjust_2wd_car.rb.xml +0 -0
  188. data/demos/car_chase.rb.xml +0 -0
  189. data/demos/hardware_led.rb.xml +0 -0
  190. data/demos/pong.rb.xml +0 -0
  191. data/demos/star.rb.xml +0 -0
  192. data/lib/assets/.keep +0 -0
  193. data/lib/smalruby_editor.rb +0 -0
  194. data/lib/smalruby_editor/blockly_message_helper.rb +20 -0
  195. data/lib/smalruby_editor/version.rb +1 -1
  196. data/lib/tasks/.keep +0 -0
  197. data/lib/tasks/gem.rake +1 -3
  198. data/lib/tasks/release.rake +0 -0
  199. data/lib/tasks/rspec.rake +0 -0
  200. data/lib/tasks/rubocop.rake +0 -0
  201. data/log/.keep +0 -0
  202. data/public/404.html +0 -0
  203. data/public/422.html +0 -0
  204. data/public/500.html +0 -0
  205. data/public/apple-touch-icon.png +0 -0
  206. data/public/blockly/media/1x1.gif +0 -0
  207. data/public/blockly/media/click.mp3 +0 -0
  208. data/public/blockly/media/click.ogg +0 -0
  209. data/public/blockly/media/click.wav +0 -0
  210. data/public/blockly/media/delete.mp3 +0 -0
  211. data/public/blockly/media/delete.ogg +0 -0
  212. data/public/blockly/media/delete.wav +0 -0
  213. data/public/blockly/media/handclosed.cur +0 -0
  214. data/public/blockly/media/handopen.cur +0 -0
  215. data/public/blockly/media/quote0.png +0 -0
  216. data/public/blockly/media/quote1.png +0 -0
  217. data/public/blockly/media/trashbody.png +0 -0
  218. data/public/blockly/media/trashlid.png +0 -0
  219. data/public/blockly/media/tree.png +0 -0
  220. data/public/browserconfig.xml +0 -0
  221. data/public/fonts/FontAwesome.otf +0 -0
  222. data/public/fonts/fontawesome-webfont.eot +0 -0
  223. data/public/fonts/fontawesome-webfont.ttf +0 -0
  224. data/public/fonts/fontawesome-webfont.woff +0 -0
  225. data/public/large.png +0 -0
  226. data/public/robots.txt +0 -0
  227. data/public/smalruby/assets/ball1.png +0 -0
  228. data/public/smalruby/assets/ball2.png +0 -0
  229. data/public/smalruby/assets/ball3.png +0 -0
  230. data/public/smalruby/assets/ball4.png +0 -0
  231. data/public/smalruby/assets/ball5.png +0 -0
  232. data/public/smalruby/assets/ball6.png +0 -0
  233. data/public/smalruby/assets/car1.png +0 -0
  234. data/public/smalruby/assets/car2.png +0 -0
  235. data/public/smalruby/assets/car3.png +0 -0
  236. data/public/smalruby/assets/car4.png +0 -0
  237. data/public/smalruby/assets/cat1.png +0 -0
  238. data/public/smalruby/assets/cat2.png +0 -0
  239. data/public/smalruby/assets/cat3.png +0 -0
  240. data/public/smalruby/assets/frog1.png +0 -0
  241. data/public/smalruby/assets/piano_do.wav +0 -0
  242. data/public/smalruby/assets/piano_do_2.wav +0 -0
  243. data/public/smalruby/assets/piano_fa.wav +0 -0
  244. data/public/smalruby/assets/piano_mi.wav +0 -0
  245. data/public/smalruby/assets/piano_ra.wav +0 -0
  246. data/public/smalruby/assets/piano_re.wav +0 -0
  247. data/public/smalruby/assets/piano_si.wav +0 -0
  248. data/public/smalruby/assets/piano_so.wav +0 -0
  249. data/public/smalruby/assets/ryu1.png +0 -0
  250. data/public/smalruby/assets/ryu2.png +0 -0
  251. data/public/smalruby/assets/taichi1.png +0 -0
  252. data/public/smalruby/assets/taichi2.png +0 -0
  253. data/public/square.png +0 -0
  254. data/public/tiny.png +0 -0
  255. data/public/wide.png +0 -0
  256. data/smalruby-editor.gemspec +1 -1
  257. data/spec/acceptance/base.feature +0 -0
  258. data/spec/acceptance/block_mode/blocks/character/new.feature +0 -0
  259. data/spec/acceptance/block_mode/blocks/control/await.feature +0 -0
  260. data/spec/acceptance/block_mode/blocks/control/await_until.feature +0 -0
  261. data/spec/acceptance/block_mode/blocks/control/break.feature +0 -0
  262. data/spec/acceptance/block_mode/blocks/control/if.feature +0 -0
  263. data/spec/acceptance/block_mode/blocks/control/if_else.feature +0 -0
  264. data/spec/acceptance/block_mode/blocks/control/loop.feature +0 -0
  265. data/spec/acceptance/block_mode/blocks/control/next.feature +0 -0
  266. data/spec/acceptance/block_mode/blocks/control/redo.feature +0 -0
  267. data/spec/acceptance/block_mode/blocks/control/sleep.feature +0 -0
  268. data/spec/acceptance/block_mode/blocks/control/times.feature +0 -0
  269. data/spec/acceptance/block_mode/blocks/control/until.feature +0 -0
  270. data/spec/acceptance/block_mode/blocks/events/on_click.feature +0 -0
  271. data/spec/acceptance/block_mode/blocks/events/on_hit.feature +0 -0
  272. data/spec/acceptance/block_mode/blocks/events/on_key_push_or_down.feature +0 -0
  273. data/spec/acceptance/block_mode/blocks/events/on_start.feature +0 -0
  274. data/spec/acceptance/block_mode/blocks/hardware/button_down_or_up.feature +0 -0
  275. data/spec/acceptance/block_mode/blocks/hardware/button_not_use_pullup.feature +0 -0
  276. data/spec/acceptance/block_mode/blocks/hardware/init_hardware.feature +0 -0
  277. data/spec/acceptance/block_mode/blocks/hardware/led_off.feature +0 -0
  278. data/spec/acceptance/block_mode/blocks/hardware/led_on.feature +0 -0
  279. data/spec/acceptance/block_mode/blocks/hardware/motor_driver.feature +0 -0
  280. data/spec/acceptance/block_mode/blocks/hardware/motor_driver_speed.feature +0 -0
  281. data/spec/acceptance/block_mode/blocks/hardware/on_button_down_or_up.feature +0 -0
  282. data/spec/acceptance/block_mode/blocks/hardware/on_sensor_change.feature +0 -0
  283. data/spec/acceptance/block_mode/blocks/hardware/rgb_led_off.feature +0 -0
  284. data/spec/acceptance/block_mode/blocks/hardware/rgb_led_on.feature +0 -0
  285. data/spec/acceptance/block_mode/blocks/hardware/sensor_value.feature +0 -0
  286. data/spec/acceptance/block_mode/blocks/hardware/servo_set_position.feature +0 -0
  287. data/spec/acceptance/block_mode/blocks/hardware/two_wheel_drive_car.feature +0 -0
  288. data/spec/acceptance/block_mode/blocks/hardware/two_wheel_drive_car_speed.feature +0 -0
  289. data/spec/acceptance/block_mode/blocks/looks/hide.feature +0 -0
  290. data/spec/acceptance/block_mode/blocks/looks/say.feature +0 -0
  291. data/spec/acceptance/block_mode/blocks/looks/show.feature +0 -0
  292. data/spec/acceptance/block_mode/blocks/looks/vanish.feature +0 -0
  293. data/spec/acceptance/block_mode/blocks/motion/change_x_by.feature +0 -0
  294. data/spec/acceptance/block_mode/blocks/motion/change_y_by.feature +0 -0
  295. data/spec/acceptance/block_mode/blocks/motion/move.feature +0 -0
  296. data/spec/acceptance/block_mode/blocks/motion/reach_wall.feature +0 -0
  297. data/spec/acceptance/block_mode/blocks/motion/rotate_left.feature +0 -0
  298. data/spec/acceptance/block_mode/blocks/motion/rotate_right.feature +0 -0
  299. data/spec/acceptance/block_mode/blocks/motion/self_angle.feature +0 -0
  300. data/spec/acceptance/block_mode/blocks/motion/self_x.feature +0 -0
  301. data/spec/acceptance/block_mode/blocks/motion/self_y.feature +0 -0
  302. data/spec/acceptance/block_mode/blocks/motion/set_angle.feature +0 -0
  303. data/spec/acceptance/block_mode/blocks/motion/set_x.feature +0 -0
  304. data/spec/acceptance/block_mode/blocks/motion/set_x_y.feature +0 -0
  305. data/spec/acceptance/block_mode/blocks/motion/set_y.feature +0 -0
  306. data/spec/acceptance/block_mode/blocks/motion/turn.feature +0 -0
  307. data/spec/acceptance/block_mode/blocks/motion/turn_if_reach_wall.feature +0 -0
  308. data/spec/acceptance/block_mode/blocks/operators/and_or.feature +0 -0
  309. data/spec/acceptance/block_mode/blocks/operators/four_arithmetic_and_compares.feature +0 -0
  310. data/spec/acceptance/block_mode/blocks/operators/index_of.feature +0 -0
  311. data/spec/acceptance/block_mode/blocks/operators/length.feature +0 -0
  312. data/spec/acceptance/block_mode/blocks/operators/math_method.feature +0 -0
  313. data/spec/acceptance/block_mode/blocks/operators/negate.feature +0 -0
  314. data/spec/acceptance/block_mode/blocks/operators/rand.feature +0 -0
  315. data/spec/acceptance/block_mode/blocks/operators/round.feature +0 -0
  316. data/spec/acceptance/block_mode/blocks/operators/text.feature +0 -0
  317. data/spec/acceptance/block_mode/blocks/operators/true_false.feature +0 -0
  318. data/spec/acceptance/block_mode/blocks/ruby/expression.feature +0 -0
  319. data/spec/acceptance/block_mode/blocks/ruby/p.feature +0 -0
  320. data/spec/acceptance/block_mode/blocks/ruby/statement_comment.feature +0 -0
  321. data/spec/acceptance/block_mode/blocks/sensing/character_property.feature +0 -0
  322. data/spec/acceptance/block_mode/blocks/sensing/hit.feature +0 -0
  323. data/spec/acceptance/block_mode/blocks/sensing/input_key_push_or_down.feature +0 -0
  324. data/spec/acceptance/block_mode/blocks/sensing/input_mouse_pos_x.feature +0 -0
  325. data/spec/acceptance/block_mode/blocks/sensing/input_mouse_pos_y.feature +0 -0
  326. data/spec/acceptance/block_mode/blocks/sensing/input_mouse_push_or_down.feature +0 -0
  327. data/spec/acceptance/block_mode/blocks/sensing/reach_wall.feature +0 -0
  328. data/spec/acceptance/block_mode/blocks/sensing/time_now.feature +0 -0
  329. data/spec/acceptance/block_mode/blocks/sound/play.feature +0 -0
  330. data/spec/acceptance/block_mode/demo.feature +0 -0
  331. data/spec/acceptance/block_mode/translate.feature +0 -0
  332. data/spec/acceptance/readme.md +0 -0
  333. data/spec/acceptance/ruby_mode/check.feature +0 -0
  334. data/spec/acceptance/ruby_mode/download.feature +0 -0
  335. data/spec/acceptance/ruby_mode/load.feature +0 -0
  336. data/spec/acceptance/ruby_mode/translate.feature +0 -0
  337. data/spec/acceptance/standalone/run.feature +0 -0
  338. data/spec/acceptance/standalone/save.feature +0 -0
  339. data/spec/acceptance/standalone/signin.feature +0 -0
  340. data/spec/controllers/editor_controller_spec.rb +0 -0
  341. data/spec/controllers/sessions_controller_spec.rb +0 -0
  342. data/spec/controllers/source_codes_controller_spec.rb +0 -0
  343. data/spec/fixtures/files/01.rb +0 -0
  344. data/spec/fixtures/files/01.rb.xml +0 -0
  345. data/spec/fixtures/files/01_remix.rb +0 -0
  346. data/spec/fixtures/files/01_remix02.rb +0 -0
  347. data/spec/fixtures/files/01_remix10.rb.xml +0 -0
  348. data/spec/fixtures/files/favicon.ico +0 -0
  349. data/spec/helpers/editor_helper_spec.rb +0 -0
  350. data/spec/helpers/sessions_helper_spec.rb +0 -0
  351. data/spec/javascripts/collections/character_set_spec.coffee +0 -0
  352. data/spec/javascripts/models/character_spec.coffee +0 -0
  353. data/spec/javascripts/models/scene_spec.coffee +0 -0
  354. data/spec/javascripts/models/source_code_spec.coffee +0 -0
  355. data/spec/javascripts/spec_helper.js +0 -0
  356. data/spec/lib/smalruby_editor_spec.rb +0 -0
  357. data/spec/models/concerns/ruby_to_block/block/character_method_call_spec.rb +0 -0
  358. data/spec/models/concerns/ruby_to_block/block/control_if_spec.rb +0 -0
  359. data/spec/models/concerns/ruby_to_block/block/control_loop_spec.rb +0 -0
  360. data/spec/models/concerns/ruby_to_block/block/events_on_start_spec.rb +0 -0
  361. data/spec/models/concerns/ruby_to_block/block/hardware_spec.rb +0 -0
  362. data/spec/models/concerns/ruby_to_block/block/looks_say_spec.rb +0 -0
  363. data/spec/models/concerns/ruby_to_block/block/looks_spec.rb +0 -0
  364. data/spec/models/concerns/ruby_to_block/block/motion_move_spec.rb +0 -0
  365. data/spec/models/concerns/ruby_to_block/block/motion_spec.rb +0 -0
  366. data/spec/models/concerns/ruby_to_block/block/motion_turn_spec.rb +0 -0
  367. data/spec/models/concerns/ruby_to_block/block/motion_turn_xy_spec.rb +0 -0
  368. data/spec/models/concerns/ruby_to_block/block/require_smalruby_spec.rb +0 -0
  369. data/spec/models/concerns/ruby_to_block/block/ruby_comment_spec.rb +0 -0
  370. data/spec/models/concerns/ruby_to_block/block/ruby_statement_spec.rb +0 -0
  371. data/spec/models/concerns/ruby_to_block/block/sensing_reach_wall_spec.rb +0 -0
  372. data/spec/models/concerns/ruby_to_block/block/shared/block_examples.rb +0 -0
  373. data/spec/models/concerns/ruby_to_block/block/sound_spec.rb +0 -0
  374. data/spec/models/concerns/ruby_to_block/block/text_spec.rb +0 -0
  375. data/spec/models/concerns/ruby_to_block/block_spec.rb +0 -0
  376. data/spec/models/concerns/ruby_to_block_spec.rb +0 -0
  377. data/spec/models/source_code_spec.rb +0 -0
  378. data/spec/spec_helper.rb +0 -0
  379. data/spec/steps/base_steps.rb +1 -0
  380. data/spec/steps/block_mode_steps.rb +0 -0
  381. data/spec/steps/fix_turnip.rb +0 -0
  382. data/spec/steps/global_variable.rb +0 -0
  383. data/spec/steps/text_editor_steps.rb +0 -0
  384. data/spec/support/capybara.rb +0 -0
  385. data/spec/support/env.rb +0 -0
  386. data/spec/support/ruby_to_block.rb +0 -0
  387. data/spec/teaspoon_env.rb +0 -0
  388. data/spec/turnip_helper.rb +0 -0
  389. data/vendor/assets/javascripts/.keep +0 -0
  390. data/vendor/assets/javascripts/blockly/blockly_compressed.js +0 -0
  391. data/vendor/assets/javascripts/blockly/blocks_compressed.js +0 -0
  392. data/vendor/assets/javascripts/blockly/msg/js/en_us.js +507 -0
  393. data/vendor/assets/javascripts/blockly/msg/js/ja.js +0 -0
  394. data/vendor/assets/javascripts/jquery.blockUI.js +0 -0
  395. data/vendor/assets/stylesheets/.keep +0 -0
  396. metadata +80 -66
@@ -0,0 +1,237 @@
1
+ goog.provide('Blockly.Msg.ja.smalruby');
2
+
3
+ goog.require('Blockly.Msg');
4
+
5
+
6
+ /**
7
+ * Due to the frequency of long strings, the 80-column wrap rule need not apply
8
+ * to message files.
9
+ */
10
+
11
+ // views/main_menu_view.js.coffee
12
+ Blockly.Msg.VIEWS_MAIN_MENU_VIEW_COMMON_LINES = '行';
13
+ Blockly.Msg.VIEWS_MAIN_MENU_VIEW_COMMON_LETTERS = '文字';
14
+ Blockly.Msg.VIEWS_MAIN_MENU_VIEW_COMMON_COMMA = '、';
15
+
16
+ Blockly.Msg.VIEWS_MAIN_MENU_VIEW_BLOCK_MODE_BLOCKUI_TITLE = 'プログラムの変換中';
17
+ Blockly.Msg.VIEWS_MAIN_MENU_VIEW_BLOCK_MODE_BLOCKUI_MESSAGE = 'プログラムをブロックに変換しています。';
18
+ Blockly.Msg.VIEWS_MAIN_MENU_VIEW_BLOCK_MODE_ERROR = 'ブロックへの変換に失敗しました';
19
+
20
+ Blockly.Msg.VIEWS_MAIN_MENU_VIEW_RUN_BLOCKUI_TITLE = 'プログラムの実行中';
21
+ Blockly.Msg.VIEWS_MAIN_MENU_VIEW_RUN_BLOCKUI_MESSAGE = 'プログラムの画面に切り替えてください。';
22
+ Blockly.Msg.VIEWS_MAIN_MENU_VIEW_RUN_BLOCKUI_NOTICE = 'プログラムをセーブ・チェックしてから実行するよ♪<br>Escキーを押すとプログラムが終わります。';
23
+ Blockly.Msg.VIEWS_MAIN_MENU_VIEW_RUN_ERROR_CANT_RUN = 'プログラムを実行できませんでした';
24
+ Blockly.Msg.VIEWS_MAIN_MENU_VIEW_RUN_ERROR_CANCEL_TO_RUN = 'プログラムの実行をキャンセルしました';
25
+
26
+ Blockly.Msg.VIEWS_MAIN_MENU_VIEW_DOWNLOAD_BLOCKUI_TITLE = 'プログラムのダウンロード中';
27
+ Blockly.Msg.VIEWS_MAIN_MENU_VIEW_DOWNLOAD_BLOCKUI_MESSAGE = 'プログラムをダウンロードしています。';
28
+
29
+
30
+ // blocks/motion.js.coffee.erb
31
+ Blockly.Msg.BLOCKS_MOTION_MOVE = '%1歩動かす';
32
+ Blockly.Msg.BLOCKS_MOTION_TURN_RIGHT_DEGREES = '時計回りに%1度回す';
33
+ Blockly.Msg.BLOCKS_MOTION_TURN_LEFT_DEGREES = '反時計回りに%1度回す';
34
+ Blockly.Msg.BLOCKS_MOTION_POINT_IN_DIRECTION = '%1度に向ける';
35
+ Blockly.Msg.BLOCKS_MOTION_POINT_TOWARDS_MOUSE = 'マウスポインターへ向ける';
36
+ Blockly.Msg.BLOCKS_MOTION_POINT_TOWARDS_CHARACTER = 'へ向ける';
37
+ Blockly.Msg.BLOCKS_MOTION_SET_X_Y_X = 'x座標を';
38
+ Blockly.Msg.BLOCKS_MOTION_SET_X_Y_Y = '、y座標を';
39
+ Blockly.Msg.BLOCKS_MOTION_SET_X_Y_SUFFIX = 'にする';
40
+ Blockly.Msg.BLOCKS_MOTION_GO_TO_MOUSE = 'マウスポインターへ行く';
41
+ Blockly.Msg.BLOCKS_MOTION_GO_TO_CHARACTER_PREFIX = '';
42
+ Blockly.Msg.BLOCKS_MOTION_GO_TO_CHARACTER_SUFFIX = 'へ行く';
43
+ Blockly.Msg.BLOCKS_MOTION_CHANGE_X_BY = 'x座標を%1ずつ変える';
44
+ Blockly.Msg.BLOCKS_MOTION_SET_X = 'x座標を%1にする';
45
+ Blockly.Msg.BLOCKS_MOTION_CHANGE_Y_BY = 'y座標を%1ずつ変える';
46
+ Blockly.Msg.BLOCKS_MOTION_SET_Y = 'y座標を%1にする';
47
+ Blockly.Msg.BLOCKS_MOTION_TURN_IF_REACH_WALL = 'もし端に着いたら、跳ね返る';
48
+ Blockly.Msg.BLOCKS_MOTION_TURN = '跳ね返る';
49
+ Blockly.Msg.BLOCKS_MOTION_TURN_XY_X = '水平(x)';
50
+ Blockly.Msg.BLOCKS_MOTION_TURN_XY_Y = '垂直(y)';
51
+ Blockly.Msg.BLOCKS_MOTION_TURN_XY_PREFIX = '';
52
+ Blockly.Msg.BLOCKS_MOTION_TURN_XY_SUFFIX = '方向に跳ね返る';
53
+ Blockly.Msg.BLOCKS_MOTION_SET_ROTATION_STYLE_LEFT_RIGHT = '左右のみ';
54
+ Blockly.Msg.BLOCKS_MOTION_SET_ROTATION_STYLE_NONE = '回転しない';
55
+ Blockly.Msg.BLOCKS_MOTION_SET_ROTATION_STYLE_FREE = '自由に回転';
56
+ Blockly.Msg.BLOCKS_MOTION_SET_ROTATION_STYLE_PREFIX = '回転方法を';
57
+ Blockly.Msg.BLOCKS_MOTION_SET_ROTATION_STYLE_SUFFIX = 'にする';
58
+ Blockly.Msg.BLOCKS_MOTION_SELF_X = 'x座標';
59
+ Blockly.Msg.BLOCKS_MOTION_SELF_Y = 'y座標';
60
+ Blockly.Msg.BLOCKS_MOTION_SELF_ANGLE = '向き';
61
+
62
+ // blocks/events.js.coffee.erb
63
+ Blockly.Msg.BLOCKS_EVENTS_ON_START = '実行ボタンがクリックされたとき';
64
+ Blockly.Msg.BLOCKS_EVENTS_ON_KEY_PUSH_OR_DOWN_PREFIX = 'キーボードの';
65
+ Blockly.Msg.BLOCKS_EVENTS_ON_KEY_PUSH_OR_DOWN_MIDDLE = 'が';
66
+ Blockly.Msg.BLOCKS_EVENTS_ON_KEY_PUSH_OR_DOWN_SUFFIX = 'とき';
67
+ Blockly.Msg.BLOCKS_EVENTS_ON_CLICK = 'キャラクターがクリックされたとき';
68
+ Blockly.Msg.BLOCKS_EVENTS_ON_HIT_PREFIX = '';
69
+ Blockly.Msg.BLOCKS_EVENTS_ON_HIT_SUFFIX = 'にぶつかったとき';
70
+
71
+ // blocks/sensing.js.coffee.erb
72
+ Blockly.Msg.BLOCKS_SENSING_K_UP = '↑';
73
+ Blockly.Msg.BLOCKS_SENSING_K_DOWN = '↓';
74
+ Blockly.Msg.BLOCKS_SENSING_K_LEFT = '←';
75
+ Blockly.Msg.BLOCKS_SENSING_K_RIGHT = '→';
76
+ Blockly.Msg.BLOCKS_SENSING_K_SPACE = 'スペース';
77
+ Blockly.Msg.BLOCKS_SENSING_PUSH = '押された';
78
+ Blockly.Msg.BLOCKS_SENSING_HOLD_DOWN = '押され続けている';
79
+ Blockly.Msg.BLOCKS_SENSING_DOWN = Blockly.Msg.BLOCKS_SENSING_PUSH;
80
+ Blockly.Msg.BLOCKS_SENSING_M_LBUTTON = '左ボタン';
81
+ Blockly.Msg.BLOCKS_SENSING_M_MBUTTON = '中ボタン';
82
+ Blockly.Msg.BLOCKS_SENSING_M_RBUTTON = '右ボタン';
83
+ Blockly.Msg.BLOCKS_SENSING_UP = '押された';
84
+ Blockly.Msg.BLOCKS_SENSING_REACH_WALL = '端に触れた';
85
+ Blockly.Msg.BLOCKS_SENSING_INPUT_KEY_PUSH_OR_DOWN_PREFIX = 'キーボードの';
86
+ Blockly.Msg.BLOCKS_SENSING_INPUT_KEY_PUSH_OR_DOWN_MIDDLE = 'が';
87
+ Blockly.Msg.BLOCKS_SENSING_INPUT_KEY_PUSH_OR_DOWN_SUFFIX = '';
88
+ Blockly.Msg.BLOCKS_SENSING_INPUT_MOUSE_PUSH_OR_DOWN_PREFIX = 'マウスの';
89
+ Blockly.Msg.BLOCKS_SENSING_INPUT_MOUSE_PUSH_OR_DOWN_MIDDLE = 'が';
90
+ Blockly.Msg.BLOCKS_SENSING_INPUT_MOUSE_PUSH_OR_DOWN_SUFFIX = '';
91
+ Blockly.Msg.BLOCKS_SENSING_INPUT_MOUSE_POS_X = 'マウスのx座標';
92
+ Blockly.Msg.BLOCKS_SENSING_INPUT_MOUSE_POS_Y = 'マウスのy座標';
93
+ Blockly.Msg.BLOCKS_SENSING_HIT_PREFIX = '';
94
+ Blockly.Msg.BLOCKS_SENSING_HIT_SUFFIX = 'に触れた';
95
+ Blockly.Msg.BLOCKS_SENSING_CHARACTER_PROPERTY_X = 'x座標';
96
+ Blockly.Msg.BLOCKS_SENSING_CHARACTER_PROPERTY_Y = 'y座標';
97
+ Blockly.Msg.BLOCKS_SENSING_CHARACTER_PROPERTY_ANGLE = '向き';
98
+ Blockly.Msg.BLOCKS_SENSING_CHARACTER_PROPERTY_COSTUME_INDEX = 'コスチューム番号';
99
+ Blockly.Msg.BLOCKS_SENSING_CHARACTER_PROPERTY_COSTUME = 'コスチューム名';
100
+ Blockly.Msg.BLOCKS_SENSING_CHARACTER_PROPERTY_SCALE = '大きさ';
101
+ Blockly.Msg.BLOCKS_SENSING_CHARACTER_PROPERTY_VOLUME = 'ボリューム';
102
+ Blockly.Msg.BLOCKS_SENSING_CHARACTER_PROPERTY_MIDDLE = 'の';
103
+ Blockly.Msg.BLOCKS_SENSING_TIME_NOW_YEAR = '年';
104
+ Blockly.Msg.BLOCKS_SENSING_TIME_NOW_MONTH = '月';
105
+ Blockly.Msg.BLOCKS_SENSING_TIME_NOW_DAY = '日';
106
+ Blockly.Msg.BLOCKS_SENSING_TIME_NOW_WDAY = '曜日';
107
+ Blockly.Msg.BLOCKS_SENSING_TIME_NOW_HOUR = '時';
108
+ Blockly.Msg.BLOCKS_SENSING_TIME_NOW_MIN = '分';
109
+ Blockly.Msg.BLOCKS_SENSING_TIME_NOW_SEC = '秒';
110
+ Blockly.Msg.BLOCKS_SENSING_TIME_NOW = '現在の';
111
+
112
+ // blocks/control.js.coffee.erb
113
+ Blockly.Msg.BLOCKS_CONTROL_SLEEP = '%1秒待つ';
114
+ Blockly.Msg.BLOCKS_CONTROL_LOOP = 'ずっと';
115
+ Blockly.Msg.BLOCKS_CONTROL_LOOP_END = 'を繰り返す';
116
+ Blockly.Msg.BLOCKS_CONTROL_BREAK = '繰り返しから脱出する';
117
+ Blockly.Msg.BLOCKS_CONTROL_NEXT = '次の繰り返しにジャンプする';
118
+ Blockly.Msg.BLOCKS_CONTROL_REDO = '現在の繰り返しをやり直す';
119
+ Blockly.Msg.BLOCKS_CONTROL_IF = 'もし';
120
+ Blockly.Msg.BLOCKS_CONTROL_THEN = 'ならば';
121
+ Blockly.Msg.BLOCKS_CONTROL_ELSE = 'でなければ';
122
+ Blockly.Msg.BLOCKS_CONTROL_TIMES = '%1回繰り返す';
123
+ Blockly.Msg.BLOCKS_CONTROL_AWAIT_UNTIL = '%1まで待つ';
124
+ Blockly.Msg.BLOCKS_CONTROL_UNTIL = '%1まで';
125
+ Blockly.Msg.BLOCKS_CONTROL_AWAIT = 'ほんの少し待つ';
126
+
127
+ // blocks/ruby.js.coffee.erb
128
+ Blockly.Msg.BLOCKS_RUBY_STATEMENT = '文';
129
+ Blockly.Msg.BLOCKS_RUBY_EXPRESSION = '式';
130
+ Blockly.Msg.BLOCKS_RUBY_COMMENT = 'コメント';
131
+
132
+ // blocks/field_character.js.coffee.erb
133
+ Blockly.Msg.BLOCKS_FIELD_CHARACTER_NO_CHARACTER = 'キャラクターなし';
134
+
135
+ // blocks/sound.js.coffee.erb
136
+ Blockly.Msg.BLOCKS_SOUND_PRESET_SOUNDS_PIANO_DO = 'ピアノのド';
137
+ Blockly.Msg.BLOCKS_SOUND_PRESET_SOUNDS_PIANO_RE = 'ピアノのレ';
138
+ Blockly.Msg.BLOCKS_SOUND_PRESET_SOUNDS_PIANO_MI = 'ピアノのミ';
139
+ Blockly.Msg.BLOCKS_SOUND_PRESET_SOUNDS_PIANO_FA = 'ピアノのファ';
140
+ Blockly.Msg.BLOCKS_SOUND_PRESET_SOUNDS_PIANO_SO = 'ピアノのソ';
141
+ Blockly.Msg.BLOCKS_SOUND_PRESET_SOUNDS_PIANO_RA = 'ピアノのラ';
142
+ Blockly.Msg.BLOCKS_SOUND_PRESET_SOUNDS_PIANO_SI = 'ピアノのシ';
143
+ Blockly.Msg.BLOCKS_SOUND_PRESET_SOUNDS_PIANO_DO_2 = 'ピアノの高いド';
144
+ Blockly.Msg.BLOCKS_SOUND_PLAY = '%1の音を鳴らす';
145
+
146
+ // blocks/looks.js.coffee.erb
147
+ Blockly.Msg.BLOCKS_LOOKS_SAY = '%1と言う';
148
+ Blockly.Msg.BLOCKS_LOOKS_THINK = '%1と考える';
149
+ Blockly.Msg.BLOCKS_LOOKS_SAY_WITH_SECOND = '%1と%2秒と言う';
150
+ Blockly.Msg.BLOCKS_LOOKS_THINK_WITH_SECOND = '%1と%2秒と考える';
151
+ Blockly.Msg.BLOCKS_LOOKS_SHOW = '表示する';
152
+ Blockly.Msg.BLOCKS_LOOKS_HIDE = '隠す';
153
+ Blockly.Msg.BLOCKS_LOOKS_VANISH = '消滅する';
154
+
155
+ // blocks/hardware.js.coffee.erb
156
+ Blockly.Msg.BLOCKS_HARDWARE_LED_ON = 'LED%1をオンにする';
157
+ Blockly.Msg.BLOCKS_HARDWARE_LED_OFF = 'LED%1をオフにする';
158
+ Blockly.Msg.BLOCKS_HARDWARE_ANODE = 'アノード';
159
+ Blockly.Msg.BLOCKS_HARDWARE_CATHODE = 'カソード';
160
+ Blockly.Msg.BLOCKS_HARDWARE_LEFT = ' 左';
161
+ Blockly.Msg.BLOCKS_HARDWARE_RIGHT = '右';
162
+ Blockly.Msg.BLOCKS_HARDWARE_INIT_HARDWARE = 'ハードウェアを準備する';
163
+ Blockly.Msg.BLOCKS_HARDWARE_RGB_LED_ON = 'set RGB LED %1 common %2 color to %3';
164
+
165
+ Blockly.Msg.BLOCKS_HARDWARE_RGB_LED_ON = 'RGB LED%1コモン%2を%3にする';
166
+ Blockly.Msg.BLOCKS_HARDWARE_RGB_LED_OFF = 'RGB LED%1コモン%2をオフにする';
167
+ Blockly.Msg.BLOCKS_HARDWARE_SEVEN_SEGMENT_DISPLAY_SHOW = '7セグディスプレイに%1を表示する';
168
+ Blockly.Msg.BLOCKS_HARDWARE_SEVEN_SEGMENT_DISPLAY_OFF = '7セグディスプレイをオフにする';
169
+ Blockly.Msg.BLOCKS_HARDWARE_LCD_PUTS = 'LCDに%1を表示する';
170
+ Blockly.Msg.BLOCKS_HARDWARE_LCD_CLEAR = 'LCDをクリアする';
171
+ Blockly.Msg.BLOCKS_HARDWARE_SERVO_SET_POSITION = 'サーボ%1を%2度(5~180)にする';
172
+ Blockly.Msg.BLOCKS_HARDWARE_TWO_WHEEL_DRIVE_CAR_FORWARD = '2WD車%1を進める';
173
+ Blockly.Msg.BLOCKS_HARDWARE_TWO_WHEEL_DRIVE_CAR_BACKWARD = '2WD車%1をバックさせる';
174
+ Blockly.Msg.BLOCKS_HARDWARE_TWO_WHEEL_DRIVE_CAR_TURN_LEFT = '2WD車%1を左に曲げる';
175
+ Blockly.Msg.BLOCKS_HARDWARE_TWO_WHEEL_DRIVE_CAR_TURN_RIGHT = '2WD車%1を右に曲げる';
176
+ Blockly.Msg.BLOCKS_HARDWARE_TWO_WHEEL_DRIVE_CAR_STOP = '2WD車%1を止める';
177
+ Blockly.Msg.BLOCKS_HARDWARE_TWO_WHEEL_DRIVE_CAR_RUN = '2WD車%2を%3秒%1';
178
+ Blockly.Msg.BLOCKS_HARDWARE_TWO_WHEEL_DRIVE_CAR_COMMANDS_FORWARD = '進める';
179
+ Blockly.Msg.BLOCKS_HARDWARE_TWO_WHEEL_DRIVE_CAR_COMMANDS_BACKWARD = 'バックさせる';
180
+ Blockly.Msg.BLOCKS_HARDWARE_TWO_WHEEL_DRIVE_CAR_COMMANDS_TURN_LEFT = '左に曲げる';
181
+ Blockly.Msg.BLOCKS_HARDWARE_TWO_WHEEL_DRIVE_CAR_COMMANDS_TURN_RIGHT = '右に曲げる';
182
+ Blockly.Msg.BLOCKS_HARDWARE_TWO_WHEEL_DRIVE_CAR_COMMANDS_STOP = '止める';
183
+ Blockly.Msg.BLOCKS_HARDWARE_TWO_WHEEL_DRIVE_CAR_SET_SPEED = '2WD車%1の%2の速度(%)を%3にする';
184
+ Blockly.Msg.BLOCKS_HARDWARE_TWO_WHEEL_DRIVE_CAR_SPEED = '2WD車%1の%2の速度(%)';
185
+ Blockly.Msg.BLOCKS_HARDWARE_MOTOR_DRIVER_FORWARD = '正転させる';
186
+ Blockly.Msg.BLOCKS_HARDWARE_MOTOR_DRIVER_BACKWARD = '逆転させる';
187
+ Blockly.Msg.BLOCKS_HARDWARE_MOTOR_DRIVER_STOP = '止める';
188
+ Blockly.Msg.BLOCKS_HARDWARE_MOTOR_DRIVER = '(モータードライバ%1で)モーターを%2';
189
+ Blockly.Msg.BLOCKS_HARDWARE_MOTOR_DRIVER_SET_SPEED = '(モータードライバ%1の)モーターの速度を%2にする';
190
+ Blockly.Msg.BLOCKS_HARDWARE_MOTOR_DRIVER_SPEED = '(モータードライバ%1の)モーターの速度(%)';
191
+ Blockly.Msg.BLOCKS_HARDWARE_BUTTON_DOWN_OR_UP = 'ボタン%1が%2';
192
+ Blockly.Msg.BLOCKS_HARDWARE_ON_BUTTON_DOWN_OR_UP = 'ボタン%1が%2とき';
193
+ Blockly.Msg.BLOCKS_HARDWARE_BUTTON_NOT_USE_PULLUP = 'ボタン%1のプルアップ抵抗を使わない';
194
+ Blockly.Msg.BLOCKS_HARDWARE_SENSOR_VALUE = 'センサー%1';
195
+ Blockly.Msg.BLOCKS_HARDWARE_ON_SENSOR_CHANGE = 'センサー%1が変化したとき';
196
+
197
+
198
+ // blocks/operators.js.coffee.erb
199
+ Blockly.Msg.BLOCKS_OPERATORS_ADD = '%1+%2';
200
+ Blockly.Msg.BLOCKS_OPERATORS_MINUS = '%1ー%2';
201
+ Blockly.Msg.BLOCKS_OPERATORS_MULTIPLY = '%1×%2';
202
+ Blockly.Msg.BLOCKS_OPERATORS_DIVIDE = '%1÷%2';
203
+ Blockly.Msg.BLOCKS_OPERATORS_COMPARE_LT = '%1<%2';
204
+ Blockly.Msg.BLOCKS_OPERATORS_COMPARE_LTE = '%1≦%2';
205
+ Blockly.Msg.BLOCKS_OPERATORS_COMPARE_EQ = '%1=%2';
206
+ Blockly.Msg.BLOCKS_OPERATORS_COMPARE_GTE = '%1≧%2';
207
+ Blockly.Msg.BLOCKS_OPERATORS_COMPARE_GT = '%1>%2';
208
+ Blockly.Msg.BLOCKS_OPERATORS_RAND = '%1から%2までの乱数';
209
+ Blockly.Msg.BLOCKS_OPERATORS_AND = '%1かつ%2';
210
+ Blockly.Msg.BLOCKS_OPERATORS_OR = '%1または%2';
211
+ Blockly.Msg.BLOCKS_OPERATORS_NOT = '%1ではない';
212
+ Blockly.Msg.BLOCKS_OPERATORS_INDEX_OF = '%1の%2番目';
213
+ Blockly.Msg.BLOCKS_OPERATORS_LENGTH = '%1の長さ';
214
+ Blockly.Msg.BLOCKS_OPERATORS_MODULO = '%1を%2で割った余り';
215
+ Blockly.Msg.BLOCKS_OPERATORS_ROUND = '%1を丸める';
216
+ Blockly.Msg.BLOCKS_OPERATORS_MATH_METHOD = '%1の%2';
217
+ Blockly.Msg.BLOCKS_OPERATORS_MATH_METHOD_ABS = '絶対値';
218
+ Blockly.Msg.BLOCKS_OPERATORS_MATH_METHOD_FLOOR = '切り上げ';
219
+ Blockly.Msg.BLOCKS_OPERATORS_MATH_METHOD_CEIL = '切り下げ';
220
+ Blockly.Msg.BLOCKS_OPERATORS_MATH_METHOD_SQRT = '平方根';
221
+ Blockly.Msg.BLOCKS_OPERATORS_MATH_METHOD_SIN = 'sin';
222
+ Blockly.Msg.BLOCKS_OPERATORS_MATH_METHOD_COS = 'cos';
223
+ Blockly.Msg.BLOCKS_OPERATORS_MATH_METHOD_TAN = 'tan';
224
+ Blockly.Msg.BLOCKS_OPERATORS_MATH_METHOD_ASIN = 'asin';
225
+ Blockly.Msg.BLOCKS_OPERATORS_MATH_METHOD_ACOS = 'acos';
226
+ Blockly.Msg.BLOCKS_OPERATORS_MATH_METHOD_ATAN = 'atan';
227
+ Blockly.Msg.BLOCKS_OPERATORS_MATH_METHOD_LN = 'log';
228
+ Blockly.Msg.BLOCKS_OPERATORS_MATH_METHOD_LOG = 'log10';
229
+ Blockly.Msg.BLOCKS_OPERATORS_MATH_METHOD_E_SQUARE = 'e ^';
230
+ Blockly.Msg.BLOCKS_OPERATORS_MATH_METHOD_10_SQUARE = '10 ^';
231
+ Blockly.Msg.BLOCKS_OPERATORS_TRUE = '真';
232
+ Blockly.Msg.BLOCKS_OPERATORS_FALSE = '偽';
233
+
234
+ // blocks/pen.js.coffee.erb
235
+ Blockly.Msg.BLOCKS_PEN_DOWN_PEN = 'ペンを下ろす';
236
+ Blockly.Msg.BLOCKS_PEN_UP_PEN = 'ペンを上げる';
237
+ Blockly.Msg.BLOCKS_PEN_SET_PEN_COLOR = 'ペンの色を%1にする';
File without changes
@@ -174,5 +174,13 @@ window.Smalruby =
174
174
  window.textEditor.moveCursorTo(0, 0)
175
175
  window.changed = false
176
176
 
177
+ # 国際化したメッセージを取得する
178
+ bm: (name) ->
179
+ msg = Blockly.Msg[name]
180
+ if (typeof msg) == 'string'
181
+ msg
182
+ else
183
+ name
184
+
177
185
  $(document).ready ->
178
186
  Smalruby.initialize()
File without changes
@@ -1,3 +1,8 @@
1
+ <%
2
+ require 'smalruby_editor'
3
+ require 'smalruby_editor/blockly_message_helper'
4
+ %>
5
+
1
6
  # ナビゲーションメニューを表現するビュー
2
7
  Smalruby.MainMenuView = Backbone.View.extend
3
8
  el: '#main-menu'
@@ -44,9 +49,9 @@ Smalruby.MainMenuView = Backbone.View.extend
44
49
  title:
45
50
  """
46
51
  <i class="icon-filter"></i>
47
- プログラムの変換中
52
+ #{<%= bm('.block_mode_blockui_title') %>}
48
53
  """
49
- message: 'プログラムをブロックに変換しています。'
54
+ message: <%= bm('.block_mode_blockui_message') %>
50
55
 
51
56
  sourceCode = new Smalruby.SourceCode()
52
57
  sourceCode.toBlocks()
@@ -61,7 +66,7 @@ Smalruby.MainMenuView = Backbone.View.extend
61
66
  Smalruby.changedAfterTranslating = false
62
67
  .then(@unblockUI, @unblockUI)
63
68
  .fail ->
64
- window.errorMessage('ブロックへの変換に失敗しました')
69
+ window.errorMessage(<%= bm('.block_mode_error') %>)
65
70
 
66
71
  onRubyMode: (e) ->
67
72
  e.preventDefault()
@@ -95,22 +100,18 @@ Smalruby.MainMenuView = Backbone.View.extend
95
100
  title:
96
101
  """
97
102
  <i class="icon-play"></i>
98
- プログラムの実行中
99
- """
100
- message: 'プログラムの画面に切り替えてください。'
101
- notice:
102
- """
103
- プログラムをセーブ・チェックしてから実行するよ♪<br>
104
- Escキーを押すとプログラムが終わります。
103
+ #{<%= bm('.run_blockui_title') %>}
105
104
  """
105
+ message: <%= bm('.run_blockui_message') %>
106
+ notice: <%= bm('.run_blockui_notice') %>
106
107
 
107
- errorMsg = 'プログラムを実行できませんでした'
108
+ errorMsg = <%= bm('.run_error_cant_run') %>
108
109
  sourceCode.save2()
109
110
  .then (data) ->
110
111
  sourceCode.write()
111
112
  .then (data) =>
112
113
  @confirmOverwrite_.call @, data, sourceCode, ->
113
- errorMsg = 'プログラムの実行をキャンセルしました'
114
+ errorMsg = <%= bm('.run_error_cancel_to_run') %>
114
115
  .then ->
115
116
  Smalruby.savedFilename = sourceCode.get('filename')
116
117
  window.changed = false
@@ -119,9 +120,9 @@ Smalruby.MainMenuView = Backbone.View.extend
119
120
  if data.length > 0
120
121
  for errorInfo in data
121
122
  do (errorInfo) ->
122
- msg = "#{errorInfo.row}"
123
+ msg = "#{errorInfo.row}#{<%= bm('.common_lines') %>}"
123
124
  if errorInfo.column > 0
124
- msg += "、#{errorInfo.column}文字"
125
+ msg += "#{<%= bm('.common_comma') %>}#{errorInfo.column}#{<%= bm('.common_letters') %>}"
125
126
  window.errorMessage(msg + ": #{errorInfo.message}")
126
127
  $.Deferred().reject().promise()
127
128
  .then ->
@@ -134,9 +135,9 @@ Smalruby.MainMenuView = Backbone.View.extend
134
135
  if data.length > 0
135
136
  for errorInfo in data
136
137
  do (errorInfo) ->
137
- msg = "#{errorInfo.row}"
138
+ msg = "#{errorInfo.row}#{<%= bm('.common_lines') %>}"
138
139
  if errorInfo.column > 0
139
- msg += "、#{errorInfo.column}文字"
140
+ msg += "#{<%= bm('.common_comma') %>}#{errorInfo.column}#{<%= bm('.common_letters') %>}"
140
141
  errorMessage(msg + ": #{errorInfo.message}")
141
142
  $.Deferred().reject().promise()
142
143
  .then(@unblockUI, @unblockUI)
@@ -153,9 +154,9 @@ Smalruby.MainMenuView = Backbone.View.extend
153
154
  @blockUI
154
155
  title:
155
156
  """
156
- プログラムのダウンロード中
157
+ #{<%= bm('.download_blockui_title') %>}
157
158
  """
158
- message: 'プログラムをダウンロードしています。'
159
+ message: <%= bm('.download_blockui_message') %>
159
160
  notice:
160
161
  """
161
162
  ダウンロードしたプログラムは、<br>
File without changes
@@ -6,6 +6,10 @@ $margin: 20px;
6
6
  $character-size: 32px * 5;
7
7
  $left-pane-width: $character-size + $margin * 2;
8
8
 
9
+ html {
10
+ -ms-touch-action: manipulation;
11
+ }
12
+
9
13
  .dropdown-menu > li > a {
10
14
  cursor: default;
11
15
  }
File without changes
File without changes
File without changes
File without changes
@@ -9,8 +9,24 @@ class ApplicationController < ActionController::Base
9
9
 
10
10
  helper_method :standalone?, :raspberrypi?
11
11
 
12
+ before_filter :set_locale
13
+
12
14
  private
13
15
 
16
+ # # rubocop:disable LineLength
17
+ # http://www.xyzpub.com/en/ruby-on-rails/3.2/i18n_mehrsprachige_rails_applikation.html
18
+ # # rubocop:enable LineLength
19
+ def extract_locale_from_accept_language_header
20
+ request.env['HTTP_ACCEPT_LANGUAGE'].scan(/^[a-z]{2}/).first rescue nil
21
+ end
22
+
23
+ # ロケールの設定
24
+ def set_locale
25
+ I18n.locale = params[:locale] ||
26
+ extract_locale_from_accept_language_header || I18n.default_locale
27
+ Rails.application.routes.default_url_options[:locale] = I18n.locale
28
+ end
29
+
14
30
  # スタンドアローンモードかどうかを返す
15
31
  def standalone?
16
32
  return false if Rails.env == 'production'
File without changes
File without changes
File without changes
File without changes
@@ -3,4 +3,15 @@ module ApplicationHelper
3
3
  def modal_css_class
4
4
  "modal hide#{raspberrypi? ? '' : ' fade'}"
5
5
  end
6
+
7
+ # Blocklyのメッセージのlocaleの名前を返す
8
+ #
9
+ # Blocklyではenがen_usであるため
10
+ def blockly_message_locale_name
11
+ if I18n.locale.to_s == 'en'
12
+ 'en_us'
13
+ else
14
+ I18n.locale
15
+ end
16
+ end
6
17
  end
File without changes
File without changes
data/app/mailers/.keep CHANGED
File without changes
data/app/models/.keep CHANGED
File without changes