GoLand 2021.2 では Go モジュール 向けの新機能と新しいコード整形オプションを導入し、Go 1.17 の機能をサポートしています。 また、新しい //go:build
構文の適切な使用を支援するものを含め、複数の新しいクイックフィックスを追加しています。
コミットを GPG キーで署名する機能など、バージョン管理機能に対する複数の改善を行っています。 ウェブ開発者向けにはコードを保存する際にブラウザー内のページを自動的にリロードする機能のほか、MongoDB のフィールドと演算子に対応した補完機能を追加しました。
GoLand の新機能をより対話的な方法で確認したいですか? ウエルカム画面から GoLand 2021.2 の新機能チュートリアルをご利用ください。 新しい Onboarding Tour もご覧ください。 GoLand を初めてお使いの方がすぐに使い方を習得するのに役立ちます。
GoLand 2021.2 では、go.mod
を編集した際に IDE が go list
を呼び出す動作を管理し、 go.mod
ファイルの変更を手動でロードできます。
そのためには Settings | Build, Execution, Deployment | Build Tools を開き、External changes オプションを選択してください。 すると、GoLand は IDE 内でファイルを編集した際に go list
を自動的に呼び出さなくなります。
または、編集完了後に表示されている Load Go modules Changes アイコンをクリックして、変更を手動でロードすることもできます。
Reload project after changes in the build scripts チェックボックスをオフにすると、IDE 内および外部での変更の両方に対して Load Go modules Changes アイコンが表示されます。
go.mod
ファイルで指定されているものよりも新しいバージョンの Go の機能を使用している場合、GoLand は警告を表示します。 数値リテラルと //go:embed
ステートメントの場合は、go.mod
で指定されている Go のバージョンを変更するクイックフィックスを使用できます。
ウェルカム画面で Go を選択すると、Go モジュールプロジェクトになります。 また、GOPATH ベースのプロジェクトの名前を Go(GOPATH)に変更しました。
replace
ディレクティブの未使用依存関係が灰色でハイライトされるようになりました。 これにより、エラーと区別しやすくなります。 灰色の行にマウスを移動すると、“Unused dependency” のメッセージが表示されます。
未使用モジュールをダウンロードする場合は、Alt+Enter を押してから Download all modules to the module cache オプションを選択してください。 個別のモジュールをダウンロードすることもできます。
このリリースでは、Run gofmt on code reformat オプションを導入しています。 GoLand は独自のフォーマッターを備えていますが、gofmt
に対しても、より簡単に利用できるようにするために導入されたオプションです。
このオプションが有効な場合、両方のフォーマッターを Ctrl+Alt+L のショートカットで呼び出し、GoLand のフォーマッターに続けて gofmt
を実行させることができます。
このオプションはデフォルトで有効になっており、Settings | Editor | Code Style | Go で有効/無効を切り替えることができます。
GoLand には、旧来の // +build
制約と新しい //go:build
構文の両方を適切に使用するのに役立ついくつかの新しいクイックフィックスが用意されています。
まず、//go:build
行を新しい構文の要件に従ってファイル先頭に移動するクイックフィックスがあります。
また、Go 1.16 では旧来の構文を使用することも、新旧両方の構文を使用することもできるため、//go:build
行に加えて // +build
行を生成するクイックフィックスもあります。
“C” パッケージをインポートしたにもかかわらず、プロジェクトの設定で cgo のサポートを有効にし忘れている場合、GoLand は Enable cgo support クイックフィックスを含むバナーを表示します。
また、カーソルをパッケージ名の先頭に移動する Navigate to cgo import オプションもあります。 このオプションは、大規模なプロジェクトで import ステートメントを探すのに役立ちます。
アプリケーションをデバッグする際にも Preview モードを使用できるようになりました。 このモードでは複数のファイルを 1 つのタブで次々と開くことができるため、複数のタブでファイルが開かれてエディターが雑然とするのを防ぐことができます。
デバッグ中に Preview モードを使用できるようにするには、Settings | Editor | General | Editor Tabs を開いて Enable preview tab チェックボックスをオンにしてください。
Go 1.17 ではスライスを配列ポインターに変換できます。 GoLand はこの変換をエラー扱いにしません。 Go 1.17 の機能を試すには、Settings | Go で GOROOT を "Go 1.17" に変更してください。
このリリースからは、Navigate to implementations を使用して internal
フォルダーにあるインターフェースの実装に移動できます。 ガターをクリックすると、実装に移動します。 その実装からインターフェースに戻ることもできます。
GoLand 2021.2 ではコミットを GPG キーで署名し、保護することができます。 この機能は、Settings | Version Control | Git で有効にできます。
If this is your first time using a GPG key, you’ll first need to configure it. GPG キーを事前に構成済みの場合は、ドロップダウンリストから選択できます。
コミット前チェックで Run tests および Analyze code オプションを使用できるようになりました。 そのためには Settings | Version Control | Commit | Before commit を開くか、Commit ビューの歯車アイコンをクリックしてください。
なお、Run tests オプションを使用できるのは、Settings | Version Control | Commit で Use non-modal commit interface チェックボックスをオンにしている場合だけです。
バージョン管理システムに依存することなく変更を追跡できる Local History メニューに新しい検索フィールドを追加しました。 このフィールドは、Local History のリビジョンから目的のテキストをすばやく検索するのに役立ちます。 このフィールドを試すには、ファイルを右クリックしてから Local History | Show History を開いてください。
ただし、Local History を VCS の代わりに使用することはできません。 JetBrains は変更の追跡には VCS を基本的に使用し、Local History は最後の頼みの綱として使用することをお勧めします。
コミットされていないすべての変更を格納するノードに新しい名前を付けました。 このノードは Default Changelist と呼ばれていましたが、今後は Changes と呼ばれることになります。 この変更は、デフォルトですべての新規プロジェクトに適用されます。 また、Git 操作によって changelists の作成処理が自動的に呼び出されることはなくなりました。
Project ビューで接続中のプロジェクトの表示方法を変更しました。 従来、接続中のプロジェクトは既存プロジェクトの子ディレクトリとして表示されていました。 接続中のプロジェクトが Project ビューに個々のディレクトリとして表示されるようになりました。
新しい Advanced Settings ノードを Settings に追加しました。 この設定には Distraction-free モードの左マージンを構成するオプションなど、追加の構成オプションが含まれています。
また、Settings には新しいナビゲーションオプションが追加されています。 今後はウィンドウ右上にある矢印を使用して、セクション間を前後に移動できます。
GoLand は入手可能な新バージョンがある場合に通知し、IDE から新バージョンに直接アップデートするオプションを提供します。 この機能を使用するには、JetBrains Toolbox App バージョン 1.20.8804 以降が必要です。
Settings | Tools | Terminal を開き、組み込みのカーソル形状を下線または縦線に変更できるようになりました。
Terminal 設定にも変更点があります。 今回、Use Option as Meta key 設定を新たにサポートしています。 Meta キーを他のキーと組み合わせて押すと、他のキーの通常動作が一時的に変更されます。 Meta キーはターミナルを多用する場合に便利です。
ウェルカム画面のプロジェクトリストで使用されているプロジェクトアイコンをカスタマイズできるダイアログを整備しました。 カスタムアイコンをアップロードするには、プロジェクトを右クリックし、表示されるコンテキストメニューから Change project icon を選択するだけです。
GoLand で HTML / CSS / JavaScript ファイルの編集と保存を行った際に、ブラウザー内のページを更新できるようになりました。
保存時のページリロードは、デフォルトでオンになっています。 この動作は、Settings | Build, Execution, Deployment | Debugger | Built-in Server でオンオフできます。
リファクタリングが React フックの useState
値と関数に対して機能するようになりました。 状態値にキャレットを配置し、Shift+F6 で Rename リファクタリングを呼び出すか、右クリックで表示されるコンテキストメニューから Refactor | Rename に移動するだけです。
GoLand では ES6 シンボルを補完する際に欠落している import
ステートメントを追加できます。これと同じ機能を CommonJS モジュールで使用できるようになりました。require()
インポートがコード補完時に挿入されます。
コード補完が private npm パッケージに対して機能するようになりました。 GoLand では、public パッケージと同様に、パッケージの最新バージョンに関する情報を参照できます。
コード補完が MongoDB コンソールでフィールド、ネストしたフィールド、集約式内のフィールドに対して機能するようになりました。 また、クエリ演算子と射影演算子、更新演算子、集約ステージに対しても機能します。
考えられるすべての保存時のアクションを Settings | Tools | Actions on Save に集約し、そこで構成できるようにしました。有効にしたいアクションの横にあるチェックボックスをオンにするだけです。
任意のアクションについて、設定をより細かく調整することもできます。 そのためには対象のアクションにマウスを移動した後、構成リンクをクリックし、表示される関連設定のページでアクションを微調整してください。
GoLand は、最後の更新から 180 日超が経過したキャッシュおよびログのディレクトリを自動的にクリーンアップします。 システムの設定やプラグインのディレクトリがこの処理に影響されることはありません。
ログとキャッシュのクリーンアップは、Help | Delete Leftover IDE Directories… アクションを使用して手動で実行できます。
Go ファイルのインテリジェントなスペルおよび文法チェックをデフォルトで有効にしました。 これらのチェックは、IDE にバンドルされている Grazie プラグインによって実現しています。
設定を調整するには、Settings | Editor | Natural Languages | Grammar を開いてください。
GoLand の UI が中国語、韓国語、および日本語に完全にローカライズされました。 このローカライズはバンドル対象外の言語パックプラグインとして提供されており、GoLand へ簡単にインストールできます。
GoLand が Code With Me セッション中の同僚に提示するコード補完候補を追跡できるようになりました。 この機能を使用するには、Following モードで作業する必要があります。