Skip to content
/ DXMate Public

Sublime Text 3 plugin to provide integration with the Salesforce DX CLI

License

Notifications You must be signed in to change notification settings

jtowers/DXMate

Repository files navigation

dxmate

Sublime Text 3 plugin to provide integration with the Salesforce DX CLI

Instructions

  1. Install the DX CLI
  2. Run Package Control: Install Package from the command palette in Sublime and search for 'dxmate'
  3. In the command pallette run Package Control: Satisfy Dependencies

Features

Supports most useful CLI commands including:

  • Create a project
  • Authorize dev hub
  • Create\open scratch orgs
  • Push\Pull source
  • Create Apex classes
  • Create Lightning Apps, Components, Events, Interfaces and Tests
  • Run tests for an org or specific class
  • Run SOQL query

This plugin also supports:

  • Code completion
  • Diagnostics

Language services (e.g., code completion and diagnostics) are provided by the Apex Language Server

Settings

  • debug: true or false to enable/disable printing debug statements to the sublime console
  • java_home: location of your java binary if it is not in your PATH

Getting Started

The plugin adds a new menu item (DXMate), context menu items, and command pallette items. Many of these are only enabled if you have an sfdx project currently opened.

If you don't have an sfdx proejct created, you can use DXMate > Project > Create Project to create one. If you do have one created, use Project > Add Folder to Project to add it to a project.

After that you can work with the rest of the commands (e.g., authorizing a dev hub and then creating a scratch org).

To Do

  • Additional settings (e.g., disable language services)
  • Better handling of window opening (currently only starts language server if dx project is loaded when sublime is opened)
  • Add goto symbol definition from latest language server update
  • Add support for additional sfdx cli commands

Compatibility

This should be compatible with windows, osx and linux with ST3.

It's been tested on windows 10 and ubuntu 16.

Credits

  • Most utility functions are based on or copied from MavensMate. The syntax files for Apex are also from the MavensMate project.

  • The LSP client code is adapted from the Sublime LSP package