smalruby-editor 0.2.4-x86-mingw32 → 0.2.5-x86-mingw32
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/.rubocop.yml +8 -0
 - data/Guardfile +8 -1
 - data/app/assets/javascripts/blocks/hardware.js.coffee.erb +11 -152
 - data/app/assets/javascripts/msg/en_us.js +5 -5
 - data/app/assets/javascripts/msg/ja.js +5 -5
 - data/app/assets/javascripts/views/signin_modal_view.js.coffee.erb +0 -0
 - data/app/controllers/sessions_controller.rb +0 -0
 - data/app/helpers/sessions_helper.rb +4 -0
 - data/app/models/concerns/ruby_to_block/block/hardware_operation.rb +11 -0
 - data/app/models/concerns/ruby_to_block/block/{hardware_smalrubot_s1_led_turn_on_or_off.rb → hardware_smalrubot_action.rb} +8 -5
 - data/app/models/concerns/ruby_to_block/block/hardware_smalrubot_action_with_sec.rb +25 -0
 - data/app/models/concerns/ruby_to_block/block/{hardware_smalrubot_v3_motor_speed.rb → hardware_smalrubot_dc_motor_power_ratio.rb} +8 -5
 - data/app/models/concerns/ruby_to_block/block/hardware_smalrubot_dc_motor_set_power_ratio.rb +23 -0
 - data/app/models/concerns/ruby_to_block/block/{hardware_smalrubot_v3_led_turn_on_or_off.rb → hardware_smalrubot_led_turn_on_or_off.rb} +8 -5
 - data/app/models/concerns/ruby_to_block/block/{hardware_smalrubot_s1_ir_photoreflector_value.rb → hardware_smalrubot_sensor_value.rb} +8 -6
 - data/app/views/editor/_toolbox_default.html.haml +4 -7
 - data/app/views/editor/index.html.haml +7 -18
 - data/bin/spring +0 -0
 - data/config/application.rb +1 -0
 - data/lib/smalruby_editor/version.rb +1 -1
 - data/public/assets/{application-eece3e01e35f8f689e2e282a168f6059.js → application-e64da116c4adad30e499acda9d657fb5.js} +9 -9
 - data/public/assets/application-e64da116c4adad30e499acda9d657fb5.js.gz +0 -0
 - data/public/assets/{manifest-93f591b19a2a69655db7b53fa00d6b17.json → manifest-beef6aec1f5553cda5a2fe11ef0774ea.json} +1 -1
 - data/public/assets/msg/{en_us-3eb2f104a6bad9c60226ff7475013874.js → en_us-a3f6b99f4b54cfaeed42452de11ab02e.js} +1 -1
 - data/public/assets/msg/en_us-a3f6b99f4b54cfaeed42452de11ab02e.js.gz +0 -0
 - data/public/assets/msg/ja-9323664964a9b8ede99ae16c43db5827.js +1 -0
 - data/public/assets/msg/ja-9323664964a9b8ede99ae16c43db5827.js.gz +0 -0
 - data/smalruby-editor.gemspec +1 -1
 - data/spec/acceptance/block_mode/blocks/hardware/smalrubot_s1_led_turn_on_or_off.feature +8 -8
 - data/spec/acceptance/block_mode/blocks/hardware/{smalrubot_v3_motor_speed.feature → smalrubot_v3_dc_motor_power_ratio.feature} +12 -12
 - data/spec/acceptance/block_mode/blocks/hardware/smalrubot_v3_led_turn_on_or_off.feature +8 -8
 - data/spec/acceptance/block_mode/blocks/hardware/{smalrubot_s1_ir_photoreflector_value.feature → smalrubot_v3_sensor_value.feature} +7 -7
 - data/spec/models/concerns/ruby_to_block/block/{hardware__smalrubot_s1_spec.rb → hardware__smalrubot_spec.rb} +88 -84
 - data/spec/spec_helper.rb +0 -0
 - data/spec/steps/base_steps.rb +0 -0
 - data/spec/steps/text_editor_steps.rb +0 -0
 - metadata +23 -36
 - data/app/models/concerns/ruby_to_block/block/hardware_smalrubot_s1_action.rb +0 -13
 - data/app/models/concerns/ruby_to_block/block/hardware_smalrubot_s1_action_with_sec.rb +0 -14
 - data/app/models/concerns/ruby_to_block/block/hardware_smalrubot_s1_dc_motor_power_ratio.rb +0 -26
 - data/app/models/concerns/ruby_to_block/block/hardware_smalrubot_s1_dc_motor_set_power_ratio.rb +0 -21
 - data/app/models/concerns/ruby_to_block/block/hardware_smalrubot_v3_action.rb +0 -22
 - data/app/models/concerns/ruby_to_block/block/hardware_smalrubot_v3_action_with_sec.rb +0 -24
 - data/app/models/concerns/ruby_to_block/block/hardware_smalrubot_v3_light_sensor_value.rb +0 -28
 - data/app/models/concerns/ruby_to_block/block/hardware_smalrubot_v3_motor_set_speed.rb +0 -21
 - data/app/models/concerns/ruby_to_block/block/hardware_smalrubot_v3_touch_sensor_pressed_or_released.rb +0 -29
 - data/public/assets/application-eece3e01e35f8f689e2e282a168f6059.js.gz +0 -0
 - data/public/assets/msg/en_us-3eb2f104a6bad9c60226ff7475013874.js.gz +0 -0
 - data/public/assets/msg/ja-8450d011b1f093dc4b6b7c467e5bcae4.js +0 -1
 - data/public/assets/msg/ja-8450d011b1f093dc4b6b7c467e5bcae4.js.gz +0 -0
 - data/spec/acceptance/block_mode/blocks/hardware/smalrubot_v3_light_sensor_value.feature +0 -92
 - data/spec/acceptance/block_mode/blocks/hardware/smalrubot_v3_touch_sensor_pressed_or_released.feature +0 -108
 - data/spec/models/concerns/ruby_to_block/block/hardware__smalrubot_v3_spec.rb +0 -433
 
| 
         @@ -1,13 +0,0 @@ 
     | 
|
| 
       1 
     | 
    
         
            -
            # -*- coding: utf-8 -*-
         
     | 
| 
       2 
     | 
    
         
            -
            module RubyToBlock
         
     | 
| 
       3 
     | 
    
         
            -
              module Block
         
     | 
| 
       4 
     | 
    
         
            -
                class HardwareSmalrubotS1Action < HardwareSmalrubotV3Action
         
     | 
| 
       5 
     | 
    
         
            -
                  # rubocop:disable LineLength
         
     | 
| 
       6 
     | 
    
         
            -
                  blocknize '^\s*' + CHAR_RE +
         
     | 
| 
       7 
     | 
    
         
            -
                            'smalrubot_s1\.' + ACTION_RE +
         
     | 
| 
       8 
     | 
    
         
            -
                            '\s*$',
         
     | 
| 
       9 
     | 
    
         
            -
                            statement: true, inline: true
         
     | 
| 
       10 
     | 
    
         
            -
                  # rubocop:enable LineLength
         
     | 
| 
       11 
     | 
    
         
            -
                end
         
     | 
| 
       12 
     | 
    
         
            -
              end
         
     | 
| 
       13 
     | 
    
         
            -
            end
         
     | 
| 
         @@ -1,14 +0,0 @@ 
     | 
|
| 
       1 
     | 
    
         
            -
            # -*- coding: utf-8 -*-
         
     | 
| 
       2 
     | 
    
         
            -
            module RubyToBlock
         
     | 
| 
       3 
     | 
    
         
            -
              module Block
         
     | 
| 
       4 
     | 
    
         
            -
                class HardwareSmalrubotS1ActionWithSec < HardwareSmalrubotV3ActionWithSec
         
     | 
| 
       5 
     | 
    
         
            -
                  # rubocop:disable LineLength
         
     | 
| 
       6 
     | 
    
         
            -
                  blocknize '^\s*' + CHAR_RE +
         
     | 
| 
       7 
     | 
    
         
            -
                            'smalrubot_s1\.' + ACTION_RE +
         
     | 
| 
       8 
     | 
    
         
            -
                            '\(\s*sec:\s*(\d+(?:\.\d+)?)\)' +
         
     | 
| 
       9 
     | 
    
         
            -
                            '\s*$',
         
     | 
| 
       10 
     | 
    
         
            -
                            statement: true, inline: true
         
     | 
| 
       11 
     | 
    
         
            -
                  # rubocop:enable LineLength
         
     | 
| 
       12 
     | 
    
         
            -
                end
         
     | 
| 
       13 
     | 
    
         
            -
              end
         
     | 
| 
       14 
     | 
    
         
            -
            end
         
     | 
| 
         @@ -1,26 +0,0 @@ 
     | 
|
| 
       1 
     | 
    
         
            -
            module RubyToBlock
         
     | 
| 
       2 
     | 
    
         
            -
              module Block
         
     | 
| 
       3 
     | 
    
         
            -
                class HardwareSmalrubotS1DcMotorPowerRatio < Value
         
     | 
| 
       4 
     | 
    
         
            -
                  include CharacterOperation
         
     | 
| 
       5 
     | 
    
         
            -
                  include HardwareOperation
         
     | 
| 
       6 
     | 
    
         
            -
             
     | 
| 
       7 
     | 
    
         
            -
                  blocknize '^\s*' + CHAR_RE +
         
     | 
| 
       8 
     | 
    
         
            -
                            'smalrubot_s1\.' +
         
     | 
| 
       9 
     | 
    
         
            -
                            LOR_RE + '_dc_motor_power_ratio\s*$',
         
     | 
| 
       10 
     | 
    
         
            -
                            value: true
         
     | 
| 
       11 
     | 
    
         
            -
             
     | 
| 
       12 
     | 
    
         
            -
                  def self.process_match_data(md, context)
         
     | 
| 
       13 
     | 
    
         
            -
                    md2 = regexp.match(md[type])
         
     | 
| 
       14 
     | 
    
         
            -
             
     | 
| 
       15 
     | 
    
         
            -
                    character = get_character(context, md2[1])
         
     | 
| 
       16 
     | 
    
         
            -
                    return false if context.receiver && context.receiver != character
         
     | 
| 
       17 
     | 
    
         
            -
             
     | 
| 
       18 
     | 
    
         
            -
                    block = new(fields: { LOR: md2[2] })
         
     | 
| 
       19 
     | 
    
         
            -
                    context.add_value(block)
         
     | 
| 
       20 
     | 
    
         
            -
                    block.character = character
         
     | 
| 
       21 
     | 
    
         
            -
             
     | 
| 
       22 
     | 
    
         
            -
                    true
         
     | 
| 
       23 
     | 
    
         
            -
                  end
         
     | 
| 
       24 
     | 
    
         
            -
                end
         
     | 
| 
       25 
     | 
    
         
            -
              end
         
     | 
| 
       26 
     | 
    
         
            -
            end
         
     | 
    
        data/app/models/concerns/ruby_to_block/block/hardware_smalrubot_s1_dc_motor_set_power_ratio.rb
    DELETED
    
    | 
         @@ -1,21 +0,0 @@ 
     | 
|
| 
       1 
     | 
    
         
            -
            # -*- coding: utf-8 -*-
         
     | 
| 
       2 
     | 
    
         
            -
            module RubyToBlock
         
     | 
| 
       3 
     | 
    
         
            -
              module Block
         
     | 
| 
       4 
     | 
    
         
            -
                class HardwareSmalrubotS1DcMotorSetPowerRatio < CharacterMethodCall
         
     | 
| 
       5 
     | 
    
         
            -
                  include HardwareOperation
         
     | 
| 
       6 
     | 
    
         
            -
             
     | 
| 
       7 
     | 
    
         
            -
                  blocknize '^\s*' + CHAR_RE +
         
     | 
