Keyboard Navigation in VEXcode 123 on Mac (Experimental)

VEXcode offers a keyboard-only mode for creating and editing Blocks projects. This guide covers the keyboard commands for navigating the interface, manipulating blocks, and adjusting parameters in VEXcode.

The keyboard-only mode is currently in its experimental phase. Users may encounter occasional inconsistencies as our development team actively refines and enhances this feature.

Note: New Variables or My Blocks can not be created with the keyboard-only mode.

Enable Keyboard Navigation

VEXcode 123 project with three hat blocks. A when started block is on top, and beneath it is a When timer block and a When I Receieve block. A highlight box appears on the topmost When Started block after keyboard navigation has been enabled.

To enable keyboard navigation, press the shift + control + k keys at the same time. When keyboard navigation is enabled, the Block that's highest on the workspace will be highlighted.

To disable keyboard navigation, press shift + control + k again.

Add a Block from the Toolbar

VEXcode 123 interface with keyboard navigation enabled and the topmost block selected. The Toolbox is opened and the keyboard is used to scroll through each Block category.

1. Press T on the keyboard, then press S to open the Toolbox. Use S to scroll down and W to scroll up through the Block categories in the Toolbox.

VEXcode 123 interface with the Toolbox open and the keyboard being used to scroll through each Block category.

2. Navigate to the section containing the Block you want to add to the workspace.

VEXcode 123 interface with the Toolbox open and the keyboard being used to scroll through individual blocks in the Control category.

3. Press D, then press S until you reach the desired Block.

VEXcode 123 interface with the Toolbox open and the Toolbox cursor on the Wait block in the Control category. After the return key is pressed, the Toolbox closes and the Wait block is added into the coding workspace as its own stack.

4. Press return to add the Block to the workspace.

Change Where Blocks are Added on the Workspace

The location where Blocks are added to the workspace can be changed by doing the following:

VEXcode 123 interface with a When Started block in the workspace highlighted. After the A key is pressed, the highlighted box shrinks to indicate the stack is selected.

1. Press A to select the stack.

VEXcode 123 interface with a When Started block in the workspace selected. The A key is pressed and a yellow cursor bar appears above the stack.

2. Press A again to go to the cursor select.

VEXcode 123 interface with the yellow cursor bar being moved around the workspace with the keyboard.

3. Hold shift and use WASD (W and S move up and down, A and D move left and right) to move the cursor to where you want the new Block to be added.

VEXcode 123 interface with the yellow cursor bar turning blue after the return key is pressed to indicate its location has been saved.

4. Press return to save the cursor's current location.

VEXcode 123 interface with the Toolbox opened and a specific block selected. The block is added to the same location that the workspace cursor was saved to.

5. Use the steps from above to scroll through the Toolbox and add a Block to the workspace.

Attach a Block to a Stack

VEXcode 123 interface with a stack selected. The keyboard is used to change from selecting the stack to a yellow cursor bar selecting a block within the stack.

1. Press D to go into the stack.

VEXcode 123 interface, showing that after the end of the stack or the desired attach point is reached, the return key can be pressed to save the attach point. This will turn the yellow cursor bar blue to indicate the point has been saved.

2. Press W and S to move up and down through the Blocks until you reach the desired attach point. Press return to save the attach point.

A blue line will appear in the stack to show where the attach point was saved.

VEXcode 123 interface showing the A key being pressed to return to the block selection cursor, while the previous blue bar's position is still saved.

3. Press A to return to Block selection.

VEXcode 123 interface with the W and S keys being used to navigate to the desired block that will be added to the blue cursor bar's position.

4. Use W and S to navigate to the Block you want to attach.

VEXcode 123 interface with the I key pressed to attach the selected block to another stack at the selected position. In this example, a Drive block is added under a When Started block to form one stack.

5. Press i to attach the block.

VEXcode interface with the stack of blocks consisting of a When Started block and a Drive block and the cursor bar at the bottom of it. The Toolbox is then opened to select a new block to added at the cursor's position. In this example a Wait block is added underneath the Drive block.

You can select an attach point and attach a Block directly from the Toolbox. Follow the steps above to mark an insertion point. Once marked, pressing return on any block in the Toolbox will attach it at that point.

VEXcode interface with the stack of blocks consisting of a When Started block, a Drive block, and a Wait block. The cursor bar is at the bottom of the stack. The toolbox is opened and a Drive heading sensing block is added, but because it can't attach to the bottom of the stack it is instead placed on its own.

