質問: read-host "Enter を押して終了" } ``` ### 試したこと クラスが定義してあるスクリプトの読み込み 1. ドットソースによる読み込み 2. Invoke-Expressionを利用した読み込み (記載のスクリプトはこの方法) --追記-- 「Ctrl + J」押したときに出てくるクラスのテンプレート のクラス名だけ変えて確認しても 同様の状態になりました。 クラスの処理内容は関係ないようです。 ### 補足情報(FW/ツールのバージョンなど) メインのスクリプトにて メインのスクリプトと同じ親フォルダ内にある`Sys`フォルダを読み込むように 記述してあります。 その`Sys`フォルダにクラス定義をしているスクリプトを`ps1`で保存していただければ 実行できるはずです。 win 10 Name Value ---- ----- PSVersion 5.1.17134.228 PSEdition Desktop
回答: こんばんは。 VSCode PowerShell拡張での類似の例を見る限りドットソースやそれに類する行為でのインテリセンスの有効化は現状無理な様です。 * IntelliSense should work across dot-sourced file references いわんやPowerShell ISEをやというところでしょうか。 そして、あくまで推測ですが、関数だけインテリセンスが効くのは一度F8などでソースを実行すれば関数がセッション中でグローバルに定義済みになるため検索可能になるからと思います。 ただ後から追加されたクラスを検索対象にする方法は現在のPowerShellエンジンに無いのでしょう... User VoiceやGitHubでIssueを上げることはできますが、個人的には望みは薄いと思いますし、正直諦めるしかないと思います。