| 
       8 
     | 
    
         
            -
                            'smalrubot_s1\.' +
         
     | 
| 
       9 
     | 
    
         
            -
                            LOR_RE + '_dc_motor_power_ratio\s*=\s*(\S+)\s*$',
         
     | 
| 
       10 
     | 
    
         
            -
                            statement: true, inline: true
         
     | 
| 
       11 
     | 
    
         
            -
             
     | 
| 
       12 
     | 
    
         
            -
                  def self.process_match_data(md, context)
         
     | 
| 
       13 
     | 
    
         
            -
                    md2 = regexp.match(md[type])
         
     | 
| 
       14 
     | 
    
         
            -
                    add_character_method_call_block(context, md2[1],
         
     | 
| 
       15 
     | 
    
         
            -
                                                    new(fields: { LOR: md2[2] }),
         
     | 
| 
       16 
     | 
    
         
            -
                                                    SPEED: md2[3])
         
     | 
| 
       17 
     | 
    
         
            -
                    true
         
     | 
| 
       18 
     | 
    
         
            -
                  end
         
     | 
| 
       19 
     | 
    
         
            -
                end
         
     | 
| 
       20 
     | 
    
         
            -
              end
         
     | 
| 
       21 
     | 
    
         
            -
            end
         
     | 
| 
         @@ -1,22 +0,0 @@ 
     | 
|
| 
       1 
     | 
    
         
            -
            # -*- coding: utf-8 -*-
         
     | 
| 
       2 
     | 
    
         
            -
            module RubyToBlock
         
     | 
| 
       3 
     | 
    
         
            -
              module Block
         
     | 
| 
       4 
     | 
    
         
            -
                class HardwareSmalrubotV3Action < CharacterMethodCall
         
     | 
| 
       5 
     | 
    
         
            -
                  include HardwareOperation
         
     | 
| 
       6 
     | 
    
         
            -
             
     | 
| 
       7 
     | 
    
         
            -
                  # rubocop:disable LineLength
         
     | 
| 
       8 
     | 
    
         
            -
                  blocknize '^\s*' + CHAR_RE +
         
     | 
| 
       9 
     | 
    
         
            -
                            'smalrubot_v3\.' + ACTION_RE +
         
     | 
| 
       10 
     | 
    
         
            -
                            '\s*$',
         
     | 
| 
       11 
     | 
    
         
            -
                            statement: true, inline: true
         
     | 
| 
       12 
     | 
    
         
            -
                  # rubocop:enable LineLength
         
     | 
| 
       13 
     | 
    
         
            -
             
     | 
| 
       14 
     | 
    
         
            -
                  def self.process_match_data(md, context)
         
     | 
| 
       15 
     | 
    
         
            -
                    md2 = regexp.match(md[type])
         
     | 
| 
       16 
     | 
    
         
            -
                    add_character_method_call_block(context, md2[1],
         
     | 
| 
       17 
     | 
    
         
            -
                                                    new(fields: { ACTION: md2[2] }))
         
     | 
| 
       18 
     | 
    
         
            -
                    true
         
     | 
| 
       19 
     | 
    
         
            -
                  end
         
     | 
| 
       20 
     | 
    
         
            -
                end
         
     | 
| 
       21 
     | 
    
         
            -
              end
         
     | 
| 
       22 
     | 
    
         
            -
            end
         
     | 
| 
         @@ -1,24 +0,0 @@ 
     | 
|
| 
       1 
     | 
    
         
            -
            # -*- coding: utf-8 -*-
         
     | 
| 
       2 
     | 
    
         
            -
            module RubyToBlock
         
     | 
| 
       3 
     | 
    
         
            -
              module Block
         
     | 
| 
       4 
     | 
    
         
            -
                class HardwareSmalrubotV3ActionWithSec < CharacterMethodCall
         
     | 
| 
       5 
     | 
    
         
            -
                  include HardwareOperation
         
     | 
| 
       6 
     | 
    
         
            -
             
     | 
| 
       7 
     | 
    
         
            -
                  # rubocop:disable LineLength
         
     | 
| 
       8 
     | 
    
         
            -
                  blocknize '^\s*' + CHAR_RE +
         
     | 
| 
       9 
     | 
    
         
            -
                            'smalrubot_v3\.' + ACTION_RE +
         
     | 
| 
       10 
     | 
    
         
            -
                            '\(\s*sec:\s*(\d+(?:\.\d+)?)\)' +
         
     | 
| 
       11 
     | 
    
         
            -
                            '\s*$',
         
     | 
| 
       12 
     | 
    
         
            -
                            statement: true, inline: true
         
     | 
| 
       13 
     | 
    
         
            -
                  # rubocop:enable LineLength
         
     | 
| 
       14 
     | 
    
         
            -
             
     | 
| 
       15 
     | 
    
         
            -
                  def self.process_match_data(md, context)
         
     | 
| 
       16 
     | 
    
         
            -
                    md2 = regexp.match(md[type])
         
     | 
| 
       17 
     | 
    
         
            -
                    add_character_method_call_block(context, md2[1],
         
     | 
| 
       18 
     | 
    
         
            -
                                                    new(fields: { ACTION: md2[2] }),
         
     | 
| 
       19 
     | 
    
         
            -
                                                    SEC: md2[3])
         
     | 
| 
       20 
     | 
    
         
            -
                    true
         
     | 
| 
       21 
     | 
    
         
            -
                  end
         
     | 
| 
       22 
     | 
    
         
            -
                end
         
     | 
| 
       23 
     | 
    
         
            -
              end
         
     | 
| 
       24 
     | 
    
         
            -
            end
         
     | 
| 
         @@ -1,28 +0,0 @@ 
     | 
|
| 
       1 
     | 
    
         
            -
            module RubyToBlock
         
     | 
| 
       2 
     | 
    
         
            -
              module Block
         
     | 
| 
       3 
     | 
    
         
            -
                class HardwareSmalrubotV3LightSensorValue < Value
         
     | 
| 
       4 
     | 
    
         
            -
                  include CharacterOperation
         
     | 
| 
       5 
     | 
    
         
            -
             
     | 
| 
       6 
     | 
    
         
            -
                  # rubocop:disable LineLength
         
     | 
| 
       7 
     | 
    
         
            -
                  blocknize '^\s*' + CHAR_RE +
         
     | 
| 
       8 
     | 
    
         
            -
                            'smalrubot_v3\.' +
         
     | 
| 
       9 
     | 
    
         
            -
                            'light_sensor\.value' +
         
     | 
| 
       10 
     | 
    
         
            -
                            '\s*$',
         
     | 
| 
       11 
     | 
    
         
            -
                            value: true
         
     | 
| 
       12 
     | 
    
         
            -
                  # rubocop:enable LineLength
         
     | 
| 
       13 
     | 
    
         
            -
             
     | 
| 
       14 
     | 
    
         
            -
                  def self.process_match_data(md, context)
         
     | 
| 
       15 
     | 
    
         
            -
                    md2 = regexp.match(md[type])
         
     | 
| 
       16 
     | 
    
         
            -
             
     | 
| 
       17 
     | 
    
         
            -
                    character = get_character(context, md2[1])
         
     | 
| 
       18 
     | 
    
         
            -
                    return false if context.receiver && context.receiver != character
         
     | 
| 
       19 
     | 
    
         
            -
             
     | 
| 
       20 
     | 
    
         
            -
                    block = new
         
     | 
| 
       21 
     | 
    
         
            -
                    context.add_value(block)
         
     | 
| 
       22 
     | 
    
         
            -
                    block.character = character
         
     | 
| 
       23 
     | 
    
         
            -
             
     | 
| 
       24 
     | 
    
         
            -
                    true
         
     | 
| 
       25 
     | 
    
         
            -
                  end
         
     | 
| 
       26 
     | 
    
         
            -
                end
         
     | 
| 
       27 
     | 
    
         
            -
              end
         
     | 
| 
       28 
     | 
    
         
            -
            end
         
     | 
| 
         @@ -1,21 +0,0 @@ 
     | 
|
| 
       1 
     | 
    
         
            -
            # -*- coding: utf-8 -*-
         
     | 
| 
       2 
     | 
    
         
            -
            module RubyToBlock
         
     | 
| 
       3 
     | 
    
         
            -
              module Block
         
     | 
| 
       4 
     | 
    
         
            -
                class HardwareSmalrubotV3MotorSetSpeed < CharacterMethodCall
         
     | 
| 
       5 
     | 
    
         
            -
                  include HardwareOperation
         
     | 
| 
       6 
     | 
    
         
            -
             
     | 
| 
       7 
     | 
    
         
            -
                  blocknize '^\s*' + CHAR_RE +
         
     | 
| 
       8 
     | 
    
         
            -
                            'smalrubot_v3\.' +
         
     | 
| 
       9 
     | 
    
         
            -
                            LOR_RE + '_motor_speed\s*=\s*(\S+)\s*$',
         
     | 
| 
       10 
     | 
    
         
            -
                            statement: true, inline: true
         
     | 
| 
       11 
     | 
    
         
            -
             
     | 
| 
       12 
     | 
    
         
            -
                  def self.process_match_data(md, context)
         
     | 
| 
       13 
     | 
    
         
            -
                    md2 = regexp.match(md[type])
         
     | 
| 
       14 
     | 
    
         
            -
                    add_character_method_call_block(context, md2[1],
         
     | 
| 
       15 
     | 
    
         
            -
                                                    new(fields: { LOR: md2[2] }),
         
     | 
| 
       16 
     | 
    
         
            -
                                                    SPEED: md2[3])
         
     | 
| 
       17 
     | 
    
         
            -
                    true
         
     | 
| 
       18 
     | 
    
         
            -
                  end
         
     | 
| 
       19 
     | 
    
         
            -
                end
         
     | 
| 
       20 
     | 
    
         
            -
              end
         
     | 
| 
       21 
     | 
    
         
            -
            end
         
     | 
| 
         @@ -1,29 +0,0 @@ 
     | 
|
| 
       1 
     | 
    
         
            -
            module RubyToBlock
         
     | 
| 
       2 
     | 
    
         
            -
              module Block
         
     | 
| 
       3 
     | 
    
         
            -
                class HardwareSmalrubotV3TouchSensorPressedOrReleased < Value
         
     | 
| 
       4 
     | 
    
         
            -
                  include CharacterOperation
         
     | 
| 
       5 
     | 
    
         
            -
                  include HardwareOperation
         
     | 
| 
       6 
     | 
    
         
            -
             
     | 
| 
       7 
     | 
    
         
            -
                  # rubocop:disable LineLength
         
     | 
| 
       8 
     | 
    
         
            -
                  blocknize '^\s*' + CHAR_RE +
         
     | 
| 
       9 
     | 
    
         
            -
                            'smalrubot_v3\.' +
         
     | 
| 
       10 
     | 
    
         
            -
                            LOR_RE + '_touch_sensor\.' + POR_RE + '\?' +
         
     | 
| 
       11 
     | 
    
         
            -
                            '\s*$',
         
     | 
| 
       12 
     | 
    
         
            -
                            value: true
         
     | 
| 
       13 
     | 
    
         
            -
                  # rubocop:enable LineLength
         
     | 
| 
       14 
     | 
    
         
            -
             
     | 
| 
       15 
     | 
    
         
            -
                  def self.process_match_data(md, context)
         
     | 
| 
       16 
     | 
    
         
            -
                    md2 = regexp.match(md[type])
         
     | 
| 
       17 
     | 
    
         
            -
             
     | 
| 
       18 
     | 
    
         
            -
                    character = get_character(context, md2[1])
         
     | 
| 
       19 
     | 
    
         
            -
                    return false if context.receiver && context.receiver != character
         
     | 
| 
       20 
     | 
    
         
            -
             
     | 
