コード補完
基本コード補完は、可視性スコープ内で型、インターフェース、メソッド、キーワードの名前を補完するのに役立ちます。
GoLand はコンテキストを分析し、現在のキャレット位置から到達可能な選択肢を提案します。候補にはライブテンプレートも含まれます。補完機能は英語以外のキーボードレイアウトでも利用できます。
基本補完を呼び出す
デフォルトでは、GoLand は入力時に自動的にコード補完ポップアップを表示します。
あるいは、Ctrl+Space を押すか、メインメニューからを選択することもできます。

コード補完はカスタムファイルタイプで使用できます。ただし、GoLand はそのようなファイルの構造を認識せず、現在のコンテキストに適切かどうかに関係なくオプションを提案します。
リストからの提案を受け入れる
Enter を押すか、該当するリストアイテムをダブルクリックして、キャレットの左側に挿入します。
Tab を押して、キャレットから右にある文字を置き換えます。
Ctrl+Shift+Enter を使用して、現在のコード構成を構文上正しいものにします(括弧のバランス、欠落している中括弧とセミコロンの追加など)。
特定のキーとカスタム文字を使用して、選択した補完候補を承認します。これらの機能を有効にするには、エディター | 一般 | コード補完の設定ページ(Ctrl+Alt+S)に移動し、以下の操作を行ってください。
特定のキーを使用するには、スペース、ドット、その他のコンテキスト依存キーを押して選択した候補を挿入するチェックボックスをオンにします。これらのキーは、言語、コンテキストなどによって異なります。
カスタム文字も使用するには、補完を受け入れるための追加文字フィールドに文字を入力します。
関数補完を呼び出す
特定の型の値に適した関数を表示して補完するには、Ctrl を押したまま Space を 2 回押します。
例: 文字列型の
t変数があります。t.と入力し、Ctrl を押しながら Space を 2 回押すと、string型を最初の引数として受け入れる関数の一覧が表示されます。
機械学習による補完ランキング
GoLand を使用すると、他のユーザーが同様の状況で行った選択に基づいて、補完の提案に優先順位を付けることができます。
ML 補完メカニズムは新しい要素を追加するのではなく、コードから取得した要素を順序付けます。データはどこにも公開されず、ローカルで収集されます。
ML 補完ランキングを有効にする
Ctrl+Alt+S を押して設定を開き、エディター | 一般 | コード補完を選択します。
機械学習支援による補完で、機械学習に基づいてコード補完の候補を並び替えオプションを有効にし、ML 補完を使用する言語を選択します。

関連性マーカーを有効にする
Ctrl+Alt+S を押して設定を開き、エディター | 一般 | コード補完を選択します。
次のオプションを有効にします。
補完ポップアップで順位の変更箇所に印を付ける :
および
アイコンを使用して、提案の関連性が増加しているか減少しているかを示し、その結果、提案が候補リストを上下に移動したことを示します。
補完ポップアップで最も関連性の高い項目に印を付ける :
アイコンを使用して、リストで最も適切な提案を示します。

