BrickSchema / langserver

Language Server Protocol implementation for working with Turtle and other RDF technologies

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

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"]
          }
        }
      }

About

Language Server Protocol implementation for working with Turtle and other RDF technologies

License:BSD 3-Clause "New" or "Revised" License


Languages

Language:Python 100.0%