| 
       21 
     | 
    
         
            -
                    block = new(fields: { LOR: md2[2], POR: md2[3] })
         
     | 
| 
       22 
     | 
    
         
            -
                    context.add_value(block)
         
     | 
| 
       23 
     | 
    
         
            -
                    block.character = character
         
     | 
| 
       24 
     | 
    
         
            -
             
     | 
| 
       25 
     | 
    
         
            -
                    true
         
     | 
| 
       26 
     | 
    
         
            -
                  end
         
     | 
| 
       27 
     | 
    
         
            -
                end
         
     | 
| 
       28 
     | 
    
         
            -
              end
         
     | 
| 
       29 
     | 
    
         
            -
            end
         
     | 
| 
         Binary file 
     | 
| 
         Binary file 
     | 
| 
         @@ -1 +0,0 @@ 
     | 
|
| 
       1 
     | 
    
         
            -
            goog.provide("Blockly.Msg.ja.smalruby"),goog.require("Blockly.Msg"),Blockly.Msg.COMMON_TURN_ON="オンにする",Blockly.Msg.COMMON_TURN_OFF="オフにする",Blockly.Msg.COMMON_FORWARD="進める",Blockly.Msg.COMMON_BACKWARD="バックさせる",Blockly.Msg.COMMON_TURN_LEFT="左に曲げる",Blockly.Msg.COMMON_TURN_RIGHT="右に曲げる",Blockly.Msg.COMMON_STOP="止める",Blockly.Msg.COMMON_ERROR="エラー",Blockly.Msg.COLOUR_RED="赤色",Blockly.Msg.COLOUR_GREEN="緑色",Blockly.Msg.COLOUR_BLUE="青色",Blockly.Msg.COLOUR_WHITE="白色",Blockly.Msg.SMALRUBY_WILL_DISAPPER_YOUR_PROGRAM="作成中のプログラムが消えてしまうよ!",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_COMMON_CONFIRM_OVERWRITE="前に{$filename}という名前でセーブしているけど本当にセーブしますか?\nセーブすると前に作成したプログラムは消えてしまうよ!",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.VIEWS_MAIN_MENU_VIEW_DOWNLOAD_SUCCEEDED="ダウンロードしました。<br>ダウンロードしたプログラムは、Windowsだと「ruby {$filename}」、Macだと「rsdl {$filename}」で実行できます。",Blockly.Msg.VIEWS_MAIN_MENU_VIEW_DOWNLOAD_ERROR="ダウンロードできませんでした",Blockly.Msg.VIEWS_MAIN_MENU_VIEW_LOAD_CONFIRM="まだセーブしていないのでロードするとプログラムが消えてしまうよ!\nそれでもロードしますか?",Blockly.Msg.VIEWS_MAIN_MENU_VIEW_SAVE_ERROR_NO_NAME="セーブする前にプログラムに名前をつけてね!",Blockly.Msg.VIEWS_MAIN_MENU_VIEW_SAVE_BLOCKUI_TITLE="プログラムのセーブ中",Blockly.Msg.VIEWS_MAIN_MENU_VIEW_SAVE_BLOCKUI_MESSAGE="プログラムをセーブしています。",Blockly.Msg.VIEWS_MAIN_MENU_VIEW_SAVE_BLOCKUI_NOTICE="プログラムの名前は「{$filename}」です。<br>プログラムはホームディレクトリにセーブします。<br>",Blockly.Msg.VIEWS_MAIN_MENU_VIEW_SAVE_ERROR_MESSAGE="セーブできませんでした",Blockly.Msg.VIEWS_MAIN_MENU_VIEW_SAVE_CANCELED="セーブをキャンセルしました",Blockly.Msg.VIEWS_MAIN_MENU_VIEW_SAVE_SUCCEEDED="セーブしました",Blockly.Msg.VIEWS_MAIN_MENU_VIEW_CHECK_BLOCKUI_TITLE="プログラムのチェック中",Blockly.Msg.VIEWS_MAIN_MENU_VIEW_CHECK_BLOCKUI_MESSAGE="プログラムの文法をチェックしています。",Blockly.Msg.VIEWS_MAIN_MENU_VIEW_CHECK_BLOCKUI_NOTICE="このチェックは簡易的なものですので、<br>プログラムを動かすとエラーが見つかるかもしれません。",Blockly.Msg.VIEWS_MAIN_MENU_VIEW_CHECK_SUCCEEDED="チェックしました",Blockly.Msg.VIEWS_MAIN_MENU_VIEW_CHECK_SUCCEEDED_NOTICE="ただし、プログラムを動かすとエラーが見つかるかもしれません。",Blockly.Msg.VIEWS_MAIN_MENU_VIEW_CHECK_ERROR="チェックできませんでした",Blockly.Msg.VIEWS_MAIN_MENU_VIEW_SIGNOUT_SUCCEEDED="ログアウトしました",Blockly.Msg.VIEWS_MAIN_MENU_VIEW_SIGNOUT_ERROR="ログアウトに失敗しました",Blockly.Msg.VIEWS_MAIN_MENU_VIEW_LOAD_ERROR="{$filename}{$error}",Blockly.Msg.VIEWS_MAIN_MENU_VIEW_LOAD_SUCCEEDED="ロードしました",Blockly.Msg.VIEWS_LOAD_MODAL_VIEW_ERROR="ロードに失敗しました",Blockly.Msg.VIEWS_SIGNIN_MODAL_VIEW_SIGNED_IN="ログインしました",Blockly.Msg.VIEWS_SIGNIN_MODAL_VIEW_ERROR="ログインに失敗しました",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="■%1 へ向ける",Blockly.Msg.BLOCKS_MOTION_SET_X_Y="■x座標を %1 、y座標を %2 にする",Blockly.Msg.BLOCKS_MOTION_GO_TO_MOUSE="■マウスポインターへ行く",Blockly.Msg.BLOCKS_MOTION_GO_TO_CHARACTER="■%1 へ行く",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="■%1 方向に跳ね返る",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="■回転方法を %1 にする",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="♣キーボードの %1 が %2 のとき",Blockly.Msg.BLOCKS_EVENTS_ON_CLICK="♣キャラクターがクリックされたとき",Blockly.Msg.BLOCKS_EVENTS_ON_HIT="♣%1 にぶつかったとき",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_PRESSED="押された",Blockly.Msg.BLOCKS_SENSING_PUSH=Blockly.Msg.BLOCKS_SENSING_PRESSED,Blockly.Msg.BLOCKS_SENSING_UP=Blockly.Msg.BLOCKS_SENSING_PRESSED,Blockly.Msg.BLOCKS_SENSING_HOLD_PRESSED="押され続けている",Blockly.Msg.BLOCKS_SENSING_HOLD_DOWN=Blockly.Msg.BLOCKS_SENSING_HOLD_PRESSED,Blockly.Msg.BLOCKS_SENSING_M_LBUTTON="左ボタン",Blockly.Msg.BLOCKS_SENSING_M_MBUTTON="中ボタン",Blockly.Msg.BLOCKS_SENSING_M_RBUTTON="右ボタン",Blockly.Msg.BLOCKS_SENSING_RELEASED="離された",Blockly.Msg.BLOCKS_SENSING_UP=Blockly.Msg.BLOCKS_SENSING_RELEASED,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="◎%1 の %2",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="◎現在の %1",Blockly.Msg.BLOCKS_SENSING_DAYS_SINCE_2000="◎2000年からの日数",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_RUBY_P="♠p %1",Blockly.Msg.BLOCKS_FIELD_CHARACTER_NO_CHARACTER="キャラクターなし",Blockly.Msg.BLOCKS_SOUND_PRESET_SOUNDS="♪%1",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_TURN_ON="★LED %1 をオンにする",Blockly.Msg.BLOCKS_HARDWARE_LED_TURN_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_SET_COLOR="★RGB LED %1 コモン %2 を %3 にする",Blockly.Msg.BLOCKS_HARDWARE_RGB_LED_TURN_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="■%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_PRESSED_OR_RELEASED="◎ボタン %1 が %2 ?",Blockly.Msg.BLOCKS_HARDWARE_SENSOR_VALUE="◎センサー %1",Blockly.Msg.BLOCKS_HARDWARE_SMALRUBOT_V3_LED_TURN_ON_OR_OFF="★スモウルボットV3の %1 LEDを %2",Blockly.Msg.BLOCKS_HARDWARE_SMALRUBOT_V3_MOTOR_SPEED="◎スモウルボットV3の %1 モーターの速度(%)",Blockly.Msg.BLOCKS_HARDWARE_SMALRUBOT_V3_MOTOR_SET_SPEED="■スモウルボットV3の %1 モーターの速度を %2 (%) にする",Blockly.Msg.BLOCKS_HARDWARE_SMALRUBOT_V3_ACTION="■スモウルボットV3を %1",Blockly.Msg.BLOCKS_HARDWARE_SMALRUBOT_V3_ACTION_WITH_SEC="■スモウルボットV3を %2 秒 %1",Blockly.Msg.BLOCKS_HARDWARE_SMALRUBOT_V3_TOUCH_SENSOR_PRESSED_OR_RELEASED="◎スモウルボットV3の %1 のタッチセンサーが %2 ?",Blockly.Msg.BLOCKS_HARDWARE_SMALRUBOT_V3_LIGHT_SENSOR_VALUE="◎スモウルボットV3の光センサー",Blockly.Msg.BLOCKS_HARDWARE_SMALRUBOT_S1_LED_TURN_ON_OR_OFF="★スモウルボットS1の %1 LEDを %2",Blockly.Msg.BLOCKS_HARDWARE_SMALRUBOT_S1_ACTION="■スモウルボットS1を %1",Blockly.Msg.BLOCKS_HARDWARE_SMALRUBOT_S1_ACTION_WITH_SEC="■スモウルボットS1を %2 秒 %1",Blockly.Msg.BLOCKS_HARDWARE_SMALRUBOT_S1_IR_PHOTOREFLECTOR_VALUE="◎スモウルボットS1の %1 のセンサー",Blockly.Msg.BLOCKS_HARDWARE_SMALRUBOT_S1_DC_MOTOR_POWER_RATIO="◎スモウルボットS1の %1 DCモーターの速度(%)",Blockly.Msg.BLOCKS_HARDWARE_SMALRUBOT_S1_DC_MOTOR_SET_POWER_RATIO="■スモウルボットS1の %1 DCモーターの速度を %2 (%) にする",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にする",Blockly.Msg.VARIABLES_SET_TITLE="☼セット",Blockly.Msg.VARIABLES_GET_TITLE="☼";
         
     | 
| 
         Binary file 
     | 
| 
         @@ -1,92 +0,0 @@ 
     | 
|
| 
       1 
     | 
    
         
            -
            # encoding: utf-8
         
     | 
| 
       2 
     | 
    
         
            -
            # language: en
         
     | 
| 
       3 
     | 
    
         
            -
            @javascript
         
     | 
| 
       4 
     | 
    
         
            -
            Feature: hardware_smalrubot_v3_light_sensor_value block
         
     | 
| 
       5 
     | 
    
         
            -
              Scenario: ブロックのみ配置する
         
     | 
| 
       6 
     | 
    
         
            -
                Given "ブロック" タブを表示する
         
     | 
| 
       7 
     | 
    
         
            -
             
     | 
| 
       8 
     | 
    
         
            -
                When 次のブロックを配置する:
         
     | 
| 
       9 
     | 
    
         
            -
                  """
         
     | 
| 
       10 
     | 
    
         
            -
                  %block{:type => "hardware_smalrubot_v3_light_sensor_value", :x => "0", :y => "0"}
         
     | 
| 
       11 
     | 
    
         
            -
                  """
         
     | 
| 
       12 
     | 
    
         
            -
                And ブロックからソースコードを生成する
         
     | 
