Fuchsia recommends that you use an IDE (integrated development environment) to develop Fuchsia and to build software on Fuchsia. An IDE consolidates multiple tools in a single GUI to help you develop.
To get started with VS Code, install VS Code.
Once you have installed VS Code, you should configure the IDE. Depending on your development setup, consider the following guides:
- Configuring remote workspaces: This guide is recommended if you are developing on a virtual machine, container, or an environment with a running SSH server.
- Configuring file reloading: This guide is recommended if you are developing Fuchsia in the source tree. As Fuchsia has a large code base, you may want to exclude some directories from being watched for file changes.
This file in the root directory of fuchsia.git contains recommended configuration
defaults for using VS Code on Fuchsia. If you use this workspace file (either
File > Open Workspace from File or opening the file in an editor pane
and clicking the
Open Workspace button that pops up) it will prompt you to
install some recommended extensions if you don't already have them, and it
will set configuration options that are useful or necessary to use those
extensions on Fuchsia.
Note that these settings override ones in your user configuration, if you'd
like to edit the values set in
fuchsia.code-workpace you'll have to put them
in the workspace-folder settings in
VS Code supports a large amount of extensions which can help you customize your IDE. Fuchsia has developed several extensions that are specific for developing the Fuchsia platform and for developing on Fuchsia with the SDK.
- Fuchsia extension for VS Code: This extension integrates key Fuchsia-specific functionality into VS Code such as connecting, debugging, analyzing logs for Fuchsia devices, and functionality to help you edit and debug code as you develop for Fuchsia.
- Additional Fuchsia extensions: This guide lists additional Fuchsia extensions that may help you as you contribute to Fuchsia.
These guides describe configurations and best practices of other editors and IDE configurations for Fuchsia development.
YouCompleteMe is a semantic code-completion engine. YouCompleteMe works natively with Vim but it can also be integrated with other editors through ycmd.
For installation and usage information see YouCompleteMe integration
fuchsia.vim script sets up Vim to do the
- Set paths so that
gfknow how to find files.
- Enable FIDL syntax highlighting (using
- Integrate basic build system so that
:makebuilds and populates the QuickFix window.
- Configure YouCompleteMe (YCM) to provide error checking, code completion, and source navigation within the Fuchsia tree.
For installation and usage information see Vim tools for Fuchsia development
Sublime Text Configuration
Each language may have extra configuration. See more for
For installation and usage information see [Kakoune for Fuchsia development][#kakoune].