Participating in a Session

Overview | Navigating | Editing

CodeTogether lets you join a session from a browser or an IDE (Eclipse, IntelliJ and VS Code). Your experience will vary slightly depending on how you join the session. When joining from an IDE:

  • You get the same look and feel of your IDE—including, key bindings, workbench layout and general behavior.
  • Language smarts come from the host IDE, regardless of the plugins/extensions you have installed or what your IDE is inherently capable of. Your experience as a participant will differ from using the same IDE as a host. While you have access to the entire project shared by the host (minus files intentionally hidden from the session), the files and libraries are not downloaded to your system. Files are fetched on demand and only the files being actively edited are local to your system. This should help you understand which features in the host IDE you can expect to work.
  • You can use the Project/Resource views and the Problems views; however, no other views will provide meaningful support for shared projects.

When joining from a browser:

  • You can select your preferred IDE theme and key bindings for a more familiar experience in the browser.
  • Language smarts come from the host IDE.

Because language smarts always come from the host, content assist suggestions, validation, quick fixes and navigation support are all delivered by the host IDE. Refactoring is not currently available, but will be coming soon. Note: You can code alone or with a group. Refer to Section Basics for details.

Editing in a Session

In addition to basic editing capabilities like undo, redo, and clipboard access, the following code features are available.

Content Assist

Press the appropriate key binding (typically Ctrl+Space) to invoke content assist. On accepting a proposal, you can press Tab to jump from one parameter stop to the next as you key in the parameters to a constructor or method.

Quick Fixes

When the cursor is within an error squiggly, a quick fix bulb appears if one or more fixes are available. Click the bulb and choose the desired fix action to make the recommended changes to your code.

Rename Refactoring

Use your IDE’s rename refactoring shortcut or menu actions to initiate this refactoring action. As long as the host supports it, this will result in the entity in question being correctly renamed across the workspace.

Note: Additional refactoring actions will be added in subsequent releases.

Validation

Errors from the host workspace appear in all participant sessions. This includes errors from files that are not currently open or being edited, as long as the host has validated those files. Errors typically appear and disappear as you type, as validation takes place on the host and the markers are transferred over to the participants. To see a list of all errors, you can open the Problems view (View > Problems) from where you can easily navigate to the referenced files.

Java Class Creation

Create a new file with a java extension within a Java source folder, and CodeTogether will create a minimally scaffolded Java class, ready for further code.

Formatting

You can format the entire file by using the Format Document context menu action. If code is selected, only the selected code is formatted.