| 
       13 
     | 
    
         
            -
             
     | 
| 
       14 
     | 
    
         
            -
                Then テキストエディタのプログラムは "" であること
         
     | 
| 
       15 
     | 
    
         
            -
             
     | 
| 
       16 
     | 
    
         
            -
              Scenario: 文とブロックを配置する
         
     | 
| 
       17 
     | 
    
         
            -
                Given "ブロック" タブを表示する
         
     | 
| 
       18 
     | 
    
         
            -
             
     | 
| 
       19 
     | 
    
         
            -
                When 次のブロックを配置する:
         
     | 
| 
       20 
     | 
    
         
            -
                  """
         
     | 
| 
       21 
     | 
    
         
            -
                  %block{:type => "ruby_p", :x => "0", :y => "0", :inline => "true" }
         
     | 
| 
       22 
     | 
    
         
            -
                    %value{:name => "ARG"}
         
     | 
| 
       23 
     | 
    
         
            -
                      %block{:type => "hardware_smalrubot_v3_light_sensor_value", :x => "0", :y => "0"}
         
     | 
| 
       24 
     | 
    
         
            -
                  """
         
     | 
| 
       25 
     | 
    
         
            -
                And ブロックからソースコードを生成する
         
     | 
| 
       26 
     | 
    
         
            -
             
     | 
| 
       27 
     | 
    
         
            -
                Then テキストエディタのプログラムは以下であること:
         
     | 
| 
       28 
     | 
    
         
            -
                  """
         
     | 
| 
       29 
     | 
    
         
            -
                  require "smalruby"
         
     | 
| 
       30 
     | 
    
         
            -
             
     | 
| 
       31 
     | 
    
         
            -
                  p("")
         
     | 
| 
       32 
     | 
    
         
            -
             
     | 
| 
       33 
     | 
    
         
            -
                  """
         
     | 
| 
       34 
     | 
    
         
            -
             
     | 
| 
       35 
     | 
    
         
            -
              Scenario: キャラクターとブロックを配置する
         
     | 
| 
       36 
     | 
    
         
            -
                Given "ブロック" タブを表示する
         
     | 
| 
       37 
     | 
    
         
            -
                And 次のキャラクターを追加する:
         
     | 
| 
       38 
     | 
    
         
            -
                  | name | costumes | x | y | angle |
         
     | 
| 
       39 
     | 
    
         
            -
                  | car1 | car1.png | 0 | 0 |     0 |
         
     | 
| 
       40 
     | 
    
         
            -
             
     | 
| 
       41 
     | 
    
         
            -
                When 次のブロックを配置する:
         
     | 
| 
       42 
     | 
    
         
            -
                  """
         
     | 
| 
       43 
     | 
    
         
            -
                  %block{:type => "character_new", :x => "21", :y => "15"}
         
     | 
| 
       44 
     | 
    
         
            -
                    %field{:name => "NAME"}<
         
     | 
| 
       45 
     | 
    
         
            -
                      car1
         
     | 
| 
       46 
     | 
    
         
            -
                    %statement{:name => "DO"}
         
     | 
| 
       47 
     | 
    
         
            -
                      %block{:type => "ruby_p", :x => "0", :y => "0", :inline => "true" }
         
     | 
| 
       48 
     | 
    
         
            -
                        %value{:name => "ARG"}
         
     | 
| 
       49 
     | 
    
         
            -
                          %block{:type => "hardware_smalrubot_v3_light_sensor_value", :x => "0", :y => "0"}
         
     | 
| 
       50 
     | 
    
         
            -
                  """
         
     | 
| 
       51 
     | 
    
         
            -
                And ブロックからソースコードを生成する
         
     | 
| 
       52 
     | 
    
         
            -
             
     | 
| 
       53 
     | 
    
         
            -
                Then テキストエディタのプログラムは以下であること:
         
     | 
| 
       54 
     | 
    
         
            -
                  """
         
     | 
| 
       55 
     | 
    
         
            -
                  require "smalruby"
         
     | 
| 
       56 
     | 
    
         
            -
             
     | 
| 
       57 
     | 
    
         
            -
                  car1 = Character.new(costume: "car1.png", x: 0, y: 0, angle: 0)
         
     | 
| 
       58 
     | 
    
         
            -
                  p(car1.smalrubot_v3.light_sensor.value)
         
     | 
| 
       59 
     | 
    
         
            -
             
     | 
| 
       60 
     | 
    
         
            -
                  """
         
     | 
| 
       61 
     | 
    
         
            -
             
     | 
| 
       62 
     | 
    
         
            -
              Scenario: キャラクターとイベントとブロックを配置する
         
     | 
| 
       63 
     | 
    
         
            -
                Given "ブロック" タブを表示する
         
     | 
| 
       64 
     | 
    
         
            -
                And 次のキャラクターを追加する:
         
     | 
| 
       65 
     | 
    
         
            -
                  | name | costumes | x | y | angle |
         
     | 
| 
       66 
     | 
    
         
            -
                  | car1 | car1.png | 0 | 0 |     0 |
         
     | 
| 
       67 
     | 
    
         
            -
             
     | 
| 
       68 
     | 
    
         
            -
                When 次のブロックを配置する:
         
     | 
| 
       69 
     | 
    
         
            -
                  """
         
     | 
| 
       70 
     | 
    
         
            -
                  %block{:type => "character_new", :x => "21", :y => "15"}
         
     | 
| 
       71 
     | 
    
         
            -
                    %field{:name => "NAME"}<
         
     | 
| 
       72 
     | 
    
         
            -
                      car1
         
     | 
| 
       73 
     | 
    
         
            -
                    %statement{:name => "DO"}
         
     | 
| 
       74 
     | 
    
         
            -
                      %block{:type => "events_on_start"}
         
     | 
| 
       75 
     | 
    
         
            -
                        %statement{:name => "DO"}
         
     | 
| 
       76 
     | 
    
         
            -
                          %block{:type => "ruby_p", :x => "0", :y => "0", :inline => "true" }
         
     | 
| 
       77 
     | 
    
         
            -
                            %value{:name => "ARG"}
         
     | 
| 
       78 
     | 
    
         
            -
                              %block{:type => "hardware_smalrubot_v3_light_sensor_value", :x => "0", :y => "0"}
         
     | 
| 
       79 
     | 
    
         
            -
                  """
         
     | 
| 
       80 
     | 
    
         
            -
                And ブロックからソースコードを生成する
         
     | 
| 
       81 
     | 
    
         
            -
             
     | 
| 
       82 
     | 
    
         
            -
                Then テキストエディタのプログラムは以下であること:
         
     | 
| 
       83 
     | 
    
         
            -
                  """
         
     | 
| 
       84 
     | 
    
         
            -
                  require "smalruby"
         
     | 
| 
       85 
     | 
    
         
            -
             
     | 
| 
       86 
     | 
    
         
            -
                  car1 = Character.new(costume: "car1.png", x: 0, y: 0, angle: 0)
         
     | 
| 
       87 
     | 
    
         
            -
             
     | 
| 
       88 
     | 
    
         
            -
                  car1.on(:start) do
         
     | 
| 
       89 
     | 
    
         
            -
                    p(smalrubot_v3.light_sensor.value)
         
     | 
| 
       90 
     | 
    
         
            -
                  end
         
     | 
| 
       91 
     | 
    
         
            -
             
     | 
| 
       92 
     | 
    
         
            -
                  """
         
     | 
| 
         @@ -1,108 +0,0 @@ 
     | 
|
| 
       1 
     | 
    
         
            -
            # encoding: utf-8
         
     | 
| 
       2 
     | 
    
         
            -
            # language: en
         
     | 
| 
       3 
     | 
    
         
            -
            @javascript
         
     | 
| 
       4 
     | 
    
         
            -
            Feature: hardware_smalrubot_v3_touch_sensor_pressed_or_released block
         
     | 
| 
       5 
     | 
    
         
            -
              Scenario: ブロックのみ配置する
         
     | 
| 
       6 
     | 
    
         
            -
                Given "ブロック" タブを表示する
         
     | 
| 
       7 
     | 
    
         
            -
             
     | 
| 
       8 
     | 
    
         
            -
                When 次のブロックを配置する:
         
     | 
| 
       9 
     | 
    
         
            -
                  """
         
     | 
| 
       10 
     | 
    
         
            -
                  %block{:type => "hardware_smalrubot_v3_touch_sensor_pressed_or_released", :x => "0", :y => "0"}
         
     | 
| 
       11 
     | 
    
         
            -
                    %field{:name => "LOR"}<
         
     | 
| 
       12 
     | 
    
         
            -
                      right
         
     | 
| 
       13 
     | 
    
         
            -
                    %field{:name => "POR"}<
         
     | 
| 
       14 
     | 
    
         
            -
                      pressed
         
     | 
| 
       15 
     | 
    
         
            -
                  """
         
     | 
| 
       16 
     | 
    
         
            -
                And ブロックからソースコードを生成する
         
     | 
| 
       17 
     | 
    
         
            -
             
     | 
| 
       18 
     | 
    
         
            -
                Then テキストエディタのプログラムは "" であること
         
     | 
| 
       19 
     | 
    
         
            -
             
     | 
| 
       20 
     | 
    
         
            -
              Scenario: 文とブロックを配置する
         
     | 
| 
       21 
     | 
    
         
            -
                Given "ブロック" タブを表示する
         
     | 
| 
       22 
     | 
    
         
            -
             
     | 
| 
       23 
     | 
    
         
            -
                When 次のブロックを配置する:
         
     | 
| 
       24 
     | 
    
         
            -
                  """
         
     | 
| 
       25 
     | 
    
         
            -
                  %block{:type => "ruby_p", :x => "0", :y => "0", :inline => "true" }
         
     | 
| 
       26 
     | 
    
         
            -
                    %value{:name => "ARG"}
         
     | 
| 
       27 
     | 
    
         
            -
                      %block{:type => "hardware_smalrubot_v3_touch_sensor_pressed_or_released", :x => "0", :y => "0"}
         
     | 
| 
       28 
     | 
    
         
            -
                        %field{:name => "LOR"}<
         
     | 
| 
       29 
     | 
    
         
            -
                          right
         
     | 
| 
       30 
     | 
    
         
            -
                        %field{:name => "POR"}<
         
     | 
| 
       31 
     | 
    
         
            -
                          pressed
         
     | 
| 
       32 
     | 
    
         
            -
                  """
         
     | 
| 
       33 
     | 
    
         
            -
                And ブロックからソースコードを生成する
         
     | 
| 
       34 
     | 
    
         
            -
             
     | 
| 
       35 
     | 
    
         
            -
                Then テキストエディタのプログラムは以下であること:
         
     | 
| 
       36 
     | 
    
         
            -
                  """
         
     | 
| 
       37 
     | 
    
         
            -
                  require "smalruby"
         
     | 
| 
       38 
     | 
    
         
            -
             
     | 
| 
       39 
     | 
    
         
            -
                  p("")
         
     | 
| 
       40 
     | 
    
         
            -
             
     | 
| 
       41 
     | 
    
         
            -
                  """
         
     | 
| 
       42 
     | 
    
         
            -
             
     | 
| 
       43 
     | 
    
         
            -
              Scenario: キャラクターとブロックを配置する
         
     | 
| 
       44 
     | 
    
         
            -
                Given "ブロック" タブを表示する
         
     | 
| 
       45 
     | 
    
         
            -
                And 次のキャラクターを追加する:
         
     | 
| 
       46 
     | 
    
         
            -
                  | name | costumes | x | y | angle |
         
     | 
| 
       47 
     | 
    
         
            -
                  | car1 | car1.png | 0 | 0 |     0 |
         
     | 
| 
       48 
     | 
    
         
            -
             
     | 
