問題タブ [languageservice]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
310 参照

.net - Visual Studio 2008 & 既存のファイル拡張子の LanguageService をオーバーライドする

JavaScript 言語用の簡単な LanguageService を作成します。ターゲット IDE は Visual Studio 2008 です。LanguageService for .js 拡張ファイル (JavaScript 言語の既定の拡張機能) を実行したいと考えています。しかし、この拡張機能では、LanguageService が機能しません。拡張機能 .jsp (VS IDE でサポートされていない拡張機能である可能性があります) の LanguageService を実行すると、LanguageService は正常に動作します。

私の質問: JavaScript 言語の既存の LanguageService をオーバーライドする方法は? JS のデフォルトの LanguageService を無効にするには?

心から、

ミハイロ

0 投票する
2 に答える
2805 参照

visual-studio-2010 - Visual Studio 2010の拡張性、MPF、および言語サービス

Visual Studio 2010 RCを拡張して、カスタムプログラミング言語を使用できるようにしようとしています。

私が試した最初の2つのことは、シンタックスハイライト/インテリセンス機能(PDC09の「Ook!」サンプルのおかげで簡単に実行できます)と新しいプロジェクトテンプレートを作成する可能性(つまり、*。myprojファイルを開くことができる)です。 。

この2番目のタスクでは、簡単なチュートリアルやサンプルが見つかりません。ほとんどのサンプルは、Visual Studio 2008(IronPython統合の場合)またはVS2003用です。VS2010で利用可能ないくつかのサンプルは、機能しないか(MPFProjを含む)、コンパイルされないため、理解するのが困難です。

Visual Studio 2010内でカスタム言語のテンプレートを統合する方法を示す、MPFProjまたはスタンドアロンソリューションを使用したわかりやすいサンプルはありますか?

0 投票する
1 に答える
814 参照

c# - 言語サービスを使用する VS2010 拡張機能を作成する方法

拡張機能の作成は Vs2010 ではるかに簡単になりましたが、これはすべてに当てはまるわけではないようです...

私の目的: STATIC クラス ITALIC のメソッド呼び出しとプロパティの使用を行いたいと思っています。(Eclipse や Java と同じように)

この情報については、C# 言語サービスと話す必要があると思いますが、「言語サービス」を検索すると、既存のものの使用方法ではなく、作成方法に関する結果が得られます...

この質問をもう少し一般化するには、VSX でコードを使用するためのコードのプロパティ (静的/可視性など) に関する情報を取得するにはどうすればよいですか?

0 投票する
1 に答える
802 参照

c# - 言語サービス(MPF)と​​エディター拡張機能(MEF)を統合する

Visual Studio 2010でlanguageService(MPF)をエディター拡張機能(MEF)と統合する正しい方法はありますか?

メンバーの補完、構文の強調表示、クイック情報などをどこに実装しますか?

利用可能な例はありますか?

ありがとう!

0 投票する
2 に答える
1269 参照

visual-studio - カスタム Visual Studio 言語サービスのインストール

非常に役立つ記事「Writing Your First Visual Studio Language Service」の指示​​に従って、ソフトウェア スタジオの内部スクリプト言語用に新しい Visual Studio 言語サービスを作成しました。文法はうまく機能し、いくつかの単純な goto ケースを実行して実行し、テキストの色付けを行いました。Irony GrammarExplorer と Visual Studio Experimental Hive の両方でテストを行いました。ビジュアル スタジオで通常どおり使用し、初期のテストとフィードバックのために他の数人のプログラマーに展開する準備ができていると感じています。

問題は、言語サービスのインストール方法がわからないことです。実験的なハイブで動作するこの素敵な小さな DLL がありますが、Visual Studio を起動するたびに実行する方法がわかりません。私はインターネット全体を見てきましたが、特定のステップがどこを見ても見過ごされていることがわかりました。多分私は盲目なのかもしれませんし、私が思っているよりずっと簡単なのかもしれませんが、誰かが私の言語サービスをインストールする方法について詳細な手順を教えてくれたら本当にありがたいです.

前もって感謝します!

0 投票する
7 に答える
26333 参照

c# - VisualStudioで使用する新しい言語を作成する方法

新しいテンプレート言語を作成したいのですが、VisualStudioでそれを「サポート」したいと思います。私が知る必要があるのは:

  1. 新しい言語を解析するにはどうすればよいですか?
    新しいテンプレート言語のコードがある場合、それをHTMLに変換するにはどうすればよいですか?現在、正規表現を使用してトークンごとに解析していますが、言語がより複雑になり、エラーチェックが行われないため、これがうまくスケーリングされるとは思いません。ANTLRのことは聞いたことがありますが、使用したことはありません。それはこの仕事に適したツールでしょうか、それとももっと簡単なものがあるのでしょうか?理想的には、他の言語と同じように、構文エラーをできるだけ多くの情報(行番号、エラーの種類)とともにエラーウィンドウに送信したいと思います。
  2. Visual Studioの新しいファイルタイプを作成するにはどうすればよいですか?
  3. 構文を強調表示するにはどうすればよいですか?
    手順1で作成したものと同じパーサーを使用できますか、それともまったく異なるものですか?
  4. Intellisenseを取得するにはどうすればよいですか?

パーサーをC#で記述したいと思います。

0 投票する
1 に答える
412 参照

