Sublime Text is one of the most popular editors for web development and software development in general. It’s very smooth and fast compared to other editors (being written in C++ helps that speed). Sublime also has tons of plugins you can find through Package Control.
- Smart autocomplete
- Error detection and linting
- Code refactoring
Several other features can be found on the Wiki page.
- Sublime Text 3 build 3124 or newer
- Node.js (6 or newer) and npm
- TerminalView Sublime Text plugin (Linux and Mac OS X only)
Because Flow only works on 64-bit systems, this plugin supports:
- Mac OS X
- Linux (64-bit)
- Windows (64-bit)
Sublime Text has its own autocomplete feature, but it lacks power, making it not nearly as useful as it could be. With this plugin, you will get autocompletion based on the current context, like any other IDE. For example, you will get completions from your imported classes defined in other files, such as properties and methods.
Furthermore, the completions list will also contain info about variables type and functions signature in order to get a quick overview of them.
Here’s how that works with the plugin:
...and without the plugin:
Error Detection and Linting
Sublime Text doesn’t have an error detection and/or linting system natively. Thanks to Flow, this can be done using its own CLI commands.
You can set also more options in the
.flowconfig file (see the official website to customize your Flow configuration. For example, if you want to let the Flow server check all files and not just those with
@flow, you need to set the
all option to
[options] # all=off by default all=true
To let the Flow server check also single files that aren't part of a project, you can activate the option in
Instead, like is says on the official website, lint settings can be specified in the
.flowconfig [lints] section as a list of
rule=severity pairs. These settings apply globally to the entire project. An example is:
[lints] # all=off by default all=warn untyped-type-import=error sketchy-null-bool=off
Lint settings can be specified also directly in a file using
flowlint comments. For example:
/* flowlint * sketchy-null:error, * untyped-type-import:error */
Sublime Text doesn’t offer a code refactoring system natively. This is realized with the help of Flow CLI commands in order to get the necessary information. At the moment, this plugin offers various code refactoring features, including:
- Convert to arrow function
- Safe Copy
- Safe Move
- Safe Delete
If you have any problems, create an issue. Protip: do a quick search first to see if someone else didn't ask the same question before! For small questions, you can use Gitter.
Feature Requests and Enhancements
For feature requests, create an issue or use Gitter.