Visual Studio エディターでファイルを開くと、EnvDTE.Document.Languageプロパティを通じて、"CSharp"、"C/C++"、"HTML"、"JScript" などの文字列の結果が返され、言語を指定します。ファイル。ファイルが開かれていないとき (つまり、ProjectItem コンテキストから) に同じ言語情報にアクセスできるようにしたいと考えています。
EnvDTE.ProjectItem.FileCodeModel.Languageは有望に思えましたが、CSharp ファイルの結果しか得られませんでした。HTML、XAML などの情報はありませんでした。
ファイル拡張子に基づいて推測することもできますが、Visual Studio によって (おそらく言語サービスを通じて) 解釈された言語を取得できれば、はるかに堅牢になります。ドキュメントに保存されているため、情報は利用できるようですが、アクセスするための適切な API を見つけることができませんでした。
どんな助けや提案も大歓迎です。:)