GoLand 2018.1の新機能

ダウンロード

Go

Moveリファクタリング

Move リファクタリングを追加しました。メンバーを同じパッケージの別のファイルに移動することが出来ます。パッケージをまたがった移動はまだ出来ません。

否定補間

ブール値の補間候補は ! を押すことで選択と否定形への変換を同時に行えます。

デフォルト値の補間

カーソルが関数内のリターン文の右側にある場合、コード補完でデフォルト値を伴うサジェストをします。

新しいPostfix completion

  • .if でブール式からif文を構成できます
  • .p でポインターオペレーターに変換できます

より多くのインテンションアクション

数多くのインテンションが追加されました。バイナリ式の反転、NegateNegate recursively、boolean式のInvert。

インスペクションの強化

go vetに相当するインスペクションが改善されました。例えばfmt.Printf の型ミスマッチを警告してくれます。

Enterで自動フォーマット

コールチェーンやストリングリテラルでEnterを押すと、コードを自動フォーマットしてくれます。

インポート文を直ちに最適化

使われていないパッケージを即座に削除することが出来ます。手動で削除しなくて良くなります。Optimize imports on the flyと呼ばれるこの機能はSettings | Go | Importsより設定できます。

クイックドキュメンテーションポップアップの改善

Quick Documentation ポップアップはexampleファンクションも表示します。exampleファンクションをクリックすればそのコードを含むスクラッチファイル を開いてくれます。

スクラッチファイルの改善

Scratch Fileは選択したコードから作成することができ、必要なimport文も自動的に挿入してくれます。またSettings | Editor | File and Code Templatesで事前定義(カスタマイズも可能)されたテンプレートからScratch File を作ることが出来ます。

デバッガの強化

ローカルで起動しているプロセスへアタッチできるようになりました。メインメニューの Run を押して、 Attach to Local Process よりデバッグしたいプロセスを選択するだけです。

またデバッグ中、デバッガツールウィンドウのWatchesVariablesタブでシャドー化された変数を識別できます。

Depインテグレーション

depプロジェクトで解決されないインポート文があればクイックフィックスでdep ensureを実行できます。

新しいdepプロジェクトを作るにはProject Wizard でダイアログ左側のDepに切り替えてください。

テストランナーの改善

テストの階層をサポートし、テスト毎、パッケージ毎のアウトプットやコンパイルエラーをより分けます。

複数のファイルを実行

Go Build 実行コンフィグレーションの改善により複数ファイルを選択/実行できるようになりました。

他のコードアシスタンスの改善

コードを書くのを楽しくする改善がたくさん施されています:

  • Go 1.10 の新機能をサポート
  • Extract Variableで提示する名前の候補は文脈を汲み取り、名前の衝突を回避します
  • 自動インポートメカニズムが賢くなりインポートした結果エラーが起こることはなくなりました
  • グローバルシンボルのリネームリファクタリングFind Usagesがずっと速くなりました
  • IDEパフォーマンスを改善するため、インデックス作成スコープをプロジェクトに絞ることが出来ます。例) File | Settings | Go | GOPATH | Index entire GOPATH and the Project WizardのオプションよりGOPATH 全体のインデックス作成を避けることが出来ます

Git

部分Gitコミット(git add -p)をサポートしました。コードの変更を別のチェンジリストに移動したり、コミット時に特定の変更領域をはずすことが出来ます。

チェンジリストの移動はDiffペインのコンテクストメニューから、またはエディタのガターより行えます。

rebaseアクション

rebase中にGit ブランチポップアップAbort RebaseContinue RebaseSkip Commitアクションが表示されるようになりました。

JavaScript と TypeScript

TypeScriptの強化

最新のTypeScript 2.7サポートに加え、Implement Membersアクションや解決されていないプロパティのSurround with type guard クイックフィックスを追加しました。

賢いリネームリファクタリング

クラス名をリネームする際、ファイル名もリネームするか確認してくれるようになり、同時にリネームできるようになりました。

クラス名、インターフェース名、タイプでAlt-Enter を押せばファイルをその名前に変更するためのインテンションアクションが表示されます。

Prettierでリフォーマット

Reformat with Prettierアクション(Alt-Shift-Cmd/Ctrl-P)で選択したコード、ファイル、ディレクトリをPrettierでフォーマットできます。

Prettierはプロジェクトで依存しておくか、マシングローバルにインストールしておく必要があります。

Vueコンポーネントの抽出

既存のものから新しいVueコンポーネントをコピー&ペーストすることなく作成できます。テンプレートの任意の箇所を選択し、Refactor – ExtractまたはAlt-Enter を押してExtract Vue Componentを選択してください。

Deployment

Docker

Dockerプラグインが複数のDocker Composeファイルをサポートし、docker-compose.ymlだけでなくdocker-compose.override.ymlもサポートするようになりました。

Kubernetes

プラグインをインストールすることでKubernetesに対応します。コード補完、インスペクション、リソースファイルのクイックフィックス、ガターアイコンによるナビゲーション、ポップアップドキュメンテーション、ライブテンプレートをサポートしています。

紹介プログラムにより新規、他社より移行のお客様は最大1,000円割引。既存のお客様は紹介件数に応じて割引となります。

コマーシャルライセンス年間サブスクリプション 新規
パーソナル 年間サブスクリプション 新規

特定商取引に関する法律に基づく表示