| 
       49 
     | 
    
         
            -
                When 次のブロックを配置する:
         
     | 
| 
       50 
     | 
    
         
            -
                  """
         
     | 
| 
       51 
     | 
    
         
            -
                  %block{:type => "character_new", :x => "21", :y => "15"}
         
     | 
| 
       52 
     | 
    
         
            -
                    %field{:name => "NAME"}<
         
     | 
| 
       53 
     | 
    
         
            -
                      car1
         
     | 
| 
       54 
     | 
    
         
            -
                    %statement{:name => "DO"}
         
     | 
| 
       55 
     | 
    
         
            -
                      %block{:type => "ruby_p", :x => "0", :y => "0", :inline => "true" }
         
     | 
| 
       56 
     | 
    
         
            -
                        %value{:name => "ARG"}
         
     | 
| 
       57 
     | 
    
         
            -
                          %block{:type => "hardware_smalrubot_v3_touch_sensor_pressed_or_released", :x => "0", :y => "0"}
         
     | 
| 
       58 
     | 
    
         
            -
                            %field{:name => "LOR"}<
         
     | 
| 
       59 
     | 
    
         
            -
                              right
         
     | 
| 
       60 
     | 
    
         
            -
                            %field{:name => "POR"}<
         
     | 
| 
       61 
     | 
    
         
            -
                              pressed
         
     | 
| 
       62 
     | 
    
         
            -
                  """
         
     | 
| 
       63 
     | 
    
         
            -
                And ブロックからソースコードを生成する
         
     | 
| 
       64 
     | 
    
         
            -
             
     | 
| 
       65 
     | 
    
         
            -
                Then テキストエディタのプログラムは以下であること:
         
     | 
| 
       66 
     | 
    
         
            -
                  """
         
     | 
| 
       67 
     | 
    
         
            -
                  require "smalruby"
         
     | 
| 
       68 
     | 
    
         
            -
             
     | 
| 
       69 
     | 
    
         
            -
                  car1 = Character.new(costume: "car1.png", x: 0, y: 0, angle: 0)
         
     | 
| 
       70 
     | 
    
         
            -
                  p(car1.smalrubot_v3.right_touch_sensor.pressed?)
         
     | 
| 
       71 
     | 
    
         
            -
             
     | 
| 
       72 
     | 
    
         
            -
                  """
         
     | 
| 
       73 
     | 
    
         
            -
             
     | 
| 
       74 
     | 
    
         
            -
              Scenario: キャラクターとイベントとブロックを配置する
         
     | 
| 
       75 
     | 
    
         
            -
                Given "ブロック" タブを表示する
         
     | 
| 
       76 
     | 
    
         
            -
                And 次のキャラクターを追加する:
         
     | 
| 
       77 
     | 
    
         
            -
                  | name | costumes | x | y | angle |
         
     | 
| 
       78 
     | 
    
         
            -
                  | car1 | car1.png | 0 | 0 |     0 |
         
     | 
| 
       79 
     | 
    
         
            -
             
     | 
| 
       80 
     | 
    
         
            -
                When 次のブロックを配置する:
         
     | 
| 
       81 
     | 
    
         
            -
                  """
         
     | 
| 
       82 
     | 
    
         
            -
                  %block{:type => "character_new", :x => "21", :y => "15"}
         
     | 
| 
       83 
     | 
    
         
            -
                    %field{:name => "NAME"}<
         
     | 
| 
       84 
     | 
    
         
            -
                      car1
         
     | 
| 
       85 
     | 
    
         
            -
                    %statement{:name => "DO"}
         
     | 
| 
       86 
     | 
    
         
            -
                      %block{:type => "events_on_start"}
         
     | 
| 
       87 
     | 
    
         
            -
                        %statement{:name => "DO"}
         
     | 
| 
       88 
     | 
    
         
            -
                          %block{:type => "ruby_p", :x => "0", :y => "0", :inline => "true" }
         
     | 
| 
       89 
     | 
    
         
            -
                            %value{:name => "ARG"}
         
     | 
| 
       90 
     | 
    
         
            -
                              %block{:type => "hardware_smalrubot_v3_touch_sensor_pressed_or_released", :x => "0", :y => "0"}
         
     | 
| 
       91 
     | 
    
         
            -
                                %field{:name => "LOR"}<
         
     | 
| 
       92 
     | 
    
         
            -
                                  left
         
     | 
| 
       93 
     | 
    
         
            -
                                %field{:name => "POR"}<
         
     | 
| 
       94 
     | 
    
         
            -
                                  released
         
     | 
| 
       95 
     | 
    
         
            -
                  """
         
     | 
| 
       96 
     | 
    
         
            -
                And ブロックからソースコードを生成する
         
     | 
| 
       97 
     | 
    
         
            -
             
     | 
| 
       98 
     | 
    
         
            -
                Then テキストエディタのプログラムは以下であること:
         
     | 
| 
       99 
     | 
    
         
            -
                  """
         
     | 
| 
       100 
     | 
    
         
            -
                  require "smalruby"
         
     | 
| 
       101 
     | 
    
         
            -
             
     | 
| 
       102 
     | 
    
         
            -
                  car1 = Character.new(costume: "car1.png", x: 0, y: 0, angle: 0)
         
     | 
| 
       103 
     | 
    
         
            -
             
     | 
| 
       104 
     | 
    
         
            -
                  car1.on(:start) do
         
     | 
| 
       105 
     | 
    
         
            -
                    p(smalrubot_v3.left_touch_sensor.released?)
         
     | 
| 
       106 
     | 
    
         
            -
                  end
         
     | 
| 
       107 
     | 
    
         
            -
             
     | 
| 
       108 
     | 
    
         
            -
                  """
         
     | 
| 
         @@ -1,433 +0,0 @@ 
     | 
|
| 
       1 
     | 
    
         
            -
            # -*- coding: utf-8 -*-
         
     | 
| 
       2 
     | 
    
         
            -
            require 'spec_helper'
         
     | 
| 
       3 
     | 
    
         
            -
            require_relative 'shared/block_examples'
         
     | 
| 
       4 
     | 
    
         
            -
             
     | 
| 
       5 
     | 
    
         
            -
            # rubocop:disable EmptyLines, LineLength
         
     | 
| 
       6 
     | 
    
         
            -
             
     | 
| 
       7 
     | 
    
         
            -
            describe RubyToBlock::Block, 'Smalrubot v3 blocks', to_blocks: true do
         
     | 
| 
       8 
     | 
    
         
            -
              parts = <<-EOS
         
     | 
| 
       9 
     | 
    
         
            -
            require "smalruby"
         
     | 
| 
       10 
     | 
    
         
            -
             
     | 
| 
       11 
     | 
    
         
            -
            init_hardware
         
     | 
| 
       12 
     | 
    
         
            -
            car1 = Character.new(costume: "car1.png", x: 0, y: 0, angle: 0)
         
     | 
| 
       13 
     | 
    
         
            -
             
     | 
| 
       14 
     | 
    
         
            -
            car1.on(:start) do
         
     | 
| 
       15 
     | 
    
         
            -
              smalrubot_v3.forward
         
     | 
| 
       16 
     | 
    
         
            -
              smalrubot_v3.backward
         
     | 
| 
       17 
     | 
    
         
            -
              smalrubot_v3.turn_left
         
     | 
| 
       18 
     | 
    
         
            -
              smalrubot_v3.turn_right
         
     | 
| 
       19 
     | 
    
         
            -
              smalrubot_v3.stop
         
     | 
| 
       20 
     | 
    
         
            -
             
     | 
| 
       21 
     | 
    
         
            -
              smalrubot_v3.forward(sec: 0.5)
         
     | 
| 
       22 
     | 
    
         
            -
              smalrubot_v3.backward(sec: 0.4)
         
     | 
| 
       23 
     | 
    
         
            -
              smalrubot_v3.turn_left(sec: 0.3)
         
     | 
| 
       24 
     | 
    
         
            -
              smalrubot_v3.turn_right(sec: 0.2)
         
     | 
| 
       25 
     | 
    
         
            -
              smalrubot_v3.stop(sec: 0.1)
         
     | 
| 
       26 
     | 
    
         
            -
             
     | 
| 
       27 
     | 
    
         
            -
              p(smalrubot_v3.left_touch_sensor.pressed?)
         
     | 
| 
       28 
     | 
    
         
            -
              p(smalrubot_v3.left_touch_sensor.released?)
         
     | 
| 
       29 
     | 
    
         
            -
              p(smalrubot_v3.right_touch_sensor.pressed?)
         
     | 
| 
       30 
     | 
    
         
            -
              p(smalrubot_v3.right_touch_sensor.released?)
         
     | 
| 
       31 
     | 
    
         
            -
             
     | 
| 
       32 
     | 
    
         
            -
              p(smalrubot_v3.light_sensor.value)
         
     | 
| 
       33 
     | 
    
         
            -
             
     | 
| 
       34 
     | 
    
         
            -
              smalrubot_v3.red_led.turn_on
         
     | 
| 
       35 
     | 
    
         
            -
              smalrubot_v3.green_led.turn_off
         
     | 
| 
       36 
     | 
    
         
            -
             
     | 
| 
       37 
     | 
    
         
            -
              p(smalrubot_v3.left_motor_speed)
         
     | 
| 
       38 
     | 
    
         
            -
              p(smalrubot_v3.right_motor_speed)
         
     | 
| 
       39 
     | 
    
         
            -
             
     | 
| 
       40 
     | 
    
         
            -
              smalrubot_v3.left_motor_speed = 10
         
     | 
| 
       41 
     | 
    
         
            -
              smalrubot_v3.right_motor_speed = 90
         
     | 
| 
       42 
     | 
    
         
            -
            end
         
     | 
| 
       43 
     | 
    
         
            -
            car1.smalrubot_v3.forward
         
     | 
| 
       44 
     | 
    
         
            -
            car1.smalrubot_v3.backward
         
     | 
| 
       45 
     | 
    
         
            -
            car1.smalrubot_v3.turn_left
         
     | 
| 
       46 
     | 
    
         
            -
            car1.smalrubot_v3.turn_right
         
     | 
| 
       47 
     | 
    
         
            -
            car1.smalrubot_v3.stop
         
     | 
| 
       48 
     | 
    
         
            -
             
     | 
| 
       49 
     | 
    
         
            -
            car1.smalrubot_v3.forward(sec: 0.5)
         
     | 
| 
       50 
     | 
    
         
            -
            car1.smalrubot_v3.backward(sec: 0.4)
         
     | 
| 
       51 
     | 
    
         
            -
            car1.smalrubot_v3.turn_left(sec: 0.3)
         
     | 
| 
       52 
     | 
    
         
            -
            car1.smalrubot_v3.turn_right(sec: 0.2)
         
     | 
| 
       53 
     | 
    
         
            -
            car1.smalrubot_v3.stop(sec: 0.1)
         
     | 
| 
       54 
     | 
    
         
            -
             
     | 
| 
       55 
     | 
    
         
            -
            p(car1.smalrubot_v3.left_touch_sensor.pressed?)
         
     | 
| 
       56 
     | 
    
         
            -
            p(car1.smalrubot_v3.left_touch_sensor.released?)
         
     | 
| 
       57 
     | 
    
         
            -
            p(car1.smalrubot_v3.right_touch_sensor.pressed?)
         
     | 
| 
       58 
     | 
    
         
            -
            p(car1.smalrubot_v3.right_touch_sensor.released?)
         
     | 
| 
       59 
     | 
    
         
            -
             
     | 
| 
       60 
     | 
    
         
            -
            p(car1.smalrubot_v3.light_sensor.value)
         
     | 
| 
       61 
     | 
    
         
            -
             
     | 
| 
       62 
     | 
    
         
            -
            car1.smalrubot_v3.red_led.turn_on
         
     | 