コード補完設定の構成
コード補完オプションを構成するには、エディター | 一般 | コード補完設定ページ Ctrl+Alt+S に移動します。
次の設定を選択できます。
項目 | 説明 | |
|---|---|---|
大 / 小文字を区別する | 補完候補で大文字と小文字を考慮するかどうかを選択します。最初の文字の大文字と小文字を一致させるか、すべての文字を一致させるかを選択します。 | |
単一の候補を自動的に挿入 | 基本的な型一致補完とスマート型一致補完の候補が 1 つしかない場合は、コードを自動的に補完します。 | |
候補をアルファベット順に並べ替え | 候補リスト内の項目を関連性によって並べ替えるのではなく、アルファベット順に並べ替える場合に選択します。 この動作は、候補リストの | |
入力時に候補を表示する | 補完を明示的に呼び出すことなく、候補リストを自動的に呼び出す場合に選択します。このオプションはデフォルトで有効になっています。 | |
スペース、ドット、その他のコンテキスト依存キーを押して選択した候補を挿入する | 選択した候補を挿入する場合は、言語、コンテキストなどに依存する特定のキーを入力して選択します。 | |
ドキュメントのポップアップ表示までの時間 | 候補リスト内の各項目に対して、ルックアップリストで現在ハイライトされているクラス、メソッド、フィールドのドキュメントを含むポップアップを自動的に表示します。 このオプションが無効になっている場合は、Ctrl+Q を押すと要素のドキュメントが表示されます。 右側のフィールドで、ポップアップが表示されるまでの遅延(ミリ秒)を指定します。 | |
機械学習支援による補完 | ||
機械学習に基づいてコード補完の候補を並び替え | 機械学習モデルを使用して、最も適切な項目を候補リストの上位に表示したい場合は、このオプションを選択します。機械学習に基づく提案を有効にする言語を選択してください。 | |
補完ポップアップで順位の変更箇所に印を付ける | | |
補完ポップアップで最も関連性の高い項目に印を付ける | | |
補完オプションを設定する
Ctrl+Alt+S を押して設定を開き、を選択します。
候補リストを自動的に表示するには、入力時に候補を表示するチェックボックスを選択します。チェックボックスがオフの場合は、基本補完の場合は Ctrl+Space を押し、型一致補完の場合は Ctrl+Shift+Space を押して、コード補完を明示的に呼び出す必要があります。
オプションが 1 つしかない場合は、自動的に提案を挿入するように選択することもできます。単一の候補を自動的に挿入の補完タイプを選択します。
候補を関連性で並べ替えるのではなく、アルファベット順に並べ替えるには、候補をアルファベット順に並べ替えチェックボックスをオンにします。
この動作は、候補リストの
をクリックして名前で並べ替えオプションを切り替えることにより、いつでも変更できます。
候補リストをスクロールすると、その項目ごとにドキュメントのポップアップが自動的に表示されるようにするには、ドキュメントのポップアップを表示するオプションを選択します。右側のフィールドで、ポップアップが表示されるまでの遅延 (ミリ秒単位) を指定します。
補完のヒントとテクニック
コード番号を入力して HTTP 定数を自動補完する
httpなどのインポートされたパッケージ名を指定した後、404と入力して値をhttp.StatusNotFoundに自動補完できます。
候補リストを絞り込む
単語の一部(途中の文字でも可)を入力するか、ドット区切りの後にコード補完を呼び出すことによって、候補リストを絞り込みます。
GoLand は、入力した文字の位置に関係なく、入力した文字を含む候補を表示します。これにより、ワイルドカードの使用は不要になります。

CamelCase または snake_case 名の場合は、最初の文字のみを入力してください。GoLand は自動的に頭文字を認識して照合します。
リファレンスを表示する
コード階層を表示する
候補リストからエントリを選択すると、コード階層を表示できます。
Ctrl+H : 型階層の表示
Ctrl+Shift+H : メソッドの階層を表示します。
構造体フィールドを埋める
新しい構造体を作成すると、その構造体のフィールド名を自動的に生成できます。このアクションは、汎用構造体に対して機能します。
すべてのフィールドを埋めるインテンションアクションを呼び出すと、IDE は自動生成された XXX_ で始まるプロトコルバッファフィールドを無視します。これらのフィールドは、補完を 2 回目に呼び出した後にのみ表示されます。
構造体名の入力を開始し、補完リストから選択します。
構造体の中括弧の間にキャレットを置きます。
Ctrl+Space を押します。または、Alt+Enter を押します。
以下のオプションから選択してください。
すべてのフィールドを埋める : 現在の構造体に属するすべてのフィールドの値を生成します。
すべてのフィールドを再帰的に埋める : 現在の構造体型に属するすべてのフィールドと、他の構造体型へのすべてのポインターの値を再帰的に生成します。
記入欄 : 追加するフィールドを選択できるフィールドの選択ダイアログを表示します。再帰を選択して、関連するすべての構造体からフィールドを解析します。複数行を強制するチェックボックスをオフにして、すべてのフィールドを 1 行で表示します。フィールドの選択ダイアログで、Ctrl を押して、追加するフィールドをクリックします。
OK をクリックします。

