Go logo

GoLand

A cross-platform Go IDE with extended support for JavaScript, TypeScript, and databases

Early Access Program Features

GoLand 2019.2 EAP #2: Custom Postfix Templates, Better View of Dates in the Debugger, and Updates for Kubernetes

GoLand 2019.2 EAP #2 is available for download! Let’s have a look what we packed in this build for you.

Download GoLand 2019.2 EAP 2

As usual, you can get this new EAP build via the Toolbox App, from the website, or as a snap package (for Linux). Or update right in GoLand – select Automatically check updates for Early Access Program in Preferences / Settings | Appearance & Behavior | System Settings | Updates.

We love hearing from you! Try this EAP build out and let us know what you think!

Custom Postfix Templates

Hooray! GoLand 2019.2 will let you create your own custom Postfix Completion templates. It boosts your productivity by customizing your IDE with templates that suit your needs perfectly, like a custom-tailored garment.

To start creating a new postfix template, navigate to Preferences | Editor | General | Postfix Completion, click + , and select Go:

postfix-completion-1

Inside your template, you can use two predefined variables, $EXPR$ and $END$:

  • $EXPR$ captures the expression before the dot.
  • $END$ defines the position of the cursor after the template is expanded.

In the Create New Go Template window, you can not only define your template, but also choose scopes where the template will be applicable. For example, in our case it will be slice and array.

postfix-completion-2

The Apply to the topmost expression checkbox lets you apply your template to the entire expression without selecting the scope for it every time.

postfix-completion-3

Last but not least, you can always copy, update, and remove your custom templates.

Better presentation of dates in the debugger

The upcoming GoLand 2019.2 will display the value of struct derived from time.Time types in a human-readable format in the Variables pane of the Debugger.

better-data-presentation-debugger

Support for escape sequences in string literals

Support for escape sequences in string literals is fully equipped with:

  • Highlighting.
  • An inspection that will warn you about potential problems.
  • Smart editing that understands the location of escape sequences.
  • More precise spell-checking.

string-literals

Filling fields of structs

Filling fields of structs is now easier. First of all, you can choose which fields you want to fill in a dedicated window. Second, generated values can now be edited.

fill-struct

Redundant type conversions

The Redundant type conversions code inspection helps you keep your project more readable and neat. It warns you about redundant type conversions that can be omitted.

redundunt-conversion

Code completion for struct fields without a receiver

Code completion now provides suggestions for struct fields even if there’s no receiver.

code-completion-for-fields

Kubernetes plugin gets Kustomize support

The latest version of Kubernetes v1.14 introduced support for Kustomize, and we’ve immediately reflected this in our Kubernetes plugin.

GoLand 2019.2 with the Kubernetes plugin will provide such survival-level features as editing support, code completion for keys and paths, many inspections, and the Rename refactoring. It will also let you navigate from a declared path to the associated packages or files in the project view for Kustomize resource files.

k8sCompletion

Shell Script support

GoLand 2019.2 will provide rich editing support for shell scripts, including word and path completion, Quick documentation preview, and even text-based rename.

On top of that, we are adding integrations with:

  • Shellcheck, a tool that detects code issues and provides quick-fixes for them.
  • Shfmt, an external formatter engine. To start working with it, you just need to invoke the Reformat Code action and GoLand will suggest installing it for you.
  • The Explainshell website which gives you a detailed explanation for the selected command if you simply press Alt-Enter on it.

ShellScript1

image description