自定义语言自动完成

时间:2017-11-03 11:56:44

标签: visual-studio-code vscode-extensions

我在VS Code中创建了一种新语言,并尝试构建自动完成选项(类似于Javascript)。我已经看到自动完成(intellisense)建议来自es6.d.ts文件,我已复制和修改该文件以适合我的语言。

语言与Javascript几乎相同(就语法而言),我只需要用我的语言使用这个更新的ts文件。

如何设置自动完成以使用我的自定义语言和ts文件?

谢谢!

1 个答案:

答案 0 :(得分:0)

我建议你在这里查看lsp-sample:https://code.visualstudio.com/docs/extensions/example-language-server

添加onCompletion和可选的onCompletionResolve事件处理程序,如下所述: https://code.visualstudio.com/docs/extensions/example-language-server#_adding-additional-language-features

这是您可以使用委托给es6完成的地方。

但是你需要告诉VS Code你的语言。您的扩展程序需要通过将此部分添加到package.json来提供该语言。

"contributes": {
    "languages": [
  {
        "id": "xyz",        
        "extensions": [
          ".xyz"
        ]        
      }
    ],

实际上,这是一篇很棒的文章: https://dzone.com/articles/language-server-protocol-a-language-server-for-dot

这有帮助吗?