Language server for Poryscript
Find a file
2026-04-05 09:44:36 -05:00
.github/workflows Release 1.0.12 2026-02-17 13:29:36 -06:00
.vscode Add completion support for misc tokens, and use TCP instead of stdio for communciation 2022-03-14 15:54:53 -05:00
config Expose line-too-long diagnostic warnings 2026-02-14 12:34:17 -06:00
lsp Implement string conversion code actions 2026-02-15 11:32:25 -06:00
parse Release 1.0.9 - Whoops, fix autoformatting for moves() 2024-11-10 14:54:24 -06:00
server Implement string conversion code actions 2026-02-15 11:32:25 -06:00
.gitignore Finish command parsing 2022-03-11 17:00:41 -06:00
go.mod Release 1.13 - fix validate line lengths cursoroverlapwidth 2026-04-05 09:44:36 -05:00
go.sum Release 1.13 - fix validate line lengths cursoroverlapwidth 2026-04-05 09:44:36 -05:00
main.go Release 1.13 - fix validate line lengths cursoroverlapwidth 2026-04-05 09:44:36 -05:00
README.md Update README 2023-01-22 10:28:44 -06:00

poryscript-pls

Actions Status codecov

The language server for Poryscript.

Local Development Setup

First, install Go.

Then, build it!

go build

Testing with the Poryscript VS Code Extension

Clone the Poryscript Language Extension repository.

git clone https://github.com/SBird1337/poryscript-language

In client/src/extension.ts, replace the executable path with hardcoded paths to your Poryscript language server binary (poryscript-pls).

const debugPlsPath = "your\\path\\to\\poryscript-pls.exe";
const releasePlsPath = "your\\path\\to\\poryscript-pls.exe";

Launch the extension as usual (e.g. pressing F5) to test the poryscript-pls server. Windows Note: It doesn't seem to load properly if the project you load in the Extension Development Host is located in the WSL filesystem, so make sure you're testing in a normal Windows environment.

Notes

This project's lsp/ directory is a modified vendor copy of Sourcegraph's LSP bindings for Go. It provides all of the Go structs for the LSP specification. Sourcegraph stopped maintaining their library for some reason, but it still seems to be the best library for it.

It also makes use of Sourcegraph's jsonrpc2 library to facilitate the JSON RPC communications.