Skip to content

Help with writing, running, and integrating a custom language server #656

@HalfMillennium

Description

@HalfMillennium

Description

I'm trying to integrate my SQL language server into jupyter-lsp, and the extension seems to recognize the LSP that I've configured. However, something about how I've set things up causes the extension to hang on "Connecting..." when I load JupyterLab, and I receive a Permission denied error in my console. I used the following configuration code for my LSP, which is free of schema errors:

{
  "LanguageServerManager": {
    "language_servers": {
      "elastic-lsp": {
        "version": 2,
        "argv": ["/Users/garrettc/src/elastic-lsp/vscode-extension-samples/elastic-lsp", "--stdio"],
        "languages": ["sql"],
        "mime_types": ["text/sql", "text/x-sql"]
      }
    }
  }
}

Could this be an issue with file path? I pointed to the root of my LSP, but should I be pointing at a specific server file?

Reproduce

  1. Install my elastic-lsp with jlpm add --dev elastic-lsp
  2. Restart JLab and wait for the error to appear in the console.

Context

  • Operating System and version: macOS Big Sur
  • Browser and version: Safari 14.1
  • JupyterLab version: 3.0.16
  • jupyter-lsp version:
  • jupyterlab-lsp version: 3.8.0
  • Language Server: elastic-lsp
  • Language Server version: 1.0.14
  • Language Server installed with: npm
  • Language Server Spec
# jupyter_server_config.json
{
  "LanguageServerManager": {
    "language_servers": {
      "elastic-lsp": {
        "version": 2,
        "argv": ["/Users/garrettc/src/elastic-lsp/vscode-extension-samples/elastic-lsp", "--stdio"],
        "languages": ["sql"],
        "mime_types": ["text/sql", "text/x-sql"]
      }
    }
  }
}
Troubleshoot Output
Paste the output from running `jupyter troubleshoot` from the command line here.
You may want to sanitize the paths in the output.
Command Line Output
Paste the output from your command line running `jupyter lab` here, use `--debug` if possible.
Browser Output
Paste the output from your browser Javascript console here.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions