Google Go language IDE built using the IntelliJ Platform

Go plugin for IntelliJ

Deprecation notice

This project is officially not maintained anymore. If you are using GoLand or IntelliJ IDEA Ultimate 2017.3 or later, please report your issue at the official tracker: https://youtrack.jetbrains.com/issues/Go

Build Status Gitter

Pre-release builds

Please note, that the following features are available in GoLand, JetBrains's official IDE, or JetBrains maintained plugin, but not in this plugin:

  • Navigation
    • Go to inheritor structures
    • Go to super interfaces
  • Type-aware completion (aka Smart completion)
  • Extract function refactoring
  • Implement type
  • Inspections and quick-fixes
    • Introduce method
    • Introduce field
    • Delete unused parameter
    • Show symbol duplicates
    • Add/delete missing/redundant expressions in case of assignment count mismatch
    • Properly implemented Duplicated symbols inspection
    • Recursive type detection
    • Invalid const initialization
  • Tests and coverage
    • Sub-tests support (runner, navigation, gutter actions)
    • Debugging tests
  • Debugger
    • Step out
    • 100x faster performance
  • General
    • Highlighting of go:generate comments
    • Quick documentation for struct fields
    • Semantic highlighting
    • Parameter name hints
    • SQL auto-injection
    • Support for Go 1.9+
    • Support for AppEngine 1.9.54+

Supported IDEs

The plugin can be installed on following IntelliJ-based:

  • IntelliJ 2016.1+ (Ultimate or Community)
  • WebStorm 2016.1+
  • PhpStorm 2016.1+
  • PyCharm 2016.1+
  • RubyMine 2016.1+
  • CLion 2016.1+
  • Android Studio 1.2.1+

Pre-release builds are available in two forms: nightly and alphas. Alpha builds are usually released at the beginning of every week while nightly builds are released every night.

To use them do the following:

  1. Use the instructions
  2. Paste the URL for the version you need:

NOTE The above links are not meant to be used in browsers, so don't report issues about them not working or being inaccessible unless there's an error in the IDE itself.

Since these are not stable releases, some things might not work as expected.

Release versions schema

Bellow you can see the versions of the plugin which correspond to the versions of the IntelliJ Platfom (IntelliJ IDEA, WebStorm, PyCharm etc.):

Plugin version number Platform number
0.12.x IntelliJ 2016.2 (IntelliJ IDEA 2016.2)
0.11.x IntelliJ 2016.1 (IntelliJ IDEA 2016.1)
0.10.x IntelliJ 143.1180 - 143.9999 (IntelliJ IDEA 15.0.2+)
0.9.x IntelliJ 141.1532 - 141.9999 (IntelliJ IDEA 14.1)

If you are not using IntelliJ IDEA, then please check the build number of your IDE as that will correspond to the IntelliJ Platform version.

Reporting issues is very important for us as such, please see the section below on how to submit a proper bug report.

FAQ

Here's a list of the most frequently asked questions: FAQ

Bugs

If you've found a bug, which is not a duplicate, report it.

When reporting a bug, please include the following:

  • IDEA version
  • OS version
  • JDK version
  • Plugin version (or commit hash, if you built the plugin yourself)
  • Detailed steps to reproduce (please include sample code)

Bumping or +1 comments

Please don't comment with "bump", "+1", "same for me" or other irrelevant comments as they're useless for identifying the issue and finding the solution.

Contributions are always welcome and we'll do our best to make the most of them.

Contributing

We encourage you to contribute to the plugin if you find any issues or missing functionality that you'd like to see. In order to get started, see the contribution guide.

People who helped

License

The Gopher icons are based on the Go mascot designed by Renée French and copyrighted under the Creative Commons Attribution 3.0 license.

The plugin is distributed under Apache License, version 2.0. For full license terms, see LICENCE.

Owner
Go Language support for IDEA based IDEs
People working on go support for IntelliJ Idea
Go Language support for IDEA based IDEs
Similar Resources

Protocol Buffers - Google's data interchange format

Protocol Buffers - Google's data interchange format Copyright 2008 Google Inc. https://developers.google.com/protocol-buffers/ Overview Protocol Buffe

Jan 3, 2023

Access Google Ads API via GRPC

google-ads-pb You can use the golang library to interact with the Google Ads API across grpc. This library is not the official Google Ads API library.

Dec 9, 2022

Google pub/sub service easy way to use

easy pubsub Installation go get github.com/buraksecer/go-easy-pubsub v0.0.2 Example Firstly, you must Init new topic operation. topic.Init(clientId)

Nov 24, 2022

Go support for Protocol Buffers - Google's data interchange format

Go support for Protocol Buffers - Google's data interchange format Google's data interchange format. Copyright 2010 The Go Authors. https://github.com

Dec 15, 2021

A Golang implementation of Google Widevine Proxy

Widevine Proxy A Golang implementation of Google Widevine Proxy Widevine Proxy G

Jun 5, 2022

my fork from google.golang.org/protobuf

Go support for Protocol Buffers This project hosts the Go implementation for protocol buffers, which is a language-neutral, platform-neutral, extensib

Dec 22, 2021

Google repo tools jiri mirrors

Jiri /jɪəri/ YEER-ee "Jiri integrates repositories intelligently" Jiri is a tool

Dec 21, 2021

A wrapper for exposing a shared endpoint for Google Cloud Functions in go. API styled after Node.JS firebase-functions package.

firebase-fx A wrapper for Google Cloud Functions that simplifies the deployment of serverless applications. Meant to expose a similar API to the Fireb

Nov 7, 2022

Creates a linux group of users synced to your Google Workspace users and automatically imports their public SSH keys.

Creates a linux group of users synced to your Google Workspace users and automatically imports their public SSH keys.

Creates a linux group of users synced to your Google Workspace users and automatically imports their public SSH keys.

Jan 27, 2022
Go-web-dev - Web Development With Google's Golang Programming Language Code Snippet and Exercises.

Web Development With Google's Golang Programming Language Code Snippet and Exercises This repository contains my code snippets, hands on exercises and

Jan 16, 2022
Walrus 🕑 Real-time event streaming platform built on top of gRPC streams
Walrus 🕑 Real-time event streaming platform built on top of gRPC streams

Walrus ?? Real-time event streaming platform built on top of gRPC streams Table of Contents About the project Built With How it works Getting Started

Sep 24, 2022
A toy MMO example built using Ebiten and WebRTC DataChannels (UDP)
A toy MMO example built using Ebiten and WebRTC DataChannels (UDP)

Ebiten WebRTC Toy MMO ⚠️ This is a piece of incomplete hobby work and not robust. Please read the "Why does this project exist?" section. What is this

Aug 28, 2022
gopunch is a go implementation of a peer-to-peer chat service built using UDP hole punching.

Gopunch gopunch is a go implementation of a peer-to-peer chat service built using UDP hole punching. This is a toy implementation that I put together

May 24, 2022
A Socket Framework Built Using Golang

A Socket Framework Built Using Golang

Jan 20, 2022
A creature simulation using ANN built on golang.

worldservices a creature simulation. training sets Use training sets as chromosones. The model gets trained on the packages in the chromosones. They p

Feb 14, 2022
Pure-Go library for cross-platform local peer discovery using UDP multicast :woman: :repeat: :woman:
Pure-Go library for cross-platform local peer discovery using UDP multicast :woman: :repeat: :woman:

peerdiscovery Pure-go library for cross-platform thread-safe local peer discovery using UDP multicast. I needed to use peer discovery for croc and eve

Jan 8, 2023
grobotstxt is a native Go port of Google's robots.txt parser and matcher library.

grobotstxt grobotstxt is a native Go port of Google's robots.txt parser and matcher C++ library. Direct function-for-function conversion/port Preserve

Dec 27, 2022
Handling Google Authenitcator codes.
Handling Google Authenitcator codes.

gotp Handling Google Authenticator codes in your terminal Getting started Grab the binary The quickest way to get set up is to download the latest bin

Aug 19, 2022
Get related domains / subdomains by looking at Google Analytics IDs
Get related domains / subdomains by looking at Google Analytics IDs

AnalyticsRelationships This script try to get related domains / subdomains by looking at Google Analytics IDs from a URL. First search for ID of Googl

Jan 2, 2023