日付と時刻をフォーマットする
タイムパッケージ(英語)は、
Time.Formatおよびtime.Parseで使用できる事前定義されたレイアウトを使用します。レイアウトで使用される参照時間は、特定の時間Mon Jan 2 15:04:05 MST 2006です。つまり、独自のフォーマットを定義するには、基準時間がどのようにフォーマットされているかを書き留める必要があります。GoLand では、Ctrl+Space を押すと、ISO-8601 の時間要素とデータ要素のプレースホルダーが表示されます。コード補完は、文字列リテラルの外側の標準時間レイアウトも提案します。
トラブルシューティング
コード補完が機能しない場合は、次のいずれかの理由が考えられます。
省電力モードがオンです()。これをオンにすると、エラーハイライト、オンザフライインスペクション、コード補完などのバックグラウンド操作を排除してラップトップの電力消費を最小限に抑えられます。
補完候補リストに表示する型と関数を含むファイルは、プレーンテキストファイルとしてマークされます。
補完候補リストに表示する関数を含む外部ライブラリは、依存関係またはグローバルライブラリとして追加されません。
補完オプションの収集に時間がかかりすぎる場合、コード補完ポップアップは自動的に表示されないことがあります。例: コンピューターが別のタスクでビジー状態の場合。この場合でも、Ctrl+Space を介して補完ポップアップを手動でアクティブ化できます。
関連ページ:
ライブテンプレート
ライブテンプレートを使用して、ループ、条件、宣言、print ステートメントなどの一般的な構造をコードに挿入します。コードスニペットを展開するには、対応するテンプレートの省略形を入力してを押します。を押し続けると、テンプレート内の 1 つの変数から次の変数に移動します。を押して、前の変数に移動します。ライブテンプレートを挿入するテンプレートを展開する場所にキャレットを置きます。テンプレートの省略形を入力し、呼び出しキーを押します(通常はデフォルトで)。または、メニューでをクリックして候
定義と型定義
GoLand では、構造体、インターフェース、メソッド、関数などのシンボルがプロジェクトのどこでどのように定義されているかを確認できます。この目的のために、IDE はクイック定義ポップアップを備えています。キャレットでシンボルの定義を表示エディター内のシンボルにキャレットを置き、を押します (またはメインメニューでクリックします)。あるいは、キーを押したまま、任意のシンボルの上にマウスを置きます。GoLand はシンボルをリンクとして表示し、その定義をツールチップに表示します。このリンクを...
ブックマーク
大規模なプロジェクトで作業する場合、ファイルやフォルダーの検索には時間がかかる場合があります。そのような場合、GoLand はブックマークを備えています。必要なコード行をブックマークして、見つけやすくすることができます。他のプロジェクトアイテムよりも頻繁に必要なファイルやフォルダーをブックマークすることもできます。すべてのブックマークはブックマークツールウィンドウのリストにグループ化されており、メインメニューからを選択するか、を押すと開くことができます。ツールウィンドウには、コードにブレークポ...
行全体コード補完
行全体コード補完機能は、ローカルで実行されるディープラーニングモデルを用いて、コード行全体を提案します。GoLand ではすぐに利用可能で、追加のライセンスは必要ありません。Go、JavaScript/TypeScript、CSS コードを入力すると、エディターに候補が表示されます。提案全体を受け入れるには、を押します。または、メインメニューのに移動するか、別のショートカットを構成します。提案を単語ごとに受け入れるには、を押すか、メインメニューでに移動します。提案を 1 行ずつ受け入れるには...
