Skip to main content

Language Server Protocol implementation for Turtle and RDF

Project description

Turtle Language Server

PyPI version

This is a LSP server implementation for RDF graphs serialized as Turtle.

Install with: pip install turtle_language_server

Commands and Features

  • Use the loadGraphs command to pull in the graph definitions listed as prefixes in your Turtle file:

    # caches graphs in-memory for NeoVim session
    :CocCommand loadGraphs
    
    # overrides cache and pulls graphs anyway
    :CocCommand loadGraphs force
    
  • syntax checking your Turtle file (including undefined namespaces)

  • auto-complete when adding statements to the file (relies on loadGraphs)

TODOs:

  • verify shapes and add validation information to UI

Setup With NeoVim and CoC

If you are using coc.nvim, you can configure the language server as follows:

  1. Make sure Vim correctly detects turtle files and sets the filetype. One way to achieve this is by adding the following line to your .vimrc or init.nvim:

    au BufRead,BufNewFile *.ttl set filetype=turtle
    
  2. Modify your CoC settings to use the turtle_language_server when you open a Turtle file.

    1. First, run :CocConfig or edit coc-settings.json
    2. Add the following (merge with existing keys in "languageserver" if needed):
      {
        "languageserver": {
          "turtle": {
            "command": "turtle_langserver",
            "filetypes": ["ttl", "turtle"]
          }
        }
      }
      

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

turtle-language-server-0.1.2.tar.gz (5.4 kB view hashes)

Uploaded Source

Built Distribution

turtle_language_server-0.1.2-py3-none-any.whl (6.1 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page