言語サービス
RustRover は TypeScript、Vue、Astro、Svelte などのフレームワーク固有の言語サービスに依存して、自動補完、コード解析、エラーハイライトを提供します。
メモリ処理を構成する
RustRover は言語サービスとスムーズに統合するよう努めていますが、RustRover 自体ではなく言語サービスによって out-of-memory エラーが発生することがあります。
メモリ処理モード
言語サービスのメモリが不足した場合、RustRover はまずそれを再起動しようとします。 2 回連続で試行が失敗すると、言語サービスが停止し、RustRover はステータスバーの 言語サービス ウィジェットにエラーを示し、エラーメッセージを含むポップアップを表示します。
out-of-memory エラーを防止したり、シームレスに解決したりして言語サービスの安定した動作を確保するために、次の 2 つのモードでメモリ処理を構成できます。
メモリを自動的に増やす
このモードでは、 out-of-memory エラーが発生しそうなときに RustRover が自動的に 1000MB を追加し、バックグラウンドで言語サービスを再起動します。
RustRover はこのアプローチを静かに続行し、RAM の最大メモリ制限である 25% に達した時点で言語サービスが停止し、RustRover がエラーメッセージのポップアップを表示します。
状況を改善するための可能な手順については、 トラブルシューティング を参照してください。
メモリ制限を設定する
このモードでは、言語サービスが使用できる最大メモリを手動で指定します。 この制限に達するまで、RustRover は out-of-memory エラーごとに 1000MB の追加を提案します。
指定された制限に達すると、言語サービスが停止し、RustRover はエラーメッセージ付きのポップアップを表示します。
状況を改善するための可能な手順については、 トラブルシューティング を参照してください。
TypeScript 言語サービスのメモリ処理を構成する
Ctrl+Alt+S を押して設定を開き、 に移動します。
言語サービスメモリ 領域で、メモリ処理モードを選択します。
メモリを増やし、言語サービスを自動的に再起動するには、 利用可能な場合はメモリを自動的に増加する を選択します。
または、 メモリ制限を設定する を選択し、言語サービスで使用する最大メモリを指定します。
指定したメモリサイズが利用可能な RAM を超えた場合、RustRover はツールチップで適切な値を提案します。
トラブルシューティング
out-of-memory エラーは、言語サービスが割り当てられたメモリ制限を超え、ワークロードを処理できなくなった場合に発生します。 これは通常、以下の理由で発生します。
現在作業中のプロジェクトには、多数のファイルと依存関係が含まれています。
IDE 設定で指定された最大メモリ制限は、言語サービスには不十分です。
メモリ割り当てを増やす
Ctrl+Alt+S を押して設定を開き、 に移動します。
メモリ制限を設定する オプションを選択してください。
制限を段階的に増やしてください。例えば 4GB から 6GB、8GB へと増やします。 改善状況を確認してください。
プロジェクトの範囲を制限する
過剰なファイルや依存関係を持つ大規模プロジェクトは、言語サービスにオーバーロードをかける可能性があります。 大規模なコードベースでの負荷を軽減するには、TypeScript チームが提供する パフォーマンスガイド(英語)の推奨事項、特に プロジェクト参照の使用(英語)と tsconfig.json または jsconfig.json の設定(英語)のセクションに従ってください。
アップグレードまたはダウングレード
言語サービスの最新バージョンを使用していることを確認してください。
RustRover には、言語サービスのバンドルバージョンが同梱されています。 ただし、言語サービスの新しいバージョンにはパフォーマンスの向上が含まれていることがよくあります。 そのため、言語サービスは常に最新の状態に保つことをおすすめします。
言語サービスの最新バージョンをインストールするには、埋め込まれた ターミナル (Alt+F12) を開き、使用している言語サービスとパッケージマネージャーに応じて次のいずれかを入力します。
npm install --save-dev typescriptまたは
pnpm add --save-dev typescriptまたは
yarn add --dev typescriptnpm install --save-dev @vue/language-serverまたは
pnpm add --save-dev @vue/language-serverまたは
yarn add --dev @vue/language-servernpm install --save-dev svelte-language-server typescript-svelte-pluginまたは
pnpm add --save-dev svelte-language-server typescript-svelte-pluginまたは
yarn add --dev svelte-language-server typescript-svelte-pluginnpm install --save-dev @astrojs/language-serverまたは
pnpm add --save-dev @astrojs/language-serverまたは
yarn add --dev @astrojs/language-server言語サービスの更新後に問題が発生した場合は、問題が更新によって発生したかどうかを確認するために、以前のバージョンにダウングレードすることを検討してください。
RustRover 課題追跡システムに問題を提出する
問題が解決しない場合は、 RustRover 課題トラッカーに課題を報告し、プロジェクトを添付してください。 これにより、問題をより効率的に再現し、調査することができます。