GoLand の新機能

GoLand 2018.1の新機能

GoLand 2018.1は、よりスマートなコーディング支援、より豊富な組み込みの組み込み、その他数多くの改良を提供します。このアップデートは、Go、JavaScript、TypeScriptのサポートを改訂し、デバッガ、Gitのサポート、およびIDEの他の多くの部分を改善します。

Go

移動リファクタリング

今回のアップデートでは、移動リファクタリングを追加しました。このリファクタリングにより、最上位のメンバを同じパッケージの別のファイルにすばやく移動できます。パッケージ間の移動はまだ許可されていません。

否定補完

コード補完によって提案されたbool式は、 !を押して同時に選択して無効にすることができるようになりました。

デフォルト値補完

キャレットが関数内のリターンステートメントの右側にある場合、コード補完は関数の戻り値の型に対応するデフォルト値を提案するようになります。

新しい後置補完

  • .if テンプレートは、bool式をifステートメントに変換します
  • .p テンプレートは、式の前にポインタ演算子を付加します

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

アップデートに追加された新しいインテンションが多数あります。ブール式の場合はフリップ、バイナリ式の場合は否定再帰的に否定する反転です。

より良いインスペクション

go vetに対応するインスペクションのいくつかは、Go 1.10のゴーテストの前に実行されるはずです。 IDEは、fmt.Printfの呼び出しと無効なビルドタグの型の不一致を警告します。

Enterの自動フォーマット

キャレットがチェーン呼び出しまたは文字列リテラル上にあるときに Enter をクリックすると、IDEは結果のコードを自動的にフォーマットします。

オンザフライでインポートを最適化する

エディタは入力時に、未使用パッケージのインポート文をオンザフライで削除できるようになりました。これは、自分でインポートステートメントを削除する必要がないので便利です。このオプションはオンザフライでインポートを最適化すると呼ばれます。 設定 | Go | インポートで有効にすることができます。

迅速なドキュメントポップアップの再作成

クイック・ドキュメントポップアップでは、サンプル関数を認識し、ドキュメントの一部としてそれらを含めています。サンプル関数の名前をクリックすると、IDEはその関数のコードでスクラッチ・ファイルを開きます。

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

Goコード選択から作成されたスクラッチ・ファイルは、すべての適切なインポートステートメントを自動的に取得します。また、スクラッチファイル設定 | エディター | ファイルおよびコード・テンプレートでカスタマイズ可能な定義済みのテンプレートから作成されます。

より良いデバッガ機能

このアップデートでは、デバッガをローカルに実行中のプロセスにアタッチすることができます。これを行うには、メインメニューの実行をクリックし、ローカル・プロセスへ接続を選択してデバッグするプロセスを選択するだけです。

また、デバッグ時に、IDEはデバッガーツールウィンドウの監視式変数タブのシャドウ変数を区別することができます。

Dep統合

dep(英語)プロジェクトで作業し、未解決のインポートステートメントを持つファイルを開くと、IDEは確実に実行されるクイックフィックスを提供します。

新しいプロジェクトを作成するには、プロジェクトウィザードを開き、ダイアログの左側にある[Dep]タブに切り替えます。

より良いテストランナー

このアップデートでは、テストの階層構造がサポートされ、出力およびコンパイルエラーが個々のテストおよびパッケージに正しく属性付けされています。

複数のファイルを実行する

更新されたGo ビルド実行コンフィギュレーションで、複数のファイルを選択して実行できるようになりました。

その他のコーディング支援の改善

人生をはるかに簡単にするためのいくつかの改良点のリストがあります:

  • IDEが提供するコーディング支援は、Go 1.10のすべての機能を完全にサポートするように更新されました。
  • 変数の導入が使用する名前提案アルゴリズムは、コンテキストを認識し、名前の衝突を回避します。
  • 自動インポートのメカニズムがよりスマートになり、結果のコードがエラーなしでコンパイルされる場合にのみ適用されるようになりました。



  • グローバルシンボル用の名前変更リファクタリングと使用箇所の検索は、はるかに高速になりました。
  • IDEのパフォーマンスを向上させるために、このアップデートではプロジェクトのインデックススコープを制限することができます。 GOPATH全体のインデックス作成を避けることができます。新しいオプションは、ファイル | 設定 | Go | GOPATH | GOPATH全体を索引するプロジェクトウィザードの両方で利用できます。

Git

部分的なコミット

このアップデートでは、ファイル内の個々の変更を異なるチェンジリストに関連付け、それらを別々にコミットしてプッシュできるようになりました。 git add -pに類似しています。

コミットの変更を含めるには、変更のコミットダイアログの相違ペインのガターのチェックボックスを使用します。個々の変更をチェンジリスト全体に移動するには、エディタの左側にある変更マーカーを使用します。

より多くのリベースアクション

リベースをしているとき、GZ ブランチポップアップで新しいリベースを中断リベースを続行コミットをスキップアクションが利用できるようになりました。

JavaScriptとTypeScript

TypeScriptの改善

このアップデートでは、新しいTypeScript 2.7の機能がサポートされており、解決されていないプロパティのための新しいタイプガード付きサラウンドクイックフィックスが追加されています。

スマートなリネームリファクタリング

クラスの名前変更リファクタリングは、ファイルの名前を変更するようになりました。リファクタリングは、クラスのインテンションアクションとして利用可能になりました。

Prettier で再フォーマット

このアップデートでは、有力なコードフォーマッタであるPrettier(英語)が統合されています。よりきれいなパッケージをインストールしたら、新しいPrettier で再フォーマットアクションが利用可能になります。

Vueコンポーネントを抽出する

このアップデートでは、Vueテンプレートの任意のフラグメントを選択し、リファクタリング | 抽出または Alt+Enter経由で別のVueコンポーネントとして抽出するようにIDEに依頼します。

デプロイ

Docker

Docker Composeの実行コンフィギュレーションダイアログが改善され、複数の作成ファイルがサポートされ、実行するサービスを選択できるようになりました。

Dockerツールウィンドウには、実行コンフィギュレーションが設定されているプロジェクトだけでなく、プロジェクトファイル内で設定されているすべてのDocker Composeプロジェクトが表示されます。

Kubernetes

このアップデートでは、プラグイン(英語)を介したKubernetesの初期サポートが導入されました。サポートには、コード補完、インスペクション、リソースファイルのクイックフィックス、ナビゲーションの容易なアイコン、ポップアップドキュメント、ライブテンプレートが含まれます。