Skip to main content

SLS is the Storyscript Language Server. It provides common editor features like completion to its clients.

Project description

Storyscript Language Server (SLS)

PyPi CircleCI Codecov Contributor Covenant Code style: black

SLS implements a Language Server for Storyscript.


TBD (work in progress).


Work in a fresh virtual environment:

virtualenv venv -p /usr/bin/python3.6
. ./venv/bin/activate

And then install all dependencies:

pip install -r requirements.txt


You can start the LSP server with:


Furthermore, install pre-commit and set up a git hook:

pip install --user pre-commit
pre-commit install

This will ensure that every commit is formatted according to black.

Testing with VSCode

  1. Setup the VS client

Initially the dependencies of the VSCode extension need to be fetched:

cd client
npm install --prefix client
  1. Start a TCP LSP server
./ tcp
  1. Open up VSCode
cd client
npm run --prefix client vscode

VSCode will automatically try to reconnect if the socket has been lost.

Alternative: spawn via VSCode

You can also start up a VSCode instance via VSCode. This will allow you to debug into an extension.

  1. Open VSCode
  2. Open Folder (-> select "<this-dir>/client")
  3. View -> Debug
  4. Run "Launch Client"
  5. Open up a directory with Storyscript files or create a new .story file

If a Stdio server is used, it will automatically spawn the server and connect to it. On changes to the server, it can be killed by e.g.:


VSCode will automatically respawn a new LSP server instance.

If you want to continuously build the client extension, do:

npm run --prefix client watch


For problems directly related to the SLS, add an issue on GitHub. For other issues, submit a support ticket.

Project details

Download files

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

Files for sls, version 0.5.0
Filename, size File type Python version Upload date Hashes
Filename, size sls-0.5.0-py2.py3-none-any.whl (53.3 kB) File type Wheel Python version py2.py3 Upload date Hashes View
Filename, size sls-0.5.0.tar.gz (181.8 kB) File type Source Python version None Upload date Hashes View

Supported by

Pingdom Pingdom Monitoring Google Google Object Storage and Download Analytics Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page