This package provides the following services:
This package consumes the following services:
pulsar-ide-golang
A wrapper around gopls
. Provides linting, autocompletion, reference-finding, symbol navigation, and other stuff.
Prerequisites
You must install go
.
This package does not yet manage the installation of gopls
. You can install it manually using these instructions.
If your PATH
includes GOBIN
(or $GOPATH/bin
), then gopls
will be in your path after installation, and this package should not need further configuration.
If gopls
is not present in your path:
- Find your
GOBIN
by runninggo env GOBIN
. If it doesn’t exist, rungo env GOPATH
and look for abin
directory at that location. - If you see a
gopls
binary present in that folder, you’re in the right place. - Enter the full absolute path to
gopls
, with the binary name included, in the “Path to gopls” setting on this package’s configuration page. - Reload the window (Window: Reload from the command palette) or quit and relaunch Pulsar.
“Finished loading packages” notification
You might notice a notification like this on startup:
gopls
wants to report its progress on some server-side–initiated tasks like workspace setup. The output of this progress will use the busy-signal
package if you have it installed. If you don’t have busy-signal
installed, gopls
gracefully degrades and sends those messages a different way: as notifications.
Hence there are two ways out of seeing this notification on every startup:
-
Install
busy-signal
. The version in Pulsar’s package registry is out of date, so you are encouraged to install it directly from GitHub:ppm install steelbrain/busy-signal
-
If, for whatever reason, you don’t want to install
busy-signal
, you can instead enable this package’s Hide “Package Loading” Messages setting.
What does it do?
Install this package, then install any of the following packages to get special features.
Start with these packages; they’re all builtin, actively maintained, and/or built exclusively for Pulsar:
- autocomplete-plus (builtin)
- See autocompletion options as you type
- symbols-view (builtin)
- View and filter a list of symbols in the current file
- View and filter a list of symbols across all files in the project
- Jump to the definition of the symbol under the cursor
- linter and linter-ui-default
- View diagnostic messages as you type
- intentions
- Open a menu to view possible code actions for a diagnostic message
- Open a menu to view possible code actions for the file at large
- pulsar-outline-view
- View a hierarchical list of the file’s symbols
- pulsar-refactor
- Perform project-wide renaming of variables, methods, classes and types
- pulsar-find-references
- Place the cursor inside of a token to highlight other usages of that token
- Place the cursor inside of a token, then view a
find-and-replace
-style “results” panel containing all usages of that token across your project
For other features that don’t have equivalents above, the legacy atom-ide
packages should also work:
- atom-ide-definitions
- Jump to the definition of the symbol under the cursor
- atom-ide-outline
- View a hierarchical list of the file’s symbols
- View the call hierarchy for a given file
- atom-ide-datatip
- Hover over a symbol to see any related documentation, including method signatures
- atom-ide-signature-help
- View a function’s parameter signature as you type its arguments
- atom-ide-code-format
- Invoke on a buffer (or a subset of your buffer) to reformat your code according to the language server’s settings