visual-studio - ファイルパスからのIVsTextLinesの取得

私は、自分のスタジオ独自のスクリプト言語用にVisualStudio2008の基本的なLanguageService拡張機能を作成しました。これは完全に正常に機能し、スクリプト定義と呼び出しを追跡してgoto定義機能を可能にする基本的なシンボルテーブルを実装しました。

私が遭遇した問題は、現在アクティブなビューを解析する方法しか知らないことです。ユーザーがまだファイルで定義されているスクリプトの定義に移動できるように、ソリューション全体のコンテンツをスキャンしたいと思います。開いて解析しました。ソリューション内のすべてのファイルのリストを生成する方法を理解しましたが、新しいMicrosoft.VisualStudio.Packageを作成する必要があります。Microsoft.VisualStudio.TextManager.Interopを必要とするソース。IVsTextLinesと私は、自分が持っているファイルに基づいて新しいファイルを作成する方法がわかりません。

たぶん私は問題について間違った方法で進んでいて、誰かがファイルをLanguageServiceによって解析させるためのより良い方法に私を向けることができます。

よろしく、コリン

0 投票する
1 に答える
1124 参照

c# - マネージドパッケージフレームワークを使用した言語サービスの実装

ウォークスルー(http://msdn.microsoft.com/en-us/library/bb166360.aspx)にリストされている手順に従って、LanguageServiceを実装および登録しましたが、動作させることができません。

パッケージが正しく読み込まれ、機能するメニュー項目とオプションページを追加できますが、サービスに登録されているファイルを開くことができません。デバッガーを接続すると、VSPackageが構築、ロードされ、FDoIdleメソッドが2回呼び出されていることがわかります。その後、実験的なVisual Studioセッションが雑草になり、無限ループでスタックしているように見えます。.txtファイルをファイルの種類として保存しようとすると、ファイルは正しく保存されますが、Visual Studioに読み込まれず、オブジェクトnull例外が発生します。

この質問で言及されている私の問題を見ることができます:Visual Studio 2010のカラーライザー、インテリセンスなど。どこから始めれば!

解決策は、Managed Package Frameworkを使用せず、代わりにManageExtensibilityFrameworkを使用することのようです。それは素晴らしいことですが、MPFLanguageServiceの実装で何が間違っているのかを本当に知りたいです。

MPFを使用してLanguageServiceを正常に作成した人はいますか?誰かが私を実用的な例やウォークスルーに導くことができますか?

問題が解決しました!:

さらにデバッグを行ったところ、実験的なVisualStudioインスタンスが次のコマンドを繰り返し呼び出してスタックしていることに気付きました。

Microsoft.VisualStudio.Editor.Implementation.VsFontsAndColorsInformation.TryGetIndexForNativeItem(文字列名、IVsColorTable colorTable、Int32&colorTableIndex)

思い切って、ProvideLanguageServiceAttributeでRequestStockColorsパラメーターをtrueに指定しました。これで、ファイルの種類を開くことができます。私のシンプルなスキャナーには、構文の色付けも機能しています。

0 投票する
1 に答える
945 参照

visual-studio - vsx でドキュメントを開かずに ProjectItem 言語タイプを特定する方法は?

Visual Studio エディターでファイルを開くと、EnvDTE.Document.Languageプロパティを通じて、"CSharp"、"C/C++"、"HTML"、"JScript" などの文字列の結果が返され、言語を指定します。ファイル。ファイルが開かれていないとき (つまり、ProjectItem コンテキストから) に同じ言語情報にアクセスできるようにしたいと考えています。

EnvDTE.ProjectItem.FileCodeModel.Languageは有望に思えましたが、CSharp ファイルの結果しか得られませんでした。HTML、XAML などの情報はありませんでした。

ファイル拡張子に基づいて推測することもできますが、Visual Studio によって (おそらく言語サービスを通じて) 解釈された言語を取得できれば、はるかに堅牢になります。ドキュメントに保存されているため、情報は利用できるようですが、アクセスするための適切な API を見つけることができませんでした。

どんな助けや提案も大歓迎です。:)

0 投票する
2 に答える
230 参照

visual-studio-2008 - Visual Studio 2008:言語サービスアドインが機能しないのはなぜですか?(「申し訳ありませんが、解析は回復できませんでした」)

Visual Studio 2008 SP1で独自の言語サービスを作成しようとしていますが、プログラム(Visual Studio Experimental Hiveを起動します)を実行してソースファイルを開こうとすると、次のエラーが発生します。

パッケージ'MicrosoftVisualStudio CodeTools PropertyPage Package'が正しく読み込まれませんでした(GUID = {072DD0C6-AE1E-4ED6-A0BF-B99D5B68D29E})。

それを修正する方法はありますか?(私はすでにVSをアンインストールして再インストールしようとしましたが、機能しませんでした。:()


アップデート

これは、Spec#のアンインストールが不十分だったことが原因であることがわかりました。私はそれをクリーンアップしましたが、問題は私の言語サービスが実際には何も強調していないということです...これが原因であると想像しましたが、それでもエラーが発生し、それがどのように無関係であったかを見て、私はしません問題が何であるかを知っています。

デフォルトのトークンでデフォルトのレクサー/パーサーファイルを使用しているので、ファイルタイプに何らかの強調表示があると思いますが、何も考えていませんか?