问题标签 [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 投票
3 回答
376 浏览

visual-studio-2015 - Stop intellisense session from closing prematurely

I've created a Visual Studio extension that provides intellisense for my domain specific language by inheriting from Microsoft.VisualStudio.Language.Intellisense.ICompletionSource.

This works ok, except that a valid character in the keywords of my language is underscore '_'.

When intellisense pops open you can start typing and the contents of the intellisense box is filtered to show just those items that start with what you've typed.

However, if the user types an underscore, that seems to be treated in a special way, instead of continuing to filter the list of available intellisense items, it commits the current item and ends the intellisense session.

Is there a way to stop this behaviour so that underscore can be treated the same as a regular alphanumeric characters?

0 投票
1 回答
372 浏览

visual-studio-code - vscode-languageserver-node 中的服务器端命令如何知道哪个是当前文档?

我正在为 DSL 开发 vscode 的语言扩展。该架构使用来自微软 github 的 vscode-languageserver-node 基础架构,带有可以评估 DSL 的 REST 后端。

我有一个名为 Evaluate 的命令,它应该将当前打开的文件文本发送到后端服务器进行评估。

我尝试将其建模为使用 执行的服务器端命令onExecuteCommand,但是在服务器处理程序中,实际上没有办法找出客户端中当前聚焦的源文件。至少我不能说。

我想我可以将它建模为客户端命令,然后sendRequest(ExecuteCommandRequest)使用包含我需要的信息的参数手动调用该客户端处理程序中的服务器,但我想知道我是否遗漏了一些东西。

0 投票
1 回答
532 浏览

visual-studio-2017 - Visual Studio 2017 是否使用语言服务器协议?

语言服务器协议是为 VS-Code(不是 Visual Studio IDE)创建的。提供各种 linting 和代码补全(intillisense)等语言服务是一个相当明智的想法。这绝不是第一次有这个想法,但它已经得到了大量语言的相当快速和广泛的支持。

Visual Studio 2017 使用它吗?我似乎找不到 2017 年的创建扩展文档。例如这里的 2015 文档

如果没有,是否有允许使用 LSP 资源的官方语言服务器插件?

0 投票
1 回答
247 浏览

javascript - JSDoc/JavaScript 语言服务:如何注释表达式?(如何施放)

我正在使用带有 JavaScript 语言服务的 Visual Studio Code,配置为:

而且我找不到投射东西的方法,比如这里:

错误信息

上面的示例应该在 Closure Compiler(未验证)中工作,如此所述。但我找不到 JavaScript 语言服务的等效语法。

我还尝试了以下更简单的语句,它也不起作用:

我在问如何进行强制转换,以及是否有人碰巧知道语法记录在哪里(或者,如果没有记录,它是如何工作的)。

我要问的甚至可能吗?

谢谢你的时间!

0 投票
0 回答
87 浏览

c# - SetLanguageServiceID 不为 VS 2015 中的 C# 和 VB 文件启用语法高亮

我正在研究这个例子并发现了问题:调用方法后语法突出显示不适用于 C# 文件

此问题在 VS 2015 中重现,在 VS 2013 中不重现。对于 VB 文件,我有同样的问题。我认为问题与 VS 2015 中用于 C#/VB 编辑器的新 Roslyn 引擎有关。如何为 C# 和 VB 文件启用语法突出显示?通常,我想创建一个简单的 VS 编辑器并将其 WPF 内容托管到我的 WPF 控件中。

我的代码中的InitializeEditor方法:

我在内容类型“CSharp”上替换了 _BufferFactory.TextContentType。我希望它能解决问题。但是新的内容类型并没有解决突出显示的问题。

0 投票
1 回答
302 浏览

typescript - monaco 编辑器是否支持使用 Typescript 语言服务插件?

我想创建一个 Typescript 语言服务插件(例如https://github.com/Microsoft/TypeScript/wiki/Writing-a-Language-Service-Plugin)并将这个插件与 Monaco 编辑器集成,在浏览器中运行.

是否可以将 Typescript 语言服务插件与 Monaco 集成?

0 投票
1 回答
105 浏览

typescript - 编辑器未选择 TypeScript 设置,但可在命令行/终端上使用

我正在尝试处理这个 TypeScript 项目。我写了一个tsconfig.json,当我尝试从命令行运行时,一切正常。

但是,当我尝试在 Visual Studio Code、Visual Studio、Sublime 或 WebStorm 中编辑项目文件时,这些设置似乎没有得到应用。如果有帮助,这里有一些特别之处tsconfig.json

  • 它使用strict标志。
  • 它使用noImplicitAnystrictNullChecks很好的措施。
  • 它使用路径映射(即pathsbaseUrl字段)。

我怎样才能得到这个工作?

0 投票
1 回答
826 浏览

typescript - vscode:远程服务器上的 TypeScript 语言服务

我目前处于我的 TypeScript 源代码位于远程服务器上的环境中。我可以通过 vscode 中的网络共享访问代码,但语言服务功能(智能感知、goto 定义等)的延迟很慢。

有没有办法在我的远程服务器上运行 TypeScript 语言服务器并让 vscode 连接到它?希望通过在代码实际存在的地方运行语言服务来提高性能。

0 投票
1 回答
70 浏览

javascript - VS 2017 Intellisense 用于使用 javascript 的闭包参数

我的 TypeScript 生成一个 .d.ts 文件。非常适合 TS 项目:

但是其他团队正在使用 JS,并希望使用我们的漂亮类型。他们在项目中有 .d.ts 文件。VS2017 在新的 JS 语言服务 (Salsa) 中检测到它。

我们可以使用提示(@jsdoc 魔术?)告诉 VS 内部 myHmi 是外部 myHmi 的扩展吗?

编辑:几天后报告为https://github.com/Microsoft/TypeScript/issues/21877

0 投票
1 回答
508 浏览

visual-studio-code - 远程执行语言服务器时vscode如何处理文件路径

我正在通过我正在开发的扩展程序在 vscode 上运行远程语言服务器。客户端和服务器都可以通过挂载的共享文件夹访问代码。问题是此文件夹位于客户端和服务器上的不同位置。(/home/username/myproject在客户端,/mnt/shared_folder/myproject在服务器上)

我的问题是我可以配置 vscode 语言客户端,以便它将路径从本地位置转换到远程位置,反之亦然?

如果我从带有工作区的项目中运行语言客户端,是否可以对其进行配置,使其发送相对于工作区根目录的文件 URI,而不是发送绝对文件路径?这样做我可以简单地使用共享文件夹挂载点的路径在服务器端重建文件 uri。

我听说过,Middlewares或者uriConverters但我不确定这是否是它们打算用于的目的。

谢谢!