| 
       63 
     | 
    
         
            -
            car1.smalrubot_v3.green_led.turn_off
         
     | 
| 
       64 
     | 
    
         
            -
             
     | 
| 
       65 
     | 
    
         
            -
            p(car1.smalrubot_v3.left_motor_speed)
         
     | 
| 
       66 
     | 
    
         
            -
            p(car1.smalrubot_v3.right_motor_speed)
         
     | 
| 
       67 
     | 
    
         
            -
             
     | 
| 
       68 
     | 
    
         
            -
            car1.smalrubot_v3.left_motor_speed = 10
         
     | 
| 
       69 
     | 
    
         
            -
            car1.smalrubot_v3.right_motor_speed = 90
         
     | 
| 
       70 
     | 
    
         
            -
              EOS
         
     | 
| 
       71 
     | 
    
         
            -
              describe compact_source_code(parts) do
         
     | 
| 
       72 
     | 
    
         
            -
                _parts = parts
         
     | 
| 
       73 
     | 
    
         
            -
                let(:data) { _parts }
         
     | 
| 
       74 
     | 
    
         
            -
             
     | 
| 
       75 
     | 
    
         
            -
                it '結果が正しいこと' do
         
     | 
| 
       76 
     | 
    
         
            -
                  should eq_block_xml(<<-XML)
         
     | 
| 
       77 
     | 
    
         
            -
              <character name="car1" x="0" y="0" angle="0" costumes="car1.png" />
         
     | 
| 
       78 
     | 
    
         
            -
              <block type="hardware_init_hardware" />
         
     | 
| 
       79 
     | 
    
         
            -
              <block type="character_new">
         
     | 
| 
       80 
     | 
    
         
            -
                <field name="NAME">car1</field>
         
     | 
| 
       81 
     | 
    
         
            -
                <statement name="DO">
         
     | 
| 
       82 
     | 
    
         
            -
                  <block type="events_on_start">
         
     | 
| 
       83 
     | 
    
         
            -
                    <statement name="DO">
         
     | 
| 
       84 
     | 
    
         
            -
                      <block type="hardware_smalrubot_v3_action" inline="true">
         
     | 
| 
       85 
     | 
    
         
            -
                        <field name="ACTION">forward</field>
         
     | 
| 
       86 
     | 
    
         
            -
                        <next>
         
     | 
| 
       87 
     | 
    
         
            -
                          <block type="hardware_smalrubot_v3_action" inline="true">
         
     | 
| 
       88 
     | 
    
         
            -
                            <field name="ACTION">backward</field>
         
     | 
| 
       89 
     | 
    
         
            -
                            <next>
         
     | 
| 
       90 
     | 
    
         
            -
                              <block type="hardware_smalrubot_v3_action" inline="true">
         
     | 
| 
       91 
     | 
    
         
            -
                                <field name="ACTION">turn_left</field>
         
     | 
| 
       92 
     | 
    
         
            -
                                <next>
         
     | 
| 
       93 
     | 
    
         
            -
                                  <block type="hardware_smalrubot_v3_action" inline="true">
         
     | 
| 
       94 
     | 
    
         
            -
                                    <field name="ACTION">turn_right</field>
         
     | 
| 
       95 
     | 
    
         
            -
                                    <next>
         
     | 
| 
       96 
     | 
    
         
            -
                                      <block type="hardware_smalrubot_v3_action" inline="true">
         
     | 
| 
       97 
     | 
    
         
            -
                                        <field name="ACTION">stop</field>
         
     | 
| 
       98 
     | 
    
         
            -
                                        <next>
         
     | 
| 
       99 
     | 
    
         
            -
                                          <block type="hardware_smalrubot_v3_action_with_sec" inline="true">
         
     | 
| 
       100 
     | 
    
         
            -
                                            <field name="ACTION">forward</field>
         
     | 
| 
       101 
     | 
    
         
            -
                                            <value name="SEC">
         
     | 
| 
       102 
     | 
    
         
            -
                                              <block type="math_number">
         
     | 
| 
       103 
     | 
    
         
            -
                                                <field name="NUM">0.5</field>
         
     | 
| 
       104 
     | 
    
         
            -
                                              </block>
         
     | 
| 
       105 
     | 
    
         
            -
                                            </value>
         
     | 
| 
       106 
     | 
    
         
            -
                                            <next>
         
     | 
| 
       107 
     | 
    
         
            -
                                              <block type="hardware_smalrubot_v3_action_with_sec" inline="true">
         
     | 
| 
       108 
     | 
    
         
            -
                                                <field name="ACTION">backward</field>
         
     | 
| 
       109 
     | 
    
         
            -
                                                <value name="SEC">
         
     | 
| 
       110 
     | 
    
         
            -
                                                  <block type="math_number">
         
     | 
| 
       111 
     | 
    
         
            -
                                                    <field name="NUM">0.4</field>
         
     | 
| 
       112 
     | 
    
         
            -
                                                  </block>
         
     | 
| 
       113 
     | 
    
         
            -
                                                </value>
         
     | 
| 
       114 
     | 
    
         
            -
                                                <next>
         
     | 
| 
       115 
     | 
    
         
            -
                                                  <block type="hardware_smalrubot_v3_action_with_sec" inline="true">
         
     | 
| 
       116 
     | 
    
         
            -
                                                    <field name="ACTION">turn_left</field>
         
     | 
| 
       117 
     | 
    
         
            -
                                                    <value name="SEC">
         
     | 
| 
       118 
     | 
    
         
            -
                                                      <block type="math_number">
         
     | 
| 
       119 
     | 
    
         
            -
                                                        <field name="NUM">0.3</field>
         
     | 
| 
       120 
     | 
    
         
            -
                                                      </block>
         
     | 
| 
       121 
     | 
    
         
            -
                                                    </value>
         
     | 
| 
       122 
     | 
    
         
            -
                                                    <next>
         
     | 
| 
       123 
     | 
    
         
            -
                                                      <block type="hardware_smalrubot_v3_action_with_sec" inline="true">
         
     | 
| 
       124 
     | 
    
         
            -
                                                        <field name="ACTION">turn_right</field>
         
     | 
| 
       125 
     | 
    
         
            -
                                                        <value name="SEC">
         
     | 
| 
       126 
     | 
    
         
            -
                                                          <block type="math_number">
         
     | 
| 
       127 
     | 
    
         
            -
                                                            <field name="NUM">0.2</field>
         
     | 
| 
       128 
     | 
    
         
            -
                                                          </block>
         
     | 
| 
       129 
     | 
    
         
            -
                                                        </value>
         
     | 
| 
       130 
     | 
    
         
            -
                                                        <next>
         
     | 
| 
       131 
     | 
    
         
            -
                                                          <block type="hardware_smalrubot_v3_action_with_sec" inline="true">
         
     | 
| 
       132 
     | 
    
         
            -
                                                            <field name="ACTION">stop</field>
         
     | 
| 
       133 
     | 
    
         
            -
                                                            <value name="SEC">
         
     | 
| 
       134 
     | 
    
         
            -
                                                              <block type="math_number">
         
     | 
| 
       135 
     | 
    
         
            -
                                                                <field name="NUM">0.1</field>
         
     | 
| 
       136 
     | 
    
         
            -
                                                              </block>
         
     | 
| 
       137 
     | 
    
         
            -
                                                            </value>
         
     | 
| 
       138 
     | 
    
         
            -
                                                            <next>
         
     | 
| 
       139 
     | 
    
         
            -
                                                              <block type="ruby_p" inline="true">
         
     | 
| 
       140 
     | 
    
         
            -
                                                                <value name="ARG">
         
     | 
| 
       141 
     | 
    
         
            -
                                                                  <block type="hardware_smalrubot_v3_touch_sensor_pressed_or_released">
         
     | 
| 
       142 
     | 
    
         
            -
                                                                    <field name="LOR">left</field>
         
     | 
| 
       143 
     | 
    
         
            -
                                                                    <field name="POR">pressed</field>
         
     | 
| 
       144 
     | 
    
         
            -
                                                                  </block>
         
     | 
| 
       145 
     | 
    
         
            -
                                                                </value>
         
     | 
| 
       146 
     | 
    
         
            -
                                                                <next>
         
     | 
| 
       147 
     | 
    
         
            -
                                                                  <block type="ruby_p" inline="true">
         
     | 
| 
       148 
     | 
    
         
            -
                                                                    <value name="ARG">
         
     | 
| 
       149 
     | 
    
         
            -
                                                                      <block type="hardware_smalrubot_v3_touch_sensor_pressed_or_released">
         
     | 
| 
       150 
     | 
    
         
            -
                                                                        <field name="LOR">left</field>
         
     | 
| 
       151 
     | 
    
         
            -
                                                                        <field name="POR">released</field>
         
     | 
| 
       152 
     | 
    
         
            -
                                                                      </block>
         
     | 
| 
       153 
     | 
    
         
            -
                                                                    </value>
         
     | 
| 
       154 
     | 
    
         
            -
                                                                    <next>
         
     | 
| 
       155 
     | 
    
         
            -
                                                                      <block type="ruby_p" inline="true">
         
     | 
| 
       156 
     | 
    
         
            -
                                                                        <value name="ARG">
         
     | 
| 
       157 
     | 
    
         
            -
                                                                          <block type="hardware_smalrubot_v3_touch_sensor_pressed_or_released">
         
     | 
| 
       158 
     | 
    
         
            -
                                                                            <field name="LOR">right</field>
         
     | 
| 
       159 
     | 
    
         
            -
                                                                            <field name="POR">pressed</field>
         
     | 
| 
       160 
     | 
    
         
            -
                                                                          </block>
         
     | 
| 
       161 
     | 
    
         
            -
                                                                        </value>
         
     | 
| 
       162 
     | 
    
         
            -
                                                                        <next>
         
     | 
| 
       163 
     | 
    
         
            -
                                                                          <block type="ruby_p" inline="true">
         
     | 
| 
       164 
     | 
    
         
            -
                                                                            <value name="ARG">
         
     | 
| 
       165 
     | 
    
         
            -
                                                                              <block type="hardware_smalrubot_v3_touch_sensor_pressed_or_released">
         
     | 
| 
       166 
     | 
    
         
            -
                                                                                <field name="LOR">right</field>
         
     | 
| 
       167 
     | 
    
         
            -
                                                                                <field name="POR">released</field>
         
     | 
| 
       168 
     | 
    
         
            -
                                                                              </block>
         
     | 
| 
       169 
     | 
    
         
            -
                                                                            </value>
         
     | 
| 
       170 
     | 
    
         
            -
                                                                            <next>
         
     | 
| 
       171 
     | 
    
         
            -
                                                                              <block type="ruby_p" inline="true">
         
     | 
| 
       172 
     | 
    
         
            -
                                                                                <value name="ARG">
         
     | 
| 
       173 
     | 
    
         
            -
                                                                                  <block type="hardware_smalrubot_v3_light_sensor_value" />
         
     | 
| 
       174 
     | 
    
         
            -
                                                                                </value>
         
     | 
| 
       175 
     | 
    
         
            -
                                                                                <next>
         
     | 
| 
       176 
     | 
    
         
            -
                                                                                  <block type="hardware_smalrubot_v3_led_turn_on_or_off" inline="true">
         
     | 
| 
       177 
     | 
    
         
            -
                                                                                    <field name="COLOUR">red</field>
         
     | 
| 
       178 
     | 
    
         
            -
                                                                                    <field name="OOO">turn_on</field>
         
     | 
| 
       179 
     | 
    
         
            -
                                                                                    <next>
         
     | 
| 
       180 
     | 
    
         
            -
                                                                                      <block type="hardware_smalrubot_v3_led_turn_on_or_off" inline="true">
         
     | 