If the selected Block is incompatible with the marked attach point, the attach point will be discarded. Instead, the Block will be added to the workspace at its default location.

Detach Blocks from a Stack

VEXcode interface with a stack of blocks consisting of a When Started block and a Drive block. The stack is selected, and then the yellow cursor bar is moved to select specifically the Drive block.

1. Select the Block in the stack that you want to detach.

VEXcode interface with a stack of blocks consisting of a When Started block and a Drive block. The stack and the yellow cursor bar is at the Drive block. After the X key is pressed, the Drive block is detached away from the stack.

2. Press X to detach the Block and any attached Blocks beneath it.

Edit Block Parameters

A Drive For block has a yellow cursor bar on the top of the block. Next the cursor bar disappears and the first dropdown box parameter in the block is highlighted, which currently says forward.

1. Press D to return the block and access its first parameter.

A Drive For block is selected and a cursor is stepping through each of its parameters using keyboard navigation.

2. Use W and S to navigate through the block's parameters.

The cursor has navigated through the Drive For Block parameters to the unit dropdown menu, and opens it. The W and S keys are used to navigate down through the menu and select a different unit parameter.

3. Press return to open the parameter's dropdown menu.

Use W and S to navigate to the desired option, then press return to select it.

Edit Text Inside a Non-Comment Block

A Drive For block is selected and a cursor is stepping through each of its parameters using keyboard navigation until it reaches the text field.

1. To edit text inside of a Block, navigate to the circular highlight to the left of the text field.

A Drive For block is selected and the cursor is to the left of its text field.

2. Press D to go inside the text field parameter.

A Drive For block is selected and the cursor is highlighting its text field.

3. Press S to select the text field.

A Drive For block is selected and the cursor is highlighting the text value inside of its text field.

4. Press D to select the text.

A Drive For block is selected and the cursor is editing the text value inside of its text field to change it from a value of 1 to a value of 50.

5. Press return to start typing in the field. Once you are finished, press Esc to deselect the text field.

A Drive For block is selected and the cursor is highlighting the text value inside of its text field, before exiting out of the field to select the parameter itself again.

6. Press A twice to go back to the parameter select.

Edit Text Inside a Comment Block

A Comment block is highlighted with a selection box. The selection box then disappears and the comment block is selected with the yellow cursor bar.

1. Once the stack that the Comment Block is inside is selected, press D to select the Comment Block. 

The cursor bar is selecting the Comment block and then changes to select the text field inside of it.

2. Press D again to select the Comment Block's text field.

The Comment block's text field is selected and a new message is entered into the Comment block.

3. Press return to start typing and press Esc once you are finished to save what was written.

Note: Pressing return to type inside a Comment Block will delete all text that was previously in the text field.

Expand a Block

A cursor is selecting a Print block's parameters and then disappears when it selects the expand option on the right. After pressing return, the block is changed to an expanded version that includes the text 'And set cursor to next row'.

For any Block that can be expand option (the arrow) at the end of it, go into the Block's parameters and navigate the parameters until the highlight disappears. Pressing return will expand the block. Pressing return again will disable it.

Attach Blocks Inside of Other Blocks

A cursor bar is selecting a Print block itself and then changes to select its parameters.

1. Press D to go inside the Block's parameters and use or W to navigate through the Block's parameters until a highlighted circle beside the parameter you want to fill with the Block appears.

The cursor selecting the Print block's parameters stops at its text field, and then once the return key is pressed it stops blinking as quickly to indicate that the selection has been saved.

2. Press return to save that parameter as the attach point.

After the Print block's text parameter is saved as the attach point, the Toolbox is opened and a Timer in seconds block is selected and then attached into the Print block.

3. Using the steps above, navigate through the Toolbar to select the Block you want to insert into the parameter. Press return on the Block to insert it.

Start, Step, and Stop the Project

VEXcode 123 Toolbar with the Tools menu open and the Keyboard Shortcuts option highlighted. The availabe Keyboard shortcuts are shown in a second dropdown menu to the right, with 4 options that include Start, Step, Stop, and Open Help.

Once you are finished coding your project, you can use keyboard shortcuts to activate the project:

  • + return will start the project.
  • + l will step through the project.
  • + e will stop a running project.
  • + h will open the help documentation for Blocks.

For more information, help, and tips, check out the many resources at VEX Professional Development Plus

Last Updated: