Help us understand the problem. What is going on with this article?

Intellij IDEA でのGo言語開発環境セットアップ

More than 3 years have passed since last update.

IDEが流行りと聞きつけ、人気取りのためにIntellijへGo開発環境をつくりました。

(急いで公開なので、わりと後半雑です。。。ごめんなさい)

前提環境

他の環境で動かなかったらゴメンナサイ。

  • Mac Yosemite
  • go version go1.4.2 darwin/amd64 (brew install go)

Go基本設定

Goの基本的なインストールは済んでいるものとします。
※Goのインストール、GOPATH, GOROOTの設定。他の記事などをご参考に!!

Go開発環境のためのIntellij package

Intellij Pluginインストール

go-lang-idea-plugin
README.md の通りに進めていきます。

  • メニューバーの、intellij IDEA > Preferences > Plugins を選ぶ
  • Browse repositories をクリックする
  • Manage repositories をクリックする
  • +を押してレポジトリURLを追加(安定度 alpha > nightly)
  • OK をクリックする
  • 検索窓でGoと入れると、プラグインがでてきます。右ウィンドウのボタンからインストールしましょう

設定

SDK設定

  • メニューバーの、File > Project Structure > Platform SettingsSDKs を選ぶ
  • +ボタンを押して、Go のSDKを追加しましょう。
  • Go SDK home path
    • $GOROOT のフルパスを追加 例: /usr/local/Cellar/go/1.4.2/libexec
  • Classpath
    • $GOROOT のフルパスを追加
  • Sourcepath
    • $GOROOT/src のフルパスを追加
    • $GOPATH/src のフルパスを追加
  • OK をクリックする

Project設定

  • メニューバーの、File > Project Structure > Project SettingsProject を選ぶ
  • Project SDK に先ほど作成したSDKを選択してください
  • OK をクリックする

goimpors & golint 設定

何はともあれ、保存時にgoimports & Literは動かしたい
でもプラグインがないのでgoのコマンドツールのお世話になります。

ツールをインストール

$ go get -v golang.org/x/tools/cmd/goimports # -> gofmtの拡張コマンド
$ go get -v github.com/golang/lint/golint # -> linter

shell作成

/usr/local/bin 辺りに、goimports & golint を動かすシェルを作ります

goimp.sh
#!/bin/sh

if [[ $1 == *.go ]]
then
    /usr/local/bin/goimports -w $1
fi
golint.sh
#!/bin/sh

if [[ $1 == *.go ]]
then
    /usr/local/bin/golint $1
fi

実行権限をつけるのをお忘れずに!

$ chmod 755 /usr/local/bin/goimp.sh
$ chmod 755 /usr/local/bin/golint.sh

IntellijのExternal Toolsに追加登録

Screen Shot 2015-06-02 at 21.51.17.png

Screen Shot 2015-06-02 at 21.51.25.png

Screen Shot 2015-06-02 at 21.51.34.png

マクロを作成

  1. メニュー > Edit > Macros > Start Macro Recording でマクロの保存を開始する
    1. メニュー > Tools > format > goimports 選択
    2. メニュー > Tools > lint > golint 選択
    3. メニュー > File > Save all 選択
  2. メニュー > Edit > Macros > Stop Macro Recording でマクロ保存を停止する。
  3. このマクロにgoimports_golint_saveallという名前をつける。

マクロをKeymapへ割り当て

そのマクロの実行をKeymapで command + s に割り当てると完成です。

  • メニューバーの、intellij IDEA > Preferences > Keymap を選ぶ
  • Macros > goimports_golint_saveallcommand + s を割り当てる

最後に

これでうまく動かない場合はぜひコメ欄で教えて下さい。さらの状態のMacでトライしておりませんで。。

Why do not you register as a user and use Qiita more conveniently?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away