| 
       181 
     | 
    
         
            -
                                                                                        <field name="COLOUR">green</field>
         
     | 
| 
       182 
     | 
    
         
            -
                                                                                        <field name="OOO">turn_off</field>
         
     | 
| 
       183 
     | 
    
         
            -
                                                                                        <next>
         
     | 
| 
       184 
     | 
    
         
            -
                                                                                          <block type="ruby_p" inline="true">
         
     | 
| 
       185 
     | 
    
         
            -
                                                                                            <value name="ARG">
         
     | 
| 
       186 
     | 
    
         
            -
                                                                                              <block type="hardware_smalrubot_v3_motor_speed">
         
     | 
| 
       187 
     | 
    
         
            -
                                                                                                <field name="LOR">left</field>
         
     | 
| 
       188 
     | 
    
         
            -
                                                                                              </block>
         
     | 
| 
       189 
     | 
    
         
            -
                                                                                            </value>
         
     | 
| 
       190 
     | 
    
         
            -
                                                                                            <next>
         
     | 
| 
       191 
     | 
    
         
            -
                                                                                              <block type="ruby_p" inline="true">
         
     | 
| 
       192 
     | 
    
         
            -
                                                                                                <value name="ARG">
         
     | 
| 
       193 
     | 
    
         
            -
                                                                                                  <block type="hardware_smalrubot_v3_motor_speed">
         
     | 
| 
       194 
     | 
    
         
            -
                                                                                                    <field name="LOR">right</field>
         
     | 
| 
       195 
     | 
    
         
            -
                                                                                                  </block>
         
     | 
| 
       196 
     | 
    
         
            -
                                                                                                </value>
         
     | 
| 
       197 
     | 
    
         
            -
                                                                                                <next>
         
     | 
| 
       198 
     | 
    
         
            -
                                                                                                  <block type="hardware_smalrubot_v3_motor_set_speed" inline="true">
         
     | 
| 
       199 
     | 
    
         
            -
                                                                                                    <field name="LOR">left</field>
         
     | 
| 
       200 
     | 
    
         
            -
                                                                                                    <value name="SPEED">
         
     | 
| 
       201 
     | 
    
         
            -
                                                                                                      <block type="math_number">
         
     | 
| 
       202 
     | 
    
         
            -
                                                                                                        <field name="NUM">10</field>
         
     | 
| 
       203 
     | 
    
         
            -
                                                                                                      </block>
         
     | 
| 
       204 
     | 
    
         
            -
                                                                                                    </value>
         
     | 
| 
       205 
     | 
    
         
            -
                                                                                                    <next>
         
     | 
| 
       206 
     | 
    
         
            -
                                                                                                      <block type="hardware_smalrubot_v3_motor_set_speed" inline="true">
         
     | 
| 
       207 
     | 
    
         
            -
                                                                                                        <field name="LOR">right</field>
         
     | 
| 
       208 
     | 
    
         
            -
                                                                                                        <value name="SPEED">
         
     | 
| 
       209 
     | 
    
         
            -
                                                                                                          <block type="math_number">
         
     | 
| 
       210 
     | 
    
         
            -
                                                                                                            <field name="NUM">90</field>
         
     | 
| 
       211 
     | 
    
         
            -
                                                                                                          </block>
         
     | 
| 
       212 
     | 
    
         
            -
                                                                                                        </value>
         
     | 
| 
       213 
     | 
    
         
            -
                                                                                                      </block>
         
     | 
| 
       214 
     | 
    
         
            -
                                                                                                    </next>
         
     | 
| 
       215 
     | 
    
         
            -
                                                                                                  </block>
         
     | 
| 
       216 
     | 
    
         
            -
                                                                                                </next>
         
     | 
| 
       217 
     | 
    
         
            -
                                                                                              </block>
         
     | 
| 
       218 
     | 
    
         
            -
                                                                                            </next>
         
     | 
| 
       219 
     | 
    
         
            -
                                                                                          </block>
         
     | 
| 
       220 
     | 
    
         
            -
                                                                                        </next>
         
     | 
| 
       221 
     | 
    
         
            -
                                                                                      </block>
         
     | 
| 
       222 
     | 
    
         
            -
                                                                                    </next>
         
     | 
| 
       223 
     | 
    
         
            -
                                                                                  </block>
         
     | 
| 
       224 
     | 
    
         
            -
                                                                                </next>
         
     | 
| 
       225 
     | 
    
         
            -
                                                                              </block>
         
     | 
| 
       226 
     | 
    
         
            -
                                                                            </next>
         
     | 
| 
       227 
     | 
    
         
            -
                                                                          </block>
         
     | 
| 
       228 
     | 
    
         
            -
                                                                        </next>
         
     | 
| 
       229 
     | 
    
         
            -
                                                                      </block>
         
     | 
| 
       230 
     | 
    
         
            -
                                                                    </next>
         
     | 
| 
       231 
     | 
    
         
            -
                                                                  </block>
         
     | 
| 
       232 
     | 
    
         
            -
                                                                </next>
         
     | 
| 
       233 
     | 
    
         
            -
                                                              </block>
         
     | 
| 
       234 
     | 
    
         
            -
                                                            </next>
         
     | 
| 
       235 
     | 
    
         
            -
                                                          </block>
         
     | 
| 
       236 
     | 
    
         
            -
                                                        </next>
         
     | 
| 
       237 
     | 
    
         
            -
                                                      </block>
         
     | 
| 
       238 
     | 
    
         
            -
                                                    </next>
         
     | 
| 
       239 
     | 
    
         
            -
                                                  </block>
         
     | 
| 
       240 
     | 
    
         
            -
                                                </next>
         
     | 
| 
       241 
     | 
    
         
            -
                                              </block>
         
     | 
| 
       242 
     | 
    
         
            -
                                            </next>
         
     | 
| 
       243 
     | 
    
         
            -
                                          </block>
         
     | 
| 
       244 
     | 
    
         
            -
                                        </next>
         
     | 
| 
       245 
     | 
    
         
            -
                                      </block>
         
     | 
| 
       246 
     | 
    
         
            -
                                    </next>
         
     | 
| 
       247 
     | 
    
         
            -
                                  </block>
         
     | 
| 
       248 
     | 
    
         
            -
                                </next>
         
     | 
| 
       249 
     | 
    
         
            -
                              </block>
         
     | 
| 
       250 
     | 
    
         
            -
                            </next>
         
     | 
| 
       251 
     | 
    
         
            -
                          </block>
         
     | 
| 
       252 
     | 
    
         
            -
                        </next>
         
     | 
| 
       253 
     | 
    
         
            -
                      </block>
         
     | 
| 
       254 
     | 
    
         
            -
                    </statement>
         
     | 
| 
       255 
     | 
    
         
            -
                    <next>
         
     | 
| 
       256 
     | 
    
         
            -
                      <block type="hardware_smalrubot_v3_action" inline="true">
         
     | 
| 
       257 
     | 
    
         
            -
                        <field name="ACTION">forward</field>
         
     | 
| 
       258 
     | 
    
         
            -
                        <next>
         
     | 
| 
       259 
     | 
    
         
            -
                          <block type="hardware_smalrubot_v3_action" inline="true">
         
     | 
| 
       260 
     | 
    
         
            -
                            <field name="ACTION">backward</field>
         
     | 
| 
       261 
     | 
    
         
            -
                            <next>
         
     | 
| 
       262 
     | 
    
         
            -
                              <block type="hardware_smalrubot_v3_action" inline="true">
         
     | 
| 
       263 
     | 
    
         
            -
                                <field name="ACTION">turn_left</field>
         
     | 
| 
       264 
     | 
    
         
            -
                                <next>
         
     | 
| 
       265 
     | 
    
         
            -
                                  <block type="hardware_smalrubot_v3_action" inline="true">
         
     | 
| 
       266 
     | 
    
         
            -
                                    <field name="ACTION">turn_right</field>
         
     | 
| 
       267 
     | 
    
         
            -
                                    <next>
         
     | 
| 
       268 
     | 
    
         
            -
                                      <block type="hardware_smalrubot_v3_action" inline="true">
         
     | 
| 
       269 
     | 
    
         
            -
                                        <field name="ACTION">stop</field>
         
     | 
| 
       270 
     | 
    
         
            -
                                        <next>
         
     | 
| 
       271 
     | 
    
         
            -
                                          <block type="hardware_smalrubot_v3_action_with_sec" inline="true">
         
     | 
| 
       272 
     | 
    
         
            -
                                            <field name="ACTION">forward</field>
         
     | 
| 
       273 
     | 
    
         
            -
                                            <value name="SEC">
         
     | 
| 
       274 
     | 
    
         
            -
                                              <block type="math_number">
         
     | 
| 
       275 
     | 
    
         
            -
                                                <field name="NUM">0.5</field>
         
     | 
| 
       276 
     | 
    
         
            -
                                              </block>
         
     | 
| 
       277 
     | 
    
         
            -
                                            </value>
         
     | 
| 
       278 
     | 
    
         
            -
                                            <next>
         
     | 
| 
       279 
     | 
    
         
            -
                                              <block type="hardware_smalrubot_v3_action_with_sec" inline="true">
         
     | 
| 
       280 
     | 
    
         
            -
                                                <field name="ACTION">backward</field>
         
     | 
| 
       281 
     | 
    
         
            -
                                                <value name="SEC">
         
     | 
| 
       282 
     | 
    
         
            -
                                                  <block type="math_number">
         
     | 
| 
       283 
     | 
    
         
            -
                                                    <field name="NUM">0.4</field>
         
     | 
| 
       284 
     | 
    
         
            -
                                                  </block>
         
     | 
| 
       285 
     | 
    
         
            -
                                                </value>
         
     | 
| 
       286 
     | 
    
         
            -
                                                <next>
         
     | 
| 
       287 
     | 
    
         
            -
                                                  <block type="hardware_smalrubot_v3_action_with_sec" inline="true">
         
     | 
| 
       288 
     | 
    
         
            -
                                                    <field name="ACTION">turn_left</field>
         
     | 
| 
       289 
     | 
    
         
            -
                                                    <value name="SEC">
         
     | 
| 
       290 
     | 
    
         
            -
                                                      <block type="math_number">
         
     | 
| 
       291 
     | 
    
         
            -
                                                        <field name="NUM">0.3</field>
         
     | 
| 
       292 
     | 
    
         
            -
                                                      </block>
         
     | 
| 
       293 
     | 
    
         
            -
                                                    </value>
         
     | 
| 
       294 
     | 
    
         
            -
                                                    <next>
         
     | 
| 
       295 
     | 
    
         
            -
                                                      <block type="hardware_smalrubot_v3_action_with_sec" inline="true">
         
     | 
| 
       296 
     | 
    
         
            -
                                                        <field name="ACTION">turn_right</field>
         
     | 
| 
       297 
     | 
    
         
            -
                                                        <value name="SEC">
         
     | 
| 
       298 
     | 
    
         
            -
                                                          <block type="math_number">
         
     | 
| 
       299 
     | 
    
         
            -
                                                            <field name="NUM">0.2</field>
         
     | 
| 
       300 
     | 
    
         
            -
                                                          </block>
         
     | 
| 
       301 
     | 
    
         
            -
                                                        </value>
         
     | 
| 
       302 
     | 
    
         
            -
                                                        <next>
         
     | 
| 
       303 
     | 
    
         
            -
                                                          <block type="hardware_smalrubot_v3_action_with_sec" inline="true">
         
     | 
| 
       304 
     | 
    
         
            -
                                                            <field name="ACTION">stop</field>
         
     | 
| 
       305 
     | 
    
         
            -
                                                            <value name="SEC">
         
     | 
| 
       306 
     | 
    
         
            -
                                                              <block type="math_number">
         
     | 
