This repository has been archived on 2024-10-22. You can view files and clone it, but cannot push or open issues or pull requests.
spacemacs/layers/+lang/dart
2019-04-12 22:02:05 +02:00
..
img
config.el
packages.el
README.org documentation formatting: Fri Apr 12 19:31:31 UTC 2019 2019-04-12 22:02:05 +02:00

dart layer

/TakeV/spacemacs/media/commit/677c06c7592198414ed3a8a6d421e023942b2022/layers/+lang/dart/img/dart.png

Description

This layer adds support for Dart language, and could be optionally used for Flutter development as well.

Features:

  • Syntax Highlight
  • Error checking with flycheck
  • Go to Definition
  • Dart Analyzer integration
  • Key bindings

Install

Layer

To use this configuration layer, add it to your ~/.spacemacs. You will need to add dart to the existing dotspacemacs-configuration-layers list in this file.

Dart SDK location

The layer itself will use the `dart` executable location if available on the execution path, but it is possible to define the location manually. It should point to the folder, and end with `/`.

  (dart :variables dart-sdk-path "~/path/to/dart-sdk/")

Flutter integration

Flutter comes with a internal Dart SDK, which can be used to provide all the integration tools.

  (dart :variables dart-sdk-path "<flutter-location>/bin/cache/dart-sdk/")

Configuration

For more available variables check dart-mode documentation.

Use analysis server

  (dart :variables dart-enable-analysis-server t)

Format on save

  (dart :variables dart-format-on-save t)

Key bindings

Normal mode

Some of the commands will instantiate a new Dart Analyzer server if necessary, while others work without using a Dart Analyzer connection.

When dart-enable-analysis-server is enabled, most of the commands become Async, and there might be a delay when executing them.

Key binding Description
SPC m h h, SPC m ? Displays hover information for the current point.
SPC m h b Displays information at point on a new buffer.
gd, SPC m g Go to definition.
SPC m f f Find reference at point.
SPC m f d Find members declarations by name.
SPC m f r Find members references by name.
SPC m f d Find top-level declarations by name.
SPC m = Format buffer

Insert mode

Key binding Description
<tab> Expand previous word using Analyzer if available
C-<tab> Expand including parameters

Popup screens

Key binding Description
q Close popup
gr Execute last command to repopulate buffer