| 
       307 
     | 
    
         
            -
                                                                <field name="NUM">0.1</field>
         
     | 
| 
       308 
     | 
    
         
            -
                                                              </block>
         
     | 
| 
       309 
     | 
    
         
            -
                                                            </value>
         
     | 
| 
       310 
     | 
    
         
            -
                                                            <next>
         
     | 
| 
       311 
     | 
    
         
            -
                                                              <block type="ruby_p" inline="true">
         
     | 
| 
       312 
     | 
    
         
            -
                                                                <value name="ARG">
         
     | 
| 
       313 
     | 
    
         
            -
                                                                  <block type="hardware_smalrubot_v3_touch_sensor_pressed_or_released">
         
     | 
| 
       314 
     | 
    
         
            -
                                                                    <field name="LOR">left</field>
         
     | 
| 
       315 
     | 
    
         
            -
                                                                    <field name="POR">pressed</field>
         
     | 
| 
       316 
     | 
    
         
            -
                                                                  </block>
         
     | 
| 
       317 
     | 
    
         
            -
                                                                </value>
         
     | 
| 
       318 
     | 
    
         
            -
                                                                <next>
         
     | 
| 
       319 
     | 
    
         
            -
                                                                  <block type="ruby_p" inline="true">
         
     | 
| 
       320 
     | 
    
         
            -
                                                                    <value name="ARG">
         
     | 
| 
       321 
     | 
    
         
            -
                                                                      <block type="hardware_smalrubot_v3_touch_sensor_pressed_or_released">
         
     | 
| 
       322 
     | 
    
         
            -
                                                                        <field name="LOR">left</field>
         
     | 
| 
       323 
     | 
    
         
            -
                                                                        <field name="POR">released</field>
         
     | 
| 
       324 
     | 
    
         
            -
                                                                      </block>
         
     | 
| 
       325 
     | 
    
         
            -
                                                                    </value>
         
     | 
| 
       326 
     | 
    
         
            -
                                                                    <next>
         
     | 
| 
       327 
     | 
    
         
            -
                                                                      <block type="ruby_p" inline="true">
         
     | 
| 
       328 
     | 
    
         
            -
                                                                        <value name="ARG">
         
     | 
| 
       329 
     | 
    
         
            -
                                                                          <block type="hardware_smalrubot_v3_touch_sensor_pressed_or_released">
         
     | 
| 
       330 
     | 
    
         
            -
                                                                            <field name="LOR">right</field>
         
     | 
| 
       331 
     | 
    
         
            -
                                                                            <field name="POR">pressed</field>
         
     | 
| 
       332 
     | 
    
         
            -
                                                                          </block>
         
     | 
| 
       333 
     | 
    
         
            -
                                                                        </value>
         
     | 
| 
       334 
     | 
    
         
            -
                                                                        <next>
         
     | 
| 
       335 
     | 
    
         
            -
                                                                          <block type="ruby_p" inline="true">
         
     | 
| 
       336 
     | 
    
         
            -
                                                                            <value name="ARG">
         
     | 
| 
       337 
     | 
    
         
            -
                                                                              <block type="hardware_smalrubot_v3_touch_sensor_pressed_or_released">
         
     | 
| 
       338 
     | 
    
         
            -
                                                                                <field name="LOR">right</field>
         
     | 
| 
       339 
     | 
    
         
            -
                                                                                <field name="POR">released</field>
         
     | 
| 
       340 
     | 
    
         
            -
                                                                              </block>
         
     | 
| 
       341 
     | 
    
         
            -
                                                                            </value>
         
     | 
| 
       342 
     | 
    
         
            -
                                                                            <next>
         
     | 
| 
       343 
     | 
    
         
            -
                                                                              <block type="ruby_p" inline="true">
         
     | 
| 
       344 
     | 
    
         
            -
                                                                                <value name="ARG">
         
     | 
| 
       345 
     | 
    
         
            -
                                                                                  <block type="hardware_smalrubot_v3_light_sensor_value" />
         
     | 
| 
       346 
     | 
    
         
            -
                                                                                </value>
         
     | 
| 
       347 
     | 
    
         
            -
                                                                                <next>
         
     | 
| 
       348 
     | 
    
         
            -
                                                                                  <block type="hardware_smalrubot_v3_led_turn_on_or_off" inline="true">
         
     | 
| 
       349 
     | 
    
         
            -
                                                                                    <field name="COLOUR">red</field>
         
     | 
| 
       350 
     | 
    
         
            -
                                                                                    <field name="OOO">turn_on</field>
         
     | 
| 
       351 
     | 
    
         
            -
                                                                                    <next>
         
     | 
| 
       352 
     | 
    
         
            -
                                                                                      <block type="hardware_smalrubot_v3_led_turn_on_or_off" inline="true">
         
     | 
| 
       353 
     | 
    
         
            -
                                                                                        <field name="COLOUR">green</field>
         
     | 
| 
       354 
     | 
    
         
            -
                                                                                        <field name="OOO">turn_off</field>
         
     | 
| 
       355 
     | 
    
         
            -
                                                                                        <next>
         
     | 
| 
       356 
     | 
    
         
            -
                                                                                          <block type="ruby_p" inline="true">
         
     | 
| 
       357 
     | 
    
         
            -
                                                                                            <value name="ARG">
         
     | 
| 
       358 
     | 
    
         
            -
                                                                                              <block type="hardware_smalrubot_v3_motor_speed">
         
     | 
| 
       359 
     | 
    
         
            -
                                                                                                <field name="LOR">left</field>
         
     | 
| 
       360 
     | 
    
         
            -
                                                                                              </block>
         
     | 
| 
       361 
     | 
    
         
            -
                                                                                            </value>
         
     | 
| 
       362 
     | 
    
         
            -
                                                                                            <next>
         
     | 
| 
       363 
     | 
    
         
            -
                                                                                              <block type="ruby_p" inline="true">
         
     | 
| 
       364 
     | 
    
         
            -
                                                                                                <value name="ARG">
         
     | 
| 
       365 
     | 
    
         
            -
                                                                                                  <block type="hardware_smalrubot_v3_motor_speed">
         
     | 
| 
       366 
     | 
    
         
            -
                                                                                                    <field name="LOR">right</field>
         
     | 
| 
       367 
     | 
    
         
            -
                                                                                                  </block>
         
     | 
| 
       368 
     | 
    
         
            -
                                                                                                </value>
         
     | 
| 
       369 
     | 
    
         
            -
                                                                                                <next>
         
     | 
| 
       370 
     | 
    
         
            -
                                                                                                  <block type="hardware_smalrubot_v3_motor_set_speed" inline="true">
         
     | 
| 
       371 
     | 
    
         
            -
                                                                                                    <field name="LOR">left</field>
         
     | 
| 
       372 
     | 
    
         
            -
                                                                                                    <value name="SPEED">
         
     | 
| 
       373 
     | 
    
         
            -
                                                                                                      <block type="math_number">
         
     | 
| 
       374 
     | 
    
         
            -
                                                                                                        <field name="NUM">10</field>
         
     | 
| 
       375 
     | 
    
         
            -
                                                                                                      </block>
         
     | 
| 
       376 
     | 
    
         
            -
                                                                                                    </value>
         
     | 
| 
       377 
     | 
    
         
            -
                                                                                                    <next>
         
     | 
| 
       378 
     | 
    
         
            -
                                                                                                      <block type="hardware_smalrubot_v3_motor_set_speed" inline="true">
         
     | 
| 
       379 
     | 
    
         
            -
                                                                                                        <field name="LOR">right</field>
         
     | 
| 
       380 
     | 
    
         
            -
                                                                                                        <value name="SPEED">
         
     | 
| 
       381 
     | 
    
         
            -
                                                                                                          <block type="math_number">
         
     | 
| 
       382 
     | 
    
         
            -
                                                                                                            <field name="NUM">90</field>
         
     | 
| 
       383 
     | 
    
         
            -
                                                                                                          </block>
         
     | 
| 
       384 
     | 
    
         
            -
                                                                                                        </value>
         
     | 
| 
       385 
     | 
    
         
            -
                                                                                                      </block>
         
     | 
| 
       386 
     | 
    
         
            -
                                                                                                    </next>
         
     | 
| 
       387 
     | 
    
         
            -
                                                                                                  </block>
         
     | 
| 
       388 
     | 
    
         
            -
                                                                                                </next>
         
     | 
| 
       389 
     | 
    
         
            -
                                                                                              </block>
         
     | 
| 
       390 
     | 
    
         
            -
                                                                                            </next>
         
     | 
| 
       391 
     | 
    
         
            -
                                                                                          </block>
         
     | 
| 
       392 
     | 
    
         
            -
                                                                                        </next>
         
     | 
| 
       393 
     | 
    
         
            -
                                                                                      </block>
         
     | 
| 
       394 
     | 
    
         
            -
                                                                                    </next>
         
     | 
| 
       395 
     | 
    
         
            -
                                                                                  </block>
         
     | 
| 
       396 
     | 
    
         
            -
                                                                                </next>
         
     | 
| 
       397 
     | 
    
         
            -
                                                                              </block>
         
     | 
| 
       398 
     | 
    
         
            -
                                                                            </next>
         
     | 
| 
       399 
     | 
    
         
            -
                                                                          </block>
         
     | 
| 
       400 
     | 
    
         
            -
                                                                        </next>
         
     | 
| 
       401 
     | 
    
         
            -
                                                                      </block>
         
     | 
| 
       402 
     | 
    
         
            -
                                                                    </next>
         
     | 
| 
       403 
     | 
    
         
            -
                                                                  </block>
         
     | 
| 
       404 
     | 
    
         
            -
                                                                </next>
         
     | 
| 
       405 
     | 
    
         
            -
                                                              </block>
         
     | 
| 
       406 
     | 
    
         
            -
                                                            </next>
         
     | 
| 
       407 
     | 
    
         
            -
                                                          </block>
         
     | 
| 
       408 
     | 
    
         
            -
                                                        </next>
         
     | 
| 
       409 
     | 
    
         
            -
                                                      </block>
         
     | 
| 
       410 
     | 
    
         
            -
                                                    </next>
         
     | 
| 
       411 
     | 
    
         
            -
                                                  </block>
         
     | 
| 
       412 
     | 
    
         
            -
                                                </next>
         
     | 
| 
       413 
     | 
    
         
            -
                                              </block>
         
     | 
| 
       414 
     | 
    
         
            -
                                            </next>
         
     | 
| 
       415 
     | 
    
         
            -
                                          </block>
         
     | 
| 
       416 
     | 
    
         
            -
                                        </next>
         
     | 
| 
       417 
     | 
    
         
            -
                                      </block>
         
     | 
| 
       418 
     | 
    
         
            -
                                    </next>
         
     | 
| 
       419 
     | 
    
         
            -
                                  </block>
         
     | 
| 
       420 
     | 
    
         
            -
                                </next>
         
     | 
| 
       421 
     | 
    
         
            -
                              </block>
         
     | 
| 
       422 
     | 
    
         
            -
                            </next>
         
     | 
| 
       423 
     | 
    
         
            -
                          </block>
         
     | 
| 
       424 
     | 
    
         
            -
                        </next>
         
     | 
| 
       425 
     | 
    
         
            -
                      </block>
         
     | 
| 
       426 
     | 
    
         
            -
                    </next>
         
     | 
| 
       427 
     | 
    
         
            -
                  </block>
         
     | 
| 
       428 
     | 
    
         
            -
                </statement>
         
     | 
| 
       429 
     | 
    
         
            -
              </block>
         
     | 
| 
       430 
     | 
    
         
            -
                  XML
         
     | 
| 
       431 
     | 
    
         
            -
                end
         
     | 
| 
       432 
     | 
    
         
            -
              end
         
     | 
| 
       433 
     | 
    
         
            